Instead of continuing my necropost 😶, I will make a new thread. So, I have been looking through the source of the game, and so far, here are my discoveries. Firstly, and most importantly, the levelmap. In main.c, there is a level map, that is currently

Code:
unsigned char map[MAP_HEIGHT][MAP_WIDTH] = {
        "1311111311111131",
        "1000000000000001",
        "1000000000011001",
        "1000000000051001",
        "1000000000011011",
        "1000000000000011",
        "1115102200000011",
        "1111102200000001",
        "1111100000000001",
        "1111111111111001",
        "1000000000000001",
        "1000000000000001",
        "1015110000000001",
        "1011111111111111",
        "1011000000000001",
        "1000011000100001",
        "1311111141111131"
};

Now that we have an editable map, we need to figure out what each number means. Looking through the source again, there are 6 images, wall followed by 0-5, as a png. There are a couple of sprites here that you see in the game, like the spider sprite, 2 (?) walls, and some other walls, like the ladder wall which is the win condition. TheLastMillennial suggested that the codes would be
"0 - floor
1 - wall
2 - radiation
3 - unknown
4 - escape ladder
5 - health "
So, to check, i decided to make a test map for the game, the maps gonna look like this

Code:
unsigned char map[MAP_HEIGHT][MAP_WIDTH] = {
        "1111111111111111",
        "1000000000000001",
        "1012345000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1000000000000001",
        "1111111111111111"
};

I ran it, aaaaaaand it just showed the default map from the original game :/ Will be testing more...
If you look at the features.py and main.c (line 717 is the most helpful) files in the original source, you can see that if you subtract 1 from each, they match up with the corresponding wall*.png files in the source directory. So TLM is correct:
0: blank
1: wall texture 1
2: radioactive
3: wall texture 2
4: ladder
5: health
6: wall5.png is the spider, not included in the map though

It would take pretty minimal effort to make an editor for this and modify the original source to accept a custom map from an appvar, but I'd talk to patrickdavidson to make sure he's fine with you messing around with it.
epsilon5 wrote:
If you look at the features.py and main.c (line 717 is the most helpful) files in the original source, you can see that if you subtract 1 from each, they match up with the corresponding wall*.png files in the source directory. So TLM is correct:
0: blank
1: wall texture 1
2: radioactive
3: wall texture 2
4: ladder
5: health
6: wall5.png is the spider, not included in the map though

It would take pretty minimal effort to make an editor for this and modify the original source to accept a custom map from an appvar, but I'd talk to patrickdavidson to make sure he's fine with you messing around with it.
I tried making that custom level, but when i built it it just ran the exact same level that is in the original game (no clue why). I have been looking through the ASM and all the other files looking if there is in fact another levelmap, but no luck thus far :| ...


i couldve just built it wrong @_@
Yep, you probably built it wrong. Make sure everything is saved and you delete the old declaration and try it again.
Update: Tried to build it with CEdev, and after a lot of fiddling with the makefile, it asked for a certain palette.h, which i don't have. Does anyone know of this pallette.h? it doesnt seem to be in the source for the game...

Another update, I tried building it, this time it didnt even give me a .8xp file! (this is gonna take a while)

update: Running the headers.py finally gave me a pallette.h!!! yippe!!

update 3: currently, I am playing wack-a-mole with the variables, as after running the python, the variables went everywhere so I have to make EVERYTHING
Code:
extern
. This might be my last update for a while, I might take a break from this...
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement