#DawnLib [V80]

1 messages · Page 15 of 1

icy tulip
#

truly

#

peak

#

thanks xu

#

for supporting v8

oak linden
#

Yeah I had to go deep into the mines for that kne

#

I'll try to fix interiors needing a recomp with some others later at some point

#

Hopefully interior devs won't need to recomp but I can't promise anything

minor canopy
#

I think I'll start using DawnLib for my interiors because LLL lacks some features and DawnLib is constantly updated, not once a year

oak linden
#

Interior workflow should actually be similar to normal moon workflow, since the dungeonflow is in its own assetbundle much like a moon scene

frozen widget
#

aight i've gone through the public beta

#

what's changed with dungen

#

like what in the actual hell is going on with everyone freaking out about all that

fluid spindle
#

(nothing really spoilering of V80, but its on the V80 version of CodeRebirth)

frozen widget
#

i don't get it

hollow viper
#

a lot.

#

in short

frozen widget
#

guessed so

oak linden
flint needle
#

that motion blur setting is getting disabled as soon as I play this update 🤮

fluid spindle
#

yeah no they're tryna get me

#

there's a vendetta i know it

frozen widget
obsidian marsh
#

its really jittery and awful when moving

#

i think its because of my solution i have in place for host-vehicle interactions

frozen widget
#

add 500 vertice

obsidian marsh
#

with the extra interpolate colliders

#

i might just disable motion blur if in a vehicle

#

if i can

#

or i'll try look into why its so jittery

#

and see if i can fix it

vernal umbra
atomic yarrow
#

yooo

#

can i import my mod to v80 or do i gotta redo everything

oak linden
atomic yarrow
#

oh nice :S

#

:D*

opal narwhal
#

I'm seeing duplicated story and bestiary logs only on clients. doesn't happen without dawn. on v73
on clients after lobby start story log menu (sigurd) is also different than host and shows corrupted data or sth. it almost looks intended. i'm not sure lol

oak linden
#

Huh

oak linden
opal narwhal
oak linden
opal narwhal
oak linden
#

Lmao

#

So wait, the first log that's collected ends up being displayed like that?

#

Can I get your repro steps just incase

opal narwhal
#

I start new save, join with client (LAN, second instance) and then check the sigurd node as client.
It's not the first log collected, it's the log you already have from the start literally called 'first log - aug 22nd' or sth

oak linden
#

Icic

flint needle
#

btw, i'm guessing all the local references is a temp fix until the gamelibs nuget eventually gets updated?

flint needle
#

I will be awaiting that update before I pull from the repo again 💀

urban plaza
#

errors for tiny v80 beta update if youre interested in fixing them, line 207

noble moon
#

Damn, i can't believe xu said this smh 😤

The XuXiaolon allegations are crazy chat what

rare beacon
#

Should I panik?

oak linden
#

i need to fix a transpiler

#

i think thats it

#

my power cut out for a bit so im back on it but yeah

rare beacon
#

Oki

thorn abyss
#

btw, This should be known.
But there's always a error log on Dawnlib when SoundAPI is not installed

oak linden
#

Feel free to report that to lethal moddata lib

#

This been a thing for ages, I can't do anything about it

sacred tulip
#

fix moddata lib xu :3

oak linden
#

i'd rather not

#

if people want a better save system imo, they can use DawnLib's :p

urban plaza
flint needle
oak linden
#

that's been around for ages

flint needle
#

ahh I see I see, yeah I'm aware of some of the json saving stuff you have going on

sacred tulip
#

when will xu make lcdawnsave

flint needle
#

like I know i'll need some form of saving/loading data for LethalConstellations when I get to it

oak linden
#

for a recap though, there's 3 types of saves you can make, one persistent based on your mod's plugin, one persistent based on the save and deletes if you get fired/delete the save, and one persistent based on the save and only deletes if you delete teh save

flint needle
#

gotcha, I appreciate the recap. I think before I was just straight up adding a key to the ES3 save data

pure plume
#

the shader for the editor is the most updated sponge one, right? the wording somewhat implies it's an old version that isn't the 100% match

oak linden
#

I just re-read it, what wording could be implying that?

pure plume
oak linden
#

That's not implying, this is stating, I am using the most up to date shader, it just won't be a 100% replica since we're in the editor and not using the players downscaled resolution

#

Things will look a little higher res and there's probably some tiny colour corrections that differ from the player camera

#

But other than that it's like 95% there

pure plume
#

ah

minor canopy
#

Can someone explain to me how I can make DawnLib scripts appear in Unity so that I can use them?

hollow viper
#

definitons?

minor canopy
#

when I add Dawnlib to Unity I can't use it, e.g. like LLL where I can make interiors/moons, unless dawnlib is used for something else

#

level match or something similar and others to load the bundle

pure plume
#

spongenewcustompass doesn't seem to be an option in the custom pass volume

hollow viper
icy tulip
oak linden
cloud flower
#

Shader? I hardly know 'er.

agile iron
#

hello i need some help, my content container isn't loading and i dont know how to fix it, does this have to do with the ripper
Image

deft robin
hollow viper
hollow viper
#

And project version?

deft robin
#

2022.3.62f2

hollow viper
#

Lc version

#

Of project

deft robin
#

v80

hollow viper
oak linden
#

does dawnlib break with new update or anything?

thorn abyss
#

happy to see you again

icy tulip
#

Evilnits…

pine dirge
weary imp
deft robin
icy tulip
weary imp
icy tulip
#

hungry…

agile iron
carmine elk
#

The editor DLL is on the GitHub iirc

oak linden
#

which is the same place where the template was anway

agile iron
oak linden
#

can you show what the console says?

agile iron
#

um i probably should have read it

#

but where can i find the other one

#

nvm it tells me

agile iron
agile iron
oak linden
oak linden
agile iron
agile iron
#

i have the new file

#

i just don't know wher to put it

oak linden
#

where did you put the dawnlib dlls on your unity project?

#

just replace em via file explorer

agile iron
#

i placed them in but it is seen as a META file

#

wait nvm

#

sorry im just new to this

agile iron
oak linden
#

can you show your console?

agile iron
oak linden
# agile iron

also that looks like an old version of the editor dll

agile iron
oak linden
#

um i dont recognise some of these errors, did you patch your unity project?

agile iron
#

yes

oak linden
#

what version of unity?

agile iron
#

2022.3.62f2

oak linden
#

and the latest dawnlib dlls in the zip under it

#

you need to have the entire zip extracted into there as it contains a decent amount of dlls

agile iron
#

so download everything?

oak linden
#

no!

agile iron
#

oh

oak linden
#

just the first two things

agile iron
#

sorry im new to this sorry if im getting you mad

oak linden
#

also, like i said before, you need to click on the following two dlls: com.github.teamxiaolan.dawnlib and com.github.teamxiaolan.dawnlib.dusk and turn off validate references

#

im not mad dw

#

im just trying to clarify

agile iron
#

ok

agile iron
#

im assuming the project and if so where

oak linden
#

the project, it doesnt really matter where, i usually just make a folder called dependencies and put these extracted zips into it

agile iron
oak linden
#

for my mods i usually put it into the assets/lethal company/plugins/mods folder
i dont have it open so i might be slightly off

agile iron
#

ok

agile iron
oak linden
#

dont replace in unity

#

replace with file explorer

agile iron
#

ok

agile iron
oak linden
#

console errors?

agile iron
#

its the same ones from earlier

oak linden
#

is this a v81 patched project?

agile iron
#

does that not work rn

oak linden
#

no it does work

#

uhh

#

try restarting the editor, and then send me the all the errors from the console

agile iron
#

ok

oak linden
#

cuz i feel like im missing something

agile iron
agile iron
#

yeah there is only one dll

oak linden
#

the zip in the link i gave you should have atleast 3 dlls

#

dont tick it for the editor dll

#

the one you screenshoted is com.github.teamxiaolan.dawnlib.editor

agile iron
#

these?

#

ok i might have to do a new project cause i may or may not have replaced the editor dll

#

nvm i can repatch

oak linden
#

you shouldnt need to

#

you should just be able to tick validate reference on the editor dll

#

and untick it on these two

#

these are the first two dlls in the ss you just sent

agile iron
#

that wasn't the editor

agile iron
#

😅

oak linden
#

maybe soon but it's hard to find the time

oak linden
#

if you have an interior that is not updated to v80, try using this!

#

@icy tulip @sinful dew etc, i dont wanna go around threads and being rude and "advertising a mod", so feel free to tell people to use this mod if you cant update your interiors (though stuff like JLL still needs to update)

calm maple
#

Banned for advertising

icy tulip
#

i was gonna send it in my thread but forgot

errant sentinel
#

I was told that SellBodiesFixed has a problem regarding DawnLib and I was wondering what I should do to fix it since I don't even use DawnLib
([Error : DawnLib] Item: TulipSnakeBody(Clone) doesn't have a DawnItemInfo; cannot save. Contact the developer of this item)

oak linden
errant sentinel
oak linden
#

hmm, if its when the mod loads that should be fine, are you able to add your Item's to StartOfRound.Instance.itemslist.allItemsList on startofround's awake?

errant sentinel
oak linden
#

because i look through all the item's in the itemsList when registering every item

#

i dont even know how SellItemBodies ever had its items saved since zeekerss also uses the item indexes in allItemsList for saving and loading items

errant sentinel
oak linden
#

are you adding them too late perhaps?

errant sentinel
oak linden
#

can i see the code for that? StartOfRound.Instance doesn't exist then

#

im assuming you loaded the SO for the itemsList, i think that's possible while loading your mod, but just wanna make sure

errant sentinel
oak linden
#

hmm

#

RegisterItem by LL

#

i wonder if that isnt adding it to the itemsList

#

it does

#

this is interesting

#

ill look into it then

errant sentinel
#

I don't know what to say, I'm trying it now, and the items seem to be saving correctly. I don't understand what the person who sent me the report might be doing that's causing the problem.

oak linden
#

yeah it seemed like it'd work

#

you might need their modpack code, im not sure what's goin wrong

thorn abyss
oak linden
#

this definitely looks like an issue

thorn abyss
#

this is not dawnlib related, I just wanted to test if some moons/interiors work on v81

oak linden
#

yeah i figured from the error, lethalmoddatalib erroring out of seemingly nothing, probably related to another error before it

thorn abyss
oak linden
#

no that always happens, i mean an actual error ebfore that

#

this is why i dislike lethalmoddatalib and other mods that print out fake errors

thorn abyss
#

Except the

[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (Elevator spawn Half Open) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (Elevator spawn Left) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (Elevator spawn Mostly open) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (Elevator spawn Right) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (Elevator spawn closed) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1916792] [Error  : Unity Log] NetworkPrefab (KeySpawner) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1927005] [Error  : Unity Log] NetworkPrefab (MannequinSpawnerB) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1927005] [Error  : Unity Log] NetworkPrefab (MannequinSpawnerA) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1927005] [Error  : Unity Log] NetworkPrefab (MannequinSpawnerC) has a duplicate GlobalObjectIdHash source entry value of: 0!
[17:15:23.1971934] [Error  : Unity Log] NetworkPrefab (recyclingcan) has a duplicate GlobalObjectIdHash source entry value of: 1449919938!
oak linden
#

dunno then, maybe LethalModDataLib finally borked

thorn abyss
#

oh

thorn abyss
oak linden
#

do you have DunGenReferenceFixer?

thorn abyss
#

I found the issue

#

Sorry, better said...
I found the mod that generates that log:

  • Generic Doorscript
#

Checked with and without that mod, and that mod has LethalModDataLib as a dependency

oak linden
#

yeah i figured that mod would cause it

#

DunGenReferenceFixer can't fix that mod

#

only generic can

frozen widget
#

is Dawnlib V81 working with the dawn surface script?

oak linden
#

Yeah, DawnSurface is for non terrain colliders currently though

urban nest
#

big banana mango chicken

sacred tulip
#

yummy

oak linden
loud mortar
#

When I create a TerminalCommandBasicInformation object for a terminal command, what is the 'categoryName' parameter for? Is there a terminal page that lists all custom commands and uses the category name to group them?

oak linden
#

Something like an external mod displaying em

#

It's why description is also one

loud mortar
#

I see

#

Also, at what point in the loading process am I meant to register my terminal commands (obviously before the freeze)?

oak linden
#

But I imagine anything before startofround.awake is okay

calm maple
#

To be friendly to other mods that care about terminal commands, APIs that try to integrate with mods that use terminal commands and just as a point of good practice you should register in your awake and then consider the terminal frozen and inaccessible

#

I made a mod for adding a few types of custom content to YAPYAP and I explicitly froze the list of custom content after the first title splash is shown. If you're late to the party then you just break things for everyone else

loud mortar
#

I do register the commands in my awake, but I was getting errors because the method I pass to one of the input commands has references to things in StartOfRound that are null at this point

oak linden
#

just null check startofround in it, thats what i did iirc

loud mortar
#

Yeah, that's also what I ended up doing

oak linden
#

i forget exactly why but it's called like once or so before lobby load if it exists

fluid spindle
#

i knew oxyde was missing something

#

it was meteors

oak linden
#

is this with default weights or did you put meteor shower on oxyde

open quest
#

with duskmod (and an item definition), how do you set the default spawn rate

pine dirge
oak linden
#

Doing something like
lethal_company experimentation additive 9999 guarantees a lot of your item on exp

fallow remnant
pine dirge
#

Just switch version schemes greed

fallow remnant
#

i can't anymore 😭

#

it's joever

fluid spindle
#

and if it wasnt i still would not have it any other way

#

its a sight to behold really

oak linden
#

okie

cloud flower
thorn abyss
# oak linden okie

sup!
Just a small thingy...
By any chance did you fixed the hydrogere not moving issue?

oak linden
#

uh, what?

thorn abyss
oak linden
#

oh that needs to be updated in CodeRebirth, but looking at it more closely i dont think this is me, ill check just to be sure though

#

do you not have bepinex monomod debug patcher installed?

#

ye this aint me

thorn abyss
oak linden
#

that might tell you what mod is causing it yeah

#

otherwise, you'l have to hunt it down, it aint dawnlib or cr

thorn abyss
#

gotcha, thanks

frozen widget
#

@oak linden say i wanna register an enemy through dawnlib

#

how do i do weights

#

this gud for vanilla? and what about modded moons

oak linden
#

you need to give the namespace for vanilla moons, which is just lethal_company too

frozen widget
#

what about LLL registered moons

oak linden
#

you can do tags like custom, vanilla, and for custom moons, you need to know their namespace, which can be stuff like wesleys_moons
i log all the moons and their namespaces and keys in the console when you enter a lobby if you have debug logging turned on in bepinex config

frozen widget
#

there's only configs for moon, interior, and weather based

oak linden
#

tags would be in the same spot

#

you dont have to care about the namespace for tags, so you can just leave them as lethal_company

frozen widget
#

oh nvm they're above

oak linden
#

no that's for tagging your own stuff

#

you'd add it here

frozen widget
#

ye

#

but as for tags though

#

does it take in tags from LLL

oak linden
#

yeah this is where you can add moon tags to match to

#

yeah

frozen widget
#

like this?

oak linden
#

i.e. this is like tagging your moon as tundra/tagia for other moons

frozen widget
#

so what about tag based weights

#

i don't get it

oak linden
#

and if you're tagging your own thing you shouldn't use the lethal_company namespace, but your own, just incase (though the spawn weights thing doesnt care about namespace)

oak linden
#

you'd have the weights for rend, dine, titan, taiga, tundra

#

all in the same list

frozen widget
#

oh

#

so what about the namespace

oak linden
#

and since its separated by moon interior and weather, you can match specifically to a moon's tags, interior's tags, etc

frozen widget
#

for tags

oak linden
#

leave it as lethal_company, dawnlib doesnt care for namespaces when doing tag weights

#

but you should still tag your own stuff with your own namespace if that makes sense

frozen widget
#

yeah no worries about that

#

if you're wondering why i suddenly started doing Dawnlib registry for enemies, it's just to see if the Cadaver variant i'm making actually works when registering through it, compared to LLL

oak linden
#

if there's an errors if it doesnt work, lemme know and ill try to make it work

frozen widget
#

and the AI was spamming errors like "i can't do interval check or smth ig"

#

even though it was growing, the spore particles (that i made) worked too

oak linden
#

oh maybe the prefabs werent getting network registered

frozen widget
#

but ig it might be related to the fact i need the VFX

oak linden
#

that shouldnt be an issue with dawnlib

#

the bundle loader goes through everything to load it

#

assuming that might be the issue

frozen widget
#

could be

#

it wasn't spawning its scan node prefab, plant prefabs, nor decal prefab

#

so i'm assuming could be what you said

#

OR

#

i need the VFX which suck balls for me cuz i really REALLY want a variant of that enemy

quick anvil
pine dirge
#

And add at least 4684968 new features greed

quick anvil
#

and 29621 new mobs

#

and 30 times of wesley's content of interiors & moons

frozen widget
quick anvil
#

relative

frozen widget
#

it'd be funny until i decide to actually make that amount of variants lol

cloud flower
frozen widget
#

me when people start complaining about zeekerss' design choices when i made enemies with 100HPs in a game where to average damage delt to monsters is just 1

quick anvil
frozen widget
quick anvil
frozen widget
#

who knows

frozen widget
#

@oak lindenthey show up super small like what

oak linden
#

lol, that's weird, your scaling any good?

frozen widget
#

i didn't change it lol

#

it's literally the same

oak linden
#

weird, i dont think this is dawnlib specifically but im not sure why they're showing up so small, it could be dawnlib though, any errors?

frozen widget
#

imma try again

#

[Error : Unity Log] ArgumentException: 'graveling:graveling_growths' has already been added to this registry.
Stack trace:
Dawn.Registry1[T].Register (T value) (at ./src/API/Registry.cs:83) Dawn.DawnLib.DefineEnemy (Dawn.NamespacedKey1[T] key, EnemyType enemy, System.Action`1[T] callback) (at ./src/API/DawnLib.cs:188)
Dusk.DuskEnemyDefinition.Register (Dusk.DuskMod mod) (at ./src/API/Definitions/Enemies/DuskEnemyDefinition.cs:128)
Dusk.ContentHandler.LoadAllContent (Dusk.IAssetBundleLoader bundle) (at ./src/API/ContentHandler.cs:67)
Dusk.DefaultContentHandler..ctor (Dusk.DuskMod mod) (at ./src/API/Auto/DefaultContentHandler.cs:32)
Dusk.DuskMod.RegisterNoCodeMod (Dusk.DuskModInformation modInfo, UnityEngine.AssetBundle mainBundle, System.String basePath) (at ./src/API/DuskMod.cs:49)
Dusk.AutoDuskModHandler.AutoRegisterMods () (at ./src/API/Auto/AutoDuskModHandler.cs:31)
Dusk.DuskPlugin.Awake () (at ./src/DuskPlugin.cs:44)
UnityEngine.GameObject:AddComponent(Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.XR.Management.XRGeneralSettings:Awake()

#

this upon loading game

oak linden
#

huh, it thinks you're registering the same thing twice?

frozen widget
#

i'm not

oak linden
#

that's weird, do you maybe have the same mod in the mod manager's plugin folder twice?

frozen widget
#

nop

#

[Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
CadaverGrowthAI.GrowInTiles () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_076F)
CadaverGrowthAI.DoAIInterval () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0119)
EnemyAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0367)
CadaverGrowthAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0000)

oak linden
#

very unsure what it is then, i'd have to see stuff like your content container maybe

frozen widget
#

this is spammed

oak linden
#

lets see what that is in vanilla

#

yah it's the visual effect

oak linden
#

i could do a thing that places it for enemies that inherit cadaver

#

what's the component called

#

im not very familiar with the cadaver but i know it's multiple scripts

frozen widget
#

AI?

oak linden
#

the one that has a reference to the visual effect

frozen widget
#

CadaverGrowthAI

oak linden
#

can i see it in unity?

#

im unsure what i should be fixing

frozen widget
oak linden
#

is that two separate ones or do they lead into eachother

#

and what is missing within the prefabs? a visualeffectasset? or a material's textures?

frozen widget
#

seperate ones

#

they're 2 prefabs

#

each with the vfx

#

actually

#

@oak linden there's one for player spore burst and one of the normal spores

oak linden
#

hmm

#

if i just replace the entire prefab is that alright?

frozen widget
#

ig

#

the prefab itself is just a visual effect

oak linden
#

im not sure if there's anything else you need inside of the prefab you make

frozen widget
#

for both

oak linden
#

aight

frozen widget
#

i don't even get why he'd make 2 seperate VFX

#

mostly when i don't even know where the second one plays

#

like it says "burst from player" but during the animation it doesn't play

oak linden
#

second one maybe plays when the player transforms

#

unsure

#

maybe it plays in code? dunno

oak linden
#

ic

frozen widget
oak linden
frozen widget
#

wazzat

oak linden
#

try it, this should fix your cavadergrowthai with the right prefab

#

i cant release it soon since it has a good chunk of WIP stuff but just for testing its fine

frozen widget
#

compiling rn

frozen widget
#

ok i fixed the registering

#

now only 1 of each is registered and correctly

#

now lets try that thing

#

[Error : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <1071a2cb0cb3433aae80a793c277a048>:IL_0009)
CadaverGrowthAI.QuickFinishGrowingPlant () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_001C)
CadaverGrowthAI.GrowInTiles () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0AA6)
CadaverGrowthAI.DoAIInterval () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0119)
EnemyAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0367)
CadaverGrowthAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0000)

[Error : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <1071a2cb0cb3433aae80a793c277a048>:IL_0009)
CadaverGrowthAI.LateUpdate () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0017)

#

NEW ERRORS LET'S GO

#

scan nodes spawn

#

but size of the things is still small

oak linden
#

lets see

#

plantBatchers is either empty or doesn't have what it should have

#

i'd check in unity what plantBatchers has for you

#

there should be a component called BatchAllMeshChildren

#

that's what plantBatchers assigns itself to

frozen widget
#

ohh

frozen widget
#

but it only takes the AI as acceptable to put into the field

oak linden
#

yeah that's fine

frozen widget
#

although there are BatchAllMeshChildren components

oak linden
#

oh wait

frozen widget
#

yeah?

oak linden
#

yeah you gotta put all of the components in there

#

either that or just leave it empty and the game auto puts them if they're in the same gameobject

frozen widget
#

i left it empty before and that was what i got

#

and trying to put anything in it doesn't work because it only accepts CadaverGrowthAI

oak linden
#

there's probably more than one in the same gameobject

#

i wouldnt assign it via the circle since you need to manually drag each component onto it

frozen widget
#

yup

oak linden
#

yeah put each one into the list

frozen widget
#

i did

#

well let's go compile and see what it thinks

#

oh and also, can there be a way i could change the VFX's variables somehow? or am i doomed to have the base ones

oak linden
#

not sure, i dont know how the vfx itself looks like and im not very familiar with vfx's
you probably can but im working on other stuff rn and it's probably a better fit in something like itolib

frozen widget
#

mainly wanna change the color of spores

#

fair enough

#

[Error : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <1071a2cb0cb3433aae80a793c277a048>:IL_0009)
CadaverGrowthAI.LateUpdate () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0017)

#

oopsies

#

@oak linden

oak linden
#

dunno, are there previous errors?

#

it seems related to the plantBatchers stuff

#

and for that i have no idea what you'd need to do lol

frozen widget
#

[Info : Unity Log] Plant Bfail
[Error : Unity Log] Attempted to add mesh to BatchAllMeshChildren in 'GravelingGrowthMasterAI(Clone)' which did not match the component's mesh
[Error : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.Collections.Generic.List`1[T].get_Item (System.Int32 index) (at <1071a2cb0cb3433aae80a793c277a048>:IL_0009)
CadaverGrowthAI.LateUpdate () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0017)

#

no idea

oak linden
#

it's probably something to do with the first error there lol

icy tulip
#

oh yeah how do we even set up cadaver stuff / spawn them for testing in general

#

do you guys know if imperium spawns growths right?

oak linden
#

:shrug

icy tulip
#

okae

#

back to drinking toilet water for me

#

gup gup gup

frozen widget
oak linden
#

yes

frozen widget
#

well idk

frozen widget
#

what could it be

oak linden
#

no idea i dont have unity, it's something to do with the setup in unity

frozen widget
#

but what's it saying

#

like how am i supposed to know something's wrong if it's not clear what could be

#

i did everything that should work

oak linden
#

i would be going off the same information you have, so i have no idea right now

frozen widget
#

"did not match the component's mesh" huh

#

hold up i think i got it

#

if i don't then i'm at a loss for words

#

[Error : Unity Log] InvalidOperationException: Material needs to enable instancing for use with DrawMeshInstanced.
Stack trace:
UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, UnityEngine.Matrix4x4[] matrices, System.Int32 count, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera, UnityEngine.Rendering.LightProbeUsage lightProbeUsage, UnityEngine.LightProbeProxyVolume lightProbeProxyVolume) (at <c39a522eee05469b8171a6cfeb646c59>:IL_007A)
UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, System.Collections.Generic.List1[T] matrices, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera, UnityEngine.Rendering.LightProbeUsage lightProbeUsage, UnityEngine.LightProbeProxyVolume lightProbeProxyVolume) (at <c39a522eee05469b8171a6cfeb646c59>:IL_0023) UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, System.Collections.Generic.List1[T] matrices, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera) (at <c39a522eee05469b8171a6cfeb646c59>:IL_0001)
BatchAllMeshChildren.RenderBatches (System.Boolean renderOnHeadmountedCam) (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0041)
BatchAllMeshChildren.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_00A0)

#

new error

oak linden
#

that one seems pretty simple

#

just enabling instances on the material

#

should be part of the material properties

#

gpu instancing i imagine

frozen widget
#

oh GPU instancing

#

forgot that it isn't enabled by default on new materials

oak linden
#

more harmful than good enabled by default

urban plaza
#

why is this? just out of curiosity

oak linden
#

you'd have had to ask the me from like a year ago who had looked into it at the time

frozen widget
#

damn bro

urban plaza
#

hi you from a year ago, why is this ?

frozen widget
#

finna invent a time machine for that

oak linden
#

it's probably because unity has its own batching that works good enough but gets disabling on gpu instancing being enabled

#

and gpu instancing has its usecases, where you need to be deliberate with it

#

something like that

frozen widget
#

@oak linden what "instancing" do i need to enable

oak linden
#

gpu instancing no?

frozen widget
#

nope

#

[Error : Unity Log] InvalidOperationException: Material needs to enable instancing for use with DrawMeshInstanced.
Stack trace:
UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, UnityEngine.Matrix4x4[] matrices, System.Int32 count, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera, UnityEngine.Rendering.LightProbeUsage lightProbeUsage, UnityEngine.LightProbeProxyVolume lightProbeProxyVolume) (at <c39a522eee05469b8171a6cfeb646c59>:IL_007A)
UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, System.Collections.Generic.List1[T] matrices, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera, UnityEngine.Rendering.LightProbeUsage lightProbeUsage, UnityEngine.LightProbeProxyVolume lightProbeProxyVolume) (at <c39a522eee05469b8171a6cfeb646c59>:IL_0023) UnityEngine.Graphics.DrawMeshInstanced (UnityEngine.Mesh mesh, System.Int32 submeshIndex, UnityEngine.Material material, System.Collections.Generic.List1[T] matrices, UnityEngine.MaterialPropertyBlock properties, UnityEngine.Rendering.ShadowCastingMode castShadows, System.Boolean receiveShadows, System.Int32 layer, UnityEngine.Camera camera) (at <c39a522eee05469b8171a6cfeb646c59>:IL_0001)
BatchAllMeshChildren.RenderBatches (System.Boolean renderOnHeadmountedCam) (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0041)
BatchAllMeshChildren.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_00A0)

oak linden
#

i didnt think there were multiple

frozen widget
#

it doesn't mention "GPU instancing"

#

it says "instancing for use with DrawMeshInstanced"

#

but i wouldn't know what that means

meager inlet
oak linden
#

wow i was right, see i remember things sometimes

oak linden
frozen widget
#

well i enabled it and somehow it doesn't work

#

hmmmm

oak linden
#

DawnLib's own simulate that is totally not stolen word for word from LL

#

though all coded from scratch because paco never did send me the code, proud of how close i got it to look just off rip

meager inlet
#

where is the pie chart

frozen widget
#

is there not something else mentionned about the materials requiring smth?

oak linden
# meager inlet where is the pie chart

i ate it, i totally forgot there was a whole thing with piecharts 💀
honestly maybe after 2 weeks when im done with uni, rn im speedrunning a bunch of shit to get finished so i can do my uni stuff lmao

frozen widget
#

oh nvm i found it

#

my Batch components were referencing the wrong material lol

urban plaza
#

srp batching...

meager inlet
#

mmmm pie

urban plaza
#

srp batching isnt the static flag at the top right in the inspector right

meager inlet
#

correct

urban plaza
#

but also goood goood... too tired to process the dotpoints thrown at me after looking it up

#

i see combined objects mentioned and first thought was static

meager inlet
#

imagine when your rendering the scene for a frame that your hand painting each thing on the screen

#

this would be you grabbing a paint bucket for that thing, painting it, putting the bucket away

#

for each thing

#

srp batching is the idea that if we paint things in the right order, we can skip a lot of work in going to get the right paint bucket

#

Red
Red
Red
Blue
Blue
Blue

is faster than

Red
Blue
Red
Blue
Red

#

its cool stuff

#

but gpu instancing does rendering in a way that makes doing that kinda batching not viable

urban plaza
#

oh yeah good explanation, i get you, reminds me of defragmentation with hard drives in a way... ish. does lethal do srp batching by default? or something you gotta go out of your way to setup?

meager inlet
#

generally batching is something unity projects do by default yeah

#

but there's ways you can better ensure the render order is ideal for it

#

(thats what the render priority slider on materials is for :D)

#

if you go here you can see a step by step analysis of how unity renders a frame with info on how the batching is going

urban plaza
#

oh yeah ive toyed with that before, it helped me solve some... dire issues... to say the least lol. but always more work to do, ill read up more on it tomorrow... i must sleep... 💤

oak linden
#

sleepaholic lend me your powers 😔

urban plaza
#

i actually lose the ability to think on no food or no sleep personally, it really breaks my work ethic

#

irritation build up as well... nasty combo

urban plaza
#

iTSS FUNN

icy tulip
#

when do we get pie

oak linden
#

almost there

icy tulip
#

liquidation is coming!!!!

oak linden
#

LOL didnt even notice that lmaoo

#

i guess liquidation has facility weights

#

so why not 😭

#

(i can just filter for implemented content atleast)

meager inlet
#

liquidation is invalid content

#

it should not be in your stuff 😛

oak linden
#

it's in the registry but it do be tagged Unimplemented :p

#

kidnapper fox used to be too lol

#

okay nice, i was just doing a zeekerss and i turned my float into an int which landed onto 0, lol

meager inlet
#

yeah but wasn't fox functional or nah

oak linden
#

nah his prefab wasnt even in the game anymore

#

just the SO

#

prefab might've been in the game but not in the network prefabs list

#

it's less non functional and more so Unimplemented

#

lemme check what else i put in that tag

#

test being the test scene "moon" lol

icy tulip
meager inlet
# oak linden

don't you need the cardboard box or whatever in there

icy tulip
#

test cardboard box

#

hrm

meager inlet
#

i see

oak linden
icy tulip
#

yeah it doesnt have a prefab

oak linden
#

half the todo's finished for this update

frozen widget
#

"visualisers for scrap and hazard spawning"

#

"DawnSurface to support TerrainColliders"

#

keep cooking

open quest
#

wait nvm figured it out

dark parcel
#

Does Dawnlib have an updated version of the Template unity package?

oak linden
#

Not yet

#

I'm working on an update and I'll make it after that

lyric topaz
#

can i get some help

#

https://github.com/TeamXiaolan/DawnLib

The video im following is This

GitHub

Lethal Company Library for developing mods. Contribute to TeamXiaolan/DawnLib development by creating an account on GitHub.

Back at it again in 2026 with a new moon-making tutorial, this time with DawnLib! This tutorial also serves as a general guide to setting up your Unity project for Lethal Company content creation.

This video was made with v73 of Lethal Company, but will hopefully stay relevant for future releases (else it's back to the tutorial-mines for me).

...

▶ Play video
#

hit this error at around 4:30 into the video

oak linden
#

Tutorial might be a lil outdated since we're at v81 of the game now uh

lyric topaz
#

ah you so right

#

any tips for making a moon on this version or will we have to wait a bit

oak linden
#

Follow these steps in this page for the v81 patcher

lyric topaz
#

thank you!

oak linden
#

The DawnLib template package currently doesn't exist for this version so you'll have to manually add dawnlib and its dependencies in

#

It's pretty simple though, just manually download the zips of pathfindinglib, monkeyinjectionlibrary and dawnlib on thunderstore

#

Make a folder called dependencies similar to what the package shows in the video and extract those 3 zips in there

#

This page has an editor.dll file

#

Download that dll and put it in a folder called Editor, make the Editor folder in the Assets folder (which is the first folder in the unity project)

#

Finally, delete a file called com.github.teamxiaolan.compatibility.dll
And uncheck validate references for com.github.teamxiaolan.dawnlib.dll and com.github.teamxiaolan.dawnlib.dusk.dll

#

It sounds like a lot these steps but it's only like a few minutes

lyric topaz
#

alr alr ima try this

lyric topaz
#

this is new, should I select here? or somewhere else

#

ah i see what happend lil, i did ctrl b then ctrl v by mistake 💀

oak linden
#

lol

oak linden
#

some people tried to grab the mod's dlls from their mod manager, but that doesn't work for all mods lol

lyric topaz
#

okay

sacred tulip
#

Good morning dawnlib

lyric topaz
#

morning

#

could you explain this part to me

Finally, delete a file called com.github.teamxiaolan.compatibility.dll
And uncheck validate references for com.github.teamxiaolan.dawnlib.dll and com.github.teamxiaolan.dawnlib.dusk.dll
oak linden
#

inside it there should be like 4 dlls

#

one of them is called com.github.teamxiaolan.compatibility.dll

#

thesearch migh not find it so just go into where you put it

#

if you already had the editor dll in the project there's a chance the editor dll deleted the compatibility dll (it's meant to auto delete when you import it after the first time)

lyric topaz
oak linden
#

ye that one

lyric topaz
#

okay

#
uncheck validate references for com.github.teamxiaolan.dawnlib.dll and com.github.teamxiaolan.dawnlib.dusk.dll```
#

how about that part

oak linden
#

those dlls are also there

#

just highlight both of them and top right should be a toggle for validate references

lyric topaz
#

ohh the inspector

#

im dumb

#

am i good to follow that tutorial i was trying to use for the moon or is there a newer one?

#

got all the unity stuff setup

lyric topaz
#

w

#

thank you

frozen widget
#

@oak linden it's happening again

#

[Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object
Stack trace:
CadaverGrowthAI.GrowInTiles () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_076F)
CadaverGrowthAI.DoAIInterval () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0119)
EnemyAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0367)
CadaverGrowthAI.Update () (at <bc42cf6950c34b22862bb697b6cfe961>:IL_0000)

oak linden
#

dunno, it'd have to be with the components if it worked at some point but now didnt lol

frozen widget
#

it doesn't replace the prefabs with the VFX prefabs anymore

oak linden
#

are you using the public DawnLib? lol

#

i havent released the update with the stuff that I added there

frozen widget
#

look, it's using my old particles

oak linden
#

idk then, it might be that dawnlib errored before getting there

#

it's hard to tell what could've changed when it worked yesterday without logs

frozen widget
#

[Error : Unity Log] ArgumentException: 'graveling:graveling_growths' has already been added to this registry.
Stack trace:
Dawn.Registry1[T].Register (T value) (at ./src/API/Registry.cs:83) Dawn.DawnLib.DefineEnemy (Dawn.NamespacedKey1[T] key, EnemyType enemy, System.Action`1[T] callback) (at ./src/API/DawnLib.cs:188)
Dusk.DuskEnemyDefinition.Register (Dusk.DuskMod mod) (at ./src/API/Definitions/Enemies/DuskEnemyDefinition.cs:128)
Dusk.ContentHandler.LoadAllContent (Dusk.IAssetBundleLoader bundle) (at ./src/API/ContentHandler.cs:67)
Dusk.DefaultContentHandler..ctor (Dusk.DuskMod mod) (at ./src/API/Auto/DefaultContentHandler.cs:32)
Dusk.DuskMod.RegisterNoCodeMod (Dusk.DuskModInformation modInfo, UnityEngine.AssetBundle mainBundle, System.String basePath) (at ./src/API/DuskMod.cs:49)
Dusk.AutoDuskModHandler.AutoRegisterMods () (at ./src/API/Auto/AutoDuskModHandler.cs:31)
Dusk.DuskPlugin.Awake () (at ./src/DuskPlugin.cs:55)
UnityEngine.GameObject:AddComponent(Type)
BepInEx.Bootstrap.Chainloader:Start()
UnityEngine.XR.Management.XRGeneralSettings:Awake()

#

that

#

although it doesn't make sense, i didn't register it twice

#

i did register 2 variants though

oak linden
#

could you be giving them the same name or something?

#

check their key

frozen widget
oak linden
#

dunno then, you might just have the same mod twice in the mod manager, you had teh same thing yesterday and managed to fix it

frozen widget
#

checking rn

oak linden
#

i mean, that seems like company hauler

#

idk what to do about that lol, not my mod

frozen widget
#

aight

#

ok so just reexporting right did it ig

oak linden
#

v0.9.3

  • Updated the editor dll for the following changes:
    • Long-awaited visualisers for scrap and hazard spawning.
    • Visualisers for DunGen Doorways.
    • A dropdown on the top of the screen that generates every single Blank ScriptableObject you'll need, which will auto account for future updates.
    • A button on every DuskDefinition that will generate basic weights for every vanilla moon, interior, weather and a selection of tags: none, low, medium, high, ultra_high.
    • Visualisation added to the moon if redlocustbees can spawn (which shows the radius for hives reduced price).
  • Updated DawnSurface to support TerrainColliders.
  • Added a config to enable vanilla compatibility (untested, let me know how it goes).
  • Added Component that reads the result of a config file and runs UnityEvents in correspondence to the value of the config.
    • Currently only supports string, float, int, bool, BoundedRange, Vector3, Color and AnimationCurve.
  • OutsideObjects from DawnLib break trees if setup to like vanilla OutsideObjects now.
  • Simulate and Filter commands added.
    • Simulate supports typing an interior or moon name.
    • Filter supports being fed a tag name.
  • General code quality improvements.
#

I'll also be making the unity package now

oak linden
#

oh i lied about tile visualisation, only doorways, but i do plan to do that, i just dont know what it should look like/use-case lol

icy tulip
#

thats fine

#

i dont even need tile visualization

#

it alr visualizes uhh

#

manual bounds

#

so you can just use those

#

i mean manual

oak linden
#

icic

icy tulip
#

im dum

#

brain not brainding

#

i need a dungen fixer tho...

#

oughhgh

#

paco bless us

#

(with due time)

white finch
sacred tulip
#

dawnlib update

sacred tulip
#

good night dawnlib

icy tulip
#

dusk?

oak linden
icy tulip
#

iirc

oak linden
#

noo

icy tulip
#

oh

white finch
#

It separate

oak linden
#

its not in the thunderstore release

#

cant package it into thunderstore

#

will cause many issues

white finch
#

Ye 🥀

icy tulip
#

ouh

#

im floopid

#

im so used to just

#

downloading from ts

oak linden
#

yea makes sense

icy tulip
#

ok im gonna assume it needs other stuff to work

#

i should not assume things are standalone

oak linden
#

ye it'll need the 3 packages dawnlib monkeyinjectionlibrary and pathfindinglib lol

oak linden
#

monkeyinjectionlibrary and pathfindinglib can just be put in there but dawnlib needs to have its main 2 dlls have validate references disabled, and the 4th one deleted
the 2 main dlls are called com.github.teamxiaolan.dawnlib and com.github.teamxiaolan.dawnlib.dusk
the 4th dll to delete is called com.github.teamxiaolan.compatibilty

#

that do be it

#

it can be hard for some people to follow though hence why i make the unity packages when i can

white finch
#

com.github.teamxiaolan.compatibilty
🚨 TYPO ALERT 🚨

oak linden
#

fuck

#

end me

icy tulip
#

there

#

i ended the me’s

dark parcel
oak linden
#

it takes time

dark parcel
#

Ok

#

I wait

oak linden
#

im doing it now but it'll be a bit while im reorganising some folders and patching v81 again

oak linden
#

yeah im not putting the template on my coderebirth project

frozen widget
alpine mica
#

Oh I forgot the editor.dll that's why my Dawn has looked different for the last few months plink

carmine elk
fallow remnant
oak linden
oak linden
fallow remnant
#

I forgor, does unity package include dependencies?

oak linden
#

Ye it has the entire thing setup

fallow remnant
#

into a which folder path do you put com.github.teamxiaolan.dawnlib.editor.dll? I used to have it in /Assets/Editor, but also I noticed there is a pre-existing /Assets/LethalCompany/Game/Editor folder

#

got it

oak linden
#

in reality, it doesnt need to be in Editor, but putting dlls in there auto toggles the editor part of a dll, you can toggle it manually but who gonna do allat

fallow remnant
#

yea I'm just importing the whole package, for good measure

oak linden
#

lol

sleek matrix
fallow remnant
#

holly diff almost 1000 files

#

still a bit confused why am I getting a yet another BepInEx/plugins folder

oak linden
#

1000 seems like a lot though

fallow remnant
#

there is /Lethal Company/BepInEx/plugins and Assets/LethalCompany/Mods/plugins

fallow remnant
oak linden
#

fair

sleek matrix
#

Forgive my lack of any mod knowledge lol

But for the new version, the issue is specifically on the forest maps (Ada, Vow, March) where the TerrainCollider seems to be missing the assets that tells you the forest maps have extreme slopes and foliage that should ideally be slowing you down by default. What’s happening now for me and my friend is that it’s acting like we are on fully flat ground. Whenever we sprint, it’s exponentially adding speed to us to the point we tap forward for half a second, we travel halfway across the map. It got to the point where we sprinted fully off the map and into the void/fell off the map entirely.

oak linden
#

um, i think your issue is something that isn't dawnlib, all i do is make sure vanilla uses DawnSurface on its terrain colliders

#

which would only affect footstep sounds

sleek matrix
#

We aren’t sure what it is then

oak linden
#

also i dont think foliage slows you down at all

#

can you send a clip? maybe im misunderstanding

sacred tulip
#

Didnt you say something was wrong with forest moons?

sleek matrix
#

I don’t have one on me but I can share my modpack? Maybe you can run across the issue

sacred tulip
#

At least bear traps were kinda weird

sleek matrix
sacred tulip
#

No idea if this is related

sleek matrix
#

Uhh nothing about bear traps no

oak linden
sacred tulip
#

When lunar broke map object it would leave you stuck on loading

oak linden
#

you are on v81 just to be sure right?

sleek matrix
#

Yes

sacred tulip
#

:3

oak linden
#

it sitll doesnt, it spawns the "default" beartraps rn, but it used to spawn nothing, the skin of the beartraps is coded into CR so it's good on DawnLib's end now, just not CR's

fallow remnant
#

should I remove Library/ScriptAssemblies/Assembly-CSharp.dll to avoid the "An item with the same key has already been added." error?

oak linden
#

next time you launch the unity project

fallow remnant
#

so unity complains about its own doings?

oak linden
#

i dont actually know how to stop that error
number 20052 harmless error from unity

fallow remnant
#

oh right, Library is not in git

fallow remnant
#

amazing

sleek matrix
#

019d75e2-151f-1bdf-83ff-0ada536521f8

If you wanna test it when you get a chance

#

@chilly canopy

oak linden
#

@alpine mica can i ask how you did the additional tileset to the mansion? someone else is trying it rn but it seems i forgot to unlock the archetypeKeys so you can give it the archetypes to inject into and im wondering how you went around that (unless you did it via code?)

wind wasp
#

can I update it without issues?

oak linden
fallow remnant
#

Unity: The story of editing assets meta guid in text editors

#

I'll have to create a new Unlockable definition just to copy paste m_Script from it

oak linden
#

lol

#

i should make a script that keeps track of all guids every reload and sees if any scripts changed guids or smthn and fix the changes

#

dunno

fallow remnant
#

it's fine

#

i just have to fix key namespace not being recognized

#

oh, it was in LethalCompanyV73\Assets\dawn_lib_namespaces.json

#

i assume dawn editor dll won't pick it up from any other path?

#

ahh it pretty much only looks for Path.Combine(Application.dataPath, "dawn_lib_namespaces.json"))

oak linden
#

yea it's only there, reminds me i gotta update coderebirth's gitignore to leave that in lol

fallow remnant
#

it's kinda strange. it's in the list, but should already be as selected

#

whatever, it works tho

#

i think it edited file to reset to none the last time i opened it before copying json

oak linden
#

yea it might've

alpine mica
oak linden
#

that's how, lmaoo

#

there's an issue where the Key gets forced to be a specific value rn

#

but i guess if you dont have the editor dll working it wont be an issue

alpine mica
#

oh, lmao

alpine mica
oak linden
#

looool, didnt notice that messag

#

that's hilarious

fallow remnant
#

so I'm trying to patch Terminal to force append my furniture to the shop in Update postfix

#

given that the furniture is registered via DawnLib content handler, what would be the best way to identify it in the list?

#
if (!__instance.ShipDecorSelection.Contains(myStuff))
  __instance.ShipDecorSelection.Append(myStuff);
oak linden
#

ohh you wanna force it in the decor list

#

right

#

what does ShipDecorSelection take?

fallow remnant
#

yeah, StoreRotationConfig mod is still broken, and wan't convenient to use anyway

#

List<TerminalNode> ShipDecorSelection

oak linden
#

hmm

fallow remnant
#

Imperium does this:

    [HarmonyPrefix]
    [HarmonyPatch("Update")]
    private static void UpdatePatch(Terminal __instance)
    {
        if (!Imperium.ShipManager.UnlockShop.Value) return;
        if (__instance.ShipDecorSelection.Count == Imperium.StartOfRound.unlockablesList.unlockables.Count) return;

        __instance.ShipDecorSelection = Imperium.StartOfRound.unlockablesList.unlockables
            .Select(unlockable => unlockable.shopSelectionNode)
            .Where(node => node)
            .ToList();
    }
oak linden
#

you can try getting your furniture's node through LethalContent.Unlockables[MyFurnitureKey].UnlockableItem.shopSelectionNode if thats what you mean

#

it's not exactly .UnlockableItem, but it'll be similar enough you can figure it out

fallow remnant
#

I could select by displayText I guess, but I'd rather by some id

#

me: wrote an entire test suite for Dawn keys source generator

also me: my keys where 🐒

oak linden
#

lol

fallow remnant
#

i.. i uh.. i can't

#

i just fucking can't jsut add a line of code

#

it's a matter of principle now

#

i didn't do all that for nothin

#

hollyyyy

#

i feel like i fixed that missing whitespace after comma

#

or was it part of the never-merged test suite?

oak linden
#

no idea

fallow remnant
#

you think it's safe to append, or better build a new list?

oak linden
#

wdym?

fallow remnant
#

ig if imperium gets away with creating a copy, i can do too

oak linden
#

oh for the decors

#

append never seems to work for me, so i never use it

jolly quail
#

Heya, I'm currently watching some friends playtest some stuff in Lethal and I think there was an odd bug introduced with surfaces and water, and that it might be related to DawnLib.

#

They reported that some grass surfaces are just making no noise, and they're currently running into a bug where any interaction with water causes their movement to get permanently stuck.

fallow remnant
#

what's up with the cursor 😭

oak linden
wind wasp
urban plaza
#

someone had mentoined that here too

urban plaza
oak linden
#

uh, i dont touch adamance

sacred tulip
#

Yes you do

fallow remnant
#

Unity: the art of editing text fi... yeah, you know the drill

jolly quail
#

The modpack they're currently playing only really consists of DawnLib, it's dependencies and TerrasScrap

oak linden
#

ill walk around on em rn but it didnt do anything last time i was walking around

jolly quail
#

It might be networking related? I had tried too and I was able to walk around find.

#

I joined a quick game with them and the bug didn't appear there either.

oak linden
#

there's no networking to the footsteps stuff, it's all local

jolly quail
#

Nothing that touches water either?

oak linden
#

nope

#

019d75e2-151f-1bdf-83ff-0ada536521f8
i plan to test this code which said opposite problem, walking would make them exponentially faster

jolly quail
#

Hmm

oak linden
#

jesus christ, is 32gb not enough for this mod?

urban plaza
#

lol is that the 900mb one of hsr models

oak linden
#

yeah

sleek matrix
#

Huh

sleek matrix
#

We play with our bulky ass models LOL

fallow remnant
#

finally, all guids OK

#

thanks for all the help ❤️

#

:3

oak linden
#

neat

fallow remnant
#
Stack trace:
Dawn.SurfaceRegistrationHandler.TryGetAndSetDawnSurfaceIndexPlayer (GameNetcodeStuff.PlayerControllerB playerControllerB, System.Boolean checkStandingOnTerrain, UnityEngine.RaycastHit& hit, System.Int32& currentFootstepSurfaceIndex) (at ./src/API/Surfaces/.SurfaceRegistrationHandler.cs:289)
(wrapper dynamic-method) GameNetcodeStuff.PlayerControllerB.DMD<GameNetcodeStuff.PlayerControllerB::GetCurrentMaterialStandingOn>(GameNetcodeStuff.PlayerControllerB,bool)
(wrapper dynamic-method) GameNetcodeStuff.PlayerControllerB.DMD<GameNetcodeStuff.PlayerControllerB::Update>(GameNetcodeStuff.PlayerControllerB)
#

we broke on March in shallow water

#

unable to move, error spam every frame

#

needs testing, but I think it only happens after rehosting

fallow remnant
#

another guy broke, claims he restarted the game completely before joining

oak linden
#

Huh

#

Oh that's weird, this error is saying that the footstep surface never got registered

oak linden
#

It sounds like the registries broke early on

fallow remnant
#

019d7927-63c1-6dc0-a0f7-f23e484467a9

oak linden
#

Nono like the full log

#

I can't test for a while since I'm on phone lol

fallow remnant
slow crow
sacred tulip
#

Without seeing the message you replied it seems like you had a same experience to the picture omg

oak linden
#

reproduced the error

#

:D

#

tis a lobby reload issue

urban plaza
#

fav kind

carmine elk
#

I’ve got a question about the beehive visualization thing. Can it be toggled? Like it’s not bad or anything but I don’t really need it

oak linden
carmine elk
#

Yeah but removing the bees isn’t really a toggle. I didn’t see one in the gizmos but I also could’ve overlooked it not knowing what it would be called. I can look again tomorrow.

oak linden
#

ill see if i can take a look tomorrow as well

#

v0.9.4

  • Added compatibility with latest TestAccount666.GoodItemScan update.
  • Addded more logging related to achievements.
  • Possibly fixed issues relating to making more TileSets attached to interiors.
  • Tried to fix old moons with terrain colliders not having proper footsteps.
  • Fixed an issue with lobby reloads in relation to footstep surfaces.
carmine elk
oak linden
#

it's cuz cheese SUCKS!!!

carmine elk
#

I think your bee visualization persists in viewing prefabs when the current scene has the bees in the spawn pool. Not a big issue, but it's there (also, can confirm there is no gizmo. I turned them all off and yet it remained).

#

also, a qol thing that idk if you can implement, before this V81 stuff you could click on the dungen doorway and it would select it just like any other game object. Even with your restored visualizer (which I love, thank you) they can't be selected in the scene, only hierarchy. That seems like it might be complex to do, but if you think it's doable I think it would be nice.

frozen widget
#

what installing Dawnlib in v81 does to a mf

icy tulip
#

what the fuck

#

are those scrap nodes

#

what did you do

urban plaza
#

portal to unity world

oak linden
#

Why do you have SO MANY scrap nodes

#

Well atleast you can turn them off LMAO

carmine elk
# frozen widget

"Man, I wonder where all the scrap is?"
The hoarding bug dream room:

oak linden
carmine elk
#

I see. Yeah it's not a big deal

slender violet
#

[15:04:00.7783413] [Fatal : DawnLib] currentFootstepSurfaceIndex: 4 is spamming this on March

icy tulip
#

what the fuck

#

like every single scrap is gonna spawn in that room 😭

#

that or the entire interior has an egregious amount of scrap nodes

oak linden
#

I'll update as soon as I can

fallow remnant
frozen widget
#

it be fine tho

alpine mica
#

90 spawn weight injected into every moon with no config to change it, m'lord?

frozen widget
#

it just almost guarantees at least 1 or 2 scraps spawn in that room in particular

frozen widget
#

also @oak linden idk if anyone's told you this, but Dawnlib sends a Fatal log everytime someone steps on a terrain

#

and on Vow i'm having snow footsteps for some reasons lol

oak linden
#

but the fatal logs i meant to fix yeah 💀

#

i was just abotu to update removing em

#

but lemme check out the log footsteps first

frozen widget
#

march, vow, ada

oak linden
#

it'll be march and vow, i applied the DawnSurface on em, but only those 2

frozen widget
#

because of Terrain mesh

oak linden
#

wat

frozen widget
#

i suppose it's because it has multiple terrain layers

oak linden
#

TerraMesh affects vow and march?

frozen widget
#

i mean

#

like

#

on the terrain, grass has grass sound effects

#

but the path to fire exit down the dam sounds like snow

#

like idk what the to say other than that

oak linden
#

on march?

frozen widget
#

on vow

oak linden
#

okay ill look at vow

frozen widget
#

ig look at all three forest moons, ya never know

oak linden
#

i see the issue

#

the texture it uses is the snow texture

#

so i assumed that somewhere on the moon there was snow

#

but that was just the path to fire ig 💀

frozen widget
#

lmao i knew it

oak linden
#

v0.9.5

  • Added Routeprice configurability to items, enemies, interiors and entity replacements.
  • Got rid of my logging on vow and march from last update, whoops.
  • Fixed vow making snow sounds on near fire exit.
oak linden
#

yeah, entity replacements have been around for a while, able to make skins for hazards, enemies, items and ship upgrades

#

coderebirth's halloween even used it exclusively

#

no code only editor

#

people are gonna love config'ing route prices

#

multiply spawn weight of item if route price of a moon is more than or equal to 100

#

@carmine elk added the toggle

oak linden
alpine mica
#

Route price based weights greed

#

So like, you can have an item spawn if the moon cost between 200 and 800?

alpine mica
oak linden
#

you can make it's weight multiply to 0 under 200 and above 800

#

then add weight if above or equal to 200

alpine mica
#

I see

oak linden
#

it's just there isn't a "range" thing

#

you can just do adding weight above 200 and decreasing said weight above 800

#

that's less complicated than what i said lol

alpine mica
#

No longer are we confined to lethal_comapny:free and lethal_company:paid