5 ms·
Reverse Engineering Star Wars: Yoda Stories (2014)
- United857 4y agoThose four letter chunk IDs seem suspiciously like IFF (https://en.wikipedia.org/wiki/Interchange_File_Format https://en.wikipedia.org/wiki/Interchange_File_Format) in which case there's a bunch of generic parsing/extraction code out there which will avoid a lot of reinventing the wheel here.
- cleim 4y agoIt looks very similar, but it think that’s mainly due to the TLV pattern they both use https://en.m.wikipedia.org/wiki/Type%E2%80%93length%E2%80%93value https://en.m.wikipedia.org/wiki/Type%E2%80%93length%E2%80%93... For some tags the file format deviates from the pattern. E.g VERS does not have a length field.
- samspenc 4y agoI remember doing similar things over 20 years ago with games that had poor customization. Open up the binaries, search for strings, and replace strings with custom text (e.g. character names etc). I learned quickly that I had to keep the string replacement the same length in order to fit with the byte boundaries otherwise the game would crash. But this author has taken reverse engineering to a whole new level, not just finding where text resides, but being able to parse out entire images (maps etc) by finding patterns in the binary representations. Truly Jedi Master level.
- orionblastar 4y agoI remember someone did this and found a Corvette in the sprites that was never used. Mark Hamill in Corvette Summer. A joke.
- King-Aaron 4y agohttps://yodastories.tumblr.com/eastereggs https://yodastories.tumblr.com/eastereggs
- paulryanrogers 4y agoFor another SW game being reverse engineered see TheForceEngine.GitHub.io The project is reversing the Jedi Engine from "Dark Forces" and "Outlaws". The fan doing it is clearly talented and a former game dev.
- graderjs 4y agoThis was incredible
- dirtyid 4y agoFond memories of Yoda Stories and Indy Desktop Adventures, had no idea they reviewed so poorly.
- cleim 4y agoReally great article. For anyone interested, I built a somewhat working reimplementation of the whole game at https://www.webfun.io/ https://www.webfun.io/ Reverse engineering the world generation algorithm and internal scripting language were especially challenging.