Closed Argent77 closed 6 years ago
Can you diff PSTEE's IDS file with old PST's one (or post the former)? At least part of the problem is that IncrementGlobalOnce() is no longer action 202. I'm going to have to create a new scripting style for PSTEE, and if I'm doing that, I also want whatever else they've changed.
PST:EE uses a bunch of new actions to imitate original PST behavior or handle PSTEE-specific stuff. I have attached the PST:EE action.ids.
Actions 391-393, 395-405, 407 as well as 413 and everything above are currently PST:EE specific.
Edit: There are several pending feature requests for porting selected PSTEE script actions and triggers to the other EE games. It would probably make more sense to incorporate the new actions into the EE-specific branch of the compiler.
This will be too big for me to have anything ready for 243. Will PST scripts generally even compile on PSTEE? There seems to be a lot of actions that have been outright removed.
What else are you planning to fix? Every other script command (action or trigger) seems to work fine already with current WeiDU (242). It's only the script action 446 variant mentioned above that needs fixing atm.
The PSTEE engine is basically an extension of the EE engine. I think it is safe to assume that features added to PSTEE will not interfere with nor override features from the other EE games. PST is not directly compatible with PSTEE. However, each PST-specific trait can be reproduced with the available set of PSTEE features.
The PSTEE engine is basically an extension of the EE engine. I think it is safe to assume that features added to PSTEE will not interfere with nor override features from the other EE games.
Okay, so that's how it is. This should be easy in that case. I just need to add opcode 446 to the list opcodes that should have string operands (de-)concatenated for the BG2 scripting style. Sorry for the confusion.
Edit: actually, no, this will not be easy after all. IncrementGlobalOnce() and IncrementGlobalOnceEx() share an opcode, but one should be concatenated and the other should not be. Back to potentially not having something for this in time for 243.
Fixed.
The first action of the following script
isn't encoded correctly. The second set of variable scope and name appears to be discarded by the compiler.
The resulting script source after a compile/decompile operation:
Both actions
IncrementGlobalOnce
andIncrementGlobalOnceEx
should be encoded into identical byte code:From PST:EE ACTION.IDS: