Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified patches/ips/map_progress_maintain.ips
Binary file not shown.
1 change: 0 additions & 1 deletion patches/rom_map/Bank 89.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
AF00 - AF31: ; hud_expansion_opaque.asm
AF60 - B0BA: ; Area FX.asm
B100 - B200: nothing item graphics (zeros, used only for Bomb Torizo Room; nothing_item.asm)
B200 - B800 : mapstation partial reveal bitmask.
25 changes: 12 additions & 13 deletions patches/src/map_progress_maintain.asm
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
arch snes.cpu
lorom

;!map_station_reveal_type = $90F700 ; 0 = Full reveal, 1 = Partial reveal
!map_station_reveal_type = $90F700 ; 0 = Full reveal, 1 = Partial reveal
!map_reveal_tile_table = $90FA00 ; must match reference in patch.rs
!bank_90_freespace_start = $90F700
!bank_90_freespace_start = $90F702
!bank_90_freespace_end = $90F800


Expand All @@ -30,8 +30,8 @@ org $90AB6D
org $90A98B
jmp mark_progress

;org !map_station_reveal_type
; dw $0000 ; default: full reveal
org !map_station_reveal_type
dw $0000 ; default: full reveal

org !bank_90_freespace_start
mark_progress:
Expand Down Expand Up @@ -108,26 +108,25 @@ activate_map_station_hook:
tax ; X <- map area * $100
ldy #$0080 ; Y <- loop counter (number of words to fill with #$FFFF)

; lda !map_station_reveal_type
; bne .partial_only_loop
lda !map_station_reveal_type
bne .partial_only_loop

.loop:
lda $829727, x
sta $702000, x
lda $89b200, x
sta $702700, x
inx
inx
dey
bne .loop
bra .leave

;.partial_only_loop:
; sta $702700, x
; inx
; inx
; dey
; bne .partial_only_loop
.partial_only_loop:
sta $702700, x
inx
inx
dey
bne .partial_only_loop
.leave
jsr cross_area_reveal
rtl
Expand Down
15 changes: 1 addition & 14 deletions rust/data/presets/full-settings/Community Race Season 5.json
Original file line number Diff line number Diff line change
Expand Up @@ -4685,20 +4685,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "4-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": true,
Expand Down Expand Up @@ -4856,6 +4842,7 @@
},
"door_locks_size": "Large",
"maps_revealed": null,
"map_station_reveal": "Full",
"energy_free_shinesparks": false,
"all_enemies_respawn": false,
"race_mode": true,
Expand Down
15 changes: 1 addition & 14 deletions rust/data/presets/full-settings/Default.json
Original file line number Diff line number Diff line change
Expand Up @@ -4597,20 +4597,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "3-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": false,
Expand Down Expand Up @@ -4767,6 +4753,7 @@
"item_dot_change": "Fade",
"transition_letters": true,
"door_locks_size": "Large",
"map_station_reveal": "Full",
"energy_free_shinesparks": false,
"all_enemies_respawn": false,
"disable_spikesuit": false,
Expand Down
15 changes: 1 addition & 14 deletions rust/data/presets/full-settings/Mentor Tournament.json
Original file line number Diff line number Diff line change
Expand Up @@ -4685,20 +4685,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "4-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": true,
Expand Down Expand Up @@ -4856,6 +4842,7 @@
},
"door_locks_size": "Large",
"maps_revealed": null,
"map_station_reveal": "Full",
"energy_free_shinesparks": false,
"all_enemies_respawn": false,
"race_mode": true,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4597,20 +4597,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "4-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": true,
Expand Down Expand Up @@ -4768,6 +4754,7 @@
},
"door_locks_size": "Large",
"maps_revealed": null,
"map_station_reveal": "Full",
"energy_free_shinesparks": false,
"all_enemies_respawn": false,
"race_mode": true,
Expand Down
14 changes: 0 additions & 14 deletions rust/data/presets/quality-of-life/Default.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "3-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": false,
Expand Down
14 changes: 0 additions & 14 deletions rust/data/presets/quality-of-life/High.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "4-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": true,
Expand Down
14 changes: 0 additions & 14 deletions rust/data/presets/quality-of-life/Low.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "Uniques",
"room_outline_revealed": false,
"opposite_area_revealed": false,
Expand Down
14 changes: 0 additions & 14 deletions rust/data/presets/quality-of-life/Max.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "4-Tiered",
"room_outline_revealed": true,
"opposite_area_revealed": true,
Expand Down
14 changes: 0 additions & 14 deletions rust/data/presets/quality-of-life/Off.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,20 +30,6 @@
"other": "No",
"all_areas": false
},
"map_station_activation_settings": {
"preset": "Full",
"save_stations": "Full",
"refill_stations": "Full",
"ship": "Full",
"objectives": "Full",
"area_transitions": "Full",
"items1": "Full",
"items2": "Full",
"items3": "Full",
"items4": "Full",
"other": "Full",
"sub_area": "No"
},
"item_markers": "Simple",
"room_outline_revealed": false,
"opposite_area_revealed": false,
Expand Down
6 changes: 0 additions & 6 deletions rust/maprando-web/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -437,7 +437,6 @@ struct SeedData {
item_progression_preset: Option<String>,
difficulty: DifficultyConfig,
quality_of_life_preset: Option<String>,
map_station_activation_preset: Option<String>,
supers_double: bool,
escape_autosave: bool,
mother_brain_fight: String,
Expand Down Expand Up @@ -720,11 +719,6 @@ async fn randomize(
race_mode: settings.other_settings.race_mode,
preset: settings.skill_assumption_settings.preset.clone(),
item_progression_preset: settings.item_progression_settings.preset.clone(),
map_station_activation_preset: settings
.quality_of_life_settings
.map_station_activation_settings
.preset
.map(|p| format!("{:?}", p)),
difficulty: output.difficulty_tiers[0].clone(),
quality_of_life_preset: settings.quality_of_life_settings.preset.clone(),
supers_double: settings.quality_of_life_settings.supers_double,
Expand Down
20 changes: 6 additions & 14 deletions rust/maprando-web/src/randomize_helpers.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ use maprando::{
seed_repository::{Seed, SeedFile},
settings::{
AreaAssignmentBaseOrder, AreaAssignmentPreset, CrashFixesPreset, DisableETankSetting,
DoorLocksSize, ETankRefill, FillerItemPriority, ItemCount, MapStationActivationPreset,
RandomizerSettings, SpeedBooster, WallJump, get_objective_groups,
DoorLocksSize, ETankRefill, FillerItemPriority, ItemCount, RandomizerSettings,
SpeedBooster, WallJump, get_objective_groups,
},
spoiler_log::SpoilerLog,
spoiler_map,
Expand Down Expand Up @@ -157,18 +157,6 @@ impl SeedHeaderTemplate<'_> {
}
}

fn map_station_activation_preset(&self) -> &'static str {
match self
.settings
.quality_of_life_settings
.map_station_activation_settings
.preset
{
Some(MapStationActivationPreset::Partial) => "Partial",
Some(MapStationActivationPreset::Full) => "Full",
None => "Custom",
}
}
fn game_variations(&self) -> Vec<&str> {
let mut game_variations = vec![];
let other_settings = &self.settings.other_settings;
Expand Down Expand Up @@ -197,6 +185,10 @@ impl SeedHeaderTemplate<'_> {
if other_settings.wall_jump == WallJump::Collectible {
game_variations.push("Collectible wall jump");
}
if other_settings.map_station_reveal == maprando::settings::MapStationReveal::Partial {
game_variations.push("Map stations give partial reveal");
}

if other_settings.energy_free_shinesparks {
game_variations.push("Energy-free shinesparks");
}
Expand Down
12 changes: 12 additions & 0 deletions rust/maprando-web/templates/generate/game_variations.html
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,18 @@
<label class="btn btn-outline-primary" for="doorLocksSizeLarge">Large</label>
</div>
</div>
<div class="form-group row" onchange="gameVariationChanged()">
<div class="col-lg-4 col-md-6 my-2">
{% include "help/variations/map_station_reveal.html" %}
<label for="map_station_reveal">Map station activation reveal</label>
</div>
<div id="mapStationReveal" class="col-3 btn-group my-2" role="group">
<input type="radio" class="btn-check" name="map_station_reveal" id="mapStationRevealPartial" value="Partial">
<label class="btn btn-outline-primary" for="mapStationRevealPartial">Partial</label>
<input type="radio" class="btn-check" name="map_station_reveal" id="mapStationRevealFull" value="Full" checked>
<label class="btn btn-outline-primary" for="mapStationRevealFull">Full</label>
</div>
</div>
<div class="form-group row" onchange="gameVariationChanged()">
<div class="col-lg-4 col-md-6 my-2">
{% include "help/variations/energy_free_shinesparks.html" %}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
<div class="modal" id="mapStationActivationHelpModal" tabindex="-1" data-parent-modal="qualityOfLifeModal">
<!-- Button trigger modal -->
<button type="button" class="btn mr-1 px-2 py-1" data-bs-toggle="modal" data-bs-target="#mapStationRevealModal">
<i class="bi bi-question-circle"></i>
</button>
<!-- Modal -->
<div class="modal" id="mapStationRevealModal" tabindex="-1">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
Expand All @@ -13,12 +18,10 @@ <h1 class="modal-title fs-5">Map station activation reveal</h1>
<li><strong>Full</strong>: Maps are fully revealed.</li>
</ul>
</p>
<p>Additional options are available for controlling the tiles revealed by activating a map station, by clicking the gear
button on the right.</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
</div>
Loading
Loading