lol you could probably just ask zhuowei to add more block ids, he did with items. also byte would have nothing to do with this
Zhuowei doesn't have time to implement something as ambitious as extended Block IDs, and he's "petitioning" me as well because I have already began small work on this. This task is MUCH harder than extending item ids.
Most of you may know already that Minecraft PE currently only supports Block IDs up to 255. The game also only has room for 255 unique items. BlockLauncher extends this available Item count to 4096 so modders can be much more flexible. Many people ask Zhuowei or I to extend the Block IDs as well, however this is not quite as feasible as was extending Item IDs. Here's a few reasons why this is not an easy task:
1. We could in theory (I tested this to see if it works) hook LevelChunk::LevelChunk, reallocate it and provide a larger Block array, and then spend years overwriting every use of the array in the assembly. However, PEs level storage only uses one byte (0-255) to store Block IDs. If we were to programatically extend Block IDs to 4096 or more, the size of world saves would double, and then when users opened that world in Vanilla MCPE the world would corrupt.
2. MCPE uses a struct called FullBlock throughout the code. This holds a uint_fast8_t BlockID (only one byte) and uint_fast8_t DataID (also one byte). If we wanted to use 4096 BlockIDs, we would need to change every use of FullBlock throughout the code in the assembly and move the Data up one byte. However, this is unfortunately challenging since, to save space, ONLY two bytes are allocated on the stack for FullBlocks, so there's no room to move anything.
Right now the two most feasible plans, discussed by MackTheHobbit and I, are as follows:
1. Use one single ID to hold every extra Block, and simply setup its vtable to use all its sub-blocks accordingly. Unfortunately, this means that every custom Block over ID 255 will have the same Destroy Time, resistance, light emission, etc.
2. The potentially better albeit more difficult plan would be something akin to Minecraft Forge for PC: Use the high bits of block metadata to store an extra 4 bits of BlockIDs(block metadata is a byte in size but only 4 bits of that are used) Since the stack space allocated for FullBlocks is 2 bytes and not a Byteandahalf™, this would avoid problem #2 seen above. Then, when the Chunk is serialized, we can store the higher BlockIDs in a separate database from the normal world save, thus defeating problem #1 above
Please do share what you all think, as Mack and I may attempt this if we get backup from the community
I didn't make this before I learned addons. You need to know how to make addons in order to add a function to BlockLauncher. Also, don't call ModPE a "part" of addons, it absolutely isn't. ModPE just poorly wraps ACTUAL modding code (C++) in JavaScript to make it easier for people to code that don't know how to. It is not a part of addons nor will it EVER be as good as addons.
Somebody please lock this. I stopped developing this a year ago!! D:
None of that made sense. First of all iOS doesn't even have apks, those are Android apps. Anyway no, there's really no way to make this mod work without jailbreak due to iOS having memory protections.
This is an example of a Texture Pack running on MCPE: Windows Phone Edition. Currently the installation process is quite inconvenient. To do this I opened up the appx, replaced the textures inside, resigned the appx using Windows Phone developer tools, and installed it onto my device (which must be registered as a development device). The result looks like this:
Unfortunately I can't post a link since this is a modified appx of the original app, but here are some instructions:
NOTE THAT DOING THIS WILL ERASE YOUR WORLDS FOR MCPE WINDOWS PHONE EDITION!!!!!!
First, use this direct download of the game's appx (directly from the appstore, not pirated and not hosted by me. Windows Phone requires that you have bought the app to install it) Open this appx in 7zip, and move all the files inside to a folder called MCPE TP. Modify the things is the data/ folder (this includes textures, etc). Now to proceed, make sure you are on Windows 8.0, 8.1, or 10 (Tech preview), and make sure you have Microsoft Visual Studio Express for Windows installed (this should come with the Windows Phone SDKs). Now if you have this done, go to a command line and run this command:
Now make sure your device is registered to be a development device (meaning it should be "unlocked"). Google can help you with this. If you have this accomplished, plug in your device into your computer, open a command line and type these commands:
To pause the game on Kindle Fire, just tap the Kindle Fire tab on the right side (that would bring up your home, back, search buttons, and notification bar), and tap the back button. This will pause the game. Also the pause button that appears at the tap right corner isn't a feature that was removed in a new version, it's just that the button only appears on iOS devices (iPod, iPhone, iPad)
0
Added source code links for both the Android and iOS versions of the mod.
1
Zhuowei doesn't have time to implement something as ambitious as extended Block IDs, and he's "petitioning" me as well because I have already began small work on this. This task is MUCH harder than extending item ids.
1
Most of you may know already that Minecraft PE currently only supports Block IDs up to 255. The game also only has room for 255 unique items. BlockLauncher extends this available Item count to 4096 so modders can be much more flexible. Many people ask Zhuowei or I to extend the Block IDs as well, however this is not quite as feasible as was extending Item IDs. Here's a few reasons why this is not an easy task:
1. We could in theory (I tested this to see if it works) hook LevelChunk::LevelChunk, reallocate it and provide a larger Block array, and then spend years overwriting every use of the array in the assembly. However, PEs level storage only uses one byte (0-255) to store Block IDs. If we were to programatically extend Block IDs to 4096 or more, the size of world saves would double, and then when users opened that world in Vanilla MCPE the world would corrupt.
2. MCPE uses a struct called FullBlock throughout the code. This holds a uint_fast8_t BlockID (only one byte) and uint_fast8_t DataID (also one byte). If we wanted to use 4096 BlockIDs, we would need to change every use of FullBlock throughout the code in the assembly and move the Data up one byte. However, this is unfortunately challenging since, to save space, ONLY two bytes are allocated on the stack for FullBlocks, so there's no room to move anything.
Right now the two most feasible plans, discussed by MackTheHobbit and I, are as follows:
1. Use one single ID to hold every extra Block, and simply setup its vtable to use all its sub-blocks accordingly. Unfortunately, this means that every custom Block over ID 255 will have the same Destroy Time, resistance, light emission, etc.
2. The potentially better albeit more difficult plan would be something akin to Minecraft Forge for PC: Use the high bits of block metadata to store an extra 4 bits of BlockIDs(block metadata is a byte in size but only 4 bits of that are used) Since the stack space allocated for FullBlocks is 2 bytes and not a Byteandahalf™, this would avoid problem #2 seen above. Then, when the Chunk is serialized, we can store the higher BlockIDs in a separate database from the normal world save, thus defeating problem #1 above
Please do share what you all think, as Mack and I may attempt this if we get backup from the community
Thanks for listening,
Byte
0
um dude the PC version is just like that, it's not a bug. And I don't know what you mean by "an older PC file"
0
It's an addon dude. You just install the apk and open BlockLauncher. Also disabled any other mods in BlockLauncher.
0
It's not compatible with most addons either.
0
I just updated it....
0
No, unfortunately.
2
Alright guys, I'm back to modding! Refollow me on Twitter @byteandahalf I'll be updating the mod to 0.12.1 soon!
0
Here's what I have done for v1.1 and what I have left to do. Please be patient, I don't know when it's coming out, but soon.
Done:
- Pistons no longer randomly change shape
- Pistons, Pressure plates, and Lamps are no longer removed by water
- Fence gates can be powered by redstone
- Redstone dust FINALLY connects to repeaters
- Redstone Blocks work properly now
- Pressure plates can be placed on fences
- Slimes drop slimeballs in preparation for sticky pistons
TODO:
- Pistons can face upward and downward
- Pistons look like blocks in the inventory (instead of being flat)
- Detector rails work properly
- Fixed lighting bugs with redstone at night
- Repeaters and detector rails stop ticking after you leave the world
- Update for MCPE 11.0
0
I didn't make this before I learned addons. You need to know how to make addons in order to add a function to BlockLauncher. Also, don't call ModPE a "part" of addons, it absolutely isn't. ModPE just poorly wraps ACTUAL modding code (C++) in JavaScript to make it easier for people to code that don't know how to. It is not a part of addons nor will it EVER be as good as addons.
Somebody please lock this. I stopped developing this a year ago!! D:
0
It replaces the sword tab, but everything in that tab has been moved to tab 3
0
None of that made sense. First of all iOS doesn't even have apks, those are Android apps. Anyway no, there's really no way to make this mod work without jailbreak due to iOS having memory protections.
2
Unfortunately I can't post a link since this is a modified appx of the original app, but here are some instructions:
First, use this direct download of the game's appx (directly from the appstore, not pirated and not hosted by me. Windows Phone requires that you have bought the app to install it) Open this appx in 7zip, and move all the files inside to a folder called MCPE TP. Modify the things is the data/ folder (this includes textures, etc). Now to proceed, make sure you are on Windows 8.0, 8.1, or 10 (Tech preview), and make sure you have Microsoft Visual Studio Express for Windows installed (this should come with the Windows Phone SDKs). Now if you have this done, go to a command line and run this command:
Now make sure your device is registered to be a development device (meaning it should be "unlocked"). Google can help you with this. If you have this accomplished, plug in your device into your computer, open a command line and type these commands:
The game should install and it should have your modifications
0