1
Modding / Adding Abyssal events?
« on: March 08, 2024, 07:42:41 AM »
I'd like to try adding some new possible spawns into Abyssal Hyperspace - but it doesn't look like the info on how has made it onto the wiki yet. From a quick poke, I'm assuming the process goes:
I guess there's two bits I'm not quite sure on:
The basic outline of what I want to do is e.g.
- Create a new EncounterCreator, probably starting from a copy of AbyssalRogueStellarObjectDireHintsEPEC
- This extends AbyssalRogueStellarObjectEPEC which generates the base system.
- If you want to do custom systems, rather than just adding an encounter to a default random system, copy AbyssalRogueStellarObjectEPEC.
- Create your own enums containing the list of encounters you want (or for a 'linear' quest chain a public static intwith quest_stage or similar).
- Edit the addSpecials methods to write the encounters for your new enums/quest stages/whatever.
- Register your new creator with EncounterManager.CREATORS.
I guess there's two bits I'm not quite sure on:
- How to determine the frequency of your new encounters compared to the base Abyssal encounters.
- The getFrequencyForPoint method calls AbyssalFrequencies.getAbyssalRogueStellarObjectDireHintsFrequency to get it.
- This then refers to a hard-coded HyperspaceAbyssPluginImpl.DEPTH_THRESHOLD_FOR_XXX in HyperspaceAbyssPluginImpl.
- Where to register your new creator with the vanilla EncounterManager (though this is probably just a 'I'm not a Java programmer so I don't know best practise' thing).
The basic outline of what I want to do is e.g.
- Add a pool of 3 encounters
- Once you've encountered all of them and they've removed themselves, add another 3 encounters to the pool.
- Then probably do a single final encounter and zero the frequency of this new EncounterManager type (remove it from the EncounterManager.CREATORS array?)