11 March 2016 - Forum Rules

Main Menu

Project Scrap Brain NES - We need your help!

Started by sics, May 22, 2022, 05:01:46 PM

Previous topic - Next topic


We've come a long way with the Sonic project for the NES and among the improvements that are part of the new update is the addition of a new level that we plan to use to recreate Scrap Brain Zone.

That's why our main objective is to find people who are interested in helping to make this a reality and in the best of cases enable the possibility of implementing more improvements to the rest of the levels.

Because while the tools we have available are viable for doing a lot of the work, they're not optimal for doing anything really sophisticated, mainly because repositioning enemies and items is still done entirely by hand, among other things.

Currently, we have a script that converts NESst/NEXXT data into Somari block data, which means we can make the basic blocks of a level in practically minutes.

The problem is that the CadEditor codec is incomplete, not registering the object types of each block and saving the block attribute settings in the wrong format.

For the level designs I was using Tiled and although it is very versatile, since I am not working with the game data directly, updating each modification I make becomes quite cumbersome.

Sample of what you can do

Therefore, the ideal would be to have a specialized tool for the case or at least to remedy the shortcomings of current editing methods, completing the CadEditor codec, creating a script to import and export Tiled data, and developing an application that helps to visualize more easily the relative position of each object that makes up a level...

On the other hand, this invitation is also extended to people with experience in level design or who feel that they can contribute something significant to the development of the project, for more information about it you can visit our thread.

Remember that in the last update credits have been incorporated at the end of the game, that's why your time in this project will be immortalized forever, we count on your support!

Linktree  | Better a small finished project than a thousand giant ideas stuck in your system.


Quotecreating a script to import and export Tiled data

I think I can do that, if you describe the exact script logic to me.


Actually, I replaced the level blocks by their equivalent in hexadecimal numbers, to export an image and use an OCR recognition program to get the level data.

Ideally, I would need something as close as possible to this (omitting of course all the unnecessary steps) and on the other hand, a script that does exactly the opposite, taking the hexadecimal data and passing it to Tiled. (Tiled Data)
Linktree  | Better a small finished project than a thousand giant ideas stuck in your system.


I skimmed without much investigation so I'm unsure if this helps, but I wrote you a substitution cipher in Python:

byte      = "02 03 00 02 01 03 03 04"
cipher    = {"00":"0A", "01":"0B", "02":"0D", "03":"0E", "04":"0F"}
separator = " "

byte      = byte.split(" ")
transcode = ""
for offset in range(len(byte)):
    transcode += cipher[byte[offset]] + separator
if separator != "":
    transcode = transcode[:-len(separator)]

The code works kind of like supplying a .tbl file to a hex editor. It takes the input "02 03 00 02 01 03 03 04," to the right of the "=" sign after "byte," then transcodes it using the cipher dict to "0D 0E 0A 0D 0B 0E 0E 0F." The format of the cipher is a comma-separated "what to replace":"with what to replace it" as enclosed by curly braces. The value of "separator" specifies by what string each byte is separated in the printed output.

Change lines 1-3 as needed. If you neither have nor want to download Python, use an online IDE like this one:

You may be able to open the .tmx in a text editor like Notepad and transcode to the ROM format the relevant parts of the Tiled data, or do the reverse by transposing what in "cipher" is before and after each colon.


Foremost, I would really like to thank you for your effort, but I must tell you that we have already tried to do the same with "Replace Text", the problem is that rearranging the output data is much more laborious than the method we are currently using ;)

On the other hand, speaking in more general terms, Ti_ has started working on its own editor, which although it's somewhat limited at the moment, it provides the functionalities that slowed down the development of new scenarios, so I think it's best to focus on continuing with what we have, for the moment...

Edit: Now that I was taking the screenshots I realized that the current version of Tiled has more export formats than when I first used it and among them there is one that could be adapted to be processed with the application I mentioned, thank you very much I would not have reconsidered this alternative if it were not for your intervention :beer:
Linktree  | Better a small finished project than a thousand giant ideas stuck in your system.