nullset Posted February 5, 2020 Share Posted February 5, 2020 I am working on a mod in PSTEE. I am polymorphing player1, but the ChangeColor does not seem to work; he just shows up all black. Everything installs just fine and runs, but there is this little problem. If someone out there would like the joy of pointing out to me just what stupid thing I have done or forgot to do, I would greatly appreciate it. Quote Link to comment
Jarno Mikkola Posted February 5, 2020 Share Posted February 5, 2020 The PST's main character animations are not palleted, as the EE's opcode 8, Color: Change by rgp works only with palleted animations aka you can't change the colors as that needs a palleted parts. Quote Link to comment
Guest Nullset Posted February 5, 2020 Share Posted February 5, 2020 20 minutes ago, Jarno Mikkola said: The PST's main character animations are not palleted, as the EE's opcode 8, Color: Change by rgp works only with palleted animations aka you can't change the colors as that needs a palleted parts. Thank you, Jarno. The animation I have changed him to is Townie_LC_Male which is palleted, I believe. Perhaps, they have expressly forbidden such changes to Nameless? That would certainly match the case. Quote Link to comment
nullset Posted February 5, 2020 Author Share Posted February 5, 2020 Sorry about the above. I forgot to signin before posting. Quote Link to comment
nullset Posted February 5, 2020 Author Share Posted February 5, 2020 Well, I have come up with a fix that seems to work. I can replace the CHARBASE.cre with changed colors from the start. As his animations are unpalleted, this should cause no problem during the game, since my mod only polymorphs him in a post game extension. So far, I tested this by changing his colors in a saved game (Near Infinity). Next to check is a new game to ensure that he looks as usual there. Quote Link to comment
nullset Posted February 6, 2020 Author Share Posted February 6, 2020 5 hours ago, Jarno Mikkola said: The PST's main character animations are not palleted, as the EE's opcode 8, Color: Change by rgp works only with palleted animations aka you can't change the colors as that needs a palleted parts. OK. Hold on to your hat. I found the problem! When you Polymorph a creature (including Player1), the animation (xxxx.ini) establishes the colors it requires in the creature file at the TOP of the color list, which follows the animation entry with offsets from the start of the animation of 8 through 14 (0x8 - 0xE). The names inserted in the color list are those that the animation needs; all others are unused. These names can be found in the CLOWNRGE IDS. However, the CLOWNRGE ids are in a fixed order that do NOT necessarily correspond with the names in the creature file. For example, ADAHN.cre has the first entry in the color list as MINOR_CLOTH, but the CLOWNRGE id for the first position is METAL. so, if you want to change the MINOR_CLOTH color for ADAHN, you must code either ChangeColor(METAL,*color*) or ChangeColor(8,*color*). The first parameter here refers to the offset of the first position in the color list, NOT the animation required MINOR_CLOTH. The animation requires the MINOR_CLOTH color to be in the first position in the color list. I stupidly expected the engine to use standard names that have the same meaning for all accesses. Apparently, Murphy has been at it again. Thank you again for putting me on the right track. You reminded me that not all animations are palleted. It seems that there are also different pallets for different animations. I would have been a lot longer stumbling over this without your help. Quote Link to comment
nullset Posted February 6, 2020 Author Share Posted February 6, 2020 Further testing confirms that ChangeColor will not work on the protagonist under any circumstances. Back to square one, except I do have a workaround as outlined above above. Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.