Hello everyone, I open this thread to present this tool: MSX Screen 2 - Tiles & Maps Generator by Sagaz
This is the online version of a utility that was created a few years ago to help to develop a game with a multidirectional scroll, and we wanted to to take advantage of the three diferents bank tiles in Screen 2 automatically.
All you need is a .png image that meets the limitations of Screen 2 (Max of two MSX1 colors for each 8*1 portion), and the program will look for the solution that maximizes the reuse of tiles an names depending on how many thirds they will be used, and how scrolls through the name table. To facilitate the tests I have put some images that more or less meet the preconditions, many are from ZX Spectrum because it has been easier for me to find large maps for this system.
Even if an image that does not meet the limitations is provided, the conversion will be done, but in this case the results will not be good because the algorithm that titelizes is very simple since it is not the main objective. There is a warnings window that shows the positions of the image that have not complied with the rules.
There are also some limitations, the image size cannot be smaller than the scroll area, which for now is the full screen (32x24 tiles or 256x192 pixels). The image starts processing from 0.0, and if the size X or Y are not a multiple of 8, the remaining pixels are discarded.
If everything goes well, several output files will be generated:
- An image of the tileset generated at 2X with spacing between the tiles.
- An image of the tileset generated at 1X
- The binary version of the attributes
- The binary version of the colors
- The binary version of the names
Also, if map sizes and compressed tiles allow it, it will generate a .ROM (maximum 32KB) with the Scroll Engine that was created for the same unreleased game. You can move with cursors for a full speed scroll (1 tile per frame), or hold de space for a slow movement.
Here I put an example from the Golvellius map:
Internally, the kernel is a Java command line application, it uses the AsMSX assembler to generate the ROM, and Bitbuster to compress the colors and attributes. PHP is used for web interface and as glue code for everything to work. Everything runs in a very small Linux VPS, hopefully it holds on line.
There are some improvements that are already underway, such as:
- To be able to make the Scroll window one of the tiles we want (In order to use frames or markers)
- Give the possibility, if the image allows, to generate a single set of tiles for three thirds
And others that could help to be a useful tool to develop new games:
- Be able to block certain numbers of tiles so you do not use them.
- More detailed information if there are more tiles to help debug the image.
Enjoy, and please feedback me with bugs, sugestions, critics, etc...