Guild icon
X-Hax
Modding / sa1-modding / New Autodemo research
Avatar
Here we will discuss and post WIPs and recent findings related to the Autodemo. (edited)
Avatar
Awesome
Avatar
ItsEasyActually 10.05.2024 14:01
i have a ghidra setup from when i was messing around with researching WV some more. it also has some work on 1st_read, Sky Chase, Speed Highway, and Final Egg. i don't know how useful it'll be, but i can share that project and it can be integrated however. for sharing the ghidra repos, just need to share the gpr file and the rep folder, yeah?
Avatar
Not sure... but anyway @Claire the Rabbit could you set up a Ghidra server so that we could collaborate? Apparently it's possible on Windows too https://medium.com/@jannis.kirschner/ghidra-collaborative-reversing-1-2-how-to-setup-a-ghidra-server-711f4212912e
A Step-By-Step tutorial on how to install and configure the ghidra server for collaborative reverse engineering.
Avatar
Claire the Rabbit 10.05.2024 14:11
why me
Avatar
cause you have a build bot
14:15
I could set up a server on my PC but my internet is shitty and my computers aren't always online
Avatar
Claire the Rabbit 10.05.2024 14:21
what does a build bot have to do with ghidra
Avatar
you have a build bot→computer is often kept online→good for Ghidra server
Avatar
Claire the Rabbit 10.05.2024 14:22
but like
14:22
we can't put it on an actual server?
Avatar
maybe...
Avatar
ItsEasyActually 10.05.2024 14:29
GhidraProject is all of the partial stuff i did in Ghidra. the IDAExports file are all of the mapped idbs i had converted to xml for use in Ghidra. iirc, 1st_read should have all of, or at least most of, the Ninja/Shinobi/SofDec/libsh4 functions named thanks to Exant's sig files he posted ages ago. (edited)
Avatar
Working on the patcher. For mass replacement of pointers in multiple binaries, how should the patch data be formatted? I'm thinking like a simple text file where each line is like Name, Original address, Replacement address, for example: ___njSetBackColor,8C5E3D36,8C6023BA, is this good? I guess for pointers this byte order is easier to read, but I could make a reversed version as well.
14:31
thinking to make it easy to just export from Speeps' excel
Avatar
Avatar
PkR
Working on the patcher. For mass replacement of pointers in multiple binaries, how should the patch data be formatted? I'm thinking like a simple text file where each line is like Name, Original address, Replacement address, for example: ___njSetBackColor,8C5E3D36,8C6023BA, is this good? I guess for pointers this byte order is easier to read, but I could make a reversed version as well.
I already have both orders in my file rn anyway
Avatar
Avatar
ItsEasyActually
GhidraProject is all of the partial stuff i did in Ghidra. the IDAExports file are all of the mapped idbs i had converted to xml for use in Ghidra. iirc, 1st_read should have all of, or at least most of, the Ninja/Shinobi/SofDec/libsh4 functions named thanks to Exant's sig files he posted ages ago. (edited)
ItsEasyActually 10.05.2024 14:41
sorry, had to reupload this. you'll need to fix the username in project.prp (the VALUE="iea") to whatever your username on your pc is for it to open. that's one of the issues with doing solitary projects and not server ones.
👍 1
Avatar
better version of SetEdit Restore patch, only thing missing is a decent way to fix the camera issues on closing SetEdit. The code to check button presses to open SetEdit was also leftover in AD, so the button combo is now A+X.
Avatar
https://discord.com/channels/446023672147345418/446023672147345420/1238458622984327219 in demul you can fix it by setting the byte at 2C6A5563 to 2 (edited)
15:56
I think that's one of these in cameraSystemWork
15:57
rn it gets set to 0 which is how I used to do freecam in 2017 lol
Avatar
none of these things shoot because their scl values aren't set, I guess the adjustable timing was done afterwards
16:22
some get one or two frames of arrow but that's it lol
Avatar
patched with data from Speeps' excel
Avatar
lol wtf Mystic Ruins boots
17:31
kicks you out to title screen after a second though
17:32
Twinkle Circuit also boots
17:34
not sure if this boots normally but pretty cool. Also kicks you out though
Avatar
Yeah we'll need to patch the adventure field kick out thing
17:38
Also yeah EC is fine
17:40
it's rd, bg, object list and pathtasks causing the crashing
17:40
You can get around all but rd by nulling the refs
17:42
And for objects you can delete the set file
17:43
I think Practice 2 is just pathtasks and objects breaking it
Avatar
Patcher: https://gitlab.com/PiKeyAr/sa1-dc-hd/-/raw/main/release/Patcher.exe?ref_type=heads&inline=false To get it to recognize your mods, create a "mods" folder in the same place as the patcher EXE, and place your mods like you would for the mod loader. Example mods (unpack to subfolders in the mods folder) attached. Lighting - simple file addition/replacement. PatternReplace - patching specific pointers in multiple files. To make the build process faster, create a data_orig folder in the output folder, and place the extracted GDI data in it. When the data_orig folder is present, the patcher skips unpacking the original GDI image. (edited)
👍 1
PkR pinned a message to this channel. 10.05.2024 17:54
Avatar
This restores Chaos 2 level and object textures. I haven't been able to get Chaos 2 himself to get textures properly, but the level and objects are all textured.
Avatar
pretty amazing lol
knuxhappy 2
tailshappy 2
Avatar
John X-Hax 10.05.2024 18:19
Woah
18:19
are you able to get the jungle?
18:19
or does it crash
18:19
I might attempt to hack too
18:19
but I only got cheat engine
Avatar
jungle crashes
Avatar
John X-Hax 10.05.2024 18:22
Expected
Avatar
John X-Hax 10.05.2024 18:23
wait
18:23
bro how are you extracting textures that fast
18:23
or wait
18:23
are you putting the textures from the final game into the autodemo?
Avatar
John X-Hax 10.05.2024 18:35
wtf...
18:36
are you making the byte changes during the gameplay?
18:36
or do you change the bytes in gdi before launching
18:37
also are you using the patched gdi (edited)
Exported 54 message(s)
Timezone: UTC+0