Map Builder
by MrBoogle
Introduction
Hello there,
I am Boogle, and I am a terrible builder. I am constantly making FPS type projects, mainly just for practice for when I can finish an actual project. The issue is, is I am always stuck with a baseplate because I can’t build anything half decent for the life of me.
So I decided to program a plugin that can use a number format to build a map for me. The number format is actually very simple in how it works.
Number Format
Each wall is a 14 character long number. An example of these numbers would look like this
01045050200400
This number make look overwhelming, but I assure you it is very simple to understand.
Lets go through it.
01
This is the color of the line, I have made a 99 color palette for this, which is an odd number but the main reason was I did not want to make colors use 3 bytes of data. It can easily be expanded upon.
045
This is the angle of the wall. The current map builder I have provided does not use this, but I plan to eventually make a version that uses this.
050
This is the length of the wall. This can be changed in the map builder, but the plugin will currently make any wall that has a length of <= 64 a square.
200
This is the X position of the wall
400
This is the Z position of the wall
Why this can be useful.
This plugin can be useful if you are making prototype maps for your game. Currently that is all I would be using it for. I plan to add lots of features that would actually make this useful. I was thinking of making custom entities support, so you could make the plugin create objects in certain places if you wish.
Example
Map builder
Studio
Setup
This is a simple plugin to use, but please realize it currently uses an external map builder(that is really not good) the Map Builder is an EXE file, and I don’t have plans to change this one for any more platforms.
Plugin Link: Map Loader - Roblox
Map Builder Application: MapBuilder.zip (1.6 MB) Warning: This program may be detected as a virus in Windows, this is due to the fact it deletes old map files when you open it.
Map Builder Application (Anti-Virus): I have changed a few things in this version to hopefully prevent Windows Defender detecting this as a virus. This version does no longer automatically delete old map files, and also uses less CPU. MapBuilder.zip (1.6 MB)
When you design a map in the map builder, just exit the application and it will automatically save a file to your application directory called map.boogmap
This file will be in UTF-16le binary, which means it will not work by default. So you need to run the encode.bat application, and it will encode it in UTF-8 and delete the old map.boogmap file and create a output_map.boogmap file which you can then load into the application. If you get confused, please let me know and I will elaborate.
More Info
The application for the map builder was created in Clickteam Fusion 2.5 Developer Edition
The example file was created by @poopernugetman
If you have concerns or questions, please leave them below.
This plugin uses a custom file format I made called *.boogmap, very corny right. It just contains a lot of numbers according to the number format above. This technically means you can edit it in a text document editor and make any changes you desire.
Warning: This plugin requires the file encoding to be UTF-8 or else it will error
I provided a python file that will convert UTF-16le files to UTF-8, which is what the map builder outputs.
Features and future plans
Map Builder V1 (Current One)
- Basic grid like placement of squares
- Windows Application Only
- No color preview
Map Builder V2 (Upcoming)
- Vertex like placement, walls will have different angles and lengths to adapt for your need. Similar to a Doom Wad map.
- Will be wrote in Python to allow for more support of platforms
- Color preview
- Custom entity lists, allows you to spawn health kits / power ups at a point
Custom Map Builders
If you follow the number format above, there is nothing stopping you from creating your own map builders for this.