Skip to content

EV Nova: Implement new game - #6367

Open
Dorrulf wants to merge 30 commits into
ArchipelagoMW:mainfrom
Dorrulf:evnova
Open

EV Nova: Implement new game#6367
Dorrulf wants to merge 30 commits into
ArchipelagoMW:mainfrom
Dorrulf:evnova

Conversation

@Dorrulf

@Dorrulf Dorrulf commented Aug 1, 2026

Copy link
Copy Markdown

What is this fixing or adding?

Adds Escape Velocity Nova to the list of available AP games.
Playing requires the client available at https://github.com/Dorrulf/EV-Nova-CE-APClient, which is described in the game docs.

How was this tested?

  1. Manual testing, including several multi-world playthroughs with up to 8 other games.
  2. Ran all the included general tests.
  3. Ran 1000+ gens with the AP Fuzzer https://github.com/Eijebong/Archipelago-fuzzer

If this makes graphical changes, please attach screenshots.

N/A

Additional Notes:

Other than CODEOWNERS, no core files should be affected.

Dorrulf added 30 commits August 1, 2026 11:52
implementation of locations (missions) and items (ships)
All missions and ships now included instead of selected test range.
Having an empty dictionary that was loaded on first call was causing a schema error in AP.
So, if you make them a reference to a function instead, that seems to work.
Now dumps the location IDs into a file that EVN will read from.
This is to reduce the amount of location sends to AP servers, particularly
for IDs they don't know.
Added handling for selecting a specific story string to be the win condition
also blocks other story strings from starting (mostly)
Should've been two commits...
Added outf to the item pool
Added new option flags: include outfits, 100% available items/ships,
ships/outf at any shop
fixed unknown item error for credits.
when the "all items" was selected, the original bit logic was being kept
making some of the unlocks irrelevant.
Adjusted ID range
Excluded escape pod
Fixed visual shop issues via flag values in export
Ignore tech now also makes licenses not needed
locations for strings that would not be accessible were still getting items.
Big rework of the misn to location logic.
Fixes issue where items were being put into locations that were unreachable
(in other story strings).
Reimplements story logic to ignore unused locations (from other strings)
Player now must pick a set story line (including choices) in yaml.
Yaml does provide a "random" option though.
Implemented additional story lines.
Discovered and removed more unfinishable missions.
Added filtering of ships and outf to remove things that were not going
to be useful to the player, or were duplicates.
This filtering also helped offset the loss of locations from the mission strings being finished.
Filtered ships and outf are blocked in the plugin.
Now players can buy checks from the outfitters in addition to misns.
Offsets moved to a file for consistency.
Plugin also provides descriptions for the outf on what item they will unlock.
Removed the OutfitChecks option from yaml - basically mandatory to have this enabled.
Added pilot option that starts with more money, Mod SB, and combat rating
Removed a debug line
Fixed char data
Some BH missions not accessible if you start another story string first
even though there's room before BH branches AND it does another check
when it branches. So removing this check for b511.
Either missed or mistyped misn ids fixed
Implemented rules logic to push some missions into later spheres.
Namely side strings, story strings, etc.
New condition rules, both for sphere logic and for smoothing out distribution
to prevent bad scenarios for player.
Removed more bad missions from the pool.
Added description region connection names.
Added vell-os player ships to early sphere due to number of misns locked
behind them (non story missions).
Fixed issue causing char options to not show up.
Added additional set of purchaseable checks for shorter strings that
no longer have enough checks due to other fixes (ex: pirate).
Didn't want to bloat all strings though, so configureable use.
Adjusted crons for terraforming to better fit the speed and availability
of intended play for this sort of thing.
Vellos storyline prevents players from running other misns, which
is problematic when running this randomizer with other players, and
can be even solo. So, removing the lockout condition.
Ignoring "avoid fleet" type missions as they are not completable.
Adjusted available strings to compensate for lacking location checks due
to the removal.
Updated / fixed some comments.
Finally a solution I'm happy enough with regarding the shrinking locations.
Each string can now have its own count of custom outfit checks to implement,
and will randomly select from its own pool.
Had to increase the number of custom outfits.
Re-introduced the shortest storylines.
Modified custom outfits earlier, but forgot to update the associated
outfit description resources.
Some import references (ex: logger) were causing issues at runtime
when players were trying to generate yamls out in the live.
Also removed unused references.
Minor code comment / description additions.
Cleaned up and adjusted code comments and descriptions.
Fixed offset desc IDs causing bad pairing in game.
Fixed prices that weren't matching the description.
Adjusted ordering so in game they order by price.
Fixed doc name so it'll be found properly.
Fixed a region issue - while the regions specifically were to block
things and never needed to be accessed, they've been added to the
region linking because that's what the tests want.
Forgot one more place where "shuffle_systems" option needed to be
removed from.
@github-actions github-actions Bot added the waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. label Aug 1, 2026
@duckboycool duckboycool added the is: new game Pull requests for implementing new games into Archipelago. label Aug 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

is: new game Pull requests for implementing new games into Archipelago. waiting-on: peer-review Issue/PR has not been reviewed by enough people yet.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants