Sign in to follow this  
nonameperson66

TSLRCM 907mal Cutscene Logic

Recommended Posts

Hello everyone. I have made some more progress on my mod to port the extended scenes from TSLRCM to the Kotor 2 Unofficial Patch mod. I am stuck, however, at trying to get the party members attacking Kreia scene (907krepart.dlg I think) to play. After completing the Bao-Dur Remote, GOTO, and HK scene, the game loads into the 907mal module, but there is a black screen and the cutscene never starts. I was wondering if anyone could help me understand the way that TSLRCM knows what cutscene to play and when. I know that there is a global variable called '907MAL_CUTSCENE' that is created at the start of 907mal, but I don't understand how the module is using that global variable to know when to play the correct scene. Any help with this would be greatly appreciated!

Share this post


Link to post
Share on other sites

If you're talking about a cutscene playing when loading a module, then the two avenues are either the module's OnEnter script (defined in the ARE and/or IFO), or the OnEnter script of a trigger placed over the module's entry point (script defined in the UTT, placement in the GIT).

The former is

https://github.com/KOTORCommunityPatches/Vanilla_KOTOR_Script_Source/blob/master/TSL/TSLRCM/Modules/907MAL_Malachor_V_Trayus_Core_(cutscene)/k_907_enter.nss

which looks like what you want.

Share this post


Link to post
Share on other sites

I ended up taking the 907mal.mod file from TSLRCM and changing the string references in order to fix issues I was having with incorrect positions and animations not playing. I was able to get the first scene of the 907krepart dialog (the dialog where Mira says "I say we fire a rocket at her right now..."), but now the next scene will not even start. I am pretty sure that the global variable 907MAL_CUTSCENE is being incremented correctly, otherwise the first 907krepart scene would not have played. The only other thing that I don't anything about is that the scene that should play after the first one uses a script called 'a_partyplan' that hasn't been fully decompiled. Does anyone have any ideas as to what could be the issue here? Also, could someone please fully decompile a_partyplan.ncs for me please, or at least point to a guide that would tell me how to go from bytecode to nss code?

Share this post


Link to post
Share on other sites
13 hours ago, nonameperson66 said:

I ended up taking the 907mal.mod file from TSLRCM and changing the string references in order to fix issues I was having with incorrect positions and animations not playing. I was able to get the first scene of the 907krepart dialog (the dialog where Mira says "I say we fire a rocket at her right now..."), but now the next scene will not even start. I am pretty sure that the global variable 907MAL_CUTSCENE is being incremented correctly, otherwise the first 907krepart scene would not have played. The only other thing that I don't anything about is that the scene that should play after the first one uses a script called 'a_partyplan' that hasn't been fully decompiled. Does anyone have any ideas as to what could be the issue here? Also, could someone please fully decompile a_partyplan.ncs for me please, or at least point to a guide that would tell me how to go from bytecode to nss code?

This may or may not help you, but I want to tell you this as it'll help you understand the magnitude of what you're trying to ultimately accomplish.

 

Imagine for a moment that you remade Kotor II from scratch using the power of modding and your version of Kotor II is superior to the vanilla Kotor II experience made by Obsidian - that is the  Kotor 2 Unofficial Patch mod.

 

I've played it, just as you have - and I do agree it's instantly better than vanilla Kotor II no questions asked and I also agree that it's better than the Kotor II experience with TSLRCM.

 

Of course, just because we think it's better than TSLRCM doesn't mean players will agree with us. If the Unofficial Patch mod came out in 2010 there would be no TSLRCM as everyone else would just use the Unofficial Patch instead. But here's the problem, as Sith Holocron has previously said elsewhere, not enough players play the Unofficial Patch to justify focusing on it and the entire modding community is centered around TSLRCM meaning not many players will give the Unofficial Patch a look in until a TSLRCM compatible version or an Unofficial Patch compatible TSLRCM is made.

 

So there'll be no hype and payoff until after you completed this project, and like you I've looked into its files of the Unofficial Patch and I can say this - it'll be harder than it looks because I wasn't lying when I said the modder remade Kotor II from scratch.

 

The Unofficial Patch uses .MOD files, but mods like Kainzorus Prime's NPC Overhaul is not compatible with it because the Unofficial Patch created brand new UTC character files.

 

It created brand new UTC character files, renamed dialogue names, added new cameras, new objects, rewrote entire scripts, gave everything new names etc. It remade the entire game, and a lot of the problems that you are encountering is because of this. For example, 601DAN.mod is the Khoonda plains - but it won't be easy to just 'move' the TSLRCM files from TSLRCM's 601DAN.mod by inserting it into the Unofficial Patches 601DAN.mod because 601DAN.mod in the Unofficial Patch is hardly resembles TSLRCM's 601DAN.mod in terms of files, and that applies to all the modules.

 

I'm not saying you should give up, but you should be aware of these things if you plan on going through with this.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this