Update / fresh build of Misu's add-on to Cmo's Pose Player -- feedback sought
Esteemed Colleagues,
Before I submit the .package to MTS, I would appreciate feedback from script modders as to whether the code is in proper condition to submit. This will be my first mod.
Problem addressed:
Misukisu no longer maintains her excellent pose player add-on, and the last-released version crashes if used with an up-to-date (1.67) game and the current pose player. I need this add-on! So, I have tried to rejuvenate it by resolving some dependencies and doing a fresh build.
Code Changes:
Diffs (included in the
zip file) are of basically three kinds. The first kind, accounting for nearly all the changes, merely changes the protection of certain derived class members to agree with their base classes. The same few changes were needed in nearly every source module of the add-on. The second kind, only three or four changes, are calls to things whose names have changed slightly. The third kind is the removal (commenting out) of calls to methods which apparently no longer exist. All of that kind are in debugger.cs, and I believe they are innocent of any effect that would be seen by the user, but I do not know whether some formerly-available debugging capability has been affected.
Advice sought & alternatives considered:
Besides asking for general comments on the correctness & completeness of the submission, I have a specific concern about whether I took the right approach to maintaining/restoring compatibility with the Pose Player. The add-on refers to members of Pose Player classes that are --
and always were -- private in the Pose Player. To allow the add-on to build, I made a copy of a decompiled Pose Player, in which I changed the protection of those members to "public" so the add-on could see them. Once having built the add-on against that "special" pose player source, I tested it against the
unmodified Pose Player binary. That is, I have relied on the hope that my temporary changes only affected the visibility of those elements in the source, but did not affect anything important in the binary, so that users of the add-on should not also need my "special" pose player image.
The reason I'm looking for guidance is this: I have worked in places where a programmer who did something that awful would be immediately shot and nobody would come to their funeral. But perhaps in this context, and knowing what we know about these scripts, it's acceptable? It seems the alternative would be worse: to publish the add-on together with a "special" add-on-compatible pose player that differs from the normal one only in a software-engineering detail that a user would not care about, and which might prevent them from being able to take future pose player updates directly from Cmo. That is a path which Misu originally avoided.
The attached zip contains:- The testable code: RdN_Misu_PosePlayerAddOn.package
- C# source code diffs, in .rtf file with pretty colors for the important parts
- C# code diffs, in a plain .txt file which it should be possible to use as input to "patch", mainly for form's sake
- The add-on as a .dll (before I imported it into the .package)
- The copy of cmomoney's (unmodified) pose player against which I tested the add-on in the game
Regards,
Ronnie.
Attached files:
|
RdN_Misu_PosePlayerAddon_ForReviewAndUpload.zip (524.9 KB, 1237 downloads)
- View custom content
|
| Package file | Size | Type | Description |
|---|
| RdN_Misu_PosePlayerAddOn.package | 24,764 | Unknown | | | cmomoney_PosePlayer-08-22-2013.package | 607,620 | Unknown | |
607620 08-22-2013 09:55 cmomoney_PosePlayer-08-22-2013.package
24764 05-08-2014 23:15 RdN_Misu_PosePlayerAddOn.package
41984 05-08-2014 23:10 SimAddonToPosePlayer.dll
224536 05-07-2014 23:49 RdN-PosePlayerAddon-diffs.rtf
56505 05-07-2014 23:26 RdN-PosePlayerAddon-diffs.txt
--------- -------
955409 5 files
|
|
Description: Package-under-test, dll, and source diffs. |