#LethalConfig

1 messages · Page 2 of 1

clever drift
#

sorry about being a bit away, been going through some stuff

#

i'll check the PR later tonight

tight shoal
#

I found the mod

#

Its the ghost harpist mod lol

slow prism
#

@worldly aurora I think I found how we can implement NO_RESTART_REQUIRED in a clean way

#

Config Description constructor contains tags

worldly aurora
#

how about that

#

didn't know

slow prism
#

Even softer dependency lol

wet vigil
wet arrow
#

Lmao that's a good one

wet vigil
#

@clever drift yo

#

any shot you can help me figure this out all my mods are gone from lethal configs

clever drift
#

@wet vigil it's being fixed

#

i should get to a new version during the weekend.

tight shoal
opaque saffron
#

Anyone know why LethalConfig would only pick up 1 config and not all the others?

#

Especially when it did it just fine before

spice lynx
#

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.

clever drift
#

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)

spice lynx
#

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.

clever drift
#

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

spice lynx
#

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.

clever drift
#

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

spice lynx
#

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)

clever drift
#

at this rate, i'll just add a config to hide lethalconfig that is only visible on r2modman, even though it's counter intuitive

spice lynx
#

Oh yeah you mentioned. Perfect honestly 🙌🏼

worldly aurora
#

it allows for hot-reloading

#

for mods that need the ability to change locale at runtime

#

it's a must have

spice lynx
#

Does editing the config then hopping out to the menu and then back in game not reload the text file?

worldly aurora
#

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

spice lynx
#

So mods don't read config after launch ever.

worldly aurora
#

BepInEx doesn't watch the config files for changes

spice lynx
#

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)

clever drift
#

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

spice lynx
#

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.

clever drift
#

i'm not sure i understand the question

#

could you give an example of a scenario?

spice lynx
#

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.

clever drift
# spice lynx Yeah okay so imagine any random single mod regarding in-game content not menu st...

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.

clever drift
spice lynx
#

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

rapid wedge
#

it’s not like there’s a magic process, it just reads config files and displays them in a nicer way than notepad

clever drift
rapid wedge
#

Ah fair enough

manic barn
#

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

clever drift
#

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

clever drift
#

Version 1.4.0

  • Updating config appearances whenever a ConfigEntry is modified directly.
  • Added QueueCustomConfigFileForAutoGeneration method, allowing the auto generation of configs for manually created config files.
  • Added new options to TextInputFieldOptions:
    • NumberOfLines Sets how many lines a text field can have. Setting it to 0 means no limit.
    • TrimText When 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 with AcceptableValueList) (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!

manic barn
#

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

worldly aurora
manic barn
#

I do have input utils installed

#

Nice mod btw

clever drift
#

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

manic barn
#

Your update works!

#

Everything showed up

clever drift
#

thank god

#

hopefully it'll work for everyone

manic barn
#

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

clever drift
#

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!

slow prism
#

Yay, great update

grim yarrow
#

Hey, can you make sprites as non readable, so it will use less memory?

clever drift
grim yarrow
#

will probably save around ~50-100MB depending how much mods are loaded

#

still searching the big memory leaking tho

clever drift
#

how big?

grim yarrow
#

2.5GB ram and 4.5gb vram

clever drift
#

holy..

clever drift
#

Tested and can confirm the mod works on v50.

slow prism
#

Hey Aina, how you been?

#

Not requesting a feature, just checking up on ya

clever drift
slow prism
#

Honestly same, some projects are burning me, hope you can find some good deserved rest

lyric drum
#

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?

clever drift
#

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

lyric drum
#

Oh thanks for the quick response! let me have a look

clever drift
#

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

lyric drum
#

Ahhhh I see, thank you so much!

clever drift
#

no problem!

#

if you need more help, just hit me up!

clever drift
#

Version 1.4.1

  • Exposing BaseConfigItem#ApplyChanges, BaseConfigItem#CancelChanges, and BaseConfigItem#ChangeToDefault
  • Added optional Assembly argument for LethalConfigManager#AddConfigItem
  • Marking dynamically loaded mod icons as non-readable to improve memory usage.
desert zenith
#

Don't imagine there's a color picker built in eh?

clever drift
#

not yet

#

it's planned, tho

desert zenith
#

All g, seems like a lot but would be helpful since there seems to be some sortof filters in game that alter color appearance.

worldly aurora
#

I'm probably just going to port over the color picker from RoO in a PR

#

whenever I'm not busy i guess

wet vigil
#

this work with v50 yet?

clever drift
#

it's compatible with v50, yes

worldly aurora
#

according to the tags, yes

desert zenith
clever drift
desert zenith
clever drift
#

At the moment, yes

desert zenith
#

Aight cool cool

clever drift
#

Version 1.4.2

  • Reverted changes to most config item's constructors from 1.4.1, as it was an unintentional breaking change.
twilit dawn
#

Do I have to add explicit support for this?

neon canyon
#

Why are only 37/45 configs showing in my menu? Is it some criteria in the configs that determines if it should be included?

tranquil haven
#

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 ?

worldly aurora
#

LethalConfig should autodetect the icon when the mod is installed from a mod manager like r2modman, thunderstore client, or Gale

tranquil haven
#

oh ok, i guess its just because im directly putting the dll in

worldly aurora
#

If you put the dll in a subfolder

#

And chuck the icon into the subfolder as icon.png

#

It should load it

tranquil haven
#

its just temp anyways for testing

#

Well thank you!

dusty bolt
#

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.

manic canyon
#

youll have to remind me abit later

dusty bolt
#

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

dusty bolt
#

can confirm it at least works for LethalConstellations' generated config (the one that gets generated after LLL is fully set up)

dusty bolt
#

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

dusty bolt
#

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)

clever drift
dusty bolt
clever drift
dusty bolt
#

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 catsmiley

clever drift
#

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

dusty bolt
#

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

dusty bolt
clever drift
dusty bolt
reef rapids
dusty bolt
reef rapids
#

btw does this mean the original lethalconfig is gonna get deprecated or what will happen

clever drift
#

it's not my plan to deprecate it, no

reef rapids
#

oh alright

#

is it gonna be like a separate fork?

dusty bolt
reef rapids
dusty bolt
#

Aina can correct me if i'm wrong

reef rapids
#

ohh

#

alright

#

looking forward to the update

clever drift
#

those changes will eventually be on the thunderstore, probably this weekend

reef rapids
#

ah alright

willow tundra
#

Why's my game stuck on this?

#

Nvm everything is just stupidly slow for some reason 💔

viral sedge
willow tundra
#

After that, it loaded like normal

clever drift
#

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.

dusty bolt
dusky turret
#

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.

grim pier
#

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

grim pier
#

for dev purposes obviously

meager vapor
#

I tried opening the Unity project and got these errors

dusty bolt
meager vapor
#

I already did that and I still get the errors

dusty bolt
#

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

meager vapor
#

It's the same version shown in the instructions

dusty bolt
#

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

meager vapor
#

I got it down to only two errors

dusty bolt
#

i actually got rid of those by right clicking them and clicking re-import

#

like the actual asset, not the error

meager vapor
#

Okie thanks

dusty bolt
meager vapor
meager vapor
meager vapor
#

What all do I need to do for the pull request?

dusty bolt
#

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

wet arrow
dusty bolt
wet arrow
#

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

dusty bolt
#

dont think that's natively supported by bepinex configs so it'd have to be hard coded into lethalconfig (if i recall correctly)

wet arrow
#

I mean, there is stuff that are hard coded inside lethalconfig

dusty bolt
#

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

wet arrow
dusty bolt
#

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

wet arrow
#

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...

dusty bolt
#

yeah would be nice. You're saying something like the step attribute in html basically

wet arrow
#

Hm... I guess so yeah

#

Yeah basically

meager vapor
#

Waaa it's getting late and I just want to finish this pull request x3

dusty bolt
#

could always be implemented in a separate PR lol

meager vapor
#

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

meager vapor
wet arrow
clever drift
#

Sure

meager vapor
clever drift
#

Sorry, i forgot i had some medical stuff to deal with friday and saturday. I'm checking right now

clever drift
#

@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)

meager vapor
#

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

meager vapor
wet arrow
#

THIS IS POG

#

Great feature !

#

Do you think you can make a slider step feature as well ?

#

or did you already do it ?

meager vapor
#

It was another thing on my list that I've wanted to add for a while

wet arrow
#

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

meager vapor
#

Doesn't FloatSlider already have a step option?

wet arrow
#

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

meager vapor
#

I could add something like that

meager vapor
wet arrow
#

Yep

#

a constructor to make a "simple" step would be nice though, it'll just generate a delegate x * K

meager vapor
#

I would have to look into this more later

meager vapor
clever drift
#

merged, i'll create a new version tomorrow

#

great stuff

meager vapor
meager vapor
clever drift
#

I do have a question about this tho

meager vapor
clever drift
#

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?

clever drift
#

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

meager vapor
#

I've never seen any Lethal Company mod using a UnityEngine.Color ConfigEntry nkoHehe

clever drift
#

Uploaded 1.4.5 with the hex color item

wet arrow
#

🔥🔥🔥

#

Nice

#

It's what we've been waiting forrrr

meager vapor
meager vapor
#

I just noticed an issue with the color picker menu waaaa
I made a new pull request whenever you have time to check it

clever drift
meager vapor
wraith sleet
# clever drift uploaded the new version on the thunderstore

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
grim pier
#

seems lethal config always assumes a range from 0 to 100 for int values?
no matter if there is no AcceptableValueRange defined or not?

grim yarrow
#

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

twilit dawn
grim pier
#

i should have printed it when it only had the string description instead of with the limits

weak zodiac
#

Does this mod work on V73?

nimble hemlock
severe charm
#

@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?

clever drift
#

if i could transfer ownership of the mod at the thunderstore to someone else that cares more about LC, i would tbh

severe charm
meager vapor
severe charm
willow tundra
#

Missed oppertunity to call this "Company Config"

umbral crest
#

Has the mod been updated for the most recent version of Lethal Company (V80/81)?

umbral crest
#

Chill

golden pond
#

@clever drift work on lethal

meager vapor
golden pond
golden pond
#

it works fine but might need a maintained alternative in the future

meager vapor
meager vapor
meager vapor
#

Would be nice since I have ideas for more features I would like to add in the future

severe charm
#

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

severe charm
golden pond
#

i think @tired furnace can inform us regarding this

tired furnace
#

gwuh

worldly aurora
#

Bro you gotta stop @ing random people like this

golden pond
#

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

worldly aurora
#

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

severe charm
golden pond
severe charm
#

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

golden pond
last blade
#

Insightful

golden pond
#

lmao

last blade
#

and truly inspiring

tired furnace
#

eating pizzaaaaa

golden pond
#

also, is it ok if i have a slice?

tired furnace
golden pond
#

@meager vapor

severe charm
tired furnace
#

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

golden pond
#

[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)

severe charm
#

it won't cause any issues, just means you don't get lethal config entries for those values

tired furnace
#

Weird considering a UINT is just an int but U so it could use the same component for both

severe charm
#

it basically just does if (configEntry.type is string) GenerateConfigForString()

tired furnace
#

That doesn't seem like the best way to do it

severe charm
#

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

severe charm
#

here's some config interfaces I've been working on as part of a larger project

severe charm
#

here's a nice usecase for config groups

rustic kestrel
#

Hey

#

So uh

#

Im lazy to read up whats going on but if you are updating lethalconfig i do have requests plink

severe charm
#

well, I'd like to, but currently its kind of in limbo

tired furnace
#

why is your name white?

rustic kestrel
#

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

tired furnace
#

@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 wag

severe charm
tired furnace
#

iono, ur talking about updating lethal config

gritty wedge
tired furnace
#

r u a modder, lunar?

gritty wedge
#

The template changed a bit so stuff like the renaming of stuff like _GameName_ needs to be done last in git history

severe charm
tired furnace
gritty wedge
tired furnace
#

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

tired furnace
#

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

gritty wedge
#

Ah yep

tired furnace
#

cuz protected override won't compile and public override won't work in live

gritty wedge
#

My only issue really with the uh krafs publicizer is that it doesn't mark what is publicized

rustic kestrel
#

If you guys do any type of major change to lethalconfig plz give me and Crit a heads up alienPray 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

tired furnace
#

RiskiThink I can't think of when I'd care but its whatever, we can keep BIE cuz its generally easier to use

tired furnace
#

I'm not gonna maintain it

gritty wedge
gritty wedge
#

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

severe charm
gritty wedge
tired furnace
#

Yea I actually wrote a cecil based virtualizer that makes everything virtual once

#

for maximum nonsense

gritty wedge
#

Nice

#

It probably didn't work at all for overriding stuff, right?

tired furnace
#

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?

severe charm
rustic kestrel
#

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

severe charm
#

I'll take a look at it tomorrow, thanks

severe charm
# rustic kestrel Same repo https://github.com/s1ckboii/LethalHUD/blob/master/Compats/LethalConfi...

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?

rustic kestrel
#

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)

severe charm
#

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

rustic kestrel
#

ooooh i thought i made sure it only happens on my mods

#

i guess i wanted to and never did it

severe charm
#

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)
rustic kestrel
#

I was initially thinking it could go here somewhere

#

as there is plenty of room

severe charm
#

yeah that'd also work

rustic kestrel
#

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

rustic kestrel
#

would just cut off

severe charm
#

yeah makes sense

rustic kestrel
#

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

severe charm
#

yeah its a bit unfortunate that the alternatives require selecting an item to figure out the source

severe charm
#

I could also look into maybe just supporting larger text sizes for dropdowns

rustic kestrel
#

maybe but I think theres just free real estate in the description panel peepoGiggles

#

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 ^^

meager vapor
rustic kestrel
#

Oh and uh vector2 , vector3 configs greed

#

Well idk if vector3 is really important but vector2 would be pretty nice

Two sliders next to each other in one row

severe charm