

DawnLib
A modern API for Lethal Company content and all sizes of modsDetails
v0.1.8
- Added
On First Scan
event toExtraScanEvents
. - Fixed issues with other mods adding duplicate items into the list of all items.
- Fixed more compatibilities with other mods.
- Made sure to fix issues with achievement popup not working properly.
v0.1.7
- Attempt at fixing some more file locking issues or whatever.
- Fixed a bunch of the definitions being broken in editor.
v0.1.6
- Improved error handling with corrupted save data and tagging.
- Fixed an issue with applying item spawn group tags.
- Added
ExtraScanEvents
with anOn Scan
event (requiresScan Node Properties
) - Refined VehicleBase + VehicleStation code to be compatible with dropship attaching etc.
v0.1.5
- Fixed issues with LLL shop items not being proper keyword names by LLL.
- Fixed achievement UI sound not playing and breaking the achievements.
- Fixed an issue where mods like MoreShipUpgrades allow LethalLib shop items to be disabled incorrectly.
v0.1.4
- Fixed issues with checking unlockables and unlockables not registering.
- Fixed issues with trying to use the Achievement Predicate.
- Fixed Editor.dll issues with accessing achievements for AchievementTriggers script.
- Fixed issues with DailyPricingStrategy accessing TimeOfDay too early.
- Fixed issues with achievements causing a share violation error on loading multiple achievements simultaneously sometimes.
v0.1.2
- Disabled achievements button if there are no achievements.
v0.1.1
- Fixed some editor dll stuff and separated compatiblity with soundapi into another dll.
v0.1.0
Hello World!
DawnLib
- Added registering content through
DawnLib
- Added
WeightTable
andCurveTable
so that weights can be updated dynamically in-game. - Added
ITerminalPurchasePredicate
to allow some items to not be bought based on conditions.TerminalPurchaseResult.Success()
: Acts like normalTerminalPurchaseResult.Failed()
: Player is unable to purchase the item and a different terminal node is displayed. Also allows overriding the name in this state with.SetOverrideName(string)
TerminalPurchaseResult.Hidden()
: Does not show up instore
, and player is also unable to purchase the item.
ITerminalPurchase
interface for (currently only some) possible terminal purchases:ITerminalPurchasePredicate Predicate
: see above, set withbuilder.SetPredicate(predicate)
IProvider<int> Cost
: allows cost to be easily updated, set withbuilder.SetCost(int)
orbuilder.SetCost(provider)
- Removed
VanillaEnemies
and addedLethalContent
- Added
tags
- Allow registering new tilesets to dungeons
- Added
PersistentDataContainer
DuskMod
MIGRATING FROM CODEREBIRTHLIB:
You will need to remake your Content Container
, Mod Information
and content definitions.
The general flow has not changed overall.
- Reworked
Content Container
:Entity Name
(from content definitions) andEntity Name Reference
have been removed. Instead, content can just be referenced.Asset Bundle Name
is now a dropdown.- Button to dump all
NamespacedKey
s to a.json
file to be used with theTeamXiaolan.DawnLib.SourceGen
package.
- Added 4 types of
Achievements
:Discovery
,Instant
,Stat
,Parent
- Content definitions can now apply
tags
- Added
DuskModContent
for theAchievement
registry. - Moved
.RegisterMod()
fromCRLib
toDuskMod
- Added
DuskAdditionalTilesDefinition
- Added 2
DuskTerminalPredicate
s:ProgressivePredicate
: Allows for a shop item to be unlocked through progressionAchievementPredicate
: Requires that the player purchasing the item has an achievement
- Added 1
DuskPricingStrategy
:- NOTE: Setting a pricing strategy in a content definition overrides the price set in the config.
DailyPricingStrategy
: Price of shop item changes as the quota progresses.
Utilities / Misc
- Added
NetworkAudioSource
,AssetBundleUtils
- Removed
ExtendedLogging
and split it intoDebugLogSources
(yes this uses SoundAPI code)