Jump to content

Various ToB hacks


Recommended Posts

I'm trying to install your EXE hacks (mostly for the songlist "fix"), and it's not working. I have an otherwise ordinary ToB install, latest patch (26498), English language, and so forth. Ascension64's EXE patches work just fine, but none of yours will install ("Target bytes don't match"). And I mean literally none of them. Exactly which version of ToB are they designed for?

ToB v26498 on Windows. This is the same executable for all languages.

 

A64 does some scanning to find the correct place while I use fixed offsets.

What is the md5sum of your officially patched executable?

Link to comment
Guest Guest_Anonymous_*
What is the md5sum of your officially patched executable?

 

A little md5sum tool I found via Google returns, for my unmodified (backup) BGMain.exe, 064b6287db3be4d849dbc1d9c81ae323.

Link to comment
Guest Guest_Anonymous_*
Not sure why yours is different. Is the file size the same?

 

D'oh! Apparently I have 26499, not 26498. It's been in my ancient (5 years old, maybe?) clean install so long I forgot it was there. According to this it "fixes 26498 if slow load times appear." Must've sounded good at the time.

 

Any chance you could be bothered to rewrite your patches to scan for the relevant code like A64's stuff? Or at worst write a separate version for 26499? If not, I can always reinstall and use 26498 instead.

 

I'm sorry about the confusion/trouble.

Link to comment
Any chance you could be bothered to rewrite your patches to scan for the relevant code like A64's stuff?

Nope. Some patches modify (and depend on) too many things. And some of them might need to be modified for different game versions.

 

Or at worst write a separate version for 26499?

I guess you don't have any idea on how much time reversing/creating patches takes. :)

Sorry, not gonna happen. It's v26498 or nothing for me.

Link to comment

Well, I decided to try and make it so that non-fighters get the specialization attacks per round. I've downloaded a trainer creator and managed to hunt down the point in the executable where attacks per round are set; however, NOPping various jmp instructions right before that didn't work. So, I was wondering if there's a better way to understand the program flow than reading assembler (there's a couple of EXE->C code generators on the net, but all those I've tried are 16 bit only or can't translate bgmain.exe).

Link to comment

Have you guys thought of the whole JA 2 1.13 "externalize the .exe to xml libraries" thing? I realize that JA2 is an older game than BG2, but it also feels like Taimon has gotten where the JA2 folks did just before they decided to simply farm the whole thing out. I am not talking about rebuilding the whole set of game resources, just hooking existing calls to externalized libraries. (Like I even know what I am talking about. Heh.)

Link to comment
So, I was wondering if there's a better way to understand the program flow than reading assembler

I can only speak for me, but I actually read asm instructions. However, I'm using an interactive disassembler, that allows me to give names to things (local vars, addresses, etc.). It also does some structure decoding, if you provide the structure. (IDA Pro)

That coupled with the debugger (hw breakpoints) and knowledge about the structures allows me to understand/trace what the exe is doing.

The key point for me was getting familiar with the executable (building a DB of names and structures). Some parts now almost read like source code. I invested large amounts of time, though.

(Also keep in mind that this is my first reversing project.)

Link to comment
Have you guys thought of the whole JA 2 1.13 "externalize the .exe to xml libraries" thing?

 

As lynx already said, JA2 was open sourced, they can recompile the executable - not an option for us.

 

I'm trying to externalize things to 2DA whenever possible. However, my list is too large and I don't have much time right now.

 

I've been thinking about moving some things to a LUA lib, to make investigating easier for other people. Still on the design boards, though.

Link to comment
I can only speak for me, but I actually read asm instructions. However, I'm using an interactive disassembler, that allows me to give names to things (local vars, addresses, etc.). It also does some structure decoding, if you provide the structure. (IDA Pro)

Thanks for giving a googlable name. Unfortunately the price is out of my $0~$0 acceptable range, and I mistrust torrenting stuff that costly, so I'll pass the opportunity ???

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...