Live data from Hacker News

Patching MechCommander's "left arm bug" for fun and profit

mhloppy.com

1–10 of 37 posts

Re: Patching MechCommander's "left arm bug" for fun and profit

#3
post #2

This is cool, maybe "target left arm" implies that it's your left, when targetting them and you're facing each other. So, their right arm.

Btw, I recently did my first patches with ghidra. Is there any way to avoid jumping into a code cave by shifting all the instructions up then updating any statements referring to those memory locations? Seems like it should be simple enoigh in theory, but I didn't find an implementation on a cursory search. Could probably code up a plugin pretty easily.

Re: Patching MechCommander's "left arm bug" for fun and profit

#6
Great writeup! Vividly remember this being a thing especially in multiplayer. What was that janky match matching service, MSN something?

Also a really underrated game, the mechanics (line of sight over the horizon stuff) and isometric graphics were pretty cool for the time and it had a well developed story/campaign mode.

Re: Patching MechCommander's "left arm bug" for fun and profit

#8

I really need to put some of these techniques to the test with Metal Fatigue.

A rare gem to see someone talking about MF. I used to play lots of it with friends, our games would last for over 48 hours (we wouldn’t sleep). Different time.

Re: Patching MechCommander's "left arm bug" for fun and profit

#10
post #3
post #2

This is cool, maybe "target left arm" implies that it's your left, when targetting them and you're facing each other. So, their right arm.

Btw, I recently did my first patches with ghidra. Is there any way to avoid jumping into a code cave by shifting all the instructions up then updating any statements referring to those memory locations? Seems like it should be simple enoigh in theory, but I didn't find an implementation on a cursory search. Could probably code up a plugin pretty easily.

How can you be dead certain that all references are known in Ghidra?

Just non-disassembled function or unidentified struct would ruin your plans…

Post reply on HN