[slightly-OT] Game reverse engineering

NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Forum rules
NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Locked
Darkstar
Posts: 44
Joined: Thu May 14, 2020 1:34 pm

[slightly-OT] Game reverse engineering

Post by Darkstar »

Hi!

I was recently thinking about creating some kind of centralized Wiki for game file reverse engineering stuff. It would be a good place for people to post their findings about game data files so that others might pick up the work and don't have to start from scratch. I, for example, already have some stuff for Might & Magic lying around, which I could post there.

I'm interested in opinions from other developers: how useful do you think such a Wiki would be?

--Darkstar
Armchair Avatar
Posts: 30
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by Armchair Avatar »

I think a Wiki like this would be very useful:
- If someone has reverse-engineered parts of a game and then loses interest, he can add the information to the Wiki so it won't be lost.
- The information in the Wiki might encourage someone to start reverse-engineering a particular game.
- If a reverse-engineer gets stuck at a partciular point in a game, he can use the Wiki to get help from others.

I'm sure there are more reasons, but basically a Wiki would speed up the reverse-engineering process.
Madoc

Re: [slightly-OT] Game reverse engineering

Post by Madoc »

I think "hard" reverse-engineering of commercial games, so it would be somewhat pointless to make a Wiki for it.
Madoc

Re: [slightly-OT] Game reverse engineering

Post by Madoc »

Ouch! The previous posting should have been:

I think "hard" reverse-engineering of commercial games is illegal, so it would be somewhat pointless to make a Wiki for it.
wjp
Site Admin
Posts: 1708
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by wjp »

A related wiki is the multimedia wiki:

http://wiki.multimedia.cx/
Darkstar
Posts: 44
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by Darkstar »

I don't know exactly what you mean by "hard" reverse-engineering, but I'm pretty sure that -- provided you do not circumvent any copy protection schemes -- reverse-engineering is legal. At least in the country where I live (and where the server resides).
However, IANAL, so don't take my word for it.

Here's the wiki:

http://rewiki.regengedanken.de/

Anyone interested in sharing his/her findings is invited to post it there.

--Darkstar
Armchair Avatar
Posts: 30
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by Armchair Avatar »

I don't know exactly what you mean by "hard" reverse-engineering
By "hard" reverse-engineering, he probably means disassembling a program and trying to understand the assembler code.
The "soft" approach would be to modify the program's data files and examine how this changes the program's behavior.
Wizardry Dragon
Posts: 1241
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by Wizardry Dragon »

Exult takes the soft approach. It's not illegal to scratchbuild an engine using old data files - but it IS illegal to distribute those datafiles. That is why Exult's information is kept seperate in Exult.flx and also why mod Shapes.vga files contain the data added, not all the original data.

However, many (but not all) game License Agreements come with a clause that makes it a breach of the License Agreement to decompile the binaries that ship with the game. Again, this does not make it illegal to scratchbuild an engine that reads the datafiles - but you cannot decompile the executable to even see how it works. That is what made usecoding difficult in the early days, because the only way we could determine how things worked was by good old fashioned trial and error. It was the classical "black box" scenario, if you would.
--------
Peter M Dodge aka Wizardry Dragon
Lead Designer,
Ultima VII: The Feudal Lands
Cheers, Wizardry Dragon
Lead Designer, Ultima VII: The Feudal Lands
www.thefeudallands.ca
drcode
Site Admin
Posts: 2267
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by drcode »

It was also a little like doing a crossword puzzle, where getting a few things right made it possible to guess more things. So once enough was implemented so that you could try to use the fishing pole, we'd notice that we got an "unimplemented' intrinsic when you clicked on the water. And then we could guess that this was probably a test for whether you were clicking on water.

It was frustrating but fun. Ah... the good old days:-)
DreamMaster

Re: [slightly-OT] Game reverse engineering

Post by DreamMaster »

Remember that so-called license agreements can't take away rights that you're guaranteed to by law. Even in backwater places like the US :) with their DMCA, I recall there was still an explict exemption left in allowing decompilation of programs for the purpose of compatibility.

I feel the same way as DrCode - I'm currently in the middle of reverse-engineering the game Lure of the Temptress to make a ScumMVM, and it's been enormous fun. I've even used the crossword/jigsaw analogy when it explaining to friends, who couldn't believe I'd do such a hard thing in my spare time.
DreamMaster

Re: [slightly-OT] Game reverse engineering

Post by DreamMaster »

I meant make a ScummVM module above. I need to learn to proof read my messages before I post.
Allan (can't remember logon!)

Re: [slightly-OT] Game reverse engineering

Post by Allan (can't remember logon!) »

I was wondering about this in regards to Interplay's Lord of the Rings duology (lol, they never made Return of the King!). It was a great RPG to play, but looking at it now, the engine was pretty bunk.

I've been wondering if it would be worth it to remake, and I can't find anyone else doing it after searching through mountains of stuff on the recent movies and games.

Back to Ultima, sorry about that. :)
Darkstar
Posts: 44
Joined: Thu May 14, 2020 1:34 pm

Re: [slightly-OT] Game reverse engineering

Post by Darkstar »

An Interplay LotR remake is in progress. It is linked here:

http://rewiki.regengedanken.de/wiki/Lin ... mentations

(or, if you prefer the direct link, it's this one: http://www.karlin.mff.cuni.cz/~benes/lotr/ )
Allan

Re: [slightly-OT] Game reverse engineering

Post by Allan »

I wonder if that link has been updated recently at all. I actually found it once.

I think I'll contact the author, just for fun. Its built for Linux, which I don't have running on any of my boxes, but he might have info on the file formats.

I popped it into PSP, and it looks like the tiles are 16x16, but things don't always line up, like walls and scenery could be placed offset on a tile. Hrm...

Edit by Dominus: the thread needed freezing as it was collecting spam ;(
Locked