After spending a few weeks of work with Minecraft:PI, I have created a survival mode patch. It has a few bugs that I am working on fixing, but I am posting this as an early release. I also have some tips for people that are using arm assembly language to patch Minecraft:PI.
The first major bug is caused by my survival mode patch that switches vtable offsets around. You can only start a game once after you run Minecraft pi. You then have to fully close it before you can start the game again. The second major bug prevents mobs from being killed. I think it's caused by the difficulty setting.
The first minor bug is the options not being saved, and randomly changing. This will cause the x-axis on the mouse to be swapped randomly when first starting the game. The second minor bug is the right mouse button sometimes getting stuck.
Edit: PTPatch wasn't working right so I removed the old link.
Please test it to make sure it works, and let me know if there any more bugs that I don't know about.
The first tip is to buy Minecraft:PE. You can then use the PE version which has symbols to compare it with the PI version which doesn't have symbols. The best way to compare it is by looking at the vtables. You can find the vtables which look like "9Minecraft" or "7GameMode" They will always have a number before the name of the class. Above and below the vtables, there are multiple addresses. These are the addresses of the functions for the Class.
My second tip is to learn ARM assembly language. It will come in handy when patching almost any ARM linux/android based games.
If you have any suggestions, please let me know.
Thanks for testing this.
Edit: PTPatch wasn't working right so I created a bsdiff patch: https://www.dropbox.com/s/iutdy9yrtg3cgic/survival.bsdiff | https://www.mediafire.com/file/dl3htzlwvgo3i7w/survival.bsdiff/file
Edit: I created another patch that has full screen support for hdmi monitors: https://dl.dropbox.com/s/dscw98vlki7rfsi/mcpifull.bsdiff | https://www.mediafire.com/file/u896xsfha53mac2/mcpifull.bsdiff/file
To Install the patch files, you need to run these commands with the patch file in the mcpi directory.
The first command you only need for the very first install.
apt-get install bsdiff
bspatch minecraft-pi mcpipatched mcpifull.bsdiff
(or)
bspatch minecraft-pi mcpipatched <patchfile>
Once the patch has been installed make sure to enable ssh for the full screen one.
It is impossible to close it without typing blindly or using ssh.
To run the patched version run these two commands:
chmod +x mcpipatched
./mcpipatched
The first major bug is caused by my survival mode patch that switches vtable offsets around. You can only start a game once after you run Minecraft pi. You then have to fully close it before you can start the game again. The second major bug prevents mobs from being killed. I think it's caused by the difficulty setting.
The first minor bug is the options not being saved, and randomly changing. This will cause the x-axis on the mouse to be swapped randomly when first starting the game. The second minor bug is the right mouse button sometimes getting stuck.
Edit: PTPatch wasn't working right so I removed the old link.
Please test it to make sure it works, and let me know if there any more bugs that I don't know about.
The first tip is to buy Minecraft:PE. You can then use the PE version which has symbols to compare it with the PI version which doesn't have symbols. The best way to compare it is by looking at the vtables. You can find the vtables which look like "9Minecraft" or "7GameMode" They will always have a number before the name of the class. Above and below the vtables, there are multiple addresses. These are the addresses of the functions for the Class.
My second tip is to learn ARM assembly language. It will come in handy when patching almost any ARM linux/android based games.
If you have any suggestions, please let me know.
Thanks for testing this.
Edit: PTPatch wasn't working right so I created a bsdiff patch: https://www.dropbox.com/s/iutdy9yrtg3cgic/survival.bsdiff | https://www.mediafire.com/file/dl3htzlwvgo3i7w/survival.bsdiff/file
Edit: I created another patch that has full screen support for hdmi monitors: https://dl.dropbox.com/s/dscw98vlki7rfsi/mcpifull.bsdiff | https://www.mediafire.com/file/u896xsfha53mac2/mcpifull.bsdiff/file
To Install the patch files, you need to run these commands with the patch file in the mcpi directory.
The first command you only need for the very first install.
apt-get install bsdiff
bspatch minecraft-pi mcpipatched mcpifull.bsdiff
(or)
bspatch minecraft-pi mcpipatched <patchfile>
Once the patch has been installed make sure to enable ssh for the full screen one.
It is impossible to close it without typing blindly or using ssh.
To run the patched version run these two commands:
chmod +x mcpipatched
./mcpipatched