Unbirth freeze patch - Printable Version +- Frictional Games Forum (read-only) (https://www.frictionalgames.com/forum) +-- Forum: Frictional Games (https://www.frictionalgames.com/forum/forum-3.html) +--- Forum: Off-Topic (https://www.frictionalgames.com/forum/forum-16.html) +--- Thread: Unbirth freeze patch (/thread-54494.html) |
Unbirth freeze patch - Som1Lse - 05-31-2018 I don't know, if anyone is still interested in playing this but just in case, I might have found a way to eliminate freezes from Unbirth. After spending some time in a debugger, I noticed that whenever the game froze it was in a particular function in "aglScript.dll", and in order to figure out what it was doing I tried disabling the function and I stopped encountering freezes. For those of you with a hex editor, the function is located at offset 20820, and in order to remove it you simply replace the first three bytes with "C2 04 00" (which is the binary coding of the "ret 4" x86 instruction). Alternatively you can just download the patched version I've attached to this post. I managed to get a good deal into the game without any Windows compatibility stuff enabled. Far beyond where I could go without the patch. Of course it is possible that, at some point in the game, the function will actually be used and the game will break in a silly way, because the function now doesn't do anything but so far I haven't encountered any issues (specific to this patch at least). Also note that freezing isn't the only way the game is broken, and there are several areas that are broken in various other ways; fortunately here is a patch for one of them, and for the rest you can just use the "map" console command to get past (I have since included this in unbirth_patch.zip). Here is a walkthrough, in case you don't want to figure everything out on your own. And in case you can't find a download, somebody uploaded it here. Edit: I updated the patch adding two more files. The first allows progressing into the mansion from street1 (same as one linked above but without the ammo patch, which isn't necessary). The second patch makes it possible to complete the puzzle for the cemetery key, which was broken previously. This makes the game completable without the use of the console. The basement in house3 remains graphically broken but it is still beatable. If you want to can also manually make the game run in windowed mode by changing "fullscreen = true" to "fullscreen = false" in "misc\default.cfg", which will allow you to alt tab. You might be able to use an external program to make the game borderless fullscreen. Lastly I also added a backup in case you want to revert to the unpatched version. Edit 2: Added a walkthrough for the bits not covered in the other walkthrough: Spoiler below!
Edit 3: plutomaniac pointed out that if you open "misc\config.cfg", and change "name = d3d9" to "name = d3d8", "house3/basement1" will work render properly. RE: Unbirth freeze patch - Slanderous - 06-01-2018 Top job with that, I think I'm gonna check it out RE: Unbirth freeze patch - EnDash - 06-04-2018 Nice, i'll check it out and see how it goes. I've also tried debugging the game and found an endless loop in the function you talked about but i didn't know how to fix it. I'm trying to name functions and figure out the code from disassembly but it's crazy, this game uses multiple threads and dynamically loaded libraries and function pointers and it's hell. We'll crack this nut completely one day! edit: I just finished the entire game using doors as intended, the only times i used the "map" command is when there was no in game way to proceed (going to the cemetery and going to the otherside). This works really well. Good Job! RE: Unbirth freeze patch - Som1Lse - 06-05-2018 I updated the patch, which makes it possible to beat the game without using the console (school doesn't need a patch, the walkthrough just missed the solution). RE: Unbirth freeze patch - Som1Lse - 07-17-2018 Bumping this topic to point out that the last major issue has been fixed, thanks to plutomaniac. Instructions are in the first post. |