diff --git a/.gitignore b/.gitignore index 1ec873d..1f82d26 100644 --- a/.gitignore +++ b/.gitignore @@ -131,16 +131,32 @@ xcuserdata/ #-- The 'game' directory is the default working directory for Minecraft PE if running from VS directly. # Ignore original Minecraft PE assets. +/game/assets/environment/clouds.png /game/assets/font/default.png +/game/assets/font/default8.png +/game/assets/gui/feedback.png /game/assets/gui/feedback_fill.png /game/assets/gui/feedback_outer.png /game/assets/gui/background.png +/game/assets/gui/buynow.png /game/assets/gui/default_world.png /game/assets/gui/gui.png /game/assets/gui/gui_blocks.png /game/assets/gui/icons.png +/game/assets/gui/itemframe.png /game/assets/gui/items.png +/game/assets/gui/menubuttons.png +/game/assets/gui/plusknapp.png +/game/assets/gui/raknet.png /game/assets/gui/title.png +/game/assets/gui/touchgui.png +/game/assets/gui/controls/dpad.png +/game/assets/gui/controls/dpad_jump.png +/game/assets/gui/controls/dpadbutton.png +/game/assets/gui/selectworld/add.png +/game/assets/gui/startmenu/sm_multi.png +/game/assets/gui/startmenu/sm_options.png +/game/assets/gui/startmenu/sm_play.png /game/assets/item/camera.png /game/assets/misc/foliagecolor.png /game/assets/misc/grasscolor.png @@ -156,9 +172,6 @@ xcuserdata/ /game/assets/gui/background/panorama_4.png /game/assets/gui/background/panorama_5.png -# Ignore the clouds texture. Adding them yourself will make the game use them. -/game/assets/environment/clouds.png - # Avoid including Minecraft Classic assets from Mojang, for now. /game/assets/patches/*.png /game/assets/patches/classic/*.png diff --git a/README.md b/README.md index 4e049b0..86accbb 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # ReMinecraftPE This project aims to create a custom Minecraft experience based on Minecraft: Pocket Edition as of 2011. It's -based on the mcpe01_canada.apk build of the game. +based on Minecraft PE v0.1.3. **Its goals are:** * To add Quality-of-Life features to Minecraft: Pocket Edition, such as a brighter color gamut, an in-game @@ -29,8 +29,7 @@ based on the mcpe01_canada.apk build of the game. will be supported for as long as possible) * Modify the project structure -Note: While the original mcpe01_canada.apk does not work on anything that isn't the Xperia Play, ReMinecraftPE works on most -Android devices. +Note: While the original Minecraft PE v0.1.3 may not work on newer devices, ReMinecraftPE works on all Android devices. ### This is the main modded version. For the original decompilation, see [ReMinecraftPE/mcped](https://github.com/ReMinecraftPE/mcped) @@ -50,8 +49,8 @@ Want to help this project? [Here's a list of things left to do.](TODO.md) ## DISCLAIMER -This project **requires** you to have a copy of the `mcpe01_canada.apk` (sha256 of the `libminecraftpe.so` -inside: `74b1d3b51a174c4dcaaa58d2bbdf7a4f4c9cfe5f2aeec4844427c2b8f1124343`), before you can build. +This project **requires** you to have a copy of the Minecraft PE v0.1.3 apk (sha256 of the `libminecraftpe.so` +inside: `157af341d13a54cc935bbe24c5e1cf3d02d7e40ec20f9859b9853c2e996ebd81`), before you can build. ## Setup @@ -70,9 +69,9 @@ This fetches the three dependencies we have: 2. Load the sound assets into the `sound_data/` folder in the root of the project by **running the following command**: -* `tools/grabsounds.py /path/to/the/mcpe01_canada/lib/armeabi-v7a/libminecraftpe.so`. +* `tools/grabsounds.py /path/to/the/apk/lib/armeabi-v7a/libminecraftpe.so`. -After that, **prepare the assets folder** from mcpe01_canada.apk. You will need it for the platform specific +After that, **prepare the assets folder** from the apk. You will need it for the platform specific build. ## Building diff --git a/tools/grabsounds.py b/tools/grabsounds.py index a4a5b7c..d37ed9e 100755 --- a/tools/grabsounds.py +++ b/tools/grabsounds.py @@ -17,39 +17,39 @@ except NameError: # defines pcm_addresses = [ - ('PCM_cloth1', 0x0014CFE8), - ('PCM_cloth2', 0x00151614), - ('PCM_cloth3', 0x00155C40), - ('PCM_cloth4', 0x0015A26C), - ('PCM_grass1', 0x0015E898), - ('PCM_grass2', 0x001694EC), - ('PCM_grass3', 0x00174140), - ('PCM_grass4', 0x0017ED94), - ('PCM_gravel1', 0x001899E8), - ('PCM_gravel2', 0x0019463C), - ('PCM_gravel3', 0x0019F290), - ('PCM_gravel4', 0x001A9EE4), - ('PCM_sand1', 0x001B4B38), - ('PCM_sand2', 0x001BB6F4), - ('PCM_sand3', 0x001C22B0), - ('PCM_sand4', 0x001C8E6C), - ('PCM_stone1', 0x001CFA28), - ('PCM_stone2', 0x001DA67C), - ('PCM_stone3', 0x001E52D0), - ('PCM_stone4', 0x001EFF24), - ('PCM_wood1', 0x001FAB78), - ('PCM_wood2', 0x002057CC), - ('PCM_wood3', 0x00210420), - ('PCM_wood4', 0x0021B074), - ('PCM_click', 0x00225CC8), - ('PCM_explode', 0x00231D88), - ('PCM_splash', 0x00243F18) + ('PCM_cloth1', 0x00112B08), + ('PCM_cloth2', 0x00117134), + ('PCM_cloth3', 0x0011B760), + ('PCM_cloth4', 0x0011FD8C), + ('PCM_grass1', 0x001243B8), + ('PCM_grass2', 0x0012F00C), + ('PCM_grass3', 0x00139C60), + ('PCM_grass4', 0x001448B4), + ('PCM_gravel1', 0x0014F508), + ('PCM_gravel2', 0x0015A15C), + ('PCM_gravel3', 0x00164DB0), + ('PCM_gravel4', 0x0016FA04), + ('PCM_sand1', 0x0017A658), + ('PCM_sand2', 0x00181214), + ('PCM_sand3', 0x00187DD0), + ('PCM_sand4', 0x0018E98C), + ('PCM_stone1', 0x00195548), + ('PCM_stone2', 0x001A019C), + ('PCM_stone3', 0x001AADF0), + ('PCM_stone4', 0x001B5A44), + ('PCM_wood1', 0x001C0698), + ('PCM_wood2', 0x001CB2EC), + ('PCM_wood3', 0x001D5F40), + ('PCM_wood4', 0x001E0B94), + ('PCM_click', 0x001EB7E8), + ('PCM_explode', 0x001F78A8), + ('PCM_splash', 0x00209A38) ] -so_file_sha256 = '74b1d3b51a174c4dcaaa58d2bbdf7a4f4c9cfe5f2aeec4844427c2b8f1124343' +so_file_sha256 = '157af341d13a54cc935bbe24c5e1cf3d02d7e40ec20f9859b9853c2e996ebd81' header_1 = '// Minecraft Pocket Edition Reverse Engineering Project\n// Copyright (C) 2011 Mojang Specifications.\n' -header_2 = '// Data extracted from libminecraftpe.so (mcpe01_canada.apk).\n\n' +header_2 = '// Data extracted from libminecraftpe.so (Minecraft PE v0.1.3.apk).\n\n' def read_int_from_bytes(arr_bytes, offset): return arr_bytes[offset] | arr_bytes[offset + 1] << 8 | arr_bytes[offset + 2] << 16 | arr_bytes[offset + 3] << 24