#[WIP] Unity AssetRipper / Fixer
1 messages · Page 6 of 1
i feel like i recall this happening to me ages ago also
i tried it on a fresh project
same
No sorry, unless you didn't download the appropriate packages mentioned in the tutorial it shoooould be fine
i have everything required 🤷
same
Yeah no idea then
same
I guess you could try downloading a more up to date version of some stuff like the .NET but I don't think that'd make it eork
i did rip it without any problem....
Work
i already redownloaded it
well
AUGh
i downloaded 9.0
Which version did you download?
i meant to say
Yeah that's the one that's supposed to work
You could try 10.0, not sure
IF ANYONE IS EXPERIENCING THIS ERROR
make sure you use the link DIRECTLY from the dawnlib tutorial page, DO NOT visit the actual link, the links inside there are not the same
Ah yeah. I did that on V73
😭
xu you really should make them as text
or at least add a disclaimer or some text right above
Yeah I will when I'm next on
The amount of people that click it despite saying to copy it is too many
Maybe you could do like https://github.com/Skeleton-Studios/unity-project-patcher/tree/lc-v80-fixes?
Not sure if it'd work though
But that sends you to the branch even if you click on it
It shouldn't be clickable if I do it like that
I'm just gonna let someone get unlucky if they do that while I'm still in bed
Oh no I just mean that specific link instead of the one that sends you to main branch if you click on it
I dunno if it'd work though
true but what if i dont want to go to another page and just straigh up copy paste for another new unity project
Yeah I'm just wondering if https://github.com/Skeleton-Studios/unity-project-patcher/tree/lc-v80-fixes would work the same as https://github.com/Skeleton-Studios/unity-project-patcher.git#lc-v80-fixes
In terms of being pasted into package manager as a link from git
easy to find out
boowomp
🥀
i followed these exact steps
and i'm proud to say
it did not work for me

i just genuinely cannot get it working
it keeps either giving me the same errors or it just keeps telling me no gamewrapper was installed
no amount of reinstalling or anything is doing anything

Hey Paco, sorry for the ping, but since you have a project patched, do you have this stuff? The Texture3Ds didn't rip in the V73 version. Idk what most of it is but groundsmoke is the dustcould/blowing snow on snow moons so at least one of those is somewhat important. Zaggy might've fixed it on their fork #1199473521265475745 message but I've not been able to get confirmation if it's in this V80 one.
I have this from an old project and could just move it over, but new moon makers may not be able to get their hands on this stuff so I'd like to see it fixed
@flat stag Really sorry for the ping. Not trying to be annoying. Just, since you were working on the patcher, if possible could the above be looked into? The blowing snow effect is something I think is kind of important for moon makers to have access to. Looks like AssetRipper had this commit to fix that issue https://github.com/AssetRipper/AssetRipper/commit/e70e206184e506dd0cc4153288f22a13c9c9f74c. Zaggy mentioned something about rebasing iirc and maybe having it fixed on their branch but couldn't test and then I got busy and eventually forgot.
Again, I know you've had a lot on your plate, but since the patcher stuff was being worked on now just seems relevant to bring it up.
Don't think those errors affect anything
They be in the Library folder so it probably somethin with having an old cached version of that or somethin
Can likely be ignored but you could also delete Library and rebuild it (though it do take long)
well its force booted in safe mode
so...
If you're in the middle of patching you should close and reopen Unity
So that it can continue doin stuff
Had to do it a couple times last time I repatched a project
It just halts the auto restarts due to the popup or somethin
fixed it
o
this was pre patching
Ah
i needed to pass the safe mode and apply the bepinex thingy, i couldnt before cus it was missing
Current patcher rips separate DunGen scripts instead of its .dll file so LLL complains about not being able to find it 
In case anyone's wondering why it no work
Might have to repatch to fix references unfortunately
Ye it's fine lol
I can't @ everyone in here without gettin timed out so I shall ping a couple people 
@thorny fox @abstract swan 
wait
i havent patched yet
i havent ripped v80
so should i wait
Yeah probably should wait, you can patch to get stuff from the new version but some stuff related to DunGen just doesn't work so it just won't allow mods like LLL or DL to load
will that be fixed by tonight likely or nah?
I don't think I understand it entirely but I'm rewriting the wiki to put back v73 thing and put a note for v80 with notes below it
Mayhaps
I do wonder what's goin on with the Texture3D directory too 
And/or if there's anythin else that goofed
I think I know
Probably unwise
I should just load backup and try repatch but after fixin it 
ok when interiors arent exploded pingle me again pls!!!
Ye lol
So does this just means more waiting and then we can begin creating our moons?

Ok-dokie! I only created a project and added the patcher. Didn’t even run it yet
Make it 6
Or 7
PHUK WHAT HAS HAPPENED TO ME!?!?!!!?
oh so this is why... wish i read in here before i tried last night

It is time to make an unholy unity package size
even now it wont rip interior stuff right yet
plus some other minor things
but for most stuff its fine
this..is...okay... i started an interior but everything i did i was just like "wow.. this gave me a new idea for the house !" and its been like that since i ever had the motivation to try one
you wont be able to load any dlls that reference dungen, stuff like LLL, DL, probably your own mod if you reference DungeonFlow etc
iiii do not
do i invalidate their references or not that simple
maybe i should just keep it in the v73 project atm
I would recommend just waiting
yes... everything still functions as is anywya, any assetbundle i export works in v80, ill just have to wait on making new scripts
Gonna fix it when I get home from work in about 8hrs

wait youre helping with this?
goated
ill try seeing if we can update assetripper/if that would work
3D this is Texture
it's empty yeah
Ye lol
AssetRipper itself do work though
At least tried out v1.3.10 on the game's bundles 
I assume the one in the project patcher is perhaps much older

Thats the sound of progress
dunno, it was updated back when updated for v73
Yeah it weird
Tried v1.3.10 outside the patcher, just manually ripping game bundles until I found a Texture3D I should clarify*

Yipsee!
you should keep going with this, but i think i got what we needed working with zaggy, though still investigating a few things :p
okay now its actually completely fixed
@nimble carbon i totally lied
tested it with dawnlib etc, it should all be fine:
https://thunderstore.io/c/lethal-company/p/TeamXiaolan/DawnLib/wiki/4097-a-unity-setup/
(obv you need to update to latest dawnlib on the github releases)
you also need my unity-lc-project-patcher fork too
Only took 18 project patchings 
let me update the readme this time around I guess ....
i copy pasted the wrong thing LOL
dont forget, .NET 10
cuz i forgot too
asset ripper was updated
to 1.3.4?
1.3.9 i think
this what you wanted?
yeah I don't know if I forgot to ping you or someone else about it, but I rebased and rebuilt AssetRipper a while back
(that version apparently needed .NET 10, so that's not a new thing, I was confused about why it was requiring it now but now it makes sense)
now we have another new build for it to make DunGen not explode it
I tried rebasing to a newer version of AssetRipper, but apparently they broke builds, so I didn't bother
maybe I'll do it later
Patcher for v80 is here with updated readme: https://github.com/Zaggy1024/unity-lc-project-patcher/tree/v80-fixes
come get it while it's hot and buggy
(it'll work first try)
ah excellent, does this one handle the dll references now too?
it looks like it does from that commit message
yeah, it avoids the problem with the DunGen references (and others that were previously broken with the patcher probably) by telling AssetRipper which assemblies it should not decompile
I suspect that the error spam when you use push to talk (or remove the patch for the other branch of the same code) should be gone now
nice lol
just glad everything's working now, it took a good few iterations
definitely the most robust solution rather than doing fixups
yep
oh i was gonna run some script across all the .cs files and remap them to the equivalent classes in the .dll files
so this is way better 😂
if I ever have time to kill I might try my hand at something I've wished we had for a long time
I'd like to make an editor script to remap references to vanilla assets in the built bundles back to what the real vanilla assets store them as
this is exactly what took me the longest to do when getting WTO running again
theoretically that would mean we wouldn't have to have all the crap code to fix mixers and stuff
shaders etc
yep
wto?
welcome to ooblterra
I think you might be referring to something different
i guess there's two problems
I mean making mod asset bundles directly reference vanilla assets instead of stubs
- whenever a new version comes out and I copy my mod assets to a new unity project, all the script and asset references are broken.
- exporting asset bundles containing vanilla assets copies that do not need to be there
i guess you're talking about the second lol
yep
the patcher is supposed to allow patching in place, but honestly I think it would be good if I could instead modify the patcher to have deterministic asset GUIDs so that the remapping is unnecessary
mm yep
not sure how possible it is though, I'd have to check if each asset has enough consistent identifying information for that to work
btw why do we need to fix mixers?
i tried looking at old LL code where it did "fix" them, but it didnt really look like it was doing anything
I think that it could be a bit hard given the unity yml files could change a reasonable amount without any real content changes
and i couldnt figure out the point of it
the copied mixers in mod bundles don't work properly because they're not set up in the actual game
it probably falls back to some default mode, and whatever it is sound muffled
not sure what you mean, I was more thinking along the lines of the names
i see, do you remember how they should be fixed? LL checks for if the mixer in an audiosource is called "non-diagetic" and then replaces it with the actual non diagetic, but it doesnt do anything if the user doesnt give a mixer or gives a different mixer
duplicate names are allowed though, so it might not be workable
it's been a while, but I think there's a way to get all the mixers and then you can just do the usual name match
makes me wonder if i should be setting audiosources with no mixer to have a mixer
you'd need to fully parse the yaml files and compare field by field to determine if something had actually changed. also ignore any time-based fields etc.
im sure it's possible but it would need full deep comparisons and not just say, a file hash
sounds like we're taking about two different things tbh
matching file contents to within since sort of margin sounds like a correlation of before/after, but I was hoping to experiment with something more concrete
creating a deterministic GUID would mean one that only changes if the asset changes, right? to keep it stable across versions
I think so, I'm pretty sure having no mixer is the same as a copied one
@sterile hamlet maybe this is related to the sounds issue you had?
no, deterministic as in the GUID of an asset stays the same between updates
im pretty sure LL never did it properly if we were supposed to swap em out properly
do you know what the difference between non diagetic and diagetic is?
it's probably a pipe dream
I forgor
so in this case, how would you handle a situation where they renamed a file, like i dunno. HandIcon -> HandIcon_1. you'd need to do a content compare and build the GUID from that
all goods, ill assume people want diagetic or look it up and make sure
I tried doin it from LLL's end (having only one instance of both mixers) but I crashed the game on a larger pack 
what lol
I was destroying em
oh
Game did not appear to like that
i had to hack together something in my TweaksMod that will apply the vanilla SFXs to any sounds in an array, so shit like the TZP effects will work properly
:p
true that that would be a problem, but I think any comparison would require us to make version to version mappings which becomes a similar situation to something like the Minecraft Coder Pack
I suspect so
which is a lot more maintenance than I want to be doing lol
probably could automatically generate a lot of the mapping just based on the filesystem structure, but then you might need some manual tweaking
wdym by vanilla SFX?
theres a SFX audio mixer
mmmmmmmmm
(3/4 of em are SoundAPI related lol)
ah
There's mixer groups and audio mixers
makes me wonder how i should be doing my replacements then...
do you know the difference between the different mixers?
SFX/Master/VoicePlayer1-4 are mixer groups
ah woops, got the terms mixed up
It confusing 
AudioSources themselves
Mixer groups have an audio mixer field, either Diagetic or Non-Diagetic
There's a couple more I'm forgetting
But ye
oh, so i shouldnt care about diagetic or non diagetic?
and instead just the mixer groups?
i dont have unity open and i dont wanna open it anymore today
, so im being confusing
I mean multiple instances of the mixers do get created as well lol
But ye
Non-Diagetic's mainly for like HUD/menu sounds though
Diagetic for actual game objects in the world
guys yesterday i installed the new patcher tools and it told me it was missing something in the console, i brushed it off
today i start my unity project, and it asks me to launch in safe mode
yep
Patcher was gullible before, it got update 
where
that too, it was not fully working before
Only took Xu 18 project repatches to figure things out 
where is it
where's the new patcher
installing net 10 rn
so erm, what was the problem with the old one exactly?
(patch i mean)
Couple things were not ripping correctly + DunGen being decompiled into .cs files made assemblies lookin for it unable to find it (like LLL)

ow
@dull furnace this seems to be almost perfect with regard to assets, except there's a few issues still:
- there's one single missing script that prevents the game from loading into a level in editor (es3defaults)
- all level scenes have missing scripts, though they all have no members so I don't know what scripts they could be. doesn't matter too much
- the BepInEx that the patcher installs contains broken patches that cause a bunch of runtime errors
literally just removing the old patcher and adding the new links fixed my unity
there's no way in hell

oh boy, i sure do hope zeekerss doesn't add 1 update patch that literally ruins everything for modders once more
that would be so unrealistic
lc modding API when
oh actually hold on, im wrong, there's a null reference in the input system for some reason
the patches it uses are from the BepInEx patcher package right? I haven't looked at those at all, I'd be curious what they're for
looks like I just made a goof including firstpass in the saved DLLs though
for the ES3Defaults
having these errors again
Library\PackageCache\com.nomnom.unity-lc-project-patcher@80b090d544\Bepinex\Runtime\LethalCompanyPluginSettings.cs(44,14): error CS0246: The type or namespace name 'TypeObjectFieldAttribute' could not be found (are you missing a using directive or an assembly reference?)
Library\PackageCache\com.nomnom.unity-lc-project-patcher@80b090d544\Bepinex\Runtime\LethalCompanyPluginSettings.cs(44,14): error CS0246: The type or namespace name 'TypeObjectField' could not be found (are you missing a using directive or an assembly reference?)
you need to install the bepinex package
oh
true or false bros ?
not sure why it doesn't seem to care about the define
tried bundling assets, and it just said fuck you
di you per chance delete bepinex alongside the other 2 v73 links
so idk
ah this is why:
cause i did htis last night adn had to delete whole project for a backup copy i did before trying
hmm, wasn't there a step for the input system? I dunno if that was supposed to fix the input asset
how exactly @storm lance
does not look like it's working right now
no like i literally copy and pasted my entire unity project before i tried patching from v73 to v80, i never trust anything to go smoothly in unity editor so i always make a backup before doing something like this. I couldnt work out how to restore the scripts and thought it was easier to just restore the backup i made
i didn't patch it though
i just changed the patcher
well the links part i mean
is bepinex still there in package manager under the 2 project patcher links?
wait, these input actions are not correct as well. this is just the unity defaults
erm

yes..... dis was my problem.......
so em
what doado
do i just copy my assets and paste em in a new project or something
bepinex 
does LC even use the input systems package?
ok nvm the right actions do exist, they're just not assigned in the project settings for some reason
sure does
honestly thought it would've been too old for that
@dull furnace wow nice error on me putting it in playmode 😔, it's always your fdault
what do i do in dis specific situation then
so need to get rid of firstpass from saved DLLs?
i do not know... i went back to my previous backup...
can you just install bepinex manually?
or is there something special about the button in projectp atcher
tell me how please :>
because i have no idea
Probably gullible to do so
i am unsure how, ive never done it before
is that another word for foolish?
Mayhaps
then what can i do mr paco
ok so fixing the es3defaults, and assigning the inputactions asset has made this properly work in editor now 👍
It looks like that BepInEx package is fine, it was just collecting an error from the underlying player update code
am i cursed to make a new project and start everything from the ground up?
Should wait for patcher itself to be fully fixed first (it nearly done) 
seems possible, but I'm gonna try and check
patcher is fine but few things like going into play mode are being finetuned and fixed, so if you dont care about going into playmode i think its fine
bro idc about playmode gimmie the ability to make assetbundles bro
having those errors stop me from doing so
reload your unity, go into tools, press open window, download bepinex
also, does anyone know where this crap keeps coming from?
Failed to find entry-points:
System.Exception: Error while loading assembly references for Assembly-CSharp ---> System.Exception: Error while hashing assembly H:\oyh\WTO-Assets\WelcomeToOoblterra_80_1\Library\ScriptAssemblies\Assembly-CSharp.dll ---> System.ArgumentException: An item with the same key has already been added. Key: 2192aa62aa6df15d04990fcf3a095863
I've had this since v73
me too, but i have no idea lol
it doesn't seem to cause any problems but I want it to piss off 😤
Ye that error is harmless at least
i'll try thazt
btw are you getting this on playmode? @leaden breach
no actually i am not getting that
ye, press ignore, fix the thing
i did get some problems with it, but for me it was unassigned, i did not get that serialise error
hmm
that is a weird one, you did make the project with the right unity version?
wait so what’s different to the old one? Do we get 3d textures and some other stuff?
yeah, but if you care about going on play mode, i'd wait a bit more
i can finally release my interiors in 20 years
if we have the shader would be be able to apply it?
cuz i do have that
i dont every use play mode so YAAAY
who uses playmode bro
this is like those "nintendo hire this man" ue5 demos:
ok something is broken as hell with these shaders LOL
lol they shouldnt be this bad
it's just going pure white for some reason 😭
yeah terrain when ripped looks like that
amazing
also this
ok well either way, I think this is stable enough to be used for modding now, minus the es3defaults and inputsystem
ye
i do wonder why mine is actin up but maybe if i just get it fixed to begin with it wont do that
xu where is fisrstpass dll again
since i followed the instructions as normal and it all worked fine (needed to install .net 10 though)
in managed, i think its getting decomped when it shouldnt be though
the es3 stuff is inside firstpass i think?
which is why that's going missing
yep
Okay first of all, *passes*
why we gotta pass first anyway
nice guys pass last
😔
i mean in patched project
but ig it got decompiled
woah no
umm
something weird has happened to yours
lol
for me the only thing that was broken is that it was not assigned in project settings
mine also became a notepad file
ok i would say just start it again
i guess it got interrupted somehow?
and did something weird
hmm i think repeating the same thing is defined as insanity, maybe it was the order of steps for me that fucked it up in terms of reassigning it?
i think i went into play mode first? or pressed something which made it not be able to be assigned properly?
unsure
I also went into play mode when it was unassigned
so I don't think it would be that 🤔
if you manage to get one where the playeractions is assigned by default, surely i cant break it?
where is that playeractions meant to get assigned anyway
for mine it wasn't "missing" or anything, it was straight up set to "none"
somewhere in project settings?
ah i meant in the project patcher
interior generation testing you know
yeah editor testing is pretty nice
and im glad dawnlib editor testing works 
patcher just needs the input actions and es3 stuff, es3 stuff minimum since interior testing prolly doesnt need the input actions but would be nice
ideally it should at least mostly work in editor, to also have the highest chance of working in game
i still dont like this debug renderer when i want to check where tile spawned (branch/main paths)
well, there is preloader magic, and MMHOOKs being used, so i wouldnt have been the most surprised if it didnt end up working, but it looks like it does work
you should be able to disable gizmos for individual components
yeah true, many such cases of this 😭
also it seems like perhaps unity doesn't know how to do this search properly?
not sure how to
but ig this is enough for me
it does this is just a VERY specific and VERY fragile search function
so like, you probably did it wrong but will unity or any documentation ever help you? no
it's in the top right of the viewport
and this
are not equal
even though it will tell you they are
one search is superior in searching than the other
😭
does the patcher actually ever assign the input actions to project settings? it does not look like it does
I'm looking at EnableNewInputSystemStep.cs
but nothing in there actually assigns the PlayerActions asset to project settings
it just.. enables it?
i think the step isnt for that
there's FixInputSystemAssetsStep as well, though I haven't parsed what it does yet
this is the only stuff that comes up when ProjectSettings is actually edited
i think enabling the input system is because of unity going from old input package to newer one, atleast thats what i assumed it was always about, since i feel like i used to be able to use old input package before the move to 2022.3.62f2 but not anymore
so no idea
this appears to fix something inside the asset, but it doesn't assign it to the project settings
wait
_projectSettingFilesToCopy:
- NavMeshAreas.asset
- TagManager.asset
- TimeManager.asset
- DynamicsManager.asset
- QualitySettings.asset
this is in unity-lc-project-patcher, LethalCompany_AssetRipperSettings.asset
should this also include InputManager.asset?
ohwait no
thats the old one..
honestly i thought it was because we had to rip each action
hmm it says fixed on re-opened a second time but for me this was the second time
i had reopened it
I think for you something else has broken as well though
oh for sure lmao
Will another new patcher be made for the new update Zeekerss did to move unity versions?

yep it's being worked on now for v80
Btw much thanks to you two @dull furnace @leaden breach for doing more of the heavy lifting and me just watching, especially zaggy i dont think we'd have even had a proper patcher for v73 not for a much longer time anyway if you hadn't helped
v81 just came out
The game swapping to unreal engine
||The game||
hmm ok so on a freshly patched game, the input actions are still unassigned even if I restart unity
seems like the issue with InputActions may be due to not converting the asset to its original json format early enough for the project settings to actually use it
trying moving it before the project settings copy to see if that fixes it
where actually is the v80 patcher? i can't find it
https://thunderstore.io/c/lethal-company/p/TeamXiaolan/DawnLib/wiki/4097-a-unity-setup/
these instructions have been updated
but, the patcher is not quite fully working yet
just ironing out the creases
are the creases able to be worked with at the current moment
mostly
you currently need to:
- assign the InputActions asset in project settings
- fix the missing script on the es3defaults asset
those are for playing in the editor, right?
wait, im now getting that serialise issue you were getting
Failed to load 'H:/oyh/WTO-Assets/WelcomeToOoblterra80/Assets/LethalCompany/Game/ScriptableObjects/InputActionAsset/PlayerActions.asset'. File may be corrupted or was serialized with a newer version of Unity.
ok so.. it looks like there's some weird duplicates being output into the ScriptableObjects/InputActionAsset folder. there is a PlayerActions.asset and PlayerActions.inputactions. The PlayerActions.asset is corrupt and should be deleted, and PlayerActions.inputactions is what should be used
Uhh so does this mean I can start working on a moon?
yep should be able to
the .asset files are what AssetRipper produces, the .inputactions files are what the original source could look like
I'm not sure exactly how this was all working before, though, since it has no GUID fixup for the generated .inputactions
Ah right
Well, im not sure what this is missing
But that explains the error that @flat stag was getting
So i havent lurked or read everything but for a tldr... v80 project patcher works and play mode works too now?
You have to do a couple things for play mode to work iirc
is it spoken about anywhere in previous chats? ill just read up on later and get it working if theres a convo about it
no
just works
well test scene i mean
after using the new patcher, the assembly csharp has this error. this causes alot of other things in the project to yell because they're unable to resolve the reference of assembly csharp
did u used it on existed project?
yeah
well thats a problem
this is how the patcher worked every other time i've used it so
i mean fair
its just that dungen in its own dll and we dont have gamelibs for v80 so plugins searching for dll instead of... whatever they searched for
nevermind, it seems the patcher stopped halfway through for some reason. restarting caused it to continue correctly and this error no longer appears. a much more pressing issue is that all scenes render as nothing but gray with only the outlines of navmesh modifiers.
do you have a screenshot of that?
well that doens't look right. The objects are all there in the hierarchy though? and they have meshes/materials?
I know I once was thrown by the skybox rendering being unchecked here, but I don't see what would be stopping everything from showing
objects are all there, materials are there and have their textures set (but do not have their little sphere icon display)
wait was this still on the existing project, not new? I feel like that's probably going to cause issues
byb sphere icon you mean the blue thing there?
usually there's a small preview of the material
running the asset ripper on an existing project is how i've updated it every other time and it's worked fine other than the occasional swapped mesh
I feel like you've gotten lucky then, lol
how did you get it to work on an already existing project, i just get hit with
"System.ArgumentException: An item with the same key has already been added."
Oh there was (at least for the switch to V73) something about deleting out certain scripts and then you could patch in place.
-# I think
this, basically
some of my working materials don't show a preview either, idk why. So that might be something, but idk.
umm
this occurs when i try to patch
I feel like the material thing is probably a byproduct of other errors. idk if these specifically, but something. I really would recommend patching a new project. At the very least that might reveal if it's just when you try to repatch or if there's a bigger issue
reimporting all of my files into a new project would be agony
i can already barely stand using this stupid barely functional game engine
to be fair this is not what the normal dev process looks like
you can try to use https://discord.com/channels/1168655651455639582/1434288087437021244
Beanie said he had issues on the extraction part, I did not (haven't tried the import). I'm kind of curious if Beanie is just special or if there's a bigger issue I'm unaware of
I feel that I will get it to work first try and then I do one thing in the project and then the whole project will collapse
y'all are using .net 10 now, right? @buoyant jasper and @thorny fox ? I just want to make sure
What could be causing the Unity scene become full dark? This doesn't happen in patcher v73, but in v80, the problem occurs every time :/
i think its terrain's normal map?
also it could happen it there is no Indirect game object
cuz it looks like it is Shadows
there is
not really bright tho
hmm then yea it is what you said
interesting, if i apply material copied from v73 project then its looks normal
for comparison:
1 pic - v80
2 pic - v73
notice how mask map and normal map are different
Damn, we’re still having patcher problems? What happened to this thing? Lol
Btw if it’s not clear, that’s not supposed to be an insult directed at anyone that worked on patching it up
the patcher is a bit messy with regard to some things, and I changed how it deals with those things, so now there are more problems :^)
not sure what the hell that material stuff is about though
for some reason normal mask is like x10 stronger
i assume its for every material but some looks fine even without /10 slider on the right

the asset ripper is the same version that I had for v72, just with an extra option added
and I don't know how it could affect the normal factor
having to make a fairly big refactor to fix the input asset assignment thing since I have to determine which inputactions to assign, and the GUID remapping wasn't including the project settings 
currently trying out the changes, we'll see if it works
ah, I at least see why those errors were coming up without the BepInEx package installed
apparently it sets a define in the project settings, rather than that coming from the package definition itself somehow, so it probably just wasn't cleaning that up when it was uninstalled
for me they were 20x stronger
W patcher
this still doesn't feel right
why are the edges so bright
because its not only normal mask
maybe
wdym
well mask map , for example, is different too
there is prob something else too but i just did not dig into it too much
you were correct
lowkey please fix this because it affects i think almost every material in the game
What? You mean to tell me you DON’T want enhanced darkness or blinding brightness in your moons?
I suspect it's a regression in the updated version of AssetRipper that nobody ran into because I never actually pushed the updated download URL before
I may need to update it again, or just downgrade it
I solved the input actions issue so I'm confirming that it's a regression now
this looks promising
ah what was the solution?
to assign it :^)
#1199473521265475745 message
ahuh... 😭
in other words, ProjectSettings.asset had GUIDs in it that pointed to nothing
I had to change the entire patcher to work on the root of AssetRipperOutput/ instead of Assets/
took me like 7 runs to get it working
but everything is good now, yall can try it again
normals are good, input actions are good, dungen references work
the changes were all in unity-project-patcher, so you would need to get your package manager to update it from github
I pushed to the same branch so I don't know if you can update it without reinstalling
You know what they say. 1000th time’s the charm
I know people are gonna ask and wonder, but does repatching your current project work If you know?
no freaking clue
I'll do another patch, but I'm pretty sure you got everything at this point
I never do that lol
Fair enough
I hope it does, but honestly hard to say
I do imagine it'll never work for DunGen stuff but maybe they'll have luck with the other stuff
Well I feel like they will lose DunGen references if they repatch from v73 to v80
I guess not in the transition from DunGen in Assembly-CSharp to separate assembly, but that can be fixed up once with the reference fixer tool
I forgor about that
Yeah true
would be a real pain to automate that unfortunately, and I'm not willing to run the patcher against a real project that many times trying to make sure something like that works 😅
btw I was asking some people in #dev-general if I should start my custom moons mod with custom enemies and interiors, they told me I should quote "ask Zaggy in [WIP] Unity AssetRipper / Fixer if he tested different assetripper version", im kinda new to modding stuff especially lethal
mod for v80 btw
well the new x2 one is tested, sure
I'm not gonna tell you everything will be fine, but it appears to be
I do not guarantee any functionality with my fork, I'm just helping getting things running
ok 👍
would the likelyhood for me having to completely restart the project be high
this is a bit of a big project
I'll be trying this 
Not in a way that erases your work
But please make sure, organise your work properly
Make your own folders, put every asset you use in there
Including vanilla knes
oh yeah for sure, I may be new to modding but ive been working on unity games for a while now
Setup a private repository on GitHub that blocks out everything but your assets so you have them backed up
Nice
Just be prepared to need to move all your assets to a different unity project
And it won't break as long as you copy all of your used assets
@dull furnace the es3defaults are still not being assigned
I thought the issue with ES3Defaults was it not finding the script
that worked fine for me
can you make sure you have the script for it decompiled and to the right directory?
it should be in Plugins
then I suspect your lc patcher settings are outdated
it's supposed to decompile that
the script shouldn't exist at all
not that stubbed one anyway
I re-did the entire thing from scratch using the git links as before
what URL did you use for the lc patcher? I had to update the readme because I missed changing that one
ah wait, firstpass is still there, I guess I forgot to check if I had changes to push from that repo
I thought I had already pushed the change to remove it from the copy list
alright if you wanna push, i'll re-run
I can go push it in a minute
🙏
ok done
re-running now
You know what they say. 1001st time’s the charm.
yep, everything's working now
seems fine out of the box
yup everything is working now 🙏
fireee thank you guys for your hard ass work
big thanks to @dull furnace for that
only got an error to install .net 10 earlier but decipherable to do
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
Isn’t that a DawnLib thing? Might want to ask in their thread
thanks!
i have a question, if it updated, to i have to repatch it?
Seriously, how’d it even break this bad? I swear it used to just work across versions before, then V73 broke it but with the Unity version change and whatnot I could understand that. What happened here?
If your patch looks fine then you’re probably fine
But if it’s this or really dark I’d say yes
And is this likely to happen again? Like is there anything that can be done to somewhat future proof this?
Because Zeekerss will most likely update the game again eventually and I can’t imagine anyone wants to go through this again
But maybe I’m just projecting my own thoughts here
Idk I tried fix normal map/mask, but that didn't help. It must be something else, it doesn't show any errors in the console 
However, when I create a ContentContainer, it's empty, and console spams 999+ errors if I interact with it for more than a minute.
This one had a bunch of library based changes so it was fairly significant compared to other updates
How else would I have known that something happened with the Unity shader and not with the LC scene. but v73 shader works fine idk why
InputSystem update mainly
well actually more importantly the DunGen package switching to using an assembly definition
the patcher was not set up to selectively decompile so it required a bunch of work to make it import DunGen as a DLL the same as your assets see when they're loaded into the game
without that, mods wouldn't be able to use DunGen at all, at least not without creating an assembly definition to match what the original package uses
but regardless, it ended up that it was fairly reasonable to modify AssetRipper and the patcher to not decompile a bunch of assemblies that it had been previously, which in turn fixed a bunch of broken references that the patcher used to have to patch the game to ignore
so hopefully from now on it's mostly gonna be modifying the LC patcher to include any new DLLs and maybe some new fixup steps, but the base patcher package should be more robust to future changes
is the patcher working now i fell asleep
er sorry i should b be more specific
were materials fixed
it seems normal to me now which is weird because the values dont seem different at all
it was the normal maps themselves that was the issue, I believe, so you'd have to compare textures to see the difference
oh i see
No known issues 
(Should be fine I believe lol)
march
I've done it before but it appears to be extra gullible this time around
Existing decompiled DunGen scripts in Game/Scripts/Assembly-CSharp/DunGen cause mayhem
Also had to delete AssetRipper itself so it'd download the newer version 
have you tried to replace dungen folder with dungen dll?
actually nvm since some assembly-csharp rely on dungen .cs i think
I deleted the DunGen folder but yeah all existing references in the project pointed to it instead of the new DunGen dll
what if assetrip only assembly-csharp scripts and then copy-paste them with replace to project?
i can guess that all assets just will lose references to scripts but who knows
Imagine this breaks it again. I was even going to make a joke like “Zeekerss better not drop V81 instantly and break it again” last night lol
i would say its fine to not patch rn
its just fixes and some minor changes
well, you just missed out on two fun days of re-patching the project more than 10 times
(i repatched 6 times on april 1st and 4 times on april 2nd)
Maybe it was all an elaborate April Fools joke the whole time
But this is exactly why I waited (also wanted it to come out of beta and was just busy IRL)
well he added new features to SelectableLevel and changed several of the scenes though
offense and assurance now have orange fog instead of blue for example
and foggy weather now has a "weather color" parameter to tint the additional fog
instead of just always being super grey
ok, wait. the terrain shine is "normal"? I mean, I know it's not exactly "normal", but with the latest patcher it's expected? I thought it was fixed but was that just the darkness stuff?
if it's a regression then it's not normal
I didn't check for that when I was testing the new AssetRipper version though
if you want to run the patcher with 1.3.4 and see if it's a regression then I could look for the cause (1.3.4 will cause errors that you'll need to fix though)
also, unrelated but bro has a picnic table and is just not going to use it? (it's disabled by default)
I just know how to copy the link from the DawnLib wiki. How would I do that again?
oh, also, did he change the Adamance flowers? They ripped fine in V73 but are most def not fine here
yeah they use a shader that we dont have
i've considered using stuff like the premium version of assetripper to try and get them since that has a chance to, and asking on the discord its kind of vague if they think it'd be possible lmao
"often have compile errors" and "but that is the general idea" doesnt instill confidence
but its only 8 bucks so who knows i might try it one day
at least I still have the V73 version of them just fine lol
I think I've heard the grass blows in the wind. I'm guessing the flowers do too now and that's why they have a custom shader?
yep
"breaking news! nice qol kills modder" smh 😔
grass being completely invisible without the shader is going to be really fun to try and decorate with
I'm looking and it looks like the stuff™ is still there, so we might be able to create a static version. We can rebuild!
but also I think I've been told it spawns at runtime from a script
now, the material will still be busted, but they aren't hand placed
oh. there was some script someone showed at some point but idk where it is in the scene. maybe it's not related
this thing
but it's mesh and the terrain is... well. terrain. idk if this is related or not
oh it's unused I think. It's on Vow's dissabled old terrain mesh
and Adamance
probably from trying to get it to work before zeekerss had the new shader?
wait, phuk. They're terrain details. This just clicked with me. I was going to try to do something similar to what I did with WaterAssetRestorer but how the heck am I supposed to replace a material that's part of the terrain, not an actual game object?
It's a prefab, so I can probably get the original, but the replacement part...
50 billion individual claps
like unless people use a prefab painter and paint them on that way, which is probably not good performance wise, idk if I can do anything. can you change terrain detail materials at runtime?
that's lowk hype
probably the easiest way would be to go to https://github.com/Zaggy1024/AssetRipper/releases/ and download the zip for the correct version and extract it to [project]/AssetRipper/
GUI Application to work with engine assets, asset bundles, and serialized files - Zaggy1024/AssetRipper
since the patcher doesn't download the tool again if it's already present, that should work, but if it did redownload, then you'd have to download the lc-patcher repo and then install it from your local copy so you can modify the download link
ok, well, I can't do it now. I've already pushed back school work enough just to look at picnic table
but thanks. I can try to figure that out sometime
I think it's just the alpha of the terrain layers being high, which I know how to fix
It's just for new people and also idk exactly what values they're supposed to have if I want to really get authentic with the look
no worries, I might get to check it later
oh there's no mask map
hmm. I can add a random one and drop the alpha to remove the shine, but that can have its own issues
Given the picnic table is close to the new wooden stairway I kind of assume Zeekers ripped or referenced the planks from this to make it
Or it could've actually been meant to be nearby it and was ultimately removed
since it's in a back corner, I don't see why the stairs are there at all. I wonder if he wanted to do a little picnic scene down there and didn't for whatever reason. Or, since the table has no material, I like the implication the wood was taken from the table to build the stairs
There is also a fire exit around that corner nearby it's there for a path from ship to the fire
i think thats what I used to do
everytime I create a moon it looks uber shiny
kind of a cute idea
it's way funnier if he just ship of thesius'd the picnic table tho
I'll look more at some point perhaps, but like the old grass, sorry, "moss" ground had something that seemed like it was supposed to be used there just by its name. I didn't see that for the March grass, but it might be a more generic one. I slapped in the old moss one I used and lowered the alpha and that looked fine to me. If it's not just absent from the rip for whatever reason, I'll just keep doing that.
I agree
I'm mainly just concerned that it isn't being ripped
the stairs are close to a fire exit and are just there as an additional path
i assume he just wanted there to be a picnic table near the stairs as a fun setpiece
but he didn't finish the picnic table
it's using a default material and most of its normals are inverted
maybe there wasn't any good place to put it
I did not see the fire exit. I might be blind
i forget which one it's close to but iirc it's the waterfall one that's kind of hidden
im still not super comfortable with the new march layout just honestly
I’ve only seen the waterfalls in editor but I love them. Can’t wait to see them in game
One of my moons (Valiance) has a waterfall during rainy weathers. Maybe I’ll yoink some of this. It’s much taller though so idk how it’ll look.
i have a (hopefully small) feature request for the next version of the patcher, if it's still getting touchups
the splatmaps from vanilla's terrain have the Alpha Is Transparency tickbox checked in their texture2d import settings
and every time i have to go through and turn that off because it breaks the terrain appearance for some of the maps
for example here's artifice's terrain with the splatmap flagged incorrectly
i discovered while working on artificeblizzard that if you disable that tickbox it completely changes the textures of the terrain and these match what it actually looks like in game
i assume unity is discarding most of the RGB channels or formatting them incorrectly because it's not aware the alpha channel is being used for non-transparency information
figured this was kinda relevant if you're looking into "terrain weirdness" with the new patcher
I miss the fire exit off to the left of the ship, that one was super fun and accessible
and it got flooded during flooded weather
yeah i liked that pit one a lot too
new March is nice tho, my new fav fire exit is the one that's in a lake with a bridge connecting to it
maybe at some point I'll upload a legacy march or something, or a moon based on its layout
jebovembuary
February it is!
smh
nobody wants to do jebovembuary
most forgotten month
"Go back to the window we had earlier where you installed BepInEx and press Start Patching."
there is no "Start Patching" button, but there is a "Run Patcher" button.
common sense
without a mask map, isn't there supposed to be a plain slider?
I haven't really looked at anything specific, I just updated AssetRipper
this and the shiny terrain seems like it should be their issue, but I don't know really
I assume this issue with the alpha flag is a longstanding one, prior to v73
ya
i wasn't sure if there's any step where you're like... manually fixing import settings for in-game assets
but if something like that exists in the patcher
I don't believe so
this one is really easy and objectively closer to real behavior
I might be wrong though
I'd have to first check if those settings are AssetRipper's responsibility
if they live in the assets' .meta files, it probably is
unless the information just isn't there at runtime, but if it changes rendering then it definitely should be
if you know what that flag is called in the editor's version, I could look into whether AssetRipper has anything for it
how do I launch it in Unity Editor with Imperium?
I had to move Lordfirespeed-OdinSerializer from core/ to plugins/, and it worked
ensure this file exists:
/Lethal Company/BepInEx/plugins/Lordfirespeed-OdinSerializer/OdinSerializer/OdinSerializer.dll
hell yeah, I got LC v81 patched, with Imperium running in Unity. thank you for all the hard work!
Lol that's interesting
waterpool water is pink though. any tips?
If it uses a special shader, we don't got it
You could try substituting the water
With another shader, the patcher does have a water shader
just alphaIsTransparency in the .meta, if that's what you mean 🙂
this is march's grass. first is the terrain layer itself, second is when it's on the terrain. I don't see a slider for this. I see sliders but messing with them seems to not reduce the shine
I mean, there's sliders for metallic and smoothness, which are normally controlled by mask map
in the second screenshot, it says that smoothness is from the diffuse alpha channel, I wonder if that's used as a fallback if the mask map is not specified
and if that's the case, then Alpha Is Transparency may affect that as well
might be worth switching that on the diffuse texture and see if it makes a difference
I don’t think I noticed that it was, because I did try messing around in there too, but I might’ve not. I’ll try it sometime
I think that if the flag affects the terrain at all, it needs to be on
isnt that the error that you'd get when using the old patcher on post v72 versions?
what were the exact links you used for the package manager
Followed this one:
💀
just follow first pin
Yay, it worked
Now excuse me while I bleach my eyes and brain due to having to use Windows
same model from The Upturned
yeah, it works
ok
did u fix this
i made a new project like you're apparently supposed to
well when i tried porting over in that it broke
but this worked for all my friends
except for me
wait youre a friend
ough
You just forgot to get every material etc in your folders ya silly, I think
I did plan to go through with that one again with you if you are able to VC in like an hour
may I suggest adding this to the gitignore that Project Patcher bootstraps for you?
# BepInEx
Lethal Company/BepInEx/cache/*
hey guys, ive done the patch process and made sure that i've done everything according to what the pinned link says, but for some reason unity/visual studio doesn't understand the ref keyword in the decompiled scripts? it's very possible that i've done some super basic thing wrong but i can't find any information on what this could be from. any sort of help would be appreciated, this whole thing admittedly has been kicking my ass for the past several hours. thanks!
that’s what i followed too 
im banging sticks and stones together here
so it is possible to decompile 80/81?
follow the pinned link to the wiki with the step by step process
honestly unsure about this, you sure you're on stuff like hdrp 2022.3.62f2?
I've seen that before. Sadly, I can't remember what the fix was. Ensure dotnet 10?

i will once i need v 82 content
what v82
i did install dotnet 10, using the correct unity version and template, all that. i think i'll just try it again from a fresh unity project and see if it happens again before i try anything else
reinstalling didn't change anything, ive made sure vs 2022 was on its latest version and that dotnet 10 was 100% verifiably installed. still the same issue. however, actually looking at where the errors are located, it seems that the decompilation did some weird type conversion stuff, and that's where the ref keyword is being used (and consequently flagged as incorrect). first picture attatched is an instance of how ref is being used, and the second is a more broad example containing type conversion on a broader scale. looking at this i'm convinced that its an issue with the decompilation. using the first picture as an example here, the line above demonstrated that 'val' was already just a vector3 value (a simple subtraction of position values) so it clearly wasn't an intentional conversion. also looking at the original dll through another program clearly shows this wasn't originally there.
so either this is an issue with assetripper (or whatever decompiles the scripts im actually not sure) or what's more likely is that i've done some weird ass mistake.
for some reason you are using wrong .NET version. maybe VS 2022 messes it up.
what specifically is using the wrong net version? asset ripper or visual studio? running 'dotnet --info' shows v10.0.5, though it also says v9 is installed. should i uninstall v9 to prevent potential conflicts with the versions?
that looks like Unity interface, right?
and this looks like Visual Studio
so, "what specifically is using the wrong net version" -- probably every-thing
wait, so is stuff like '(Vector3)(ref val)' supposed to be there? i ask because it seems unnecessary, isn't in the original code and is the cause of all the errors. if its intentional it would mean unity/visual studio isn't understanding when it should, while if it's unintentional it means the decompilation wasnt done correctly. or am i completely misunderstanding this? sorry if im asking too much stuff here, im just trying to fully wrap my head around this
which file is that? I can check how mine looks like, because I won't have exact same string
.
i clicked some random ones, the first image is PumaAI.cs and the second is PlayerControllerB.cs
give me more context about this ((Vector3)(ref val))
and yes, you should probably uninstall .NET 9 Sdk just in case
this section in StartLeapToTree()
yea, my decompilation looks different
heres what it looks like in the original dll
*in dnSpy
yeah sorry
(a nitpicky correction, because in the original dll it sure looks like IL bytecode, lol)
I'd say, get rid of .NET SDK 9 and any toolchains you don't need
IIRC Unity should promps you to install some VS build tools automatically
well that would've been ages ago i don't remember what tools it had me install
i do other stuff in unity as well
ill try removing just net v9 first and see what happens
been getting this issue, i have net 9 runtime/sdk/desktop runtime
please help💔
install 10
at this point im pretty confident it is using .net 10, ive tried doing stuff like changing some random asset ripper config file to say the exact version of .net that i'm using (it was originally set as a preview version. didnt matter, it didnt change anything) restarting my computer, and none of it has made any sort of impact. im going to quickly try verifying my game files just in case theres an issue there, but other than that i'm stuck. i mean, there is still the potential that asset ripper is using the wrong runtime (im hesitant to fully remove that stuff), but it seems unlikely based on what i've read and i dont want to mess with it if i dont need to.
im now going to verify the files, i really hope that this works (id be suprised but this stuff can be wacky sometimes so its possible)
omg validating the damn files worked
wow im embarrased i didnt think of doing that sooner
if you havent figured it out yet you need to check out the first message in the pins, thats where you can find an up to date version of the process
oh yeah thanks for trying to help i appreciate it :)
glad you got it resolved
Thank you.
That wasn’t clear anywhere lol so I appreciate you for telling me
yeah net 9 was the issue all along lol.
What in the patcher makes the decompiled source code [ClientRpc] indented? Not only that, but also some lines inside such methods may become randomly unindented. Kinda annoying
the rpc scrubbing has to recreate the indentation
when I rewrote a part of it for v72, it seemed to produce normally formatted indentation, don't know about now
can we maybe run dotnet format on the scrubbed output?
that shouldn't theoretically be necessary, the scrubber already uses a method to reformat the method body
I'd rather figure it why it's badly formatted
I can't even reformat manually, dotnet format fails with some internal exception.
❯ dotnet format Assembly-CSharp.csproj
Unhandled exception: Microsoft.CodeAnalysis.MSBuild.RemoteInvocationException: An exception of type System.TypeInitializationException was thrown: The type initializer for 'Microsoft.Build.Shared.XMakeElements' threw an exception.
at Microsoft.CodeAnalysis.MSBuild.RpcClient.InvokeCoreAsync(Int32 targetObject, String methodName, List`1 parameters, Type expectedReturnType, CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.MSBuild.RpcClient.InvokeAsync[T](Int32 targetObject, String methodName, List`1 parameters, CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.MSBuild.RemoteBuildHost.LoadProjectFileAsync(String projectFilePath, String languageName, CancellationToken cancellationToken)
[...]
from what I gather, it has something to do with SDK mismatch between Unity (Mono, partially .NET Frameworks) and .NET Core SDK which dotnet tool runs on
This specific combination works for basic formatting:
- Add
.editorconfigfile with:
root = true
[*]
indent_style = tab
indent_size = 4
- Run this specific command:
dotnet format Assembly-CSharp.csproj whitespace ./Assets --folder
Tried to update the project to the latest public branch manifest ID 7738331233766615287.
Turns out, guid and fileID are not stable between project patcher runs. So you can't simply cherry-pick your mod sources on top of a newly patched Unity project, you'd have to replace all references again.
Any good solution to this?
I'm not too familiar with how the scrubbing works, but I believe its purpose is to (try to) address that, so I guess it may not be working properly
I'm not really in a position to debug that at the moment unfortunately
I did a quick search on their GitHub, and found some conflicting info. there are feature requests for that, in some of those they say it should already be trying to make it stable, in most other places it is considered "anti-feature", "false sense of security" (sorry, what?) and "not planned".
i believe most people just been using this https://github.com/Sniper1-1/GUID-Reconnector as a work around
thanks, I'll check it out!
how did no one of those most people give a single star ⭐ on github tho


