Skip to content

add maprando options to rom for autotracker use.#348

Merged
blkerby merged 3 commits intoblkerby:mainfrom
nn357:add_more_game_settings_to_rom
May 8, 2026
Merged

add maprando options to rom for autotracker use.#348
blkerby merged 3 commits intoblkerby:mainfrom
nn357:add_more_game_settings_to_rom

Conversation

@nn357
Copy link
Copy Markdown
Contributor

@nn357 nn357 commented May 7, 2026

single byte per setting (5 bytes), ordinal numbers / no bitflags.

thought about using FF for custom value but it might look like the setting hasn't been set etc.

should work as intended

mark as draft for now any feedback / suggestions etc before i mark it as ready is appreciated but there is no rush for this.

[u8]0xdfff09 (Skill setting)

0x00 = custom
0x01 = basic
0x02 = medium
0x03 = hard
0x04 = very hard
0x05 = expert
0x06 = expert+
0x07 = extreme
0x08 = extreme+
0x09 = insane
0x10 = insane+

[u8] 0xdfff0a (prog setting)

0x00 = custom
0x01 = normal
0x02 = tricky
0x03 = technical
0x04 = challenge
0x05 = desolate

[u8] 0xdfff0b (qol setting)

0x00 = custom
0x01 = off
0x02 = low
0x03 = default
0x04 = high
0x05 = max

[u8] 0xdfff0c (objectives setting)

0x00 = custom
0x01 = none
0x02 = bosses
0x03 = minibosses
0x04 = chozos
0x05 = pirates
0x06 = metroids
0x07 = random

[u8] 0xdfff0d (map layout)

0x01 = vanilla
0x02 = small
0x03 = standard
0x04 = wild

nn357 added 2 commits May 8, 2026 03:21
single byte ordinal (no bitflags)

[u8]0xdfff09 (Skill setting)

0x00 = custom
0x01 = basic
0x02 = medium
0x03 = hard
0x04 = very hard
0x05 = expert
0x06 = expert+
0x07 = extreme
0x08 = extreme+
0x09 = insane
0x10 = insane+

[u8] 0xdfff0a (prog setting)

0x00 = custom
0x01 = normal
0x02 = tricky
0x03 = technical
0x04 = challenge
0x05 = desolate

[u8] 0xdfff0b (qol setting)

0x00 = custom
0x01 = off
0x02 = low
0x03 = default
0x04 = high
0x05 = max

[u8] 0xdfff0c (objectives setting)

0x00 = custom
0x01 = none
0x02 = bosses
0x03 = minibosses
0x04 = chozos
0x05 = pirates
0x06 = metroids
0x07 = random

[u8] 0xdfff0d (map layout)

0x01 = vanilla
0x02 = small
0x03 = standard
0x04 = wild
@blkerby
Copy link
Copy Markdown
Owner

blkerby commented May 7, 2026

It looks good to me. I would probably just not use the word mask in the write_*_mask functions because there's not really a mask involved, it's just writing data.

@nn357 nn357 marked this pull request as ready for review May 8, 2026 05:09
@nn357
Copy link
Copy Markdown
Contributor Author

nn357 commented May 8, 2026

It looks good to me. I would probably just not use the word mask in the write_*_mask functions because there's not really a mask involved, it's just writing data.

good call, that was a vestigial remnant as I originally was going to use bitmasks and some fancy combining to reduce the data but its only 5 bytes for all the settings and should make decoding it all on the autotracker side easier the way it is now, i've renamed the functions accordingly.

@blkerby blkerby merged commit dabcdd8 into blkerby:main May 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants