#LethalConfig
1 messages · Page 2 of 1
@worldly aurora I think I found how we can implement NO_RESTART_REQUIRED in a clean way
Config Description constructor contains tags
Even softer dependency lol
Thank u
Lmao that's a good one
didnt work 😦
@clever drift yo
any shot you can help me figure this out all my mods are gone from lethal configs
weird
Anyone know why LethalConfig would only pick up 1 config and not all the others?
Especially when it did it just fine before
I was having this bug recently with the majority of configs not loading into it and I don't know. Some issue maybe mod conflicts maybe a windows11 issue.
It's a known issue and it'll be fixed soon. I'm not sure how to explain why it happens without being a bit technical, but some mods suddenly started causing this, but it's not a compatibility issue whatsoever
it's, as far as i know, on our side
the technical tl;dr is that some mods are having their instances "null" when lethalconfig tries to generate their UI, so it just breaks the whole thing because i assumed it was never going to be null
my only guess is that some mods are not keeping their own instances alive like some people do (keeping a static reference to the plugin)
Right so LC succeeds instantiating config files until it meets a null and some mods have been getting sloppy. That explains why I sometimes just get five out of my 25 usual configs.
i wouldn't say sloppy, it's just a scenario i didn't account for because i thought it couldn't happen
but yeah, that's basically the gist of it
Different topic I'm going to try messing with the manifest of some mods which have lethal config as a dependency and see if I can boot without lethal config in my immersive modpack.
Just saying here in case you have any interesting thoughts but I expect any issues will be more on the reliant mods' end, probably just refusing to load bet my engineering brain says that would be very silly of them.
if the mod has lethalconfig as a dependency on their manifest, chances are it's a hard dependency, which will cause the mod to fail loading
Yeah.. but since it's just to edit a text file, yuck.
Like if the wrench you needed to tighten your bikes wheel had to be permanently afixed to your bike.
Edit: the wrench just being the best of multiple options.
(all because most users will be too uninformed to know about the existence of configs/tools - as one modder pragmatically told me)
at this rate, i'll just add a config to hide lethalconfig that is only visible on r2modman, even though it's counter intuitive
Oh yeah you mentioned. Perfect honestly 🙌🏼
that's not all it does...
it allows for hot-reloading
for mods that need the ability to change locale at runtime
it's a must have
Does editing the config then hopping out to the menu and then back in game not reload the text file?
it does, but that's done by BepInEx specifically
editing the text file outside of the game doesn't reflect in the game without a restart
So mods don't read config after launch ever.
BepInEx doesn't watch the config files for changes
Anyway my point was not to belittle the value of lethal config. It's obviously invaluable for setting things up as the host and in vanilla compatible play.
I'm not asking if anything watches it I'm asking if the file is reread when you load into a save without LC, for some mods. More curious if that's even possible. Doesn't really matter at all.
I guess it does have a minor implication. I often have to resort to editing the file as the config might not show all of the comment text in LC or even modman. And I want to know if that means I do have to restart or I can just reload a round. Restarting the game can take a whole minute if you have a lot of content mods.
(Also I can't stare at the red screen for too long lol)
like i said, if you edit the manifest to remove LethalConfig, the mods that uses it as a hard dependency will simply fail to load because they will reference functions and types from LethalConfig, which will prompt the runtime to reference (or load if necessary) the LC assembly, which will throw an error and make the mod to fail to load
Right I got that. Onto an entirely different question now about editing files mid running of game.
Sorry it's a lot of text for just a yes or no. Is it physically possible for the game without lethal config to re-read config upon save load, and if so do any mods do that upon loading save / is that when they choose to read config or is it always and exclusively on game boot up.
Yeah okay so imagine any random single mod regarding in-game content not menu stuff.
It has a config for something simple like spawn rates.
You launch up the game the mode loads thanks to console. You're in menu the mod has no relevance yet. You load a save, now the mod has relevance and refers to the spawn rate set. When did the mod access the actual config file.
If I edit that file with notepad, do I have to reboot the game or will the mod reread the file upon save load, or is that simply impossible.
And then similarly but completely separately, does lethal config enable me to edit and save the file in notepad while in main menu and see the change in game or will that be irrelevant until the game is rebooted, possibly overwriting the change I made in notepad while the game was running.
This is all handled by bepinex, not each individual mod. But afaik, it reads the files once on startup, and then configs setup with bind automatically writes to the file when modified, but bepinex will not read the file again. Could be wrong, but that's the assumption that i think makes the most sense. The only way to know for sure is looking at the source code. If that assumption is correct, then no, editing the file while the game is running won't do anything.
All lethalconfig does behind the scenes is directly modify the instances of ConfigEntry for each mod, which were created using the bind method, which automatically writes to the config files... but even more behind the scenes, it's all bepinex's doing
Well, I can take a look at the modified time of some configs to see if the disk file gets updated... I... Assume it does?? Because if it was all done on closing the game then crashes would effectively reset configs.
Whether bepinex reads the files again is a different question. The one I kinda want as answer to but now that I've thought about it I'll just have to be considerate and they'll avoid me getting confused testing.
Thanks for helping
you can’t make one that’s only visible on r2mm afaik
it’s not like there’s a magic process, it just reads config files and displays them in a nicer way than notepad
I mean, i just meant to add a config inside lethalconfig to hide it with the setting not visible through lethalconfig itself. There's a method to skip generation for given configentries, that way it won't be shown as an element inside the menus.
Ah fair enough
howdy! i have a strange issue occuring in my modpack with lethalconfig
018e69ea-0f13-810c-77e9-cbfb109d30ad
What's happening is something in my pack is causing LethalConfig to freak out and not show all the configs and options
my friend and I were discussing it and this is his theory
Thought I would drop all this info here so we could narrow down the issue somewhere
the reason this happens is because when lethalconfig does auto generation (when main menu loads for the first time), it gets all the loaded plugins from the chainloader and takes a few things from them: metadata, the baseunityplugin instance, and the configfile from that instance (the Config property). This happens because sometimes, the instance is "null" (with quotes because unity is weird when it comes to null references and monobehaviours), which breaks the whole thing. I already have prepared a temporary fix to skip invalid instances, but i really wish i could understand why some of these instances are like that. The only example i got so far was ReservedKeySlot, which barely have any code in it, none of the other reserved slots mods have this issue.
thanks for the info tho, will take a look when im not dying in bed
Version 1.4.0
- Updating config appearances whenever a
ConfigEntryis modified directly. - Added
QueueCustomConfigFileForAutoGenerationmethod, allowing the auto generation of configs for manually created config files. - Added new options to
TextInputFieldOptions:NumberOfLinesSets how many lines a text field can have. Setting it to 0 means no limit.TrimTextWhen true, automatically removes empty space from the start and end of the text.
- Added new component
TextDropDownConfigItem, which allows you to make a dropdown selector for strings (including configs withAcceptableValueList) (thank you @slow prism) - Adjusted colors of the menu to be darker.
- Added "Hide Lethal Config" config to disable LethalConfig in-game. This setting is only visible on the r2modman's config editor and is false by default.
- Fixed issue where a mod couldn't have more than one generic button (comparison would always think they're the same).
- Attempt to fix issue where configs would not be generated if a plugin's instance was null at the time of the generation.
(sorry, i didn't mean to ping you kittenji)
Everyone that had the issue with mods not showing up, please let me know if this fixed it for you!
I'll have to reinstall reserved key slot and I'll let you know
Removing that fixed it before this update
Didn't even work, key never went in slot so i was fine letting it go
if you had input utils installed I think reserved key slot might ignore the config for keys in preference for the in-game controls menu
ReservedKeySlot is the only mod i've seen so far that has this issue of being "null" after everything is loaded, but i'm sure there might be other mods with the same issue
and i really can't explain why it happens
i looked at the code for ReservedKeySlot on the thunderstore's decompiler, and there's barely any code to check
While I'm here
I really like LethalConfig. I made some of the options in Bozoros dependant on it because its a really really solid config mod and it's going to be our standard going forward.
About to start work on a new mod and we're using it as a dependency
Its honestly one of those mods that I don't ever see myself doing a pack without
i'm glad you enjoy it!
I guess the only drawback is that it's not "flexible". What i mean by that is that you can't do dynamic UI stuff with it, which is something a few people wanted to do and asked for. Example being dynamically adding new options to it based on a checkbox and etc
but the way i coded it makes it a bit complicated to do things like that
but thank you, if you have any suggestions, feel free to drop them here or on the github's issues!
No worries
Yay, great update
Hey, can you make sprites as non readable, so it will use less memory?
Yes, it's probably the textures created dynamically when trying to resolve the icons for the mods automatically. Will do it in a bit.
Out of curiosity, tho, how much memory does doing that actually save?
will probably save around ~50-100MB depending how much mods are loaded
still searching the big memory leaking tho
how big?
2.5GB ram and 4.5gb vram
holy..
Tested and can confirm the mod works on v50.
good, just very tired from work and other projects
Honestly same, some projects are burning me, hope you can find some good deserved rest
hey, quick question, I currently encountered this error [Error : BepInEx] Could not load [XIVitems 1.0.0] because it has missing dependencies: ainavt.lc.lethalconfig does that mean I should make lethalconfig a hard dependency? is there a way to workaround this?
you don't need to make it a hard dependency, you just need to adjust it so that it only tries to use the LethalConfig assembly when it's present
let me get an example of what i mean
internal static class LethalConfigCompat
{
public const string GUID = "ainavt.lc.lethalconfig";
public static bool IsAvailable => Chainloader.PluginInfos.ContainsKey(GUID);
[MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)]
public static void AddIntSlider(ConfigEntry<int> entry, bool restartRequired)
{
LethalConfigManager.AddConfigItem(new IntSliderConfigItem(entry, restartRequired));
}
}
I have this class on my yippee scrap mod, then i just call it like this
if (LethalConfigCompat.IsAvailable)
LethalConfigCompat.AddIntSlider(configRarity, true);
the important thing is the [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] on that, only directly reference LethalConfig inside methods with that
@lyric drum
Oh thanks for the quick response! let me have a look
also make sure you add [BepInDependency(LethalConfigCompat.GUID, BepInDependency.DependencyFlags.SoftDependency)] to your plugin just to make sure the chainloader will load everything in the correct order too
Ahhhh I see, thank you so much!
Version 1.4.1
- Exposing
BaseConfigItem#ApplyChanges,BaseConfigItem#CancelChanges, andBaseConfigItem#ChangeToDefault - Added optional Assembly argument for
LethalConfigManager#AddConfigItem - Marking dynamically loaded mod icons as non-readable to improve memory usage.
Wow, thankyou, I was just about to search for this and there it is!
Don't imagine there's a color picker built in eh?
All g, seems like a lot but would be helpful since there seems to be some sortof filters in game that alter color appearance.
I'm probably just going to port over the color picker from RoO in a PR
whenever I'm not busy i guess
this work with v50 yet?
it's compatible with v50, yes
according to the tags, yes
Is there a way to blanket disable the restart required for every lethalconfig config entry generated for my plugin?
not yet, but there's a feature that might make that easier too in the future, without the need to even reference the lethalconfig DLL
Ahhh kk, so I'd still have to set the flag for each config individually?
At the moment, yes
Aight cool cool
Version 1.4.2
- Reverted changes to most config item's constructors from 1.4.1, as it was an unintentional breaking change.
Do I have to add explicit support for this?
Why are only 37/45 configs showing in my menu? Is it some criteria in the configs that determines if it should be included?
Im letting lethal config auto input my config into the game because im using bepinex's config. Is there anyway i can still give lethalconfig the icon for the mod so its not a question mark ?
LethalConfig should autodetect the icon when the mod is installed from a mod manager like r2modman, thunderstore client, or Gale
oh ok, i guess its just because im directly putting the dll in
If you put the dll in a subfolder
And chuck the icon into the subfolder as icon.png
It should load it
been messing with adding some things to LethalConfig since it hasn't been updated and there's some features i'd like to see included. It's probably not the cleanest implementation but i'll still submit it as a PR once i'm happy with it. Here's a video of me showing some of the changes below.
Changes:
- Added config item to add a "show/hide" button to section headers.
- Adjusted header appearance slightly (smaller & will now add ellipses to sections that have too long of a name)
- Made it so string configs with "acceptable values" now correctly create dropdown config buttons automatically
- Added some methods for adding config files that were generated later than awake (such as LLL & LethalConstellations)
@manic canyon if you're ever available to try it I'd like to see if LLL can get it's config read properly with the new method I added.
youll have to remind me abit later
no worries, I may even try to figure out if it's something I can automate. But for now the mod with the config needs to call the method with their config file
that's hot
can confirm it at least works for LethalConstellations' generated config (the one that gets generated after LLL is fully set up)
don't have permission to make a PR so I made a fork - https://github.com/darmuh/LethalConfig
Will make an issue on the main repo to let the original author know about my intentions with the fork and also to give them time to take a look at the changes
in the meantime if anyone wants to try it out (and try to break things) the release file is here - https://github.com/darmuh/LethalConfig/blob/main/LethalConfig.zip
adding one more quick config item in the fork that lets you set everything to autohide at start. This one you can change mid-game (removing the new buttons requires restart)
you should be able to open a PR from your fork to the repo tho? A couple of people did without me having to do anything before, unless i'm missing something
Yep that worked my bad. Skill issue on my part not knowing the proper process for submitting a PR 😓
here’s the PR link https://github.com/AinaVT/LethalConfig/pull/53#issue-2520450751
It's all good. Will look at it tonight when i'm done with work. Thank you
Let me know if there’s anything else I need to do. I just woke up and submitted the PR over my phone lol
Also thanks for the quick response, I figured I’d wait a week or so before doing anything with the fork 
I don't blame you, the mod hasn't been updated in quite a while, and I haven't been exactly active either (mainly work and focused on other projects), so it's only natural to assume i won't look lol
i might get back to it soon tho, there are unfinished features i want to push out
Yeah some of the other features I see planned are pretty interesting but definitely out of my depth. I had fun learning how this mod works and adding something I wanted that was relatively simple
have you run into any issues since the merge?
not yet, but i didn't test much. Ended up having to work on the weekend too 
No worries! I get the struggle working on weekends 😭 just wanted to know if there was anything I could help with (if something was going wrong)
looks fire tho what would be cool is if there was a searchbar or maybe a way to sort the mods to find them easier!
definitely agree would be nice, maybe something to look into in the future. I do know there is this similar feature request on the github https://github.com/AinaVT/LethalConfig/issues/32
btw does this mean the original lethalconfig is gonna get deprecated or what will happen
it's not my plan to deprecate it, no
Aina is the original creator of LethalConfig. They accepted my fork into the main branch last week and they're doing some final testing of their own before publishing to thunderstore
so does that mean its not separate?
as far as i'm aware no, it will not be separate
Aina can correct me if i'm wrong
those changes will eventually be on the thunderstore, probably this weekend
ah alright
Why's my game stuck on this?
Nvm everything is just stupidly slow for some reason 💔
the more mods you add, the longer it takes for your command prompt to load them
I did a fresh install of Windows 10, so I was surprised to see that it was initially slow af load after reimporting my modpack
After that, it loaded like normal
1.4.3
- Added config item to add a "show/hide" button to section headers. ( by darmuh )
- Adjusted header appearance slightly (smaller & will now add ellipses to sections that have too long of a name) ( by darmuh )
- Made it so string configs with "acceptable values" now correctly create dropdown config buttons automatically ( by darmuh )
- Added some methods for adding config files that were generated later than awake (such as LLL & LethalConstellations) ( by darmuh )
- Added config item to automatically hide config items at start when show/hide buttons are enabled. ( by darmuh )
- Changed most info logs to debug.
also confirmed that everything seems to be fine on v64, so added the tag
and thanks darmuh for the contribution
That said, i'd be lying if i said i still have lots of motivation to work on this... I barely touch Lethal Company nowadays, so my interest in it has been almost non-existent. However, I feel like i can't really just leave this in such an unmaintainable state, and what I mean by that is:
- Currently, the way this project is structured basically forces anyone wanting to contribute anything to use Unity because of my stupidity of thinking using ThunderKit was a good idea.
- On top of that, this in itself is unstable. There'll be many errors that will be thrown, sometimes a few which are able to be ignored, sometimes a few that aren't and require a whole setup again.
This is, honestly, a huge mess and a maintainability nightmare, and I, once again, apologize to anyone who had to deal with all of the problems caused by me doing this :c
So I guess for the foreseeable future, i'll be trying to work on changing completely the structure of the project, which may or may not involve some refactoring at certain parts of the code, and making it so that you only really need unity if you're working with the UI stuff, which is how it should have been from the start, and is something I've expressed I've wanted to do for a while. It might take a while, but I think it's worth if it means it makes it more approachable to people to be able to contribute to it.
Thank you so much for your continued efforts on this project! I completely understand the loss of motivation and I'll be around to provide support where I can 
Is there a way to change the number of decimal places that are used for FloatSliderConfigItems?
I'm working on trying to update an old project of mine & am noticing that the FloatSliderConfigItem seems to always round to 2 decimal places, but I have a value which had unexpected behavior when the value was only at 2 decimal places, and adding the third had resolved this for me.
Not sure if you'll see this but can i ask you to put the "clean dll" as an artifact of the github release?
so i can have my project automatically download it
for dev purposes obviously
I tried opening the Unity project and got these errors
I had these as well. If I remember correctly I had to fix them by re-doing the thunderkit steps
hmmm, you're sure on the right version of unity? I recall that being an issue too
it's been a while tho so idk it might be something else you're experiencing
yeah that looks right, sorry im not much help
Thunderkit was pretty annoying to get working but yeah it's been too long for me to remember it all
opening up my old project I get the same errors. Though I re-installed windows since the last time I worked on LethalConfig
I got it down to only two errors
i actually got rid of those by right clicking them and clicking re-import
like the actual asset, not the error
Okie thanks
gl with whatever you're planning to fix/add!
Thanks :3
What all do I need to do for the pull request?
@meager vapor
Basically if I remember right you fork the repo then you should be able to submit your fork as a PR. Then it's a matter of waiting for Aina to review it
Okie thanks
I don't get it, what are the new features ?
search bar
Ooooh
Would it be possible to add a "step" option for int sliders ?
I need to set my slider to only be a power of 2
dont think that's natively supported by bepinex configs so it'd have to be hard coded into lethalconfig (if i recall correctly)
I mean, there is stuff that are hard coded inside lethalconfig
which would also mean you'd need to set up some dependency code on your end to implement it
right i'm saying it wouldnt work for the auto-gen stuff is all
Don't worry, I have soft dependencies for LethalSettings and LethalConfig
I get it
also i've only done like one thing in this mod so I can be talking out of my ass rn
i'm not the OC
Yeah nw
Just saying it would be a fancy feature
To set step as a callback (x)=>x*10 for a 10 step. (x)=>2^x for an exponential step...
yeah would be nice. You're saying something like the step attribute in html basically
Waaa it's getting late and I just want to finish this pull request x3
could always be implemented in a separate PR lol
Yeah
I've been wanting to add this feature for months
And also some other features in for the future
And with my MonsterHotkeys mod having like 1000 config settings I thought why not now

@clever drift I've created a pull request https://github.com/AinaVT/LethalConfig/pull/55
will look at it tonight
Yipppee!
Can you make the plugin info class public instead of internal btw 💀
Sure

Sorry, i forgot i had some medical stuff to deal with friday and saturday. I'm checking right now
@meager vapor Updated the version at the thunderstore with your feature. Thank you for the contribution c:
and sorry you had to witness the horrors of this project
(also changed the plugininfo to public)
Yippee! 
I have noticed a small issues with the config search bar and the "show/hide" buttons. I will try to fix this soon as well as maybe some other new stuff :3
The issue just forces all hidden sections to be visible again when updating the search bar value
I've created another pull request @clever drift :3
https://github.com/AinaVT/LethalConfig/pull/56
THIS IS POG
Great feature !
Do you think you can make a slider step feature as well ?
or did you already do it ?
It was another thing on my list that I've wanted to add for a while
About that
It'd be better to make the step a delegate
(x) => x * 2 for a step of 2, (x) => Math.Pow(2, x) for an exponential increment
x would be a virtual value
not the actual value
Doesn't FloatSlider already have a step option?
Yeah but Int don't, and they don't work with exponential or custom expression sliders
Example of use for exponential sliders: Resolutions (textures, cameras (OpenBodyCams), render textures (Seamless Dungeons), etc...)
and also for deciBels
well decibels aren't the best example
but for resolutions you get the idea
It's better than making an enum hidden behind a slider
I could add something like that
So something like this?
Yep
a constructor to make a "simple" step would be nice though, it'll just generate a delegate x * K
I would have to look into this more later
@clever drift Replying to this for a reminder :3
sorry, my week was extremely busy
merged, i'll create a new version tomorrow
great stuff
Awww 
Yippee thank you :3
I do have a question about this tho
Thank you ^w^ these are all things I've wanted to have in LethalConfig for MONTHS
this wraps a string configentry, doesn't people use a color configentry for that sometimes?
I'm pretty sure you can create configentries with the UnityEngine.Color type
so i guess it would be interesting to eventually have a variant for that too possibly?
I never knew that 
Yeah
I could be wrong tho, a lot of times i am wrong lol
i haven't really touched anything related to modding in a good while
I've never seen any Lethal Company mod using a UnityEngine.Color ConfigEntry 
Uploaded 1.4.5 with the hex color item
Yayyyy 
I just noticed an issue with the color picker menu waaaa
I made a new pull request whenever you have time to check it
uploaded the new version on the thunderstore
Yippee! Thank you 
I'm intrigued, is there a specific reason why the LethalConfig option is in the pause menu instead of the settings menu? cuz I think it kinda makes more sense to be within settings since the pause menu is mainly for lobby specific options plus all keybinds and settings etc are inside the settings menu 🤔
Also #1282200504318820374 message gave me a cool idea that could be nice for LethalConfig... some kind of quick action menu which is accessed from the pause menu which is restricted to generic buttons that have a specific property (such as QuickMenu = true) - maybe all on a single page in a grid kinda layout with the button title being the mod name then the subtitle being the option name dunno, some use cases I can think of are:
- Mods like Lethal Admin could add a button to open the admin menu
- Mods like LobbyImprovements could add a button to copy the lobby id
cuz that'd fix options in the pause menu from different mods overlapping with each other
seems lethal config always assumes a range from 0 to 100 for int values?
no matter if there is no AcceptableValueRange defined or not?
How to set the flag that prevents popup that after changing config option it may require game restart?
but without registering all config option to the LethalConfig, just global flag
I think it had some kind of issues with the max integer value.
At least I remember having some kind of problems with that 🤔
my screenshot is with int max. but the values were exactly the same if you do not provide any AcceptableValueRange
i should have printed it when it only had the string description instead of with the limits
Does this mod work on V73?
yup
@clever drift
I'm hoping to add some custom ConfigItem UI for a mod I'm working on, but I'm unable to extend BaseConfigItem because some of its abstract members are marked as internal.
Would you be willing to accept a PR that changes the relevant access modifiers to protected internal instead so that BaseConfigItem can be externally extended?
I can, but i won't really be able to generate a new version of the mod. I've switched to linux for months and haven't really got around to setting up unity at all here, let alone set it up for modding.
(not to mention my interest in LC has been below zero tbh)
if i could transfer ownership of the mod at the thunderstore to someone else that cares more about LC, i would tbh
I see. That's unfortunate.
I could make the PR and also provide you with a built DLL file if you'd like, but I recognize that the process of updating it in thunderstore would be an inconvenience to you still, so I understand if you'd rather not go through the trouble.
Couldn't you just publicize LethalConfig and reference that Assembly in your project?
Compatibility would be an issue, I'd expect to be running it alongside a bunch of other mods that reference the original lethalconfig. Having both installed would definitely break some things unless its accounted for in my publication.
Missed oppertunity to call this "Company Config"
Has the mod been updated for the most recent version of Lethal Company (V80/81)?
I don't think it needs to
Chill
@clever drift work on lethal
I'm pretty sure they left this server
oh damn i made her leave 💀
well.. any alternatives?
it works fine but might need a maintained alternative in the future
I don't know of any
That's true. We'll probably need to ask the creator for permission to make a community version.
And to have people download the new community version, we could have this mod be empty and add the community mod as a dependency
Would be nice since I have ideas for more features I would like to add in the future
I've done some work on a drop in replacement that adds functionality for alternate interface types
Mainly cause I needed it for another mod I'm working on
I believe technically the license its under would permit modification with proper attribution but it'd be nice to have them on board of course
i meannn, @meager vapor isnt even going to modify, its gonna be rebuilt from scratch right?
i think @tired furnace can inform us regarding this
gwuh
Bro you gotta stop @ing random people like this
did you just call robyn a random?
anyways those people have something to do with the topic which is why i @ed them lol
not sure why you're telling me to stop
sorry, not what I meant, I was more so trying to play off the joke of your @'s being able to get people to leave the server
What I believe Zehs was suggesting is that we make a fork of the original LethalConfig with new maintainers. We'd then ask Aina to modify the original thunderstore entry to point towards the new version through a dependency.
ohh ok sorry lol i thought u were serious
As I mentioned before we technically don't need Aina to grant permission because that's already granted by the license under which LethalConfig is published, but if the original isn't changed to point to the new one you're going to get issues with other mods that depend on it
Basically every mod that currently depends on LethalConfig would have to be updated to point to the new one
I think i'll have to ping @tired furnace for her insight on this again 👉👈
Insightful
lmao
and truly inspiring
eating pizzaaaaa
ok, do u want me to ping u a few slices later as a reminder?
also, is it ok if i have a slice?
It would be helpful if Aina did that for you but if they don't then your best option is to retain the exact same GUID and use a higher version number than the original. That way if some mods update to the fork and some don't then your fork will take priority in mixed contexts
@meager vapor
Yeah I figured that was the best alternative as well
Yes
I'm currently press-ganging hamunii into updating the publishing scripts for the community repo but once that's done I can set up a team and make a LethalConfig-Community edition or something

[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/01_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/02_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/04_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/06_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/07_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/08_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/09_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/10_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/11_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/12_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/13_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/14_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/15_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/17_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/18_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/19_cooldown)
[16:59:52.9552786] [Warning:ainavt.lc.lethalconfig] No UI component found for config of type UInt32 (#/20_cooldown)
it's trying to auto generate config entries for a bunch of values that are stored as UInt32s. Auto generating is only supported for standard ints, floats, bools and strings
it won't cause any issues, just means you don't get lethal config entries for those values
ah ok
Weird considering a UINT is just an int but U so it could use the same component for both
Yeah, the way it's set up right now is to just scan the bepinex config file and explicitly generate corresponding components for any config entries where the type of the config entry matches the exact type expected by the component
it basically just does if (configEntry.type is string) GenerateConfigForString()
That doesn't seem like the best way to do it
yeah it's pretty clunky
you can't just use simple casting cause you don't want floats to generate int fields and vice versa, but you could probably set up like a list of supported types per UI component at the very least
here's some config interfaces I've been working on as part of a larger project
this looks interesting
glad to see there's interest, I'm hoping that when the community edition gets sorted out I'll be able to share it
here's a nice usecase for config groups
Hey
So uh
Im lazy to read up whats going on but if you are updating lethalconfig i do have requests 
well, I'd like to, but currently its kind of in limbo
why is your name white?
Ive got some stuff that Crithax gave me a while back, a proxy and we also did improve it a bit more afterwards for lethalhud’s needs and well i made yet another new thing for it just recently but not with a proxy but with an actual patch this time
@gritty wedge pingity ping, any eta on the template with thunderstore publishing actions being ready for updating over the one on the community? I'd like to get a community edition of Lethal Config for the people 
Is it not supposed to be? 
iono, ur talking about updating lethal config
Uh not today at least by me, but if you want, you could rebase onto upstream and get it working
The template changed a bit so stuff like the renaming of stuff like _GameName_ needs to be done last in git history
Anyways im leaving this here with a video link from my thread
https://github.com/s1ckboii/LethalHUD/blob/master/Patches/LethalConfigPatch.cs
kind of, I haven't officially published anything yet, I'm currently working on something though
I can wait. I started getting some experience in forking the template for a different game but then I got a refund for it cuz it kept crashing and I got sad
And this means that stuff like the publicizer change needs to be rebased before the renaming of stuff
Oke 👍
Also, unfortunate
The publicizer can just stay, tbh. Its only needed if the modder wants to uh make derived classes
Its literally only an issue when you want to override a virtual member and BIE Publicizer marks it as non-virtual in the publicized version
Huh
Oh wait I meant its only a problem if you're extending a class with protected members and BIE publicizer marks the methods as public so you can't override them properly when compiling
Ah yep
cuz protected override won't compile and public override won't work in live
My only issue really with the uh krafs publicizer is that it doesn't mark what is publicized
If you guys do any type of major change to lethalconfig plz give me and Crit a heads up
he has a proxy in i believe multiple mods and i also have the proxy plus the patch i just linked in lethalhud so i kinda agressively rely on it
I can't think of when I'd care but its whatever, we can keep BIE cuz its generally easier to use
I'm planning to set up community config and then give it over to lunar or whoever
I'm not gonna maintain it
Other differences are that BepInEx Assembly Publicizer uses AsmResolver, while krafs uses Cecil I think
Gotcha
We can also improve the BepInEx Assembly Publicizer if we need stuff, though idk if krafs publicizer would be a better starting point. Maybe not because it uses Cecil
(For the record I'd understand if someone else is chosen as the primary maintainer cause I'm not really an established modder in the community atm)
Publicizers are actually like super simple anyways
Yea I actually wrote a cecil based virtualizer that makes everything virtual once
for maximum nonsense
in my case it was a prepatcher so it replaced the base assembly in memory so it probably worked but I dunno
I kinda got bored of it?
do you have a repo for the proxy? I'd like to know what changes it has
Related things in this are in Configs/ConfigHelper and ConfigUtils
ConfigUtils just takes care of handling local and global config
Actually thats not important for you
I'll take a look at it tomorrow, thanks
Ok, I had a look. I haven't used LethalHUD so bare with me if I get stuff wrong
My general understanding is that LethalHUD basically exposes an API for other modders to register custom HUD elements. You're using the proxy to automatically add those registered elements as options to LethalHUD's plugin configs. The patch you made displays the source mod of the currently selected option assuming that it's not set to Default.
Did I get that right?
Yeah it has that part mhm. I was thinking of just showcasing the name of the mod in the description instead but settled for this solution
LethalHUD has an api part that got recently added to it and I wanted to show off where the custom hud element is coming from so you can easily select it if you have multiple mods adding these. Esp. if there are ones with the same name. Like if you have "scifi" hud coming from 2-3 mods (not like there is any situation like that right now, but wanted to fix that edgecase scenario)
There's an issue right now with the patch that causes non-lethalhud textdropdowns to also run the same logic, which means those all get an "unknown" source slapped onto em
You can see it in the lethalconfig example for text dropdowns
ooooh i thought i made sure it only happens on my mods
i guess i wanted to and never did it
It might be better to put the source mod in the actual dropdown, something like
Scifi (LunarScifiMod) as a selectable option
That way users don't actually even need to select the item to know what the source is
You could even do so only if there's a name collision so you'd get something like
Steampunk
Scifi (LunarScifiMod)
Scifi (SomeOtherScifiMod)
yeah that'd also work
i could have it in the dropdown but that causes it to just not be readible
im taking the name of the mod with better edgecase scenario since the video was taken
just looking for the manifest one more folder up if not found prettymuch
but if these would be in the dropdown they would either get tiny texts or they would be like Scifi [LunarS....
would just cut off
yeah makes sense
that is exactly why i wanted to put it somewhere else to be fair :p
I'd just say if lethalconfig has a parameter in the description panel to show modname where its coming from somehow thatd be nice
but ionno how that would be done
yeah its a bit unfortunate that the alternatives require selecting an item to figure out the source
something like that would be trivial to add as a config option
I could also look into maybe just supporting larger text sizes for dropdowns
maybe but I think theres just free real estate in the description panel 
and im pretty sure other apis like dawnlib or lethallevelloader or whatever could also use this feature somehow
lemme know if you figured out something ^^
I've been wanting to add something like this 
Oh and uh vector2 , vector3 configs 
Well idk if vector3 is really important but vector2 would be pretty nice
Two sliders next to each other in one row
Yeah I also wanna do a min/max value range where the min clamps to the max and vice versa