Sokoban Mod Wiki – Designing & submitting levels

Only a few levels exist in this mod just now. Coding levels is a time consuming thing. That’s why I’ve made an item which helps with this problem: the Level Converter. When you construct a level in a Minecraft world, you can select the boundaries of this level by rightclicking on one corner of the level. Then shift-rightclick the opposite corner of the level. The converter now takes these two coordinates as the boundaries of a box, and converts every block in this box into Java code (used by me Posted Image). This code is put into a .txt file, and put into a folder called ‘Sokoban Generation Code’, which is located in the same folder as where your ‘Minecraft.exe’ is.

The Level Converter has some special abilities, apart from converting basic block placement into Java code:
-It works on Signs: it can copy the text written on the signs, and converts this to Java. When the level generates, the sign, with the appropriate  text, properly generates as well*.
-It works on Loot Generators: When you right click on a loot generator, the block sucks the item you’re holding out of your inventory, and puts it into the Loot Generator. On redstone signal, these items will be given back, but you can use this if you want the level to give special rewards, because when you convert a level which includes a Loot Generator, it saves the loot located in the Loot Generator!
-The Level Converter works on chests. Items you’ve placed in there will be saved in the level. Also, you can add random chest loot if you ask me. For me this is not much effort Posted Image.
-Works with Command Blocks, it saves the command stored.

*Note that the Level Generator has one important requirement: It needs at least one sign in the level that indicates about the level’s difficulty, number and name. The sign should be formatted as:
<difficulty>
#<number>
<name>
So if your level is an easy level, number 1 called “Vaporizing Loot”, the sign should look like:
”    Easy Level     ”
”            #1             ”
“Vaporizing Loot”
”           SSP           ” (note that this line is not necessary)

Maybe you’re asking yourself why I would give this information about how I design levels. Well, even though this method saves me a lot of time coding every level, designing levels still takes lots of time. I would really appreciate it if you would help me design levels!Posted Image

If you’d like to do that, that’s awesome! To be added into this mod, there are some requirements which should be met though:
-Levels should not be cheatable: Players shouldn’t be able to break important blocks which let them complete the level too easily. This also means that any redstone should be covered well: No levers should be able to be attached at redstone sensitive locations. You can do this by using Concrete Stone/Glass, which is unbreakable, and no torches/levers/buttons can be attached to these blocks.
-Levels should not be farmable: Players shouldn’t be able to farm valuable blocks. For example, if the level contains an accessible diamond block, the player can mine this block, reset the level, generate the level again, and farm this block again. Not every block has to be unbreakable though. Blocks like stone, buttons and levers aren’t that valuable, and can be added in the level. If you want to add valuable blocks (like redstone), make sure they are a) unreachable, or b )unbreakable.
-Levels should be accessible from the downmost block, as levels are generated (from a Level Generator) at the level of the player, and above. Players shouldn’t have to build a stairway theirself.
-Keep in mind that the majority of the levels are going to be generated underground. Therefore, the levels should be for the most part be closed (roof, walls). Also, as the Level Converter converts the level in a box shape, levels also has to be shaped like a box. Else, underground spawned levels will have a lot of air gaps around it. Though, you can decide to make a piramid-like structure for example, which has to be generated above ground. Take Easy Level #1, for example. These levels only will be generated above ground.

I hope that you’re not too scared by this requirements list. Like I said, I really appreciate any input from the community. Though, it would be sad if you’d put a lot of work into a level, and I can’t put it into the mod, because of the above listed requirements, that weren’t mentioned before.

Doing more with Minecraft!