Skip to content

Request: be able to wear dustman robes outside mortuary

DJKajuruDJKajuru Member Posts: 3,300
Greetings
I recall a mod that allowed you to do that for aesthetical reasons, could that be converted to pst:ee ?

Comments

  • TremontonTremonton Member Posts: 16
    I'd like to second this request. I dig that sober Dustman look for my archmage demigod Nameless One.
  • DJKajuruDJKajuru Member Posts: 3,300
    edited April 2017
    I have tried using the old file to make the change but unfortunately it did not work. I have also checked the robes properties on near infinity but its limitation isn't related to the item itself . Also, I tried using EEKeeper to change TNO's animation , but it didn't work and all his inventory disappeared, so I think that eekeeper requires an update. :(
  • vr1lXvr1lX Member Posts: 1
    THIS! A working robe mod, that lets me wear my trusty dustman disguise everywhere is just what I always wanted.
  • TremontonTremonton Member Posts: 16
    Thing is, Qwinn's tweak pack actually included that. I made great use of it during my most recent playthrough, and it was pretty sweet playing the staid dustie mage, but having the option of tossing off the robe at a moment's notice (rather than pausing to go into TNO's animation guttiworks to switch his animation back, as was the case with Platter's earlier mod, I believe).

    I recall reading that the engine is essentially coded to look at whether or not the party is in the three Mortuary areas at any given time, and to only allow the Dustman Robe to be equipped if the answer is "yes." What Quinn's tweak pack did (again, if I'm understanding it right) was to simply make the answer "yes" all the time, which didn't require any actual messing with the item file or TNO's animations or anything like that.

    Unfortunately, I have no clue how to replicate that with the EE version, since the old tweak pack file no longer addresses the right section of the game's code.
  • JarlealeJarleale Member Posts: 114
    Seems like it was coded into the exe.
    http://www.shsforums.net/topic/47412-dustman-robes/?p=534667

    Does anybody here know how to locate and change it? Didn't have much luck with Near Infinity...
  • TremontonTremonton Member Posts: 16
    edited April 2017
    Yeah, if you've installed the Dustman Robe tweak on the non-EE edition of the game, you can open the .exe with a hex editor and use the find function, and sure enough, that second code in the above link is in there.

    But do a find-and-replace on the EE version's .exe, and the pre- and post-tweak hex codes listed above don't show up. I'd assume the check for whether or not the party is in the Mortuary is still in there, but it no longer uses the same hex code it used to.

    I kinda wish scient had explained in that 2012 post how he found the Mortuary check in the first place; it might make it easier to find again with the EE version. If someone can find that, they could probably locate the zombie disguise code too, tie it to a piece of armor or accessory using Near Infinity, and then make that permanent outside the Mortuary. Might make for an interesting novelty, if nothing else.
    Post edited by Tremonton on
  • DJKajuruDJKajuru Member Posts: 3,300
    @Tremonton , @Jarleale

    It seems you can change TNO's Animation by overriding his .BAM files with the help of Near Inifinity. I tested it but I haven't been able to identify all his animation files (for instance, he can walk/run/fight with the dustman animation but while he casts a spell he seems to go back to his original animation).

    I'll keep trying and perhaps I will come up with a mod .
  • DJKajuruDJKajuru Member Posts: 3,300
    Voila! It worked!

    I shall post it here on the modding section!
  • TremontonTremonton Member Posts: 16
    edited April 2017
    Nice work! Although -- and this is no doubt my OCD talking -- I'd still really like it if someone was able to figure out how to turn off the Mortuary location check altogether, so one could simply equip and unequip the Dustman Robes like any other piece of equipment. That way if, for whatever reason, you wanted to switch TNO back to his half-naked loincloth look, it'd be as simple as opening the inventory and removing the robes (or just switching your equipped weapon, since that also removes the disguise), rather than going back into the Override folder and deleting the files.

    The challenge there, as I see it, is figuring out where the check is in the .exe's hex code. When scient figured it out five years ago it turned out to be as simple as changing:

    E9 57 FF FF FF 8B 45 F4 8B E5 5D C3 55 8B EC 51

    to

    E9 57 FF FF FF 8B 45 F4 8B E5 5D C3 33 C0 40 C3

    I've popped open the EE-version of torment.exe with a hex editor and looked around, and it looks like that first code never shows up anywhere. That flag at the end does, the 55 8B EC 51 part -- problem is, it shows up more than 1,000 times. And that's assuming the Mortuary check still uses the same hex codes as in the original version of the game; for all I know it could be something completely different now.

    It's times like this I wish I had even a basic grasp of how programming works. Otherwise, it's basically like looking for a very specific needle in a haystack full of needles -- and even then, it might actually be a thumbtack you're supposed to be searching for and not even know it.
  • DJKajuruDJKajuru Member Posts: 3,300
    Tremonton said:

    Nice work! Although -- and this is no doubt my OCD talking -- I'd still really like it if someone was able to figure out how to turn off the Mortuary location check altogether, so one could simply equip and unequip the Dustman Robes like any other piece of equipment.

    Another (perhaps easier) alternative might be to create a custom replica of the dustman robes and give it a different item code. Perhaps that way it'd be wearable anywhere.
  • TremontonTremonton Member Posts: 16
    edited April 2017
    Not a bad idea. That could work, if TNO's animation change is attached to the robes themselves and not something in the .exe code.

    I don't have Near Infinity in front of me at the moment, but if I recall correctly, I didn't see any specific animation changes attached to the item itself, but I might not have been looking in the right place.

    My concern is you might be able to create a replica and call it "DUSTROBE2" or something like that, and make it equippable to TNO anywhere, but even then the animation change will still be hardcoded to consider "Is TNO wearing the original DUSTROBE? If so, his animation changes appropriately; if not, it's loincloth time. Oh, and by the way, he can only equip the original DUSTROBE in AR0201/0202/0203."
  • TremontonTremonton Member Posts: 16
    edited April 2017
    Well, I had a chance to try your suggestion. Copied the DUSTROBE.ITM and renamed it DUSTROB2 in override, no other changes. And sure enough, TNO could equip it outside the Mortuary...but no animation change. Same loincloth, but at least he could equip the thing.

    So next I tried to add an animation change effect to the Dustman Robe, and the Dustman Earrings for good measure. I copied the animation change effects as encoded in some custom armor mods made by Platter quite a few years ago (in terms of 'effect self,' 'timing mode = instant/while equipped,' etc.). Not only did TNO's animation not change when I equipped the items, but it crashed the game when I unequipped them.

    I tried a few other animation change codes on the robes and earring (Godsmen Guard, Advocate...) and none seemed to work. At best, I'd get no change at all, but I'd at least be able to unequip the items safely.

    Any thoughts? Am I missing something here, or is it just not meant to be? I admit I like the idea of transforming TNO into a Mercykiller with a piece of custom armor too; but I'm not sure the NI animation change codes have caught up to the EE version. Yet, anyway.

    Edit: Screw it, I'll just toss my request on the pile in Aquadrizzt's thread.
    Post edited by Tremonton on
  • badungubadungu Member Posts: 53
    I had a bit of research in this with IDAPro and I think I found the position in the executable...

    It must be possible to edit the Subroutine at position 005EF330:


    Hex code:


    Pseudo code:



    If you search for 55 8b ec 68 a4 f5 91 20 in the executable this should be the position, my problem is, I don't know how to change the function to return always true without crashing the game (I'm not experienced enough, but maybe someone could pick up my efforts... :))
Sign In or Register to comment.