DarthParametric

Modders
  • Content Count

    4,568
  • Joined

  • Last visited

  • Days Won

    514

Everything posted by DarthParametric

  1. Yeah, I can probably duplicate Carth and Bastila's stunt models, reposition them, and alter the animations so they aren't flapping their arms around, but that will be a real pain in the ass.
  2. Yeah I'll just add in extra waypoints for the locations I need. I have already despawned the party in previous module via the script I posted above, so now it should just be a case of duplicating the existing spawning and positioning scripts for Bastila and Carth and changing them as needed for the rest of the party.
  3. I'd actually forgotten to change it, but no, there didn't appear to be any change. 244 is still in the room, but the change was quite noticeable when I changed it via the IFO (it's just in front of the door). I'll play around with it some more, more so for getting my head around scripting than anything else. Edit: Interesting. I tried this: void main() { if ((GetIsPC(GetEnteringObject()) == 1)) { int iIndex = 0; while(iIndex <= 8) { RemovePartyMember(iIndex); (iIndex++); } AssignCommand(GetFirstPC(), ActionStartConversation(GetObjectByTag("DarthMalak"), "scene_06", 0, 0, 1, "", "", "", "", "", "")); PlayRoomAnimation("StuntRoom40d", 1); } }On the Leviathan the whole party was still standing in the middle of the room. However, in the subsequent Ebon Hawk scene the party (Zaalbar and Canderous in this case) were gone. So the script worked, just to no effect in the Leviathan level. The IFO edit will hide them, but I'm very curious as to what exactly the cause of their appearance is, and why they resist being scripted away. Edit 2: If I add AssignCommand(GetFirstPC(), JumpToObject(GetObjectByTag("WP03", 0), 1));I can get the player to jump to that waypoint (which is off to the side a bit). However, if I try AssignCommand(GetPartyMemberByIndex(0), JumpToObject(GetObjectByTag("WP03", 0), 1));for any index 0, 1, 2, nothing happens (with or without the party remove loop). I also tried GetNextPC(), but that didn't have any effect either. Edit 3: Adding AssignCommand(GetFirstPC(), JumpToObject(GetObjectByTag("WP03", 0), 1)); AssignCommand(GetObjectByTag("Zaalbar", 0), JumpToObject(GetObjectByTag("WP03", 0), 1)); AssignCommand(GetObjectByTag("Cand", 0), JumpToObject(GetObjectByTag("WP03", 0), 1));works, jumping all of my current party to the waypoint. Edit 4: Seems like teleporting is stuck within the confines of the walkmesh however. IFO editing it is.
  4. If you are upgrading the forum script, would it be possible while you are at it to either set the default value for the CODE tag to be XML, or make AUTO be unformatted? That would save a lot of eyesores in any thread with scripts.
  5. Ah, I was looking at IsNPCPartyMember, which I gather uses those index values I listed. No luck with your script though, the party is still standing in the middle of the room.
  6. Cheers. The player's index is -1, so should int iIndex = 0 be int iIndex = -1 instead? int NPC_PLAYER = -1; int NPC_BASTILA = 0; int NPC_CANDEROUS = 1; int NPC_CARTH = 2; int NPC_HK_47 = 3; int NPC_JOLEE = 4; int NPC_JUHANI = 5; int NPC_MISSION = 6; int NPC_T3_M4 = 7; int NPC_ZAALBAR = 8;
  7. The IFO edit works, although the X value needs to be something more like 200. I'm curious as to how to get the script version to work though, since I suck at scripting. This attempt was a failure: void main() { if ((GetIsPC(GetEnteringObject()) == 1)) { AssignCommand(GetObjectByTag("Bastila", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetObjectByTag("Carth", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetObjectByTag("Mission", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetObjectByTag("Zaalbar", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetObjectByTag("Cand", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetObjectByTag("T3M4", 0), ActionJumpToLocation(Location(Vector(244.0, 55.1, 8.99), 0.0))); AssignCommand(GetFirstPC(), ActionStartConversation(GetObjectByTag("DarthMalak", 0), "scene_06", 0, 0, 1, "", "", "", "", "", "")); PlayRoomAnimation("StuntRoom40d", 1); } }Also I noticed the player is present as well.
  8. That is directly addressed in the game. The HK-50s comment that they constructed all their defences to guard against an attack by Jedi, and that they had completely overlooked the possibility of HK-47 turning up.
  9. Stunt_06 is the Leviathan cutscene module in question. Stunt_07 is the following Ebon Hawk scene. If you grab ChAiNz.2da's save collection (which is what I use for testing), 000134 - Game133 will have you right at the Ebon Hawk ready to escape Taris, which will launch you straight into the Leviathan cutscene.
  10. I have been doing a bit of testing of edited versions of the K1 Enclave on Dantooine of late, and that requires loading from a save before leaving Taris (seeing as you don't get another opportunity to save beforehand). I've noticed I repeatedly experience a bug that, on further investigation, seems to be fairly common amongst other people as well. Namely, that during the cutscene just prior to escaping Taris where Malak orders Admiral Karath to continue the bombardment, you can can see your party members standing at the back of the bridge. I had a look through the stunt module and couldn't see any reason why they would be there, but I was wondering whether scripting could be used to check for their presence and teleport them out of sight. This is the module's onload script: void main() { if ((GetIsPC(GetEnteringObject()) == 1)) { AssignCommand(GetFirstPC(), ActionStartConversation(GetObjectByTag("DarthMalak", 0), "scene_06", 0, 0, 1, "", "", "", "", "", "")); PlayRoomAnimation("StuntRoom40d", 1); } } I was thinking perhaps some sort of if loop with GetObjectByTag, or is there something specific for current party members? Although how would you teleport them? I know you can force the character to walk/run to a waypoint or object with a move command, but this needs to be a forced instantaneous relocation. As to where, adding a new waypoint is easy enough if that helps. The script needs to be injected into the module anyway, given its generic name (k_scene_start). Somewhat related, in the following stunt module, onboard the Ebon Hawk where Bastila says to head to Dantooine and Carth warns of incoming fighters, I noticed that the party members - who are just standing in the hallway - often block the camera during the opening camera move at the beginning of the scene (especially the walking carpet Zaalbar). I'm wondering again if this might be addressed with the stunt module's onload script: void main() { if ((GetIsPC(GetEnteringObject()) == 1)) { if ((IsAvailableCreature(2) == 0)) { AurPostString("Adding Carth to Party", 5, 14, 1.0); AddAvailableNPCByTemplate(2, "p_carth"); } if ((IsNPCPartyMember(2) == 0)) { AurPostString("Spawning Carth", 5, 15, 1.0); SpawnAvailableNPC(2, GetLocation(GetObjectByTag("WP01", 0))); } if ((IsAvailableCreature(0) == 0)) { AddAvailableNPCByTemplate(0, "p_bastilla"); } if ((IsNPCPartyMember(0) == 0)) { SpawnAvailableNPC(0, GetLocation(GetObjectByTag("WP01", 0))); } SetPartyLeader(0xFFFFFFFF); AssignCommand(GetFirstPC(), ClearAllEffects()); AssignCommand(GetObjectByTag("Bastila", 0), ClearAllEffects()); AssignCommand(GetObjectByTag("Carth", 0), ClearAllEffects()); PlayRoomAnimation("m12aa_01q", 9); AssignCommand(GetObjectByTag("CutStart", 0), ActionStartConversation(GetFirstPC(), "scene_start", 0, 0, 1, "", "", "", "", "", "")); } }Perhaps in both cases, rather than searching for them and moving, a simpler solution might be forcibly clearing the party? Although I am guessing that case, clearing the party in the first script should be sufficient to handle both. That said, given the gravity of the situation surrounding the escape, I think it would make sense in the EH scene if everyone were in the cockpit. There are two passenger seats, so perhaps Mission and Canderous could be seated on those, with Zaalbar and T3 standing out of the way in the back corner (behind Bastila). Looking at m12aa_01q, the room animation appears to only be switching out the skybox (which is actually pretty clever). The character animations for Carth and Bastila would seem to be all done via scene_start.dlg, so presumably additional ones could be added for the rest of the team, with extra waypoints for positioning. For the script side of things, would it just be a case of duplicating the existing entries for the rest of the team?
  11. I think the palace colour is bit too desaturated. It stands out from the walls in the foreground.
  12. For this sort of thing you generally want to start with appearance.2da. A quick search turns up the Czerka Commander as row #425. The head it references is #91. Checking heads.2da, row 91 points to the model czerka_com_h. In this case the texture uses the same filename.
  13. You can do so, but the game is set up to use a number of texture variations for armour variety, so you'll need to follow the same convention. At the bare minimum, you'll have to make duplicates of your texture up to the number of variations the game expects for that given armour class model (which might be as many as 10-12, depending on the model and the game).
  14. Yes, with certain restrictions. What is the intended use? An NPC, or player clothes/robes/armour? If the latter, you can only replace one of the existing body models of a given armour class, or set it up as a disguise (which is problematic for a couple of reasons).
  15. Don't use NWMax. Use KOTORMax - http://deadlystream.com/forum/files/file/1151-kotormax/
  16. So is it actually possible to trigger the 3rd pose? I just did a test where I had a character loaded up with all Force powers, and it seems that all of the powers that have any effect result in the 2nd, crispy, pose. I had assumed that was only for DS powers and that the LS option would kill them mercifully without healing you, resulting in the 3rd pose. But it seems that is not that case. My character was DS though, is that related? I guess I'll have to try a LS character. Edit: OK, yeah, there is a character alignment check it would seem. If you are LS, hitting it with saber throw/breach/destroy droid results in the "sleepy" pose. Hitting it with lightning/death field still gives you the crispy pose. As a DS character, they all end up crispy regardless.
  17. Just need to do a bit more testing, finalise the setup, and then it should be ready for release.
  18. Nice to see that MDLOps has finally emerged as a functioning, well-adjusted member of society. Only took a decade and a half, but better late than never. Props to ndix UR for getting it to the big 1.0.0.
  19. So after a lot of iteration, here's some of what I have so far: It's annoying that the self-occlusion is seemingly so arbitrary. In some scenes there are no issues, then in another the same model has problems seeing the neck through the chin (for example). I wonder if the positioning of the characters and/or cameras needs to be altered as well.
  20. TSL's HK only has textures specified by appearance.2da. The model itself has no default texture.
  21. The rig for your female model seems to have some shenanigans going on: https://www.darthparametric.com/images/JC_RepSold_Fem_Rig.jpg I assume it was skinwrapped? The weights for the fingers are all messed up (as well as being assigned to the wrong bones).
  22. No rush. I can live without it for now. Yep. Just tried now. No, it does not do the same. The grass is normal and where it is supposed to be. That works for me if it's easy to implement. It should also serve to remind me about it.
  23. Cheers. Btw I noticed in TSL at least that the female officer body (N_RepOff_F) has exactly the same UV layout as the male officer (N_RepOff), but for some reason uses a 256x256 texture (N_RepOff_F01) instead of the male's 512x512 one (N_RepOff01). A simple appearance.2da patch you could add to your mod perhaps. I'll switch it for the full body versions I am doing.