Ziktofel / Archipelago

Archipelago Multi-Game Randomizer and Server
https://archipelago.gg
Other
1 stars 8 forks source link

Bug: 'Exclude Very Hard Missions' Default setting broken on small campaign sizes #202

Closed Alamei closed 4 months ago

Alamei commented 4 months ago

What happened?

I generated a new Archipelago campaign with 'Random' mission order enabled, and it happened to generate a Mini Gauntlet. The final mission of the Mini Gauntlet was Essence of Eternity, and it was nearly impossible with the unlocks provided (at least at my skill level).

EDIT: I just ran some tests, and it also appears to allow for Very Hard missions on things like mini-grids.

What were the expected results?

Per the descriptions in the options file generator, Setting "Exclude Very Hard Missions" to "Default" means the system shouldn't utilize missions like Essence of Eternity unless the campaign you're playing has at least 20 missions.

If I had to venture a guess, I'd say the bug likely has to do with generating using the Random mission order option and a Maximum Campaign Size of 83, which should allow for the very hard missions for certain generated campaigns and not for others, depending on the actual type of campaign that happens to be generated.

Spoiler log of generated campaign attached for reference: AP_52122465164468425251_Spoiler.txt

Software

Local generation

Ziktofel commented 4 months ago

Exclude Very Hard Missions ignores Epilogue due to fact all those missions are very hard. Don't allow Epilogue for short orders

See:

    Excludes Very Hard missions outside of Epilogue campaign (All-In, Salvation, and all Epilogue missions are considered Very Hard).
    Doesn't apply to "Vanilla" mission order.

The most important words are outside of Epilogue

Alamei commented 4 months ago

For those of us using the Random Mission Order option (which can effectively generate a campaign with anywhere between 4 to 83 missions), would it be possible to add an option to automatically exclude epilogue missions on campaigns that get generated below a certain cutoff number of missions? With the current options set, there's no way to exclude epilogue missions on short campaigns but allow them on longer campaigns while using the mission order randomization feature.

EDIT: I guess I'm actually just looking for it to enforce the "Default" behavior described in the options file when generating a randomized mission order campaign:

    # Excludes Very Hard missions outside of Epilogue campaign (All-In, Salvation, and all Epilogue missions are considered Very Hard).
    # Doesn't apply to "Vanilla" mission order.
    # 
    # Default: Not excluded for mission orders "Vanilla Shuffled" or "Grid" with Maximum Campaign Size >= 20,
    #          excluded for any other order
    # Yes: Non-Epilogue Very Hard missions are excluded and won't be generated
    # No: Non-Epilogue Very Hard missions can appear normally. Not recommended for too short mission orders.

That suggests that if a mini-gauntlet, gauntlet, or any campaign with fewer than 20 missions is generated, it would automatically exclude the missions.

Ziktofel commented 3 months ago

The Epilogue missions are governed by its own option. It's behaving as described. Therefore it's not a bug (as titled). What you demand is an actual feature request.

Alamei commented 3 months ago

Ah, my bad. I was reading the phrases "outside of the Epilogue campaign" and "Non-Epilogue" to refer to the missions that represent the Epilogue within the generated campaign (i.e. the final set you need to beat to win) as opposed to the original Epilogue missions themselves. I now understand based on your clarification that this option is simply intended to exclude the two non-epilogue (All-In and Salvation) missions from the entire mission set. I'll file a feature request later for the actual request I was making here. My apologies for the misunderstanding.