DarthParametric

Modders
  • Content Count

    4,567
  • Joined

  • Last visited

  • Days Won

    514

Everything posted by DarthParametric

  1. Yeah that was for the Telos skybox. As you might expect, the Malachor skybox model is the one you didn't check, MalB. Make sure you are using the most recent version of MDLEdit, available here.
  2. I'd assume that would work the same way rain would, with VFX nodes (which is what I was expecting). Malachor just uses simple planes with a room animation dialling the mesh alpha up and down.
  3. TSL usually makes its skyboxes fairly obvious. In this case, "sb" is the identifier, although in other cases they use "sky". As to tools, you could theoretically do it all in a text editor like Notepad++, but in practice that's not really going to work. You'll need to load up the whole module in either Max/GMax or Blender. You could just reuse the Malachor planes, since they are already UV mapped and ready to go. Then you'd just need to position them. I haven't looked at 233, but 231 already has an A node, 231telSBa, which the forcefield and the bird emitters are under.
  4. There are a couple of ways you could do it, but Malachor uses the simplest method - static planes with animated textures: You'd need to edit the skybox model for whatever module you want to add them to, create some planes with their normals facing inwards towards the player, enable some self-illum on the Trimesh modifier, and make them children of the A node (a dummy object that is a direct child of the OdysseyBase that has the same name with an additional "a" appended - this is required for animated objects to work).
  5. Now the only question is, how much would you pay to finally live out your childhood fantasy and get one for yourself?
  6. It wasn't deleted. Your posts are in the WIP thread. If you want to report something and actually have a chance that someone (i.e. me) will actually notice/remember it, create an issue on the Github repo. If it's not on that list, it's not going to get addressed.
  7. The mod only has provision for the vanilla female player heads in heads.2da and the associated player rows in appearance.2da. Retextures or model edits/swaps are irrelevant if they don't affect the row ID. Added female heads are not supported. The male version will work for any head, included custom added ones, as long as the vanilla PMBJ models are specified in appearance.2da.
  8. Since TOR released a set of the Star Forge robes not too long back, I figured it might be a useful basis for a hybrid version with the vanilla cape and loincloth (the TOR version is only painted on) married to SS's flowing robes animations. At this point I've done the initial import, scale, and pose, and am now ready for the transfer to the KOTOR rig. Thanks to the Blender I/O script, I was also able to bake out the tinted textures, which is much easier than trying to approximate it manually as I have had to do in the past. Here's where it's at currently: I still need to fiddle with a few bits and pieces, and there will no doubt be plenty of tweaking to do once the rig transfer is done and I can test out animations. I also have some folded down hoods taken from other sets that I will try to marry to this torso for a hoodless/maskless version. But that will require a fair bit of massaging to get them to fit, so I'm saving that for later. Still not sure about the cape. I think having it white as well would be a bit too overpowering, but I'm not entirely sold on the brown. And I haven't done anything for the DS black version as yet. Since there's no TOR version of that colour scheme for this set, I'll have to cobble something together myself.
  9. I won't be making any further changes/additions to this mod. But I may have an alternative option at some point in the nebulous future.
  10. Not really, no. All the early companion/NPC outfits they did, of which the Calo set was a part of, were pretty so-so. Some are better than others, but most take a bit too much artistic license for my taste. The recent "Jedi Knight Revan" (i.e. the Star Forge robes) outfit is probably the best KOTOR set they have ever done, albeit not perfect: Only took them a decade to get it right.
  11. It's a pretty poor interpretation of the KOTOR version:
  12. No, your install is broken. Nuke your entire game and start again. And this time actually extract the mod archives, don't run the installer from inside it.
  13. You're going to need to list all the mods you have installed. And was this a clean installation?
  14. Doesn't look like it is TSLRCM. All their Assassins are using the vanilla quarterstaff prop items. Your single saber reference makes me inclined to think this is from one of Shem's mods.
  15. A stunt weapon that is not intended to drop as loot. Are you using any mods that affect Assassins?
  16. Only global scripts have Bioware's original source. The module scripts are binary only. But I have cleaned up the generated source for a lot of the module scripts in the course of working on K1CP over the last couple of years, especially Dantooine. #include "k_inc_dan" void main() { object oPC = GetFirstPC(); if (GetLevelByClass(CLASS_TYPE_JEDICONSULAR, oPC) == 0 && GetLevelByClass(CLASS_TYPE_JEDIGUARDIAN, oPC) == 0 && GetLevelByClass(CLASS_TYPE_JEDISENTINEL, oPC) == 0) { TurnPlayerIntoJedi(); } ClearAllActions(); } Many of the module scripts make heavy use of planet-specific include scripts, which you can find in the global source. As such what at first glance seem like large scripts often turn out to be quite simple, once you've cleaned out all the external functions.
  17. You are probably going to wind up disappointed if you expect characters to reliably perform scripted animations during combat. For starters you cannot play arbitrary animations in K1 using PlayAnimation/ActionPlayAnimation. Only TSL can do that. In K1 you are limited to a small pool of anims predefined in nwscript.nns like ANIMATION_LOOPING_DANCE, ANIMATION_FIREFORGET_SALUTE, etc. There is the CutsceneAttack function, which, as the name suggests, is designed for choreographing cutscene fights. That does let you specify attack animations, but I have no idea if that will even work outside of a cutscene. void CutsceneAttack(object oTarget, int nAnimation, int nAttackResult, int nDamage); It also lets you specify whether the attack is a hit or miss, and what the damage is. I suppose you could experiment and see what it does when fired during a regular combat round. I'm not sure if anyone has done that before. There may be a problem with the target not responding with the appropriate animation, assuming it works at all, so they might also need to be forcibly scripted in the same manner.
  18. You need to provide more detail about what it is exactly you want to achieve. I gather you want a scriptable attack animation? What is the scenario you envisage this executing in? What's the goal? Are you looking for some simple combat buff, or some sort of cinematic thing? Interactive armbands work exactly the same in both games. You give it an "Activate Item" property which links to spells.2da, this in turn fires a script. The script then does whatever you want, within the limits of the engine. So you can start a conversation/cutscene, open/close doors, spawn items/creatures/objects, kill/destroy items/creatures/objects, add/remove party members, jump the player/party to different positions, warp the party to a different module, set plot states, etc. You can also do this with other interactive items the player equips, like medpacs or stims. You can add an Activate Item property to any item, but a creature hide is not exposed to the player. It is not interactive, so the player can never activate it. The same goes for most other equippable items - there's no way for the player to manually activate them. If you are looking for combat effects, you can apply On Hit status effects to weapons, like slow and stun, etc., but these don't fire scripts. Items can also grant feats, so you could just make a blaster that grants the full Rapid Fire series of feats. So if you wanted to have a manually activateable item, you could just use an armband. K1 doesn't have a pre-existing user limitation for Carth, so you'd have to jump through some hoops to limit it to only him. You could use this in conjunction with your creature hide idea, where the script checks if the activating creature has the hide equipped and the effect fails if not. But how you go about it goes back to my first quest - what is it you are trying to do exactly?
  19. It's a global script. You don't need to decompile it because the game already includes source for it. Look in the NSS folder of the same BIF you got the NCS from.
  20. I mean you could do something as simple as void main() { object oPC = GetFirstPC(); object oStore = GetObjectByTag("STORE_TAG_HERE", 0); int nPersuade = GetSkillRank(SKILL_PERSUADE, oPC); int nBonusMarkUp = -nPersuade; OpenStore(oStore, oPC, nBonusMarkUp); } Looking at the scripts for Yavin Station in K1, it seems like Suvam's discounts are either -5 or -20, so using the negative value of the PC's Persuade total as-is could work. Although you could modify it using if statements like I said before, perhaps something like: void main() { object oPC = GetFirstPC(); object oStore = GetObjectByTag("STORE_TAG_HERE", 0); int nPersuade = GetSkillRank(SKILL_PERSUADE, oPC); int nBonusMarkUp; int nPersuadeAdj; if (nPersuade <= 5) { nPersuadeAdj = 2; } else if (nPersuade > 5 && nPersuade <= 10) { nPersuadeAdj = 5; } else if (nPersuade > 10 && nPersuade <= 15) { nPersuadeAdj = 7; } else if (nPersuade > 15) { nPersuadeAdj = 10; } nBonusMarkUp = -nPersuadeAdj; OpenStore(oStore, oPC, nBonusMarkUp); } You can use whatever mathematical operations you like to scale the values as you require. Google the C formatting for whatever operations you want to do if you are unfamiliar with the syntax. You'll need to check each individual module. Check the merchant's DLG file to find out what script/s fire when they open the store. You'll then need to decompile the binary script (NCS), since only the global scripts have included source. You can pull the Tag of the store from the UTM file, although the scripts you'll be editing will already have it. You'll need DeNCS (requires Java) to decompile the scripts. You'll want DLGEditor to browse the DLGs (don't use KTool's included editor - it doesn't work properly with TSL DLGs). You can use KTool or KGFF to examine the various GFF files like UTCs, UTIs, UTMs, etc.
  21. Depends entirely on the specifics of what you want. A simple colour switch from one solid colour to another is relatively straightforward, at least in PS (and I assume Gimp has similar functionality). If you want patterns and so forth then it starts to become more complex. You could also edit the item to switch it to a different base armour model, if that might get you closer to what you want. Although that obviously adds a whole extra layer of complexity. If you think that doing it yourself is too much, you can always make a post asking for someone else to do it in the Mod Requests forum.
  22. It would require a texture edit. KTool can extract the texture, but it is not a texture editor. You'd need something like Photoshop, GIMP, Paint.NET, etc.
  23. You could do it all in one script. It would just be a series of if statements. But you'd have to edit the individual scripts for every merchant in the game. They aren't defined universally.
  24. You don't edit any 2DAs. You edit the supermodel/s that holds the original anim/s, delete it/them, and replace it/them with TSL's version/s, giving it/them the same name as the original/s. Some knowledge/experience is required ideally, yes. I have no idea how you'd go about a rig transfer in Blender. Someone like @seedhartha would have to chime in with information about that. in KMax, there's an animation tool that lets you import an animation from an external model and map it to the scene rig (Anim Tools -> Mapper). It should be a simple case of autogenerating the bone name matches, since the rigs are more or less the same at the core, TSL's just has some added bones for flappy sleeves and cloaks. Given the complexity of supermodels, I'd suggest the easiest approach would be to remap the anim/s onto an empty copy of the target rig, export that, then edit the ASCII copy of the supermodel to swap the anim/s. You'll need to edit the ASCII anyway to add the sound events anyway, at least using KMax, since that doesn't import/export them properly. Strictly speaking you don't actually need to do the rig transfer. You could do the whole thing in a text editor, just swapping the anim blocks. But doing the transfer allows you to check that everything is working as intended, and adjust/fix it if not. K1 and TSL bone positions/rotations aren't entirely 1:1, which is why head model ports have facial animation issues. There is also a bit of a trick to compiling supermodels, since they are a bit wonky. @JCarter426 is the resident authority on the matter, and did detail the process in a post somewhere, although I can't find it at the moment.
  25. You can't do that in K1 anyway. It's possible, yes. How practical it is depends entirely on how conversant you are with the game's models and animations, and importing/exporting them. I'm guessing "not at all"? Probably not the best place to start then. It will require editing one of the supermodels and replacing the existing anim with the TSL version. Before that you'll probably want to transfer it to the K1 rig to make sure it doesn't need any editing.