#Weather Registry / Weather Tweaks / mrov
1 messages Β· Page 8 of 1
yeah
huh
ig it bugs existing saves
weiiird
i mean
i have no idea what LLL does with the save mod
i'm assuming it's that tbh
actually let me join an old save
HEHEHE
unhanded rpc exceptions my beloved <3
alright
i have no idea whatsoever what happened to your save/modpack
but umm
yeah
the only thing i did was give myself a quadrillion bucks
making a new save works ig
interesting
so nothing was lost LOL
yw :]
if y'all ever get any more problems - ping me and i'll get it sorted π
i've pushed an update to WeatherRegistry, please check it out and let me know if it fixes your issue π₯Ί
Thanks a lot for this!
It's working so far!!
01900391-91d0-5ffe-c104-70b9e8e21f1a
Is it just me or do the weather weights in the config not go through?
Oh, that's interesting
Have you check your logs if they're being applied?
Iβll do some testing and see
mrov, is there a way to blacklist specific weathers for a planet?
Idk if possible with the normal WeatherTweaks, but the Weather Registry you can have blacklist per weather
Insane, thank you
yeah, WeatherRegistry allows you to disable weathers on selected planets
and weathertweaks uses its settings π
I just updated WeatherRegistry and I don't see blacklisting for something else other than sun animator
Like, landing on a moon?
just starting a game, so selecting save and spawning in the ship
when you spawn in they will already be generated
and then you can change them
like so
Alright, thanks a lot
Iβve tested with another profile and the weights seem to be working now
yippee π
Is there no setting to disable the combined and progressive weathers anymore?
there should be π€
hmm
have you checked after creating a lobby?
because that's when the configs are called
Looks like they don't show in LethalConfig but are there
tho they are not working at all
I have all of them disabled and still see combined and progressive weathers on the terminal
oh
umm
I might've done an oopsie again
so the disabled combined weathers shouldn't show up
but progressing ones' check is missing
πππ
sorry for that
Is there a way to randomize the seed for the first day?
Yep
not a big problem
March is always Foggy for example
if the first day everything was clear i wouldn't mind
but i like going assurance
and assurance is foggy π¦
@drowsy willow okay so i found a weird issue. if i use betaweather tweaks and weatherregistry in my profile, if i try to land on a moon it just is stuck with ship in motion. but simply getting rid of beta and the weather registry and get normal weather tweaks the game is fine
nothing in the bepin console
i could send log
is there a seed that everything is clear first day?
I'm pretty sure it is different depending on how many moons you have
Because I never changed the seed and got different weathers every time I changed the amount of moons I had
vanilla moons only
Were you on a custom moon?
happens to both vanilla and custom
same issue with the newest version
Send the log, Mrov might be sleeping. He'll get it later
Sending a log is always the best course of action π
please do, I'll check it later
not yet π
I've done an oopsie, I'll try to see if I can get an update pushed before being back home
gonna grab it rn
i still could not find the issue
just know it only happens with betaweathertweaks plus weather reg
Alright so I have a small suggestion for the mod.
Would it be possible to add a config entry to hide changing and combined weathers from the terminal?
Like let's say you get a "None > Stormy" weather on a moon but when routing to that moon the terminal and map would only show "None"
I believe this would add a fun element of surprise (and also reduce clutter)
Hey, sure, I could add something like that π
not using tweaks but i'm using registry and it's been eclipse THREE times in a row on both of the free moons
WeatherRegistry 0.1.1
- fixed an issue with LethalLib weathers not being registered correctly on modded moons
- fixed an issue with WeatherRegistry weathers being destroyed on joining lobbies
- (hopefully) fixed a Dictionary issue with modded weathers on clients
- renamed events:
setupFinished->SetupFinished,weatherChanged->WeatherChanged - added
DisableAllWeathersevent - added
WeatherControllerfor changing weathers - changed some logs
- changed possibleWeathers table to be sorted using enum values
- changed WeatherRegistry to forcefully remove all "None" weather entries from randomWeathers
π€
what's your modpack code? I'll try to check it out
BetaWeatherTweaksBeta 0.20.4
- fixed an issue with special weathers not being disabled (thanks: @mystic oxide , @hybrid crescent , @ancient depot )
and with that i think i've fixed all weather-related things that popped up this week
the grind is real π
the fix was literally that:
https://github.com/AndreyMrovol/LethalWeatherTweaks/commit/bbc2a6833757e4722506d5a3135e9b502e5e0f46
@plucky holly it crashed after starting to orbit?
in orbit or on planet?
in orbit
01901c4b-6afb-bc3c-0f12-c3aee7afce2e
i'm gonna quickly check
i pray its not a player count issue like that bug i had with only 5+ players in the lobby
might be unrelated to wt also cause my first log doesnt have any traces of it i think
but i need to see what's happening with debug logs on
would that cause the ship to get stuck?
well
alright what do i need to turn on
for this
aha ic
you would need to change the Bepinex config - Logging : Disk levels to All
im gonna play for a bit cause i dont wanna bug my group with testing stuff rn so i'll get you the logs after the sesh π₯Ί
thanks π₯Ίπ
happened to me a few hours after but with flooded
anyway thanks for the update mrov :]
oh it's dividing by 0
fuckkkk
can math errors go away from me π₯Ί
i'm uploading the fix rn
gotta clamp all divisions lol
worse
:<
never
π§
i've pushed the fix for that, thanks for reporting!
this is scary

I have a question about weather registry, is there be a thing like meteo multipliers? In the readme it says how it has code from it but i dont see anywhere to actually implement that into the game, or in weathertweaks
So where do I look for this setting or is it jus not there yet (or at all)?
Are u making a weather?
no I jus really liked meteomultipliers but want it on meteor shower weather and thought I heard somewhere a while back in the Code Rebirth taht this weather API thing would be able to do someth like meteomultipliers but to everything
hopefully I worded that correctly-
Next update should have what u need in the meteor shower mod's configs
It'll be a few more days though
Meteor shower doesn't currently use weather api is all
yipppeeee
so will it be specific to the weather creator's own mods?
for the custom weathers at least?
When registering the weather I get the option to input the values so yes
Afaik stuff like weights is unfortunately not on my end so you'll have to go to weather apis config for that I think
I dont see any problem with it but I think weather tweaks does a similar thing or atleast beta weather tweaks
But dunno
Ya I found weights, jus wantednto find the like scrap multiplier value
Oh it does? Ill find it next time I play been keeping my partner waiting for like 30 mins setting up all these updated mods
Thx for the info!
Hey, I'm planning to include the config options in the Weather registry config
btw mrov are you ever planning on making true combined weathers?
As in 2 weathers are chosen completely randomly and then combined into one instead of being predetermined combinations in the config?
π€ This could be done, it would be perfect with future custom weathers
i'm not planning this right now tho
Hell it could even be 2 of the same weather combined
two rainy weathers would make heavy rain (twice as many mud puddles)
two foggy weathers would make dense fog (basically your old superfoggy)
two stormy weathers would make... don't have a proper name but you get my point (double thunder strike rate)
Don't know how that would work for eclipse or flood but it sounds cool
fair. that would probably require a solid rewrite
π€
well
on game start i would just need to generate all possible combinations
and it would be on par with my current solution
so i don't think that's unreachable
π€ and I suppose the config would update accordingly?
so you could pick and chose?
btw how are combined weathers treated in relation to other weathers?
Are they just completely seperate and treated as their own weathers in the pool or are they chance based?
As in if the moon would be stormy then it has a chance to instead become a stormy + rainy for example
it's completely separate
π€ does that mean you could also introduce weights to them?
it uses "base weather" 's weight (dialed down)
well, i could
hmm then which weather is considered the base weather?
best example I can think of is "Flooded + Eclipsed"
Does it use dialed down flooded weight or dialed down eclipsed weight?
flooded is first but eclipsed is harder
so if I change the weight for one in the weather registry which would the combined weather use?
I wanna pitch Zeekerss on the benefits of moving to SOβs rather than enums
SO?
ScriptableObject
ah
π
if (combinedWeather.CanWeatherBeApplied(level))
{
weatherWeight = Mathf.RoundToInt(
(weights.TryGetValue(weather.weatherType, out int localWeight) ? localWeight : weather.Weather.DefaultWeight)
* combinedWeather.weightModify
);
}
else
{
Plugin.logger.LogDebug($"Combined weather: {combinedWeather.Name} can't be applied");
continue;
}
the "base weather" is the first in the array of weathers to apply
so in this case it would be flooded
in your example yeah
if zeekers redos the entire weather system i'm gonna cry
π€ wouldn't it make sense to always put the hardest weather first though?
I know it doesn't matter with base settings since all weathers are equal but if someone wanted to customize it then it creates an issue of... surprise eclipses
i get what you mean
Worth it for SOβs tho
i was moving this system a few times already and i'm still not happy with how it works rn
i'll change it so that the "base" one would be the "hardest" so to speak
i agree
If it was like Levels, Items & Enemies weβd be so back
also welcome back, Batby π
i'm really interested what the future updates bring
cause i assume those changes are not in v55 (or next one after)
because zeekers would need to change quite a few things in the game to make it work
i mean
btw if I am reading this correctly switching to SO weathers would allow for weather events and variants with less memory consumption no?
(I have little to no idea how big the change would be)
it's not difficult, but time consuming
right now in the game there's an LevelWeatherType enum
and everything weather-related is indexed by it
which is painful at best
changing the weathers to be ScriptableObjects would mean that everything weather-related could be in one array
(just like what i'm trying to do with WeatherRegistry)
so what you're saying is... you could easily add infinite weathers without having to overwrite the enum completely?
that would be one of the benefits, yeah
You could so the bare minimum by having inpsector based drag and drop references to the vanilla ones in the timeofday class and then compare against them instead of the current enum checks
because instead of my current shenanigans you would just add an object to array
and it's done
Which would be fairly easy to initially swap in
The issue is still there
I have disabled combined/progressive weathers and I still see them
tell me when fixed
it should be fixed with latest WeatherTweaks update
if anything more happens, let me know
basically the weather generation ran twice
and the mod that picked the weathers didn't display them
oopsie
k
Well, I think I found the problem...
Could it be because this part is missing for every combined/progressive config entry in the config file?
That's probably why they don't show up in LethalConfig either
oh wait what
gale doesn't show up the + things in the name
also it could be that
because of how this works (sorry) those configs are read after starting the round
could you check if the descriptions pop up after starting the lobby?
Yeah that fixed it, which is weird because I did start a lobby earlier when I reported the issue
that's really π€
yeah it seems fine now good work π
configs are a mess
I've got a cool idea and it would be great to make it happen
SPILL THE BEANS ANDREY
i need to make a config handler π«
actually i could do that in a better way
but it's gonna be a fucking nightmare
You got this π
LOL
OH I FORGOT CHANGELOG FOR THAT
this was so rushed, sorry
I've changed the code to use WeatherRegistry as dependency
(it's fine- anytime I don't see a changelog i just assume I gotta move the config out and compare old with new x3)
it's already inside WeatherRegistry
But I need to add the config options
π
so: yes
no worries, it's not yet announced anywhere π
i think i did it
this looks sooooo nice
IT DOESN'T WORK hehe
Lol
well ye u wouldnt be able to have two with the same key? π€
oh wait nvm i read that completely wrong π€£
Means I can take out MeteoMultipliers then, I use the defaults anyways ^^
i've made some questionable design choices
stupid configs at it again
this is the best worst thing i've done
WeatherRegistry 0.1.4
- added ScrapAmountMultiplier, ScrapValueMultiplier config options
- added LevelWeights and WeatherWeights config options (they don't do anything yet)
- (hopefully finally) fixed an error with WeatherRegistry not disabling registered weathers' effects when leaving lobby

i've tested the issues you were getting and it should (SHOULD) work now
testing for myself now
i've got the tornado to spawn after reloading lobby
it works
So no more need for MeteoMultiplier?
YIPPEE π
that should be the case
Very nice.
hurray
every registered weather has its own multiplier sliders
- combined/progressing weathers
- weather compatibility stuff with some mods
- nicer fog
AND the weather-> weather weights being nicer
which will be merged into Registry at some point
i have the config options there already, but they're not taken into account yet
haven't heard that one before
because having 3 possible weather weights at the same time will cause some funny issues
my idea for their priorities would be to use:
- level-specific weight (i.e. Vow@200)
- weather>weather weights (i.e. Stormy@200)
- default weights (i.e. 100)
Are you planning to just make WeatherRegistry the new WeatherTweaks
so everything is more centralized
that's a very interesting thing actually
because if you take into account my original plan (that's weight-based weather selection and weather sync) it's already there
i just need to ~~force ~~convince all weather-related stuff that other mods do to use my solution
and it's gonna be sooo epic
cause weather is the most disorganized thing this game has (except THE TERMINAL)
so having a centralized solution would be amazing
of course i probably miss some features that would be useful to modders
feel free to let me know
π€
another MROV oopsie
level filtering in Registry doesn't work
will fix that ASAP
sorry for the inconvenience

mrov throwing once again
i was thinking that would be cool, if by default weathers could be "unknow" but buying like sort of a Weather antenna or something in the shop for 300 or less, and with it the weathers will show in the terminal ^^
actually don't know if there is one already in thunderstore
I won't make that, but if someone wants to make that happen I'll gladly help
i would be glad to learn scripting and modding for that π₯²
i think imma drop that into #1188298686560739389
WeatherRegistry.ImprovedWeatherEffect must be instantiated using the ScriptableObject.CreateInstance method instead of new ImprovedWeatherEffect.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
UnityEngine.ScriptableObject:.ctor ()
WeatherRegistry.ImprovedWeatherEffect:.ctor (UnityEngine.GameObject,UnityEngine.GameObject)
WeatherRegistry.Patches.TerminalStartPatch:Postfix (Terminal)
DMD<Start>?570627916:_Terminal::Start (Terminal)
DMD<>?570627916:Trampoline<Terminal::Start>?-110933648 (Terminal)
LethalLib.Modules.Enemies:Terminal_Start (On.Terminal/orig_Start,Terminal)
DMD<>?570627916:Hook<Terminal::Start>?1449442308 (Terminal)
WeatherRegistry.Weather must be instantiated using the ScriptableObject.CreateInstance method instead of new Weather.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
UnityEngine.ScriptableObject:.ctor ()
WeatherRegistry.Weather:.ctor (string,WeatherRegistry.ImprovedWeatherEffect)
WeatherRegistry.Patches.TerminalStartPatch:Postfix (Terminal)
DMD<Start>?570627916:_Terminal::Start (Terminal)
DMD<>?570627916:Trampoline<Terminal::Start>?-110933648 (Terminal)
LethalLib.Modules.Enemies:Terminal_Start (On.Terminal/orig_Start,Terminal)
DMD<>?570627916:Hook<Terminal::Start>?1449442308 (Terminal)
WeatherRegistry.Weather must be instantiated using the ScriptableObject.CreateInstance method instead of new Weather.
WeatherRegistry.Weather:.ctor (string,WeatherRegistry.ImprovedWeatherEffect)
System.Reflection.RuntimeConstructorInfo:InternalInvoke (object,object[],bool)
System.Reflection.RuntimeConstructorInfo:DoInvoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.Reflection.RuntimeConstructorInfo:Invoke (System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo)
System.Reflection.ConstructorInfo:Invoke (object[])
Newtonsoft.Json.Utilities.LateBoundReflectionDelegateFactory/<>c__DisplayClass3_0:<CreateParameterizedConstructor>b__0 (object[])
...
Newtonsoft.Json.JsonConvert:DeserializeObject<System.Collections.Generic.Dictionary`2<string, WeatherTweaks.Definitions.WeatherType>> (string)
WeatherTweaks.NetworkedConfig:WeatherDataReceived (string)

"It's you!!!! It's always you!!!"
oh i didn't
Also the error seems to be from WeatherRegistry and not WeatherTweaks lol
From what it looks like WeatherTweaks ends up erroring way later
Whays a cross mean?
what cross? π³
π
the commit emote
oooooooh
my github action failing because i cannot set minver to work
fucking thing
lol
skill issue 
anyway what was the issue?
is this the right place for Weather Registry? Because I think your update just fixed an issue I was hunting down, that involved Selene's Choice and Central Config, and your mod was on the suspect list, now it seems to be fixed.
What's the issue?
CC likes to mess with stuff it shouldn't so that issue might just be hidden for now
As far as I can tell it was just completely breaking down Selene's Choice, but I can't find any errors related, and like I said I think it got fixed? I was still trying to trouble shoot the issue without errors when it stopped after an update, so I might just let it rest.
still haven't solved it
I've literally copied LL's action
and MinVer always resolves to 0.0.0
so it works?
despite the tag being set on like a commit before
hmm
nooooo π
where's the code?
I'm gonna get owned so bad π
check the previous action runs as well
everything runs okay
and MinVer resolves to 0.0.0
π
is there a way for it to use the .csproj assembly version?
bruh, your tags don't start with v even though it's configured in your csproj that it should start with v
that's why it fails to read the version
or is this it?
OH is it really that π
I will check that ASAP as possible
haha
another MROV oopsie
π€
OH LOL
idk why ,but i putted every setting on weather in uncertain, but the weather still show up in the cam
:c
oh, that's interesting
if I understand you correctly - you've enabled every uncertain weather type or did you enable always unknown mode?
because uncertain weather only has a small % chance of happening, it's not gonna be always and everywhere π
THE SLIDERS LOL
but yeah, the uncertain stuff is not guaranteed to happen
seems like i did a fuckie wuckie

IT REALLY WAS THAT thank you soooooo much π
something else errors but that's my fault as well lol
haha yeah no problem π
Weather Tweaks / Registry
does scrap values work now
Yeah they do
you bet
oh no i forgot that this was a thing
fucking weathertweaks still messing my stuff up π
BetaTweaks at it again
i'm trying to debug why weather weights aren't correctly applied on first day
wait wait, 100 default is higher than other vanilla weathers?
π€
and that's because levels have random weathers when lobby starts
and i forgot i've made a separate logic for that in weathertweaks
fun
Yeah you added the logic to BetaTweaks for the combined and progressing ones
tweaaaaaking
that's not what i'm talking about
Ah
first day weathers being always the same
forgive me, but i'm gonna do a gamer move here
what are the default weights in weather registry?
right now all 100
keep it that way
π€

@drowsy willow Quick question.
Building won't publish the uhh.
API, right?
I'm seeing tcli in proj thus wondering.
Oki.
what are you doing? π³
It's okay.
They went fine.
still need to know one but it went great.
Got maximum grade on the language project though so I'm happy.
daym, that's perfect
Considering that it was meant as a pair project, I think I did a good job on it.
You can make WeatherRegistryEvent to WeatherRegistryEvent<object> and pass null as param, no?
At least, it seems to be the same thing.
i think so?
i don't know honestly
it's copied straight from LLL
You can still override "Invoke" to just not pass anything to the listeners still.
Besides that, it seems functional that way.
alrighty
Nice try catch on a log.
Oh, your weight system is ... curious.
You're just praying that they have enough memory for the list? Lol.
π₯Ί
IF i were to change it to something that's not born in the bowels of hell, how would i do that? π
oh shit you're gonna kill me when i push my changes rn
it's so much cursed shit
You can use what I use for the hunter samples API.
It's a simple Dictionary<T, double>
Where double is the weight.
internal class WeightingGroup<T> : Dictionary<T, double> where T : class
{
public T GetItem()
{
double totalWeight = 0f;
foreach (double item in Values)
{
double absWeight = Math.Abs(item);
totalWeight += absWeight;
}
if (totalWeight <= 0f)
return null;
double roll = new Random().NextDouble();
double total = 0;
foreach (KeyValuePair<T, double> pair in this.OrderByDescending(v => v.Value))
{
total += pair.Value / totalWeight;
if (roll <= total)
return pair.Key;
}
return Keys.FirstOrDefault();
}
}
oooh, i see how you do it
so you're picking a rolled value and going through the dictionary one-by-one until the rolled value is 0
that's waaaay better than my stuff
π€
i'll change my stuff to this
Rather than having [A,A,A,A,B,B,B,...], it's probably better, yes.

you're gonna have so much fun seeing this shit
i'm sorry for the crimes i've commited
those are the changes from today
ConfigHandler's Value seems to be abstract.
yeaah
it's because i'm defining its type in the extensions: LevelListConfigHandler and others
Ye ye
so that i can have a single abstraction for all types of shenanigans i'm doing
it's reaaaally bad
should it not be virual?
OOOOH i see what you mean
but i would need to have the whole class abstract for that, no?
You will have to put the handler as abstract ,yes.
I mean
You're overriding the get anyways.
So the initializer doesn't really do anything.
Double array cast on ConvertStringToArray ?
levels not used in ConvertStringToLevels
right, redid that today
There's some repeated stuff here but that's fine.
that's what i wanted to tackle next
to just call a method with repeated stuff in there, simplified
because i have the same code (with very small differences) like 4 times there π
Okay.
like this:
You can probably put in your lib tbh.
Why not?
i'm not keen on that, but don't know why exactly
It just helps with modularity really.
importing it into unity means more packages need to go there?
Separates stuff from A to B, yada yada.
and i think it's that
Ah, you're making it Unity friendly.
i'm trying
It should be just another .dll though.
well
the thing is
in unity you have to import all soft-dependencies that a .dll has
i'm gonna think about it though
Oki oki.
because i'm already doing lethallib
and i'm planning to have support for LLL tags in the near future
which bring all those dependencies in
The SelectWeathers I have no idea what you're doing with it.
this is my funny setting that i disable in weathertweaks
so the Registry doesn't try to sync anything and pick the weathers
and it's handled by something else
that was the idea, at least
yeah
there's surely a better way to organize all of those classes/properties
but this is what i have now
You can put sets in the public properties to change the private fields.
Like StringToWeather for _weathersDictionary
Unless you're using them someplace else I am not seeing.
But I'm only seeing them used in the properties thus suggesting it.
the thing i wanted to have here is a "cache": it only actually creates the dictionary when it's not present
so the expensive operations aren't performed always
Ye ye.
and i'm doing that in the getter itself
internal static Dictionary<string, Weather> _weathersDictionary = null;
public static Dictionary<string, Weather> StringToWeather
{
get
{
if (_weathersDictionary != null)
{
return _weathersDictionary;
}
Dictionary<string, Weather> Weathers = [];
WeatherManager
.Weathers.ToList()
.ForEach(weather =>
{
Weathers.TryAdd(weather.name.ToLower(), weather);
Weathers.TryAdd(weather.Name.ToLower(), weather);
Weathers.TryAdd(((int)weather.VanillaWeatherType).ToString(), weather);
});
_weathersDictionary = Weathers;
// return the result of this setter
return Weathers;
}
}
Because the get will always return the cached result.
So the set just change the cached result to what you want, in this case null.
In the uhhh.
GetPlanetPossibleWeathers
How is the possibleWeathers list ever empty or null?
(Also double cast to List)
Oh, I didn't even see the comment above, lol.
But yeah, you can probably remove the if.
As it won't ever reach there.
yeah π
after .Where is has to go to the list (becuase c#)
and after .Select the same
so the first one is not needed, but the rest are?
i think

Am I gonna find a quadruple cast somewhere here?
i hope no
please no
You just want to murder RAM, don't you?
what happened π
GetPlanetWeightedList
Like
There's some merit in it.
But the problem is that you end putting in a list with repeated entries.
So if I decided to put a weight of, I don't know...
it's gonna put 1000 ints there
Yeah, it will put 1000 * sizeof(int)
.<

memory nom nom nom
Either 4k bytes or 8k bytes.
4mb for this shit?
It's the first, I checked.
ouch
For 1k weight, yeah.
Mrov has some optimizations to do
VanillaWeatherTypes is still in NewWeathers
At least I remember seeing these when I last checked.
A cast before a find?
Why do you need to cast?
There's also quota things not used.
oh my lord
Then weights from previousDay that are not used either.
Or well, previousDayWeatherWeather
hoarders episode incoming
OH it's not marked as static π
so much shit copied from weathertweaks without second thought
it's genuinely disturbing
I like how you save the network manager but then you don't use it.
You just keep on passing through GetComponents, lol.
So yeah, either don't use the cached result (because I only see one usage) or use the cached result and remove the param from the method
i see what you mean
FixedString4096Bytes is to pass string through RPCs?
i've used the 1024Bytes one
and it got too big at one point
so i'm using the biggest
Why not use encoding?
π
Like turn to bytes then turn to string after?
ummm
Or, well, anything you want to turn back to after the network message.
you can see my lack of knowledge π
I mean, it works for now.
But as soon it gets more weathers, it will probably die at some point.
this whole thing is me trying not to use LethalNetworkAPI (like for weathertweaks)
which goes well
π€
i wonder what's the moon limit that will break this
Well, 4096 bytes is 4096 characters.
because it's setting that:
{"41 Experimentation":3,"220 Assurance":4,"56 Vow":4,"71 Gordion":-1,"61 March":9,"20 Adamance":6,"85 Rend":2,"7 Dine":7,"21 Offense":9,"8 Titan":6,"68 Artifice":1,"44 Liquidation":7,"5 Embrion":6}
which could probably be squeezed even more
Probably.
or - like you said - just don't use strings π
You would just need to be careful when converting stuff around.
how would i do that?
oh wait, i can use INetworkSerializable types
but that still requires a serializer on my end
i'm gonna try doing that in the near future
i'm getting roasted here
Also delete code instead of commenting it.
It will be too much clutter at some point if you keep doing it.
I KNOW π
the hoarder brain never has enough
I FIXED THE GITHUB ACTIONS NOT WORKING π
funsies
i'll try to tackle the weight list today as well
Bundles?
it didn't find them (cause i don't have bundles), so it gave up
So you're creating a blank prefab?
yes
Oki
extremely stupid question, but I'm setting up WR to match the original meteo values here
+10% (dustclouds, foggy, rainy), +30% (stormy), +40% (flooded), +50% (eclipse)
Would that just be 10, 10, 10, 30, 40, 50 in WR's values? Or am I tripping
why would dustclouds give extra scrap value
@drowsy willow please make these the default values, and for Windy do 1.2 and Meteor Shower 1.6 ^^
No
I'm not planning to - that's why the configs are there π₯²
10% more from default is (1*1.1) = 1.1
I am getting tons of fatal errors after updating and I'm unsure how to parse them D:
I forgot to remove those logs from my disastrous testing session, don't worry about them
I'll push an update today to get rid of those
okiedokie β€οΈ thank youuuu for your wonderful work :3
Imagine using fatal logging.
imagine
_
_
that imagination is quite large
Nothing is quite large, yes.
I will not allow to be roasted second day in a row π
the damage is done already π€
What does Weather Weight actually do?
I understand default and level but this one I can't think of what it'd do
weather>weather weights changes the weight of the weather when the defined weather was there on the previous day
so if you want Foggy to have a big chance to happen after Eclipsed, you would type Eclipsed@500 into the Foggy config
I will write a proper readme someday π
and also that's the exact system that weathertweaks has - weather to weather weights
Just wanted to let you know cus we added WeatherTweaks back earlier as a test
Unknown weather and weathers with ? at the end no longer appear as that on the monitor
It just always shows the correct weather
lol
Yeah just wanted to let you know
Btw since you're trying to have Registy on par with StableTweaks, can you implement the first day stuff to Registry?
the weathers always being the same on first day? i'll try to cook something up tomorrow
Yeah cus too many planets start off with insane weathers without WeatherTweaks XD
and I imagine that's a feature that Registry should include
definitely not as a default, but there's gonna be something π€
:3
thank you for the handy chart!
WeatherRegistry v0.1.8
- optimized the weight-picking algorithm (thanks, whitespike)
- changed some logs
finally got github actions to work
Is the change I asked for in there too? π₯Ί
Hoorah for optimization though
c;
the first day? not yet π
i've just fixed my automated workflow to push the updates π€
Noice
which means that now i don't have to manually push new releases and i have one set of readme and changelogs instead of 2 π
ok now figure out how to cross release to CF
π
i found the relevant action already: https://github.com/marketplace/actions/upload-to-curseforge
i will tinker with it π
oh i hate that upload system
it would be easier if i made a node script for it
so i can do some cursed stuff
there is still no bepinex on CF π
forcing people to use yaml should be punishable
thats sick as hell tho
wait-
Is the newest update able to make weather appear in moons it doesn't appear?
vanilla moons?
no
you can't add a vanilla weather to any moon, but you can prevent it from being there
because of how vanilla weathers work, you have to set up weather variables on the SelectableLevel itself and it affects the weathers (like Flooded wave height, Eclipsed spawning amount of monsters etc.)
just got confused by the config structure
so i would have to have something to allow that
and i'm not planning to
no worries π
nice
forgot to do that:
WeatherRegistry 0.1.9
- added config options to disable logging startup logs & weather selection logs

I got roasted so brutally I've changed the code that was there since the beginning π€
thanks again π
π
WeatherRegistry v0.1.10
- fixed an issue with randomWeathers having multiple entries of the same modded weather (thanks, @abstract pivot )
yw
:[
WeatherTweaksBeta 0.20.6
- (hopefully) fixed an issue with ChangeMidDay allocating absurd amounts of memory every TimeOfDay update (thanks, diffoz)
- moved even more things into WeatherRegistry
my mods should work without any changes needed on v55
literally nothing changed lol
So apparently mine didn't immediately catch on fire.
As the patches seemed all fine.
Um, I'm sorry?
Why is the player controller tracking what the vehicle does?

that's all - hardcoded Mask change and 4 new fields
π
let me try to decompile for the 3rd time
Also good luck on || driving the car to a decent degree ever.||
i will always prefer the wheelbarrow π«‘
oh no
checking weather registry configs rn and...
What are these defaults?
Mrov why are you evil?!!
also what is cloudy weather exactly?
And why does it also have less loot value π
π€ i was testing my own api's settings π
and (it looks like) the defaults & configs are working π
yeah honestly I was really surprised everything works
it's literally unlike me π
||the terminal cruiser incident||
Does anyone know the default chances of weather?
Everything should be in the config π₯Ί
By default the vanilla weathers have weight of 100
Theyβre all the same? Eclipse is definitely not as common as none
look at the default weather-weather weights in the config - they are used before the default one
Oh ok that update added the actual defaults. I had to generate a new config to see that. Thanks. So they are all 100 but their weights based on the previous weather is whatβs different?
yeah
I'm gonna copy how it works from the readme:
Weight-based weather selection system
Contrary to the vanilla algorithm, this mod uses a weight-based system for selecting weathers. You can set the weights based on 3 criteria:
- Level weight: the weight of the weather based on specific level
- Weather-to-weather weight: the weight of the weather based on the previous weather
- Default weight: the base weight of the weather
During the weather selection process, the algorithm will try to apply the weights in the order listed above.
So if I don't touch the config, the weather is the same as vanilla? Your description says "contrary to vanilla" so I'd assume it's different.
the weight system itself is different than vanilla
the defaults are not equal to vanilla ones
Ok. So my question was what are the vanilla chances of weather?
π€·
vanilla rolls a number of moons to apply weather to, then picks a random one from the SelectableLevel array
does the weather tweaks beta play alright with brutal company minus?
that's a great question
Whay is the differmece
Between default weights
And the qeather weights
In the config?
π
No worries π
So if I want all of the weights to be default, i would have to basically delete all the weather-to-weather weights?
So they all use the default one?
then I shall test it. I will be the guinea pig
i have an idea
@drowsy willow I was wondering, how does the beta interact with MeteoMultiplier? I'm trying to figure out if it's functioning the same way with Brutal Company Minus' weather multipliers
this is fantastic by the way, especially in conjunction with the terminal formatter
really cool stuff
weathertweaks beta?
yep
it doesn't
ok, makes sense
i've cut that part out when moving to Registry, and haven't implemented it back yet
cause - naturally - i'd like to only use the registry system moving forward
i've commented out all code touching meteomultiplier
so nothing is in the final product
and when it comes to BrutalCompany: we're patching the same method, so there's two options:
- both our values are applied
- only one is applied
i'm replacing both the ScrapAmountMultiplier and ScrapValueMultiplier
so if my patch runs last, it's only gonna use my values
right, ok. hmmm
HUH actually
it's always gonna use both?
no, it's always gonna use mine, i've checked
because i'm applying the values much later than BC
ok cool. that's good
I'll play around with some different values and settings and see what feels right
and again, really cool stuff, I am loving the unpredictability

Wait til I show you '1' + 1
good 'ol javascript
output is probably true
how about i one-up you?
banana
sorry to bring you out of your sleep
i tried
do i need to match the namespace for it to be accessible?
oh
i've copy-pasted it into the lib
so it sits in a ConsoleTables namespace
inside MrovLib assembly
and - what's funny - i can access it in my code
there's no errors, everything is fine
and it doesn't work π
Is the assembly loaded?
And it's not confusing with other namespace.
And nowhere else you would have the same field in the same namespace.
that's what the reference is pointing to
unless
waaaaaaait
it was terminalformatter
delightful
sorry to take your time π
It's fine.
the rubber duck experience β’οΈ
I like always wasting time on coding anyways.
Not so much on strings though.
Lmao
What exactly does this function do? Speed ββup time inside the moon based on game progression?
I'm using BetaWeatherTweaks 0.20.6
its lowering the chance of clear weather based on the # of completed quotas
Im not suggesting it but how complex would it be to make weathertoweather weights different for each moon?
so you'd have even more specifically defined weights?
I like the idea, but it's not something I'm gonna implement
although I might add an event for easily adding your own weights to the mix
so an external mod could do that without hassle
differing weather patterns for each moons would be nice but I figured that weather to weather 11 times would be alottt
yeah π
i caved in

You mean..... overweight?
i am not overweight
Thank you, thank you, here every Monday from 9 to 5
Nou