You are viewing a potentially older version of this package.
View all versions.
LethalConstellations
Dynamically change your moons list depending on which constellation your current moon is located in. Constellations are highly configurable.
Date uploaded | 2 months ago |
Version | 0.2.3 |
Download link | darmuh-LethalConstellations-0.2.3.zip |
Downloads | 7112 |
Dependency string | darmuh-LethalConstellations-0.2.3 |
This mod requires the following mods to function
IAmBatby-LethalLevelLoader
A Custom API to support the manual and dynamic integration of all forms of custom content in Lethal Company. (v50 Compatible)
Preferred version: 1.3.10darmuh-OpenLib
Open-source development library for LethalCompany, initially created for use with darmuh's Mods
Preferred version: 0.2.5README
Lethal Constellations
Separate your moons list by constellations.
- This mod will dynamically change your moons list depending on a configurable constellations listing.
NOTE: This mod is still in early development. Please report any issues you find as you are essentially a beta tester.
Current Features:
- If a moon is not inside the current constellation it will be hidden from the moons page and locked (using LLL)
- Contains two config files. A static config and a generated one.
- Static config will dictate what is generated in the generated config.
- Generated config is generated after first lobby load.
- Currently the generated config cannot be modified using LethalConfig.
- Customizable keywords/text.
- Dont like the word constellation? Change it in the config!
- This mod will attempt to replace any pre-existing keywords from the config with radarbooster names as a fail safe.
- Please avoid overwriting any base-game keywords or other mods' keywords.
- If a terminal keyword already exists for any of the names you designate, they will be changed.
- Customizable text for all different types of terminal commands relating to the constellations.
- Optional shortcut keywords can also be added to each constellation.
- Current Constellation will be updated on lobby load, works between save files!
- Moon prices can also be modified by this mod or left to be handled elsewhere.
- Set routing to a specific constellation to cost credits or allow for your constellations to be free.
- Set a constellation to be a one-time-purchase, this purchase will be remembered for each save file.
- In order to sync between players this feature requires LethalNetworkAPI to be present.
- Routing to a new constellation will take you to that constellation's default moon.
- This essentially makes the cost of routing to this moon however much it costs to route to your constellation.
- Set which constellations the company can be routed to in the constellations config
- Hide special constellations from the menu or if you cant afford it (with configuration options)
- Allow for a moon to remain hidden while being assigned to a constellation.
- This mod does not do any patching, all game patching is done by OpenLib & LethalLevelLoader.
- Compatibility with LethalMoonUnlocks
For other mod devs looking to add compatibility:
- Subscribe to the RouteConstellationSuccess event in NewEvents.cs to call your own code when routing to a new constellation.
- Access ConstellationStuff in Collections.cs for a listing of all constellations and their ClassMapper.cs properties
If you have any ideas on how to make this mod better please feel free to reach out!
- Icon background
- Credit: X-ray: NASA/CXC/Ludwig Maximilian Univ./T. Preibisch et al.; Infrared: NASA/ESA/CSA/STScI; Image processing: NASA/CXC/SAO/N. Wolk
CHANGELOG
Lethal Constellations Change Log
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
[0.2.5]
- Fixed fatal error during automated system creating fauxkeywords from LLL content tags which broke the terminal
- Added logic to skip content tags that are shorter than 3 characters or contain spaces
- Fixed an issue I noticed with clientside testing that threw an error when loading in and updating the current constellation.
- General code cleanup and update to latest version of OpenLib
[0.2.4]
- Updated for latest version of OpenLib
- Fixed issue introduced with latest Openlib update that broke some portions of constellation handling.
- Fixed issue where constellation names could not have special characters in them.
- Fixed issue with shortcut config item being parsed with the wrong character.
- General info command fixes
- Added new FauxKeywords option to set your constellation names to whatever you want.
- These 'keywords' will only work from within the constellations menu.
- Config items generated after lobby load will now show within the LethalConfig menu.
- Added button to generate webconfig page which can be used to edit the config in a webpage.
- These will be located within your Bepinex/config/webconfigs folder
- Added button to apply config codes that you generate from your webconfig pages.
- Updated default config handling to use LLL tags with Faux Keywords.
- Added constellations as compatible nouns to route, so you can type route [constellation-name] and it will route you to that constellation.
[0.2.3]
- Fixed issue where current constellation could not be calculated when loading a save that was last at the company moon.
- With networkapi present, this variable will be tracked in your gamesave.
- Without networkapi present, will resort to your default company constellation as defined by [CompanyDefaultConstellation]
- If the config item fails to find a matching constellation, will return the first constellation.
- Updated ThunderStore name to LethalConstellations (the underscore was bothering me)
[0.2.2]
- Added nullable to project.
- Fixed issue where having the default moon for a constellation set to a moon that doesn't exist would break the terminal.
- This would happen if you removed a moon from your mod profile or if you never set a default for the constellation.
- Fixed issue where the CurrentConstellation publicized string value would be updated even if you can't afford the constellation.
- Thanks @xCore
- Added more error handling for cases where the terminal is broken.
- and some logging for common things that have failed in the past
[0.2.1]
- Fixed issue of non-host players being unable to join the lobby with this mod present.
- OneTimeUnlocks for Constellations is now dependent on whether or not LethalNetworkAPI is present.
- This will be a soft compatibility and if LethalNetworkAPI is not present then constellations will fall back to normal purchase behaviour.
- Changed moon pricing list to use the actual extendedLevel from LLL rather than a string reference of it's name to hopefully fix issues with prices not updating.
- Publicized the class containing RouteConstellationSuccess so it should now be accessible.
- Raised maximum moon price to 99999
- Added orphaned config item check to remove old inactive configs
[0.2.0]
- WARNING Backup your old config file before updating, some config items have moved/changed.
- Fixed issue where Moon prices were not being updated at each lobby load
- Fixed issue where constellations could still route to the company even if the config item was disabled
- Added new handling for default config generation, will now create constellations based on moon danger level tiers.
- When [ConstellationList] is left blank, constellations will be generated by moon hazard tiers. (A+,B+, etc.)
- Constellation price defaults will be determined by default moon which is chosen randomly
- Added new buyOnce behavior, where a constellation can be purchased one-time and then free for the rest of the save.
- Utilizes the game save to remember whether a constellation has been purchased already.
- buyOnce is configurable for each constellation.
- Added config option to keep a moon hidden even while in it's constellation
- Moved each constellation's config to it's own section
- Added RouteConstellationSuccess event for other mods to subscribe to
- Added isLocked property for other mods to access a constellation and lock it if needed
- Added optionalParams property for other mods to access to input text into constellations menu via [optionals]
- Added handling for [currentWeather] to display the default moon's current weather in the constellations menu
- Updated handling for setting a moons constellation, you can now set multiple constellations for one moon
- In the moon's constellation config item separate each constellation by a comma to register it for multiple constellations.
[0.1.7]
- Fixed issue with LethalConfig soft compatibility.
- Added more compatibility for LethalMoonUnlocks
[0.1.6]
- Publicized some things for future compatibility with LethalMoonUnlocks by explodingMods (xCore)
- fixed typo in a method name
- fixed typo in manifest.json referencing incorrect OpenLib version number
[0.1.5]
- Added new config item [HideUnaffordableConstellations] to hide constellations you cannot afford
- Added new config item [AddHintTo] to determine which base menus your hinttext would be added to
- Changed otherText config items to hintText for better clarity
- Added new config item [ConstellationsShortcuts] to set shortcut keywords for the constellations menu
- Moved static config to the base plugin config rather than defining a new one.
- Added multi-word constellation support
- Backend changes to optimize constellation handling.
- New ClassMapper will track constellations and their properties.
- Replaced 5 different dictionaries with this new class.
- Changed the generated default moon for each constellation to be a random moon from the list of moons the constellation belongs to.
- Added new shortcuts config for each constellation to specify shortcut keywords for each constellation.
- Added isHidden configuration for each constellation to hide special constellations.
- Added canRouteCompany configuration for each constellation to specify whether you can route to the company building from it or not.
- Fixed some instances where the customized [ConstellationsWord] was not being used in place of "Constellations"
[0.1.0]
- Initial Mod Creation.