#Lategame Upgrades

1 messages Β· Page 35 of 1

bronze prairie
#

the config file wont generate for some reason

#

i've already started the game, i've even got into a match

kind falcon
#

Would anybody happen to know if the shotgun upgrades work for stuff like the Piggy rifle and revolver? Bit scared to activate them if it does lol

steady trail
#

They shouldn't.

steady trail
stark monolith
#

Pikmin get annihilated by it lol. For lethalmin they count as an enemy

steady trail
#

Nice, lol.

stark monolith
#

Found that out the hard way lol

bronze prairie
steady trail
#

So you're just not finding it?
It is labelled "com.malco.moreshipupgrades".

west blaze
#

@steady trail you do not seem to have a discord chat for the terminal api u did, so ill pop it here.

A: Beautiful
B: Is there a way to allow text input after selecting an option (Im dabbling with the idea of passworded "Professions" in a profession mod. So a player can access their profession from the last time the save was up by typing in a password.

steady trail
#

Not really because the whole thing is an input text.

west blaze
#

Dang ahwell

#

Surely u could have a "send to input page" sort of deal that sends u back to a "normal" input system and, upon pressing enter, takes that input and uses it in the logic again?

Maybe xD

steady trail
#

I would have to figure out where to put the caret.

west blaze
#

Also something u might like, I made a tiny factory for the UI elements and I think it looks rather clean imho :L

using System.Collections.Generic;
using ContentLib.API.Model.Terminal;
using ContentLib.Core.Model.Managers;
using InteractiveTerminalAPI.UI.Application;
using InteractiveTerminalAPI.UI.Cursor;
using InteractiveTerminalAPI.UI.Screen;

namespace ContentLib.Core.Model.Terminal;

internal class SettingsTerminal : InteractiveTerminalApplication
{
    private readonly SettingsManager _settingsManager;
    public override void Initialization()
    {
        CursorMenu cursorMenu = TerminalUIFactory.CreateCursorMenu(InitMenuCursors());
        IScreen screen = TerminalUIFactory.CreateBoxedScreen("Settings", [
            TerminalUIFactory.CreateTextElement(" "),
            cursorMenu
        ]);
        currentCursorMenu = cursorMenu;
        currentScreen = screen; 
    }

    private CursorElement[] InitMenuCursors()
    {
        var cursorElements = new List<CursorElement>();
        cursorElements
            .Add(TerminalUIFactory
                .CreateCursorElement("Logging", _settingsManager.MoveToLoggingSettingPage));
        cursorElements
            .Add(TerminalUIFactory
                .CreateCursorElement("Events", _settingsManager.MoveToEventsSettingPage));
        cursorElements
            .Add(TerminalUIFactory
                .CreateCursorElement("Dependencies", _settingsManager.MoveDependenciesToSettingPage));
        return cursorElements.ToArray();
    }

  
}```
west blaze
steady trail
#

Busy with other stuff, lol.

west blaze
#

Would you accept a PR?

steady trail
#

Always willing to.

#

So long as it doesn't break the whole thing, obviously.

west blaze
#

I wouldnt dare do a PR without either Unit testing or in-game testing (one or the other, preferably both xD

#

Might even slip in that factory i did if you think it looks clean :L

gusty flint
#

Whitespike I'm gonna do a pr that deletes system 32

#

I hope you're okay with it

#

Nom

west blaze
#

NOT IF I DO IT FIRST!

west blaze
#

Oh btw spike, the links in the docs for the api usages in LGU are broke (as you moved where the terminal lives in ur repo)

west blaze
#

@steady trail sorry to distrub again but , with the Terminal API, what is the workflow for something like LGU, where it sends you to a seperate screen via a button AND has a return key?

steady trail
#

It could be better but it was a rushed out idea made at the moment and I don't have the time to make it better.

west blaze
#

or is 2am brain getting to me?

steel hollow
#

Suggestion for malware broadcaster; Divide the upgrade into two levels, first level extends the duration of the trap disabling, second level explodes map hazards. First level cost is 550 second is 1100 or maybe more because it feels very op.

#

I like that you made these two mechanics as a config option but i think it would be more interesting to be able to use both mechanics this way.

west blaze
#

I mean id prefer there to be a menu screen option to switch the,

#

them

#

as some people dont like the explodey

#

but only on certain levels

#

e.g: Id love to turn off explodey on the mine level

steel hollow
#

Maybe add a config option so we can chose which hazards are explodeable? For example i would like the see mines to explode but not turrets.

west blaze
#

I mean whilst we are at it , use the termina api to add the config options in-game for the host ❀️

steady trail
steady trail
steady trail
steady trail
#

Sorry for the late responses, withdrawal from socializing is kinda hard for me to deal with.

steel hollow
weak chasm
#

Hey everyone. I'm currently having an issue where I can't access the LGU command or the lategame store in general. Attached is my log file if it can give any insight

west blaze
#

Seems to be some sort of problem with inserting sales into the terminal

#

Going out of bounds for some reason.

#

Might be worth tagging white spike

weak chasm
steady trail
#

You're running an older version of the game.

#

Which was before the anniversary update.

#

Where sales were changed.

#

@weak chasm

weak chasm
#

Oh I see my game was set to public beta assumed it would be at latest version

steady trail
#

There has been alot with that, yeah. Haha

#

Wouldn't be an issue if zeekers followed consistency but oh well, we have to live with what we got.

weak chasm
#

Yes it works now! Thanks so much!

west blaze
steady trail
#

Added special case for game birthday.

#

So the same but without the case.

steel hollow
#

Wasn't there a teleporter cooldown upgrade? or am i imagining things?

west blaze
#

I'd kill btw for the portable teleporter to be just a remote controller for a weighted bird paper weight that rocks onto the ship teleporter button when pressed 🀣😭

steel hollow
west blaze
#

Ohhh wait u mean cooldown damn

#

U might be Mandela effecting

steel hollow
#

yeah xd

#

is the general improvements cooldown settings are still incompatible?

#

if so then it would be a good idea to add a new upgrade for it

#

even after dropping all my items

#

teleporting again without any items fixes it

steady trail
# steel hollow these

I can't do anything when the method I patch gets removed.
So right now worst case is the relevant upgrade does nothing.

steady trail
#

Because the patched method just resets the weight to "zero" which isn't ideal when being nitpick with what items stay.

#

So I have to calculate the weight based on what items you have in your slots.

#
- Implemented tier upgrade which increases the health regeneration cap of the vanilla health regeneration mechanic.
- Implemented tier upgrade which increases the amount of health you regenerate through vanilla health regeneration mechanic.
- Implemented API (UpgradeApi) to facilitate modding around LGU's upgrades.
  - Allows retrieving data related to the upgrades of the session (All, Visible, Purchaseable, Rankable);
  - Allows requests of triggering upgrade rank up;
  - Allows requests of contributing towards an upgrade.
  - Requests require the name of the upgrade (either original or overriden) or the node associated to the upgrade to be considered valid.
- Added world-building text to some upgrades. (Thank you Nat(discordID:twinkula))
- Fixed contribution values from Item Progression mode not being used correctly during save reboot.
- Item Progression modes of UniqueScrap and CustomScrap will not rank up upgrades hidden from Randomize Upgrades mode.
- Made Efficient Engines discount price effect also apply on [Lethal Constellations](https://thunderstore.io/c/lethal-company/p/darmuh/LethalConstellations/)'s constellation prices.
- Added configuration for Sick Beats to make the boombox music not attract nearby enemies when purchased.
- Added configuration for Discombobulator to blacklist enemies from its effect when fired.
  - It checks both the internal names stored in its data or the header text shown in the scan node for equality in the blacklist.
- Fixed issue with GoodItemScan Compat with wrong logic being applied.
- Fixed issue with Item Progression leading to upgrades not having a contribution value assigned to them.
- Fixed issue with Contract objects showing radar icons even when they are destroyed.
- Fixed issue with Fusion Matter ignoring Back Muscles weight reduction when keeping items in your inventory.

This is what I have right now and I don't have an ETA for a release due to uni problems.

steel hollow
#

understandable, looking forward to it thanks

steel hollow
#

umm upgrades never seem to go on sale, any idea why?

steady trail
#

Hmm

#

They should, I touched it like

#

6 months ago.

steel hollow
#

do you have any idea on what other mods can cause it?

steady trail
#

No clue, it is its own system.

slow lantern
west blaze
#

Did u remove extra days from the mods? @steady trail

steady trail
#

Its own mod.

west blaze
#

???

#

what?

steady trail
#

Extend Deadline.

west blaze
#

I thought it used to be in lgu

steady trail
#

It was.

west blaze
#

U removed it? Why not just make it a dependancy? πŸ˜…

steady trail
#

Because it's not really a lgu thing

west blaze
#

Welp

#

thats our current run fucked lol

#

we went to company thinking we could extend days

#

Big rip

steel hollow
#

Oh i get it now, the upgrades go sale per quota

#

not per day

mortal berry
#

Actually, better question, is this actually going to allow us to grant normal health regeneration, or simply increase the threshold of health that would regenerate when critically injured?

stone bramble
#

So I noticed that whenever I reopen my save file my nightvision goggles go away? I assume that isn’t supposed to happen?

gritty basin
#

how can I disable a tier in upgrade

#

what I want to do is Betterscanner have only 2 tiers instead of 3

steady trail
steady trail
steady trail
gritty basin
#

oh sadge

tawdry wadi
#

Whenever you update the mod again

#

lol

steady trail
#

I mean it does generate incorrect behaviour.

loud radish
merry tundra
#

Hi @steady trail just asking if you can add a configuration where a contract is automatically bought every day on a random moon and Is show in the chat like the huntdown mod but it's sayd in orbit wich contract is and on what planet

#

Let me know if you wan't to do itπŸ‘

steady trail
#

If you could explain better what you want right now.
Because the only thing I'm seeing here is that you want an option for an auto-buy (which I don't know if you want credits deducted or not) and for other spots to check what/where is the contract.

bold star
#

@steady trail Having an issue with the teleporter being on 0 cooldown in the ship which causes Vega's teleporter function to break

steady trail
#

Zero cooldown on the button?

bold star
bold star
#

In orbit at least

steady trail
#

I don't remember ever touching its cooldown.

bold star
#

Then why's it doing that?

#

I have all the teleporter upgrades off anyways

steady trail
#

The only thing I can see it causing issues is the interns but then you would see the error prompt.

bold star
#

Should I disable interns N try again?

#

Will try that now

#

Also i noticed that you don't really select the player when you use the intern command

#

And you can only do it for one player and that's it

#

And there's no confirmation to using it like "spend 1000 to revive X person? Type (Confirm)"

steady trail
#

The intern is on the person you are looking at the radar, yes.

bold star
steady trail
#

It was last touched seriously like five months ago.

#

Maybe more, I rarely need to check its functionality.

bold star
#

I personally think it should have the same ui as the normal lategame menu where you'd pick from a list of players, I think that's a better way of doing it

steady trail
#

Sure.

#

Maybe like.

#

After I'm fully confident uni is not being a problem.

bold star
#

I know you're busy and stuff too i wasn't trying to say anything bad

steady trail
#

It's fine.

bold star
#

Also it was interns that was causing the issue

#

With the 0 second cooldown

steady trail
#

Hmm

#

It could be ignoring previous checks, I guess.

bold star
#

How's uni going btw?

steady trail
#

Decent.

bold star
#

That's good

steady trail
#

Not many people I hang around are there though so I kinda just wander around when I go there.

bold star
#

Aww

#

Honestly same here, I don't know many people in my uni

#

So i just sit on my own on my phone sometimes during breaks

steady trail
#

Right now, I'm just reading stuff for the paper and then start having some thoughts on how I want to make things out.

#

Yeah, I don't have classes anymore, only have to focus on doing the paper.

bold star
#

Ah i see

#

Well good luck man, really hope you do well<3

steady trail
bold star
#

You got this!

fluid river
bold star
fluid river
#

oh!
Thanks!

bold star
#

That hud was hard to make that way

merry tundra
steady trail
#

And popup when the random assign happens?

grave depot
#

I had an issue the other day with Landing Thrusters making the ship land slooow af instead of quicker, but upon testing again today, the issue is gone 🀷 Awesome mod btw, tons of fun.

merry tundra
#

I also setted It to spawn on also all Moon also the non free

#

So that you can go to a non free Moon After seeing that It has a contract

west blaze
#

Something that could be cool for contracts would be if they also rewarded a bonus (e.g: The money for the contract and a guranteed sale on X item, a free upgrade, etc)

strange violet
#

@steady trail hey when you're available, could you let me know if there is an inverse of this that I could get a listing of all the commands LGU adds? (or maybe if this is something you'd be willing to support?? πŸ₯Ί) I'm looking to add some compatibility with the autocomplete feature in my terminal mod

steady trail
#

ITAPI should have a list of commands added.

#

Don't know if it's public tho.

strange violet
#

oh I didnt think to check there

strange violet
steady trail
#

I don't mind at all

west blaze
steady trail
#

Sounds neat.

placid frost
#

Greetings~ I hope everyone is having a good or at least a decent saturday

Question! Is it possible to rebind the key for the night vision goggles? I saw chats here back in Jan of people being able to do it but I don't see a setting in the config. Was it removed or is it somewhere else I'm not looking? I'm looking in MoreShipUpgrades > Night Vision both in Gale and LethalConfig in game

gritty basin
#

i remember it on the setting in game with the keybinds

placid frost
#

Great! Thanks so much, @gritty basin~ When I get back home I'll look at the settings ^w ^

strange violet
steady trail
#

And now you need the upgrade command ones like disco?

strange violet
#

but I was wondering if there was a listing anywhere for the more basic terminal commands like forcecredits atk etc.

steady trail
#

Listing, no.

strange violet
#

unlucky Sadge

#

so I would essentially need to make a list manually if I wanted to add support for those

steady trail
#

For now, yeah.

strange violet
#

for now? πŸ‘€

steady trail
#

Well

#

After I get a break from uni, maybe I can do it.

strange violet
#

oooo hell yea, that would be appreciated NODDERS

#

Other than autocomplete, it'd also be useful to have a list of commands you add that I can check so i'm not overwriting any of them in my mods that add commands

#

especially since I let keywords be configured by the user in config lmao

#

for now i'll do a manual list since it looks like these commands always return something

quick nimbus
#

my friend and I are trying to use this mod but when he joins, he sees just a black screen. is it because of the new game update?

cerulean sage
#

could we get your profile code and logoutput.log please

steady trail
#

From what I saw just now, the quantum disruptor revert command can only called on host?
I don't remember if people reported this or I made it intentional when I made it but I feel like it shouldn't be a problem if clients can do it.

steady trail
#

I can probably make a release today, actually.

steady trail
# bold star

Remind me again, the intended behaviour was for it to show the cooldown on the button?

bold star
#

When in orbit the cool down goes to zero

#

So it breaks Vega cuz it uses the normal cool down N Vega is stuck at 0.25 seconds for the teleporter cooldown

steady trail
#

Okay so I think what is happening is:

  • Button is set to not interactable due to cooldown. This is just vanilla behaviour.
  • Intern check sets it to wether the looked at person can be teleported according to the restriction (regardless of wether it was interactable or not before)
  • If false after previous check, alter the error message to be related to the interns check.

So the problem here is that I didn't check if it was not already interactable before I did stuff. I reckon that's the fix I need to do here.

#

Ok ok, that should be fine then.

steady trail
#

And the alternate currency is still in the works as there is some refinements needed such as where I can show the amount, trade, gain, yada yada.

steady trail
#

3.11.0 release:

  • Implemented tier upgrade which increases the health regeneration cap of the vanilla health regeneration mechanic.
  • Implemented tier upgrade which increases the amount of health you regenerate through vanilla health regeneration mechanic.
  • Implemented Upgrade API to facilitate modding around LGU's upgrades.
    • Allows retrieving data related to the upgrades of the session (All, Visible, Purchaseable, Rankable);
    • Allows requests of triggering upgrade rank up;
    • Allows requests of contributing towards an upgrade.
    • Requests require the name of the upgrade (either original or overriden) or the node associated to the upgrade to be considered valid.
  • Implemented Discombobulator API to facilitate triggering callbacks to the Discombobulator upgrade.
    • Allows checking if the discombobulator can be fired to stun nearby enemies.
    • Allows checking if the Discombobulator upgrade is enabled in the configuration.
    • Allows requests of firing the Discombobulator mechanic (so long as it is able to fire);
    • Allows requests of setting/incrementing/decrementing the current cooldown of the Discombobulator.
      • The calculated value will not pass the boundaries of zero to the configured maximum cooldown of the Discombobulator.
  • Implemented Quantum Disruptor API to facilitate triggering callbacks to the Quantum Disruptor upgrade (more specifically the revert mode)
    • Allows checking if the Quantum Disruptor upgrade is enabled in the configuration.
    • Allows checking if the Quantum Disruptor revert time command is enabled in the configuration.
    • Allows checking the reset mode used to reset the revert time usages value.
    • Allows checking the current/maximum amount of revert time usages per moon landing and amount of hours reduced per usage.
    • Allows checking if the Quantum Disruptor revert time command can be executed. (along with display message in case of error)
    • Allows requests of firing the Quantum Disruptor revert time command.
#
  • Added world-building text to some upgrades. (Thank you Nat(discordID:twinkula))
  • Fixed contribution values from Item Progression mode not being used correctly during save reboot.
  • Item Progression modes of UniqueScrap and CustomScrap will not rank up upgrades hidden from Randomize Upgrades mode.
  • Made Efficient Engines discount price effect also apply on Lethal Constellations's constellation prices.
  • Added configuration for Sick Beats to make the boombox music not attract nearby enemies when purchased.
  • Added configuration for Discombobulator to blacklist enemies from its effect when fired.
    • It checks both the internal names stored in its data or the header text shown in the scan node for equality in the blacklist.
  • Fixed issue with GoodItemScan Compat with wrong logic being applied.
  • Fixed issue with Item Progression leading to upgrades not having a contribution value assigned to them.
  • Fixed issue with Contract objects showing radar icons even when they are destroyed.
  • Fixed issue with Fusion Matter ignoring Back Muscles weight reduction when keeping items in your inventory.
  • Fixed issue with Quantum Disruptor Revert Time command not being able to be called by non-host players.
  • Fixed issue with Interns Teleport Restriction configuration making the teleport cooldown ignored.
#

Too big to fit in one message, lol.

#

Oh yeah, @strange violet supposedly constellations price should be affected by the engine upgrade thing.

#

Who else...

#

@devout prism this should address the issues you talked about earlier (plus removed the reset from LGU's side).

loud radish
#

find anything involving probing weather with #1203871322841808906 's 0.3.0+ updates?

steady trail
#

I haven't looked at that yet.

#

But my best guess is its system is completely separate from vanilla.

#

So it will probably have to change its "change weather" logic according to the registry when it's present.

loud radish
#

@median egret ^ πŸ˜„

median egret
#

could be πŸ€”

loud radish
#

i just wanna probe into meteor showers and eclipses again without being stuck on 0.2.9 >.<

bold star
fervent dawn
#

What happened to the original creator?

steady trail
#

They left modding.

#

As they got opportunities in real life work.

quick nimbus
steady trail
#

Fun.

#

In the configuration related to fixplugintypes, what setting you havein preference?

quick nimbus
#

I cant seem to find preference, but here is the file
`## The GUID of the last downloaded UnityPlayer pdb file.

If this GUID matches with the current one,

the offsets for the functions below will be used

instead of generating them at runtime.

Setting type: String

Default value: 000000000000000000000000000000000

LastDownloadedGUID = 000000000000000000000000000000000

The in-memory offset of the MonoManager::AwakeFromLoad function.

Setting type: String

Default value: 00

MonoManagerAwakeFromLoadOffset = 00

The in-memory offset of the MonoManager::IsAssemblyCreated function.

Setting type: String

Default value: 00

MonoManagerIsAssemblyCreatedOffset = 00

The in-memory offset of the IsFileCreated function.

Setting type: String

Default value: 00

IsFileCreatedOffset = 00

The in-memory offset of the ScriptingManagerDeconstructor function.

Setting type: String

Default value: 00

ScriptingManagerDeconstructorOffset = 00

The in-memory offset of the ConvertSeparatorsToPlatform function.

Setting type: String

Default value: 00

ConvertSeparatorsToPlatformOffset = 00

The in-memory offset of the free_alloc_internal function.

Setting type: String

Default value: 00

FreeAllocInternalOffset = 00

The in-memory offset of the malloc_internal function.

Setting type: String

Default value: 00

MallocInternalOffset = 00

The in-memory offset of the m_ScriptingAssemblies global field.

Setting type: String

Default value: 00

ScriptingAssembliesOffset = 00
`

steady trail
#

Hmm

#

So it's only generated after the download, okay..

#

Right now, the link they used was changed to https which it doesn't support due to either lack of redirect support or tls support.
The most likely workaround right now is to get some config before it was changed from someplace. There's an issue in this repo that has posted a config that apparently works.

quick nimbus
#

would you happen to know where to find that config? or should i look through for it

steady trail
#

This mods repo has an issue where a person posted one.

#

Something about e prompt.

west blaze
#

Quick one to do with the faster encryption. Something you may not of considered with it is that, as the message as a whole is faster, so is its deleition. So the benefits of a longer message are missed as there is not enough time to read it (as it goes off pretty much instantly after finishing)

marble marsh
#

Also, I had helmet stay on me after being killed by Bracken. I respawned and didn't know it was still on me.

steady trail
#

I believe the helmet only ever gets deleted from non-one-hit events.

#

At least from what I am remembering on the code related to it.

west blaze
#

Whats your thoughts on the faster decrypt upgrade issue?

steady trail
#

Like you want to delay the deletion based on length?

#

Plus terminal by vanilla is already limited.

west blaze
steady trail
#

So supposedly increase this "0.5"

#

Hmm

#

Not sure how I want to do this because increasing it too much might be annoying.

#

And it should only apply when you're using Fast Encrytion aswell.

#

Maybe doing something like checking that upgrade, some config where you can put how much additional time it stays on (past a certain threshold maybe?)

west blaze
#

Figure out the ratio of how long it stays on screen in vanilla vs how long it takes to write the longest sentence

#

And then apply that ratio to the number to replace there

#

also did zeekers legit just deadass hard code his float there?

#

grumbles

steady trail
#

Maximum longest time to write the longest sentence in vanilla is:

  • Wait 1.21f after playing the transmit sound and showing the UI
  • whenever Next always return between 0 and 4, making num 0 which then it's always 0.7f in each WaitForSeconds. (this up to maximum length of message)
  • Wait 0.5f after transmitting the final character of the message.
west blaze
#

Ah so whats the max then, man cannot do math rn its 3:30am xD

#

0.5 / max tranmission write time.

#

0.5/(1.21 + whatever the max is)

#

Or rather the more useful value:

(1.21+whatever the max is )/ 0.5

steady trail
#

It's 1.21 + Sum of all values between 0.2 and 0.7 up to message length + 0.5 for the total transmission time.

west blaze
#

Yes but I am suggesting you get the vanilla pause after writing is complete , and divide it by the vanilla time it takes to transmit a full message.

#

Or rather vice versa

#

to get you a ratio you can use for your messages

#

Infact wait

#

no

#

sorry whitespike

#

im being stupid

#

0.5 is the vanilla pause after writing yes?

steady trail
#

Yes.

#

The time between characters printing is the 0.7f + num part.

west blaze
#

Make your pause 0.5/9 * character count of the message

#

As 0.5/9 is the average pause time per character

steady trail
#

That seems a smaller number.

west blaze
#

Nope.

(0.5/9)*20 = 1.111111111

#

That would replace your 0.5

#

and have it dynamic

steady trail
#

And lesser is faster.

west blaze
#

Have it ceil

#

at 0.5

#

But subtley get slower at higher word count

#

via the ratio

#

So minimum vanilla, but if word count goes over 9 start implementing the ratio

steady trail
#

So the nine is actually vanilla length.

#

Because there's the twelve checked in the serverRpc then the ten in the client rpc.

zinc girder
#

Having an odd bug, which i don't think was present before the latest update.

If a non-host player is present, disconnects, and rejoins and an upgrade was purchased while they were gone, the non-host player seems to be overwriting the host's upgrade list with the last one their client logged. This reverts the upgrade list back to the state it was in when that player was last present, without refunding the money.

Is this a known bug? I know for a fact I've bought upgrades before while the everyone wasn't in my lobby, and this hasn't happened. If this is something new, I can post a log file.

steady trail
#

I'm more inclined to believe they have less upgrades rather than overwriting because the saves only happen from the host and those only happen when they (the host) disconnect or autosave happens.

zinc girder
# steady trail I'm more inclined to believe they have less upgrades rather than overwriting bec...

I am the host in this instance, and can see it happening in real time. The console outputs a second "Applying loaded upgrades..." message when another player joins, rather than the "disregarded, file already recieved from host" I think it should be outputting. I'm seeing the upgrades literally disappear as I'm looking in the terminal.

The upgrades reset to what they should be when I restart the server, but as soon as another player joins it resets it, every time.

#

It's reloading previous sale prices for upgrades too, now that I'm looking through the log file more. Before it does that and then reloads the (wrong) upgrade list and sales, it says this after another player starts connecting:

[Info :More Ship Upgrades] [LguStore] Save file received, registering upgrade objects and deserializing.
[Info :More Ship Upgrades] [LguStore] SHARED SAVE FILE: Loading index 0 save under steam ID: 76561198402117944

That's my friend's steam ID, not mine. Immediately after that it starts loading the wrong sale prices, and then a little later the upgrade list's state when they were last connected, overwriting mine.

steady trail
#

I dont know why you're getting a second file loaded and start load upgrades log. A toggle is on before that log is made which is what stops from loading upgrades again.

zinc girder
#

I'll post my log file, if you have the time to look through it. Give me just one second

#

Tried to restart to get a relatively clean one. Sorry if this isn't the right way to go about this, I'm very new to asking for modding help.

steady trail
#

It's like

#

4 and half am

#

So I will look at this after sleep.

zinc girder
#

No problem at all. Thanks for even responding, I really appreciate it.

steady trail
#

I probably know why and I thought the previous person checked it but they didn't.

#

But yeah, I am already in bed

steady trail
#

The consecutive after wouldn't do anymore.

zinc girder
steady trail
#

Because when the host joins, they didn't start with the toggle on.

#

And since they are a client as well, they get the save share message.

#

I just have to toggle it on after lobby load and it should be fine.

zinc girder
#

Fantastic, thank you. But yeah, get some sleep- sorry to keep you up.

steady trail
#

It's fine.

#

Also that was around since it's creation as far as I am aware.

zinc girder
#

Jeez. Dunno why I never ran into it before...

steady trail
#

Because shared upgrades are less likely to show it.

#

You could only have found the issue if the host and client had different upgrades.

west blaze
steady trail
#

Unless substring length parameter is not actually length, it should be 10 in the client rpc.

west blaze
steady trail
#

I don't like random numbers.

west blaze
#

Oh ffs I just realised

#

The space after transmit no?

#

transmit the message

#

Is that why it's 10?

#

9 characters.

And then 1 space after transmit

#

So he starts from the space and nabs 10 characters. I.e 9 and the initial space

#

Zeeeeekers! * shakes fist

steel hollow
#

is Moon Day Speed Multiplier Patcher compatible with central config?

steady trail
#

No. It gets replaced by CC.

cerulean sage
marble marsh
#

Do you need it with LGU? I assumed no.

steady trail
#

Need what with LGU?

#

Moon Day Speed should be independent from LGU.

#

Unless something went wrong when compiling it.

marble marsh
#

Moon Day Speed Patch

#

I assumed you don't need it with LGU as LGU has upgrade that affects timescale.

steady trail
#

They shouldn't conflict with each other.

#

And/or require each other.

steel hollow
#

i have to use it i guess

west blaze
#

Btw @steady trail took a long look at the TerminalAPI and I cooked up this structure as a refactor / remake. Thoughts?

steady trail
#

Concept wise seems fine.

west blaze
#

Yeah, was trying to figure out the best way to do the page navigation a bit cleaner

#

Might add a store element too

steady trail
#

Store?

#

As like

#

Counters per entry?

west blaze
#

So a button that is designed to have an unlockable item bound to it

#

for purchasing

steady trail
#

Ah.

#

So basically a store application, haha.

west blaze
#

Yes , but specified to a button if that makes sense.

#

Or hell actually hold on...

#

a purchaseable button.

#

So a normal button element

steady trail
#

It's essentialy a button.

west blaze
#

but it cannot be unlocked

#

without being purcahsed

steady trail
#

So a button with a active setting which you can set?

#

Haha

west blaze
#

yes xD

Im making the point of not recreating the Terminal API, but more, tidying it up a bit haha

#

Adding more "out the box without having to mcguiver it" solutions

#

Basically expanding urs πŸ˜„

#

I'll work on it and yeet a PR over when its cooked

steady trail
#

Right now, I'm just messing with Void Crew.

#

Much more fun to read through. :P

west blaze
#

Haha thats a mood

#

what is void crew?

steady trail
#

Space battles with 4 people where you have pilot, gunner, engineer and scavenger classes.

#

Set amount of objectives and you try go as far as you can go with the resources you get throughout.

#

The building part in the ship is modular-like so you can easily change the setup when needed.

steady trail
#

They use a manager of sorts to handle stuff (from what I have seen in their thunderstore page) so I was just messing with it.

#

Ended up using generics already, lol.

west blaze
#

Oh nice thats pretty cool πŸ˜„

#

Also.. i may of cooked a bit more

steady trail
#

Are the blues like implementations?

west blaze
#

mhm

steady trail
#

Because IntegerSlider's min and max can be in the interface, I reckon.

#

Wait, interface, ergh

west blaze
#

Enum

#

I wanted sliders to be not just number based

steady trail
#

Should still work.

west blaze
#

but say enum based.

steady trail
#

Enums are limited aswell, no?

west blaze
#

They are.

steady trail
#

Ignoring the fact they inherit sbytes.

west blaze
#

Thats the point. An Enum Slider is a slider that can slide between enums

#

So say you have code that is effected by enums

#

you can slide through which one you have active

steady trail
#

Yeah, I get the idea.

#

I feel like the base should be able to include the min/max.

#

Because every slider will have those two always.

west blaze
#

You cant have a min max string, or enum, etc haha

steady trail
#

Well yeah.

west blaze
#

E.g: The string slider would just rotate back to the begining once it reaches the list end

steady trail
#

string I understand.

#

Enum I feel like it's possible.

west blaze
#

The rule is, if it doesnt work for one type, it doesnt go in the interfaces

steady trail
#

:\

west blaze
#

its to prevent yourself pigeon holing

steady trail
#

What even is a string slider for.

#

Because I can only see a string slider being a variant of enum slider.

west blaze
#

No idea. But immediatly i can think of a nice UI for a "change the name of your radar boosters" mod that uses it to toggle through names

steady trail
#

Hmm

west blaze
#

And also thats the beautiful bit about this, you are right most likely.

#

But right now theres 0 code

#

so i can just go

#

"snip"

steady trail
#

Yeah, we are just arguing the usability of these.

west blaze
#

Which is a lot more of a pain in the arse to do if i'd wrote the code first hah

#

Thats the point im making :L

#

Makes the process cleaner imho

steady trail
#

For example, for string choices, you can always make it index based on list of possible names.

#

Sure, you can just have the names in the slider already.

west blaze
#

True, but then why would you want to set min and max value yourself? It'd just be the max size of the list, so no need for those public methods

steady trail
#

Yes.

west blaze
#

Hence max and min value belong in integer slider ;L

steady trail
#

We can always have a slider based on collections.

west blaze
#

As numbrs are infinite #CitatioNeeded

#

Now THAT is a great idea

#

CollectionSliderElement

#

Thats generic

#

big fucking brain whitespike ❀️

steady trail
#

Footers are like what in this case?

#

Since it's on a ITextElement

west blaze
#

Basically i had this idea of area of the screen its positioned is based on its impl

#

so footers would auto get put at the bottom

#

But im sorta rethinking that already iich

steady trail
#

Hmm

#

Without a drawing, is hard to understand, lol.

#

Because that interface is used on everything basically right now.

#

Well, most of the text shown here is anyways.

west blaze
#

Oh god yeah thats a bit of a pain... technically buttons could go outside the menu

#

Hmmm

#

Oh wait no

#

im dumb

#

I imagine the only position in ITextElement would be something like GetPosition or something.

#

To determine where it goes in the screen order

steady trail
#

Uhhh.

#

If we're gonna involve position here, it's gonna be alot more painful from there on.

#

Because unless you plan to change the UI entirely, you will have only one source of text.

west blaze
#

Or just have a IScreenElementMenu interface.

Have it where then we have the SelectableElementMenu and TextElementMenu

One sets the title , footer and description , one sets the buttons

#

And then screens are constructed from those 2 menus respectively

steady trail
#

So a screen split in two where text on one side and buttons on other?

west blaze
#

And Decorator Element ofc

steady trail
#

That seems fine.

west blaze
#

No as in they are abstract containers.

As in they will still do the normal "title means put it here, this means put it there" etc

But the ISCreen itself would have those 3 containers

steady trail
#

Right.

west blaze
#

So for an end-user the mod maker literally just has to fill the Text element container, the decoration element container and the element menu container.

#

Using probably factories and builders

steady trail
#

Hmm

#

Seems okay.

west blaze
#

Yeah I think its reasonably clean a concept

#

Will defo have flaws

steady trail
#

Though drawing schematics is always better than actually building the schematic.

west blaze
#

lmao

steady trail
#

It's not a mystery prototyping is hard, lol.

west blaze
#

Yeah its why i like everything being interfaces. We can build the core logic of the schem and get the IScreen and Screen maanger working

steady trail
#

Sometimes it goes our way, sometimes it doesn't.

west blaze
#

then slowly chip away at each aspect

#

And if we realise that the interffaces as written jsut do not work? We simply can change the interfaces in like 5-10 mins work

#

rather than full impl refactors

steady trail
#

Yeee.

west blaze
#
using System;
using InteractiveTerminalAPI.UI;
using InteractiveTerminalAPI.UI.Cursor;
using InteractiveTerminalAPI.UI.Page;
using InteractiveTerminalAPI.UI.Screen;

namespace ContentLib.API.Model.Terminal;
/// <summary>
/// Factory for creating the primary components of an Interactive Terminal UI. Used to save time in the creation of
/// custom UI Screens for the API.
/// </summary>
public class TerminalUIFactory
{
    /// <summary>
    /// Creates an empty text field, usually used to have a gap after the title of a screen.
    /// </summary>
    /// <returns>The Constructed Empty Text Element.</returns>
    public static TextElement CreateEmptyTextElement => new TextElement() { Text = " " };
    
    /// <summary>
    /// Creates a "Cursor Element" , an element that can be selected and, upon pressing enter, perform a specified
    /// action.
    /// </summary>
    /// <param name="name">The text name of the element, will be what the user sees as the element's text.</param>
    /// <param name="action">The Action that gets performed when the user presses the button <i>(Developer Note:
    /// Does not accept any params).</i></param>
    /// <returns>The Constructed Cursor Element.</returns>
    public static CursorElement CreateCursorElement(string name, Action? action) =>
        new()
        {
            Name = name,
            Action = action
        };

    /// <summary>
    /// Creates a "Cursor Menu", a collection of Cursor elements to be placed within a Screen.
    /// </summary>
    /// <param name="elements">Array of Cursor Elements to act as the menu's contents.</param>
    /// <returns>The constructed Cursor Menu.</returns>
    public static CursorMenu CreateCursorMenu(params CursorElement[] elements) =>
        new()
        {
            cursorIndex = 0,
            elements = elements
        };

    /// <summary>
    /// Creates a Boxed Screen Component, acts as the full visual view shown upon the Terminal. E.g: A "Settings Screen".
    /// </summary>
    /// <param name="title">The title of the screen.</param>
    /// <param name="elements">The text elements of the screen, this can include both Non-Cursor and Cursor elements.
    /// </param>
    /// <returns>The constructed Boxed Screen.</returns>
    public static IScreen CreateBoxedScreen(string title, ITextElement[] elements) =>
        new BoxedScreen()
        {
            Title = title,
            elements = elements
        };

    /// <summary>
    /// Creates a Text Element, an unselectable Element that can act as a note upon the screen. 
    /// </summary>
    /// <param name="text">The text within the element, this would be shown to the end user.</param>
    /// <returns>The constructetd Text Element.</returns>
    public static TextElement CreateTextElement(string text) => new TextElement() { Text = text };
    
  
    //TODO Experiment with this later... much... much... later...
    public static PageCursorElement CreatePageCursorElement(CursorMenu[] cursorMenus ) => new PageCursorElement()
    {
        cursorMenus = cursorMenus
    };
}```
#

Also something simmilar to this for the factory

#

Made making my terminals so much nicer

#
 public override void Initialization()
    {
        _mainMenu = TerminalUIFactory.CreateCursorMenu(InitMenuCursors());
        
        _mainScreen = TerminalUIFactory.CreateBoxedScreen("Settings"
            , [
                TerminalUIFactory.CreateTextElement(" ")
                , _mainMenu
            ]);
        
        _settingsMenu = new SettingSelectionMenu("Logging",SettingPageSwitch, LoggingPageSwitch, UpdateText);
        _loggingScreen = TerminalUIFactory.CreateBoxedScreen("Logging Settings"
            , [TerminalUIFactory.CreateTextElement(" "), _settingsMenu]);
        
        currentCursorMenu = _mainMenu;
        currentScreen = _mainScreen;
    }```
steady trail
#

Noice.

west blaze
#

Yeah I think this could be built up into something pretty special with a bit of grease work

#

If you end up helping out with it, would u be aight with me slapping it in as a module for ContentLib?

steady trail
#

Uhh.

#

Like imagine.

#

You remember the paper I talked about, right?

west blaze
#

no?

steady trail
#

The thesis.

#

You even gave advice about it.

#

It's fine, doesn't really matter.

west blaze
#

Whitespike, brother... my entire job is listening to and giving thesis advice. Though i want to be reminded as it is soemthing I love talking about ^_^

steady trail
#

The issue is that it's about making a better authentication system where it works on multiple servers such as so no singular server breach can leak user's secrets up to a threshold and doesn't allow people who's looking at the system executing can see who's authenticating.

#

And making a prototype of that is fun to say the least.

west blaze
#

Ah

#

You do the diagram method?

#

Id reccomend it for two reasons

#

1: Helps
2: Looks good in ur methodology section

steady trail
#

Yeah, I already have a thought or two on the diagram of the system as whole.

#

Because this system also allows introducing/removing servers dynamically and the clients can select a set of servers they want to use to authenticate..

#

My only issue right now is really just writing the paper, haha.

#

Because I think of several methods of writing the same thing, ending up with either nothing or a mix of all turning into a reading mess, haha.

west blaze
#

Lyx

#

Use Lyx

#
  • Allows code blocks
  • Automatic numbering of headers
  • Best damn equation editor on the planet
  • Automated citations
  • Prints out the final pdf in latex format (which is academic looking asf)
#

And then write all your headings and sub headings in one massive list

#

no content

#

just the sub headings with a little setence below each of what u wanna put in it

steady trail
west blaze
#

And then you get the same effect as a diagram . "Wait no thats dumb" *deletes like 5 words and replaces em

steady trail
#

I see, I see.

#

I will try seeing it later, right now I just need citation material, lol.

west blaze
#

As a supervisor. I utterly refuse to even start talking to my students about their methods and help them with the main bulk of the work until they show me their headings

#

They physically do not get permission to do the thinky part till they've done the thesis structurey part

#

Every student hates me for it, every student thanks me for it by the time they get down to writing it KEKW

steady trail
#

Oh yeah, having the structure defined is always good.

west blaze
#

Its more than good

#

Its cheating

#

you are making your todo list and writing the most underestimated part of your thesis

#

at the same time

steady trail
#

Yeee.

west blaze
#

Oh also

#

if you have wrote code and its available

#

for gods sake add a data request footer on the title page or intro

steady trail
#

No code yet.

#

Only after the "preparation" is accepted first.

west blaze
#

So many code based thesis / papers get my eternal ire by going "Here is some nice shiny code" and then do not show the code nor point to where a reader can find it

steady trail
#

Because right now I need to show that I can do the stuff proposed.

#

(What they told me anyways)

west blaze
#

Ah a feasibility study

steady trail
#

Yee.

west blaze
#

Literature review is your friend

#

Lit Review to back up claims

#

Diagram based on Lit Review

#

Pretend ur lit review is the only place in the thesis you can put new references / sources.

Because technically, thats how it should be done.

9/10 by the time ur lit review is done, the paper writes itself

#

imho if a lit review doesnt literally scream at you how to do the thing

#

its a bad lit review

#

Student: *"I havent chosen whether to use Python or MATLAB facial recognition for my disseration" *

Me: "Is a discussion on the pros and cons of both language / libraries for facial recognition in your lit review?"

Student: "Errrrr"

steady trail
#

Nice, haha.

west blaze
#

I also am pretty ruthless with it.

Once had a student say "oh I havent done that bit of the lit review yet, but could we disc..."

and i legit just stopped them mid sentence and was like "I think the meeting's over. Stop wasting mine and your time, and go do the research, im not going to discuss hypotheticals and "umms" and "arrs" with you..."

#

If you try to plan something out without the full understanding and context, you are doomed to struggle

steady trail
#

I feel like I'm fine with context and motivation right now.

#

My only problem really is that I have been shown several reports with meaningful differences in how they make the paper.

#

Which kinda just messes with my inner sanctum because they can't make up their minds, lol.

#

(Also I am already messing with transpilers in Void Crew, great).

cerulean sage
west blaze
#

Updated structure

#

Ignore the red box was supposed to remove

fluid river
#

idk if this is possible, but a small request would be a compat with the SellBodies mod.
If both mods are installed, the hunter upgrade activates the mod leaving the "SellBodies" scrap model instead of the vase

#

Between both mods I like making it so that you have to buy the ability to sell bodies instead of having it unlocked from the start, so I prefer the LGU, but having the SellBodies model might make this option seem more interesting to some.

tawdry wave
#

Not sure if it's known, but HostFixes seems to make it so buying upgrades no longer consumes credits

tawdry wadi
#

and I'd rather not pressure Whitespike to fix issues that aren't with his mod since he's very busy

tawdry wave
#

Totally fair! Thanks for letting me know

tawdry wadi
#

You're Welcome ^^

steady trail
steady trail
#

Because at first glance, I think it would drop both with current release.

#

This assuming SellBodies does not have something for LGU, of course.

steady trail
#

Have you already tried with both?

#

Just know what's the current behaviour right now.

fluid river
steady trail
#

If you don't mind.

fluid river
steady trail
#

I would do it but grandpa's doesn't really have a good PC, haha.

fluid river
steady trail
#

Hmm

#

What I am thinking of doing might have to patch some stuff from sellbodies.

#

Because if hunter is to drop the bodies instead of jars, I will have to stop the jar spawning and let the body continue only if you have the required hunter level.

fluid river
umbral bough
#

this normal?

Stack trace:
MoreShipUpgrades.Managers.UpgradeBus.Reconstruct () (at <de7b1a1aae914eeb971ea7e6e6371b1e>:IL_002B)
MoreShipUpgrades.Misc.LategameConfiguration.PluginConfig_InitialSyncCompleted (System.Object sender, System.EventArgs e) (at <de7b1a1aae914eeb971ea7e6e6371b1e>:IL_000D)
CSync.Lib.SyncedConfig2`1[T].OnInitialSyncCompleted (System.Object sender, System.EventArgs e) (at /home/runner/work/CSync/CSync/CSync/CSync/Lib/SyncedConfig2.cs:49)
CSync.Lib.ConfigSyncBehaviour.OnNetworkSpawn () (at /home/runner/work/CSync/CSync/CSync/CSync/Lib/ConfigSyncBehaviour.cs:95)
Unity.Netcode.NetworkBehaviour.VisibleOnNetworkSpawn () (at <895801699cfc4b4ab52267f31e2a4998>:IL_0000)
UnityEngine.Debug:LogException(Exception)
Unity.Netcode.NetworkBehaviour:VisibleOnNetworkSpawn()
Unity.Netcode.NetworkObject:InvokeBehaviourNetworkSpawn()
Unity.Netcode.NetworkSpawnManager:SpawnNetworkObjectLocallyCommon(NetworkObject, UInt64, Boolean, Boolean, UInt64, Boolean)
Unity.Netcode.NetworkSpawnManager:SpawnNetworkObjectLocally(NetworkObject, SceneObject&, Boolean)
Unity.Netcode.NetworkObject:AddSceneObject(SceneObject&, FastBufferReader, NetworkManager)
Unity.Netcode.SceneEventData:SynchronizeSceneNetworkObjects(NetworkManager)
Unity.Netcode.NetworkSceneManager:HandleClientSceneEvent(UInt32)
Unity.Netcode.NetworkSceneManager:ClientLoadedSynchronization(UInt32)
Unity.Netcode.SceneEventProgress:<SetAsyncOperation>b__37_0(AsyncOperation)
UnityEngine.AsyncOperation:InvokeCompletionEvent()```
#

trying to test in lan

#

trying to figure out the loading error for clients

steady trail
#

I have seen that error million times but I don't know what's causing it.
Because that means my manager prefab didn't spawn.

#

Which is odd because that would mean I wasn't able to test.

west blaze
#

Bug master general is on the case

umbral bough
#

the client didn't intialize (idk why yet)

#

I can at least confirm it is not one of my mods

west blaze
#

Let's find out together.
I'll do some investigating when I'm home. U free to join a call and bash our heads together

umbral bough
#

some other mod broke client intialization

west blaze
#

Well that is rather silly of them smh

#

See I get apis adopted by a whole community can be seen as restrictive, but ong its issues like this that make me say we need them.

Yes they restrict us, but that's because we are all a bunch of apes who need nut allergy warnings on packets of nutsπŸ˜…

#

But yeah nearly home I can have a gander

lucid ibex
#

Is LateGame still on hiatus?

steady trail
#

Technically yeah.

#

Maybe til like.

#

February?

#

(Because that's the deadline for paper delivery)

#

((this is also ignoring what happens after the paper delivery which is another six months of work))

#

If there are issues, I can try fixing. However new content is gonna be hard to make the time for.

lucid ibex
#

About the balance of LGU Running Shoes

#

Maybe add a config or something like that

#

so that fast speed consumes more stamina

#

And so that it only works when you press Shift (or add this in the config too)

#

Is this even possible? @steady trail Or is it too difficult...

steady trail
#

The field for walking is also used on sprinting.

#

Sprinting just adds a boost.

steady trail
#

More stamina maybe?

#

Not sure.

#

I would have to read the code again.

lucid ibex
#

Perhaps my translator got the idea wrong

#

What I mean is that when you buy running speed+

#

So that it works only when Shift acceleration is turned on

#

And not when you walk at a normal pace

#

Well, so that when Shift with such speed, a little more endurance is spent

steady trail
#

I thought you meant the movement boost only apply on shift.

lucid ibex
#

Well, in short, do you understand?

steady trail
#

So only additional stamina cost when speed+ applied.

lucid ibex
#

or my translator let me down again xD

lucid ibex
#

Movement Speed ​​Unlock is this ordinary movement which?

#

Movement speed increment and this is on Shift?

#

Or I misunderstood...

#

that's it, I figured it out

#

Type the first update is the main speed, and the rest is for improvements +

steady trail
#

Unlock is when you first buy it, Increment is when past the first level.

lucid ibex
#

got it, figured it out

west blaze
#

Oh I meant to ask... the weed killer upgrade is a bit defunct now no?

steady trail
#

If you don't have a mod that enables the kidnapper fox, yeah.

marble marsh
#

Should be off by default tbh.

steady trail
#

I guess, yeah.

west blaze
#

Hey @steady trail you know how u removed some stuff like the wheelbarrow and whatnot? Was there a reason or just "I dont want this in my mod no more"?

steady trail
#

Mostly clutter in the same mod.

#

Also removed as in moved to another mod.

#

THey're not completely gone.

west blaze
#

Oh?

#

Whats the new mod with em in

#

Also, what does the quantum command do exactly

#

it isnt made clear in game

#

and my friend just found it on like the mod page lol

steady trail
steady trail
#

You have configurable amount of charges which reset on whatever configured reset mode you want (Landing, Moon Routing or New Quota)

west blaze
#

Oh noice

west blaze
#

Also what mod is the one that already does extended days?

steady trail
#

Should be "Extend Deadline"

steady trail
#

LGU's README should have all the split off features listed at the bottom.

#

So unless I forgot one, there should be all there.

steel hollow
#

is Lethal Weight Fix compatible with LGU?

steady trail
#

At first glance, it should be.

#

As it only messes with the lower bound of possible player weight.

steel hollow
#

i see, thanks

steel hollow
#

for some reason better scanner still scans through walls even if the config is set not to

#

oh it scans everything through walls not just enemies

steel hollow
#

i just realized the level of the upgrade doesn't matter, happens on all levels

steady trail
#

Don't know how as there's an explicit check for the last level.

stone bramble
#

So does silver bullets work with modded guns? (I.e the rifle+revolver from piggy’s variety mod)

steady trail
#

They shouldn't, no.

#

As both don't have any link between them.

stone bramble
#

I see, thought I’d ask before I try to shoot the ghost with them

#

I’d assume hexis better shotgun mod doesn’t work either then

steady trail
#

I haven't checked but if it's using a different class for shotgun behaviour instead of altering the vanilla's, it shouldn't work.

stone bramble
#

I mean when I tried with it the ghost girl didn’t die, I didn’t know whether I missed or the mods weren’t incompatible, thanks for your help

steady trail
#

Rippy dippy.

quiet oasis
stone bramble
#

I see

coarse vessel
#

well, someone made a patch sleight of hand works on piggy variety guns

echo tree
lucid ibex
#

@steady trail There is a problem about the weight
When I buy the "Back Muscles" upgrade and sometimes interact with things like "Lethal Washing" or the SWRD-1 from "CodeRebirth" my weight goes up and doesn't go down until I re-enter the lobby or die
#1315122095738454056 message

#

I didn’t understand before why this could be, but I was able to role-play this situation and be convinced of it

#

0193cf6f-953d-20b7-228f-e753f2a050f9
Tested on this build

lucid ibex
#

They told me to disable the ItemGrab function in TestAccountFixes and then there will be no problems...

steady trail
#

Does it reproduce scenarios when dropping gives weight?

#

And it's only on some items and not all items?

steady trail
lucid ibex
#

For example, from the LilosScrapExtension mod, almost all items that interact with Lethal Washing

#

Well by the way

#

Sometimes things that are not heavy don’t always work, I myself don’t fully understand why this is so

steady trail
#

That seems like the items themselves aren't configured properly?

lucid ibex
#

Certainly

steady trail
#

Because to have weight when dropping, it means that the value is negative when picking up and positive when dropping.

#

Which would translate to having negative weight.

#

Only way for negative weight is either the item weight is already negative or back muscle makes it negative.

lucid ibex
#

😯

steady trail
#

For back muscle be negative, the multiplier configured would have to be negative.

lucid ibex
#

The problem remains, but now I can put away items that could not be placed in Lethal Washing :с

steel hollow
#

Does the maneater damage patch works if just the host has it?

#

for the clients

steady trail
#

I don't think so because the code is executed by all clients.

#

So you can end up having two clients seeing different things.

umbral bough
twilit hound
#

a set of upgrades to the radar booster would be nice. specifically, i had an idea for an upgrade that allows players to be able to hear walkie chatter from the boosters

steady trail
#

Like the booster having the receiver part?

west blaze
river dawn
#

another upgrade to make free in my modpack if it gets added...

gaunt fossil
#

That would be gamechanging on my solo files

#

Ok I haven't even seen this ingame so I have no idea how it would work, I'll check it out tomorrow before I start making suggestions about anything

steady trail
#

It's not a "fuck go back" command, no. Lol.

It decrements the current time of the moon by x hours.

#

It's not literally a loop back thing where everything goes back to where they came from, haha

warm nebula
#

When I collect items(whether it's scrap or item) I gain weight but when I drop it I don't lose weight

#

instead my weight accumulates

#

Even though I drop all the items my weight doesn't get back to 0

#

temporarily using teleportation or lethal hands(which makes you drop all the items) to get back to 0 lb

#

I guess this issue is occurring due to back muscle upgrade of lgu

steel hollow
mortal berry
#

Not quite that kind of time machine

dark rampart
#

My dudes what can I do?

  1. Is it possible to change how much upgrades an item can provide? For example progression mode Apparatice: "gives you an upgrade upon selling it".
  2. Reentering the lobby or restarting it makes all the upgrades discounts dissappear.
  3. Is maximum and minimum discounts value for upgrades configurable?
steady trail
iron glen
#

Thanks, appreciate it and all the work you people have done for this mod. I am glad to have it as my must-have one. ❀️ (Edge_2)

prime phoenix
#

yo, whats the fix for lgu not using any credits when buying upgrades?

steady trail
#

Something about HostFixes.

gritty basin
#

hello~ just gonna ask about a stack trace. dont know if something broke. when playing with my friends, stack trace appears with them joining.

#

we have no issue that session as far as I know.

steady trail
#

Checking this in mobile is so much pain

#

Especially without a search

#

Can you show the stack?

gritty basin
steady trail
#

Damn, how many items you got to fill the thing up, lol

gritty basin
#

we are playing to a save maybe thats why

steady trail
#

The error is when it's trying to get the item upgrade associations for Item Progression mode.

#

It seems to be too big to send over the network.

gritty basin
#

is there something should we do or not do?

steady trail
#

Should, uhhhh.

gritty basin
#

i remember we sell 15k+ worth of scraps

steady trail
#

The issue here is really how many items you have

#

Because it always does an association per item

#

I could find a better way which sends less data over.

#

Not now tgo

gritty basin
#

so uhh whats the error effect ?

steady trail
#

Uhh

#

I don't remember the order now.

#

But it's related to load upgrades aswell

#

So for the worst assume lgu stops working.

gritty basin
#

it still works in my case

#

maybe some upgrades didn't load. I cant tell

steady trail
#

I would have to see the code to know where it's executed.

west blaze
#

Hi whitespike. seems to be some sort of local client vs host bug with the tulip snake blood samples

First image is client-side (my friend)

Second image is my side

Third image is client-side (selling)

steady trail
#

Hmm

#

Seems like sync not syncing?

#

Either that or it's being override.

steady trail
#

Or the seed is different, actually.

#

I forgot the hunter values were based on seed which is set when the first ever sample spawns.

#

So if a sample spawns before somebody joins, that somebody will have a different seed.

night gull
#

Hello, I just came back to playing the game. I went ahead and bought an upgrade after our first quota but I noticed that it isn't decreasing our credits. Is this a known issue?

steady trail
#

Something something HostFixes.

west blaze
steady trail
#

Hmm

west blaze
#

First screenshot is the client boi

second is mine

We killed the baboon hawks same day

#

Something to do with the tulip dying on my head perhaps?

#

I know that sounds utterly daft

#

but we had midas touch enabled too

steady trail
#

Oh.

#

There's no way them despawning during day-night transition is only done by host.

west blaze
#

?

steady trail
#

When it hits night, they despawn.

west blaze
#

Context Whitespike, you forget i dont know the ins and outs of how ur hunter works lol

steady trail
#

Which is actually killing them but whatever.

#

I know.

#

They all use the same seed.

west blaze
#

Wait a minute

#

hold up

#

how does midas touch work

steady trail
#

Increases the scrap value.

west blaze
#

At what point?

steady trail
#

Of the vanilla scrap generation.

#

Only that.

west blaze
#

Oh

#

the only thing that has me suspicious is its always higher values it seems with the tulips

#

By quite a pretty penny too if you see

steady trail
#

The only thing doing explicit checks for tulip is when they fly away and "die".

#

I can only think of clients having different iteration counts.

#

Because all samples use the same logic.

west blaze
#

How does this explain a radical increase in mullah?

steady trail
#

I don't really care if it increases or decreases.

fervent dawn
steady trail
#

If it's different, then the syncing is not working.

west blaze
#

Agreed either way haha

fervent dawn
west blaze
#

at least its still a syncing issue

#

so doesnt actually effect in-game behaviour other than visual client side

steady trail
#

Host is the only one that cares about the item's scrap value, yes.

west blaze
#

Exactly, so whilst abug, at least it isnt game breaking as of this moment haha

#

still weird its only tulips specifically

#

want me to crack open my rider and have a looks with ya bud?

steady trail
#

I mean

west blaze
#

ive got a spare half hour haha

steady trail
#

The only difference between regular enemies and tulips is that tulips despawn when it hits night.

west blaze
#

Is the patch for the hunter mechanic in the main repo or in that side library of urs mate?

steady trail
#

Main.

west blaze
#

I have a feeling but will keep it zipped till ive gandered

#

I might be overthinking it, but the fact the only enemy this seems to happen to just so happens to be the enemy that you can self kill (hit with your shovel whilst its on your own head) doesnt seem like it can be a coincidence you know what I mean?

steady trail
#

Snare fleas.

#

So it's not a self kill edge case.

west blaze
#

Counter point: Maybe noones noticed as when was the last time you saw someone succesfully pick their shovel back up to kill a snare flea in a multiplayer game?

Most folk have a mate near by to wacka wacka

#

I could test it to find out?

west blaze
#

So the chances of someone then reporting is lower too

steady trail
#

Self kill uses the same mechanic as regular kill.

west blaze
#

ifygm

steady trail
#

Aka there's no special case for killing an enemy when its clinging on a player.

west blaze
#

I tell you what mate, for the sake of "we'd be dumb not to at least see" ill grab a mate and test a snare flea

steady trail
#

Oki

west blaze
#

Process of elimination innit?

#

In the meantime, how does the client syncy shenanigans work anywho?

#

Like whats the logic?

steady trail
#

For values?

west blaze
#

yeah

steady trail
#

I think just a Random initialized on the first ever spawn which then uses the min/max value defined to randomize between that range.

#

So long everyone uses the same seed and they do not see "ghost" items, they should see the same.

west blaze
#

hmmm... then why tulip snakes inparticular i wonder? Very goofy

#

Cause everything else worked peacy

#

peachy

#
    [HarmonyPatch(typeof(EnemyAI))]
    internal static class EnemyAIPatcher
    {
        static readonly LguLogger logger = new(nameof(EnemyAIPatcher));
        static ulong currentEnemy = 0;
        [HarmonyPostfix]
        [HarmonyPatch(nameof(EnemyAI.KillEnemy))]
        private static void SpawnSample(EnemyAI __instance, bool destroy)
        {
            if ((__instance is DoublewingAI || __instance is FlowerSnakeEnemy) && destroy) return;
            if (!(__instance.IsServer || __instance.IsHost)) return;

            if (currentEnemy == __instance.NetworkObject.NetworkObjectId) return;

            currentEnemy = __instance.NetworkObject.NetworkObjectId;
            string name = __instance.enemyType.enemyName;

            if (BaseUpgrade.GetActiveUpgrade(Hunter.UPGRADE_NAME) && Hunter.CanHarvest(name))
            {
                logger.LogDebug($"Spawning sample for {name}");
                ItemManager.Instance.SpawnSample(name.ToLower(), __instance.transform.position);
            }
        }```
#

That first if statement... isnt flower snake tulips?

steady trail
#

Yeah.

west blaze
#

So doesnt that just... skip the the spawning of samples if its a tulip? 0_o

steady trail
#

If the body disappears.

#

Thus the additional destroy check.

#

Because


    public IEnumerator flyAwayThenDespawn()
    {
        yield return new WaitForSeconds(4f);
        if (base.IsOwner)
        {
            KillEnemyOnOwnerClient(overrideDestroy: true);
        }
    }
west blaze
#

One final sanity check. If in some magical world the client does NOT have the spawn item happen, but the host does, woul something else force an item to get spawned by chance?

#

I.e. if your intended client syncing didnt happen, but the host still spawns an item,

steady trail
#

Syncing happens after the spawn.

#

So I don't know what you are referring to.

west blaze
#

Neither am I , still wrapping head through ur logic.

Basically I was thinking, if somehow the item didnt sync as intended client side, what would teh client hypotehtically see? No item? An item but handeld through the games base mechanics?

steady trail
#

So only the server would spawn the item.

#

So it's either:

  • Random seed is different
  • The range is different
  • Iteration counts of the random is different.
#

One of these is true to have that happen.

west blaze
#

Humour me just for a hot second mate, like even if you think im wrong. If spawn sample didnt return on the 2nd or 3rd if statements, what would happen?

#

How would that logic get resolved on that client that isnt host?

steady trail
#

Checks if current hunter spawns the item.
If yes, instantiate the game object then spawn the network object.
Start function sets values from random to the scrap value.

#

Since Start is done by all clients.

west blaze
#

Hmm... what just hit me (never has a more ironic statement been said as you are about to find out) .... is that I was the host and I killed the tullip via a self hit

#

could that of somehow in some wacky world bypassed the host check?

steady trail
#

I don't understand.

#

The host check is to be able to spawn the item.

#

As clients cannot.

west blaze
#

And my point is what happens if that check is bypassed and it spawns the item client side?

#

By some bullshit due to the host being the one to self it

steady trail
#

You would have an error saying the client cannot spawn network objects.

#

So you would have an item which only the client would see and nobody else.

west blaze
#

But could that somehow then prevent the syncing?

steady trail
#

If a client which isn't hosting magically is the server, yes.

#

But all bets are off if that ever happens.

#

Because that would translate a bad network implementation if it demonstrates clients being servers while they are not.

west blaze
#

Yeah not host relatyed

#

he killed on his head too just in a test

#

still the discrepancy

#

All other loot was fine

#

literally just tulips

#

His SS

#

I just find it utterly bizzare how it just seems to be this extreme increase without fail

#

Is midas touch a flat increase to value? Or in a range?

#
[Debug  :Matty's Fixes] Tulip Snake Sample(279) is computing vertical offset
[Debug  :Matty's Fixes] Tulip Snake Sample new offset is 0.2674206
[Debug  :Matty's Fixes] Tulip Snake Sample(279) position updated [(-70.03, -12.05, -16.64)] -> [(-70.03, -12.06, -16.64)]
[Debug  :Matty's Fixes] Tulip Snake Sample(280) position updated [(-68.82, -12.03, -17.14)] -> [(-68.82, -12.04, -17.14)]```

His logs


```[Debug  :More Ship Upgrades] [Hunter] Tulip Snake can be harvested at level 2
[Debug  :More Ship Upgrades] [EnemyAIPatcher] Spawning sample for Tulip Snake
[Info   : Unity Log] Kill enemy server rpc called with destroy False
[Info   : Unity Log] Kill enemy client rpc called; False
[Debug  :Matty's Fixes] Tulip Snake Sample(280) needs to compute vertical offset - scheduled
[Debug  :Matty's Fixes] Tulip Snake Sample(280) will need to update the position - enqueued
[Info   : Unity Log] clip index: 4; current planet: 20 Adamance
[Info   : Unity Log] Current outside ambience clips length: 5
[Debug  :LobbyControl] Attempted Grab for jorrdann, slot 2, max 6
[Info   :LobbyControl] Grab validated for jorrdann!
[Debug  :LobbyControl] Attempted Grab for ChroniclerDelta, slot 1, max 6
[Info   :LobbyControl] Grab validated for ChroniclerDelta!
[Info   : Unity Log] playerHeldBy on grabbed object: Player (1) (GameNetcodeStuff.PlayerControllerB)
[Debug  :LobbyControl] Attempted Grab for ChroniclerDelta, slot 1, max 6
[Info   :LobbyControl] Grab validated for ChroniclerDelta!
[Info   : Unity Log] playerHeldBy on grabbed object: Player (1) (GameNetcodeStuff.PlayerControllerB)
[Debug  :LobbyControl] Attempted Grab for ChroniclerDelta, slot 1, max 6
[Info   :LobbyControl] Grab validated for ChroniclerDelta!
[Info   : Unity Log] playerHeldBy on grabbed object: Player (1) (GameNetcodeStuff.PlayerControllerB)
[Debug  :Matty's Fixes] Tulip Snake Sample(279) is computing vertical offset
[Debug  :Matty's Fixes] Tulip Snake Sample new offset is 0.2674206
[Debug  :Matty's Fixes] Tulip Snake Sample(279) position updated [(-70.03, -12.05, -16.64)] -> [(-70.03, -12.06, -16.64)]
[Debug  :Matty's Fixes] Tulip Snake Sample(280) position updated [(-68.82, -12.03, -17.14)] -> [(-68.82, -12.04, -17.14)]```

My logs for the same item
steady trail
west blaze
#

No worries

#

less bug related and more qol btw. Due to Lethal upgrades leading to much later runs, and a lot more kit , id like to propose a buyable 2nd cabinet.

steady trail
west blaze
dusty lily
#

I have two questions: 1. Can you use both buyable upgrades and scrap item based upgrades at the same time, or is it either or?

#

2: Can you use more than one item based upgrade path at the same time (ie set the config to Apparatice,ChancePerScrap and both of those ways will be active?)

#

Actually one more question: Can I make the item bassed upgrade path active on a save that was already started without it active? I tried, but it didn't seem to work (though I now realize it could be because only the host updated the config file and not the others)

steady trail
#
  1. Can you use both buyable upgrades and scrap item based upgrades at the same time, or is it either or?
    You can use both.

2: Can you use more than one item based upgrade path at the same time (ie set the config to Apparatice,ChancePerScrap and both of those ways will be active?)
Right now, no. You can only pick one of them to be active. You can make a suggestion of this in the github discussion so I don't forget to add in next release if you really wish to.

Can I make the item bassed upgrade path active on a save that was already started without it active? I tried, but it didn't seem to work (though I now realize it could be because only the host updated the config file and not the others)
It should let you. Item Progression initialization is always done regardless of configuration to ensure such case.

steady trail
#

This is gonna be really painful to do..

steady trail
#

At least makes this somewhat cleaner.

west blaze
#

What u up to?

steady trail
west blaze
#

I think this might be worth I implementing a factory / builder combo. Once.ive done my current project (just got a home server set up ^_^) I could have a look if u like bud?

steady trail
#

After I'm done changing all the upgrades, sure.

steady trail
#

Been messing with config, basically reworking it. No promises that something won't break and/or show strange behaviour.

west blaze
#

Gah fuck! Surprise tag

#

Guess it's back to the coding mines

#

I'll have a peek in a bit, just got up. My Christmas eve treat

steady trail
#

Don't think I will be celebrating this year's.

#

It still doesn't have all the upgrades btw.

west blaze
#

Well I have no family at all so I won't be celebrating Christmas itself either. I win whitespike! I win 🀣

steady trail
#

Like night vision is gonna be way too big, waa.

west blaze
#

On review I have one suggestion that might be a very big W?

Why not have an IBindable interface that then you can use on classes that represent certain upgrades?

public interface IBindable
{
    void Bind(IConfigProvider cfg);
}

E.g: You could have an abstract impl of IBindable called BaseBindableRandomizedUpgradeEntry that's bind method is one with the top section being LguConstants.RANDOMIZE_UPGRADES_SECTION and each child of the abstract class would have the values hard coded in already?

public abstract class BaseBindableRandomizedUpgradeEntry<T> : IBindable
{
    protected readonly string Section = LguConstants.RANDOMIZE_UPGRADES_SECTION;

    public SyncedEntry<T> Entry { get; private set; }

    public void Bind(IConfigProvider cfg, string key, T defaultValue, string description)
    {
        Entry = cfg.BindSyncedEntry(Section, key, defaultValue, description);
    }
}

This would then allow you to add every single IBindable to one list and just do a for-loop bind at the end? Or if you wanna be less spicy, do the loop for each section of upgrades.

public class RandomizeUpgradesEnabled : BaseBindableRandomizedUpgradeEntry<bool>
{
    public override void Bind(IConfigProvider cfg)
    {
        Entry = cfg.BindSyncedEntry(Section, 
                                    LguConstants.RANDOMIZE_UPGRADES_ENABLED_KEY, 
                                    LguConstants.RANDOMIZE_UPGRADES_ENABLED_DEFAULT, 
                                    LguConstants.RANDOMIZE_UPGRADES_ENABLED_DESCRIPTION);
    }
}

public class RandomizeUpgradesAmount : BaseBindableRandomizedUpgradeEntry<int>
{
    public override void Bind(IConfigProvider cfg)
    {
        Entry = cfg.BindSyncedEntry(Section, 
                                    LguConstants.RANDOMIZE_UPGRADES_AMOUNT_KEY, 
                                    LguConstants.RANDOMIZE_UPGRADES_AMOUNT_DEFAULT, 
                                    LguConstants.RANDOMIZE_UPGRADES_AMOUNT_DESCRIPTION);
    }
}
#region Randomize Upgrades

var upgrades = new List<IBindable>
{
    new RandomizeUpgradesEnabled(),
    new RandomizeUpgradesAmount(),
    new RandomizeUpgradesAlwaysShowPurchased(),
    new RandomizeUpgradesChangeEvent()
};

foreach (var upgrade in upgrades)
{
    upgrade.Bind(cfg);
}

#endregion
#

Should tidy up that main config logic class right quick

steady trail
#

Right now, I was more concerned of each upgrade.

#

Because a upgrade suggestion is more likely than a modification.

#

But yes, I could have done the same thing I did with others like contract, item progression, etc.

west blaze
#

I think maybe a simmilar approach of the mbeing bindable, and each upgrade gets its own dedicated .cs

#

so at least it doesnt clutter up the main config file

steady trail
#

Because from what I am seeing, I will be replacing each BindSyncedEntry with a item in a list.

#

Which realistictly it's the same.

west blaze
#

Well in an ideal world what do would you want? If you could magically click ur fingers like?

steady trail
#

Whenever I make a new upgrade, I don't have to repeat the same base stuff present in all other upgrades.
As I don't have to define a new enabled, item progression items list, individual (if used), etc.

west blaze
#

Sounds like you need a registration process instead.

Like Dictionary<Class<T> , SyncedEntry<bool>> where T is an upgrade.

And then have some sort of logic to check if the upgrade's enabled via checking that dictionary?

#

And then have those dictionaries all be registered to (the enabled dictionary, etc ) when an upgrade is made

steady trail
#

I do not want to alter the config process.

#

I feel like we're not in the same boat.

west blaze
#

I get what you want bro, honestly to god. But what you want, within the confines of what you have, doesn't seem possible to me imho :S

steady trail
#

Ehh?

#

But I just did?

#

I'm confused now.

west blaze
#

So am I xD

#

Maybe i am misunderstanding

#

Its xmas eve so im gonna walk away with tail between legs and leave it at that xD

acoustic roost
#

Anyone having issues with ButteryFixes is preventing the Landing Thruster upgrade from working?

raven juniper
#

Hi, which version of the mod is supossed for V56?

steady trail
#

Prolly 3.10.4

raven juniper
lucid ibex
#

@steady trail when lifting the cart while loading the map

#

the ship hangs in the air and loading stops

#

If you don't take it, then everything is fine

#

or is it just a coincidence

#

Well, this is when the second player holds the cart, and the host, for example, launches it, then the ship freezes

steady trail
#

I'm only finding error when they connect to the game. Besides that, nothing else.

lucid ibex
#

Everything is fine, the culprit has been found

#

This is a player with an extra mod that was broken by out of sync

cold vigil
#

Does the contract command select from moons only present in current constellation when running LethalConstellations?

steady trail
#

Don't know, it doesn't have an explicit check for it.

mystic pivot
#

so whenever i launch the modded game and click online or lan it crashes my game

#

when i disable the fixtypepluginserialization it doesnt crash it but doesnt let my friends join my lobby

#

they get a weird black screen with smoke in the bottom left and all they see is the gui

#

idk if this is a bug with lgu or smth else

steady trail
#

Without logs, it's hard to conclude anything.

mystic pivot
#

ok 1 sec

#

uh

#

how do i send the thing

steady trail
#

The LogOutput.log file?

mystic pivot
#

yea

steady trail
#

Usually copy paste into here works

#

You can also use the add button next to the chat prompt to manually select it.

mystic pivot
steady trail
#

What game version are you playing at?

mystic pivot
#

v69

steady trail
#

Then I don't know why it's saying it can't find the butler enemy.

#

Only reason for that is you're playing a version before it was introduced.

mystic pivot
#

weird

#

is one of my mods doing that maybe

#

BepInEx-BepInExPack-5.4.2100
sunnobunno-YippeeMod-1.2.4
2018-LC_API-3.4.5 (disabled)
x753-More_Suits-1.4.5
OrtonLongGaming-FreddyBracken-1.0.6
Rune580-LethalCompany_InputUtils-0.7.7
KlutzyBubbles-BetterEmotes-1.5.4 (disabled)
Steven-Custom_Boombox_Music-1.4.0 (disabled)
femboytv-LethalPosters-1.2.3
Amlinde-WhistleJester-1.0.1
NotAtomicBomb-TerminalApi-1.5.5
Evaisa-HookGenPatcher-0.0.5
Evaisa-LethalLib-0.16.2
TheBeeTeam-PersistentPurchases-1.2.0
raydenoir-SCP173CoilheadSFX-1.3.1
SoulWithMae-CompanyExecutive-3.0.1 (disabled)
Ozone-Runtime_Netcode_Patcher-0.2.5 (deprecated)
notnotnotswipez-MoreCompany-1.11.0
FlipMods-ReservedItemSlotCore-2.0.39
FlipMods-ReservedFlashlightSlot-2.0.8
FlipMods-ReservedWalkieSlot-2.0.6
CapyCat-Solos_Bodycams-1.0.5
RugbugRedfern-Skinwalkers-5.0.0
DrFeederino-LC_API_V50-3.4.11
loaforc-FacilityMeltdown-2.6.20
rytix-DeeperMeltdown-1.0.4
TrippyTree-PizzaProbability-1.2.2 (disabled)
BGN-PizzaTowerEscapeMusic-2.4.0 (disabled)
dacodingtrashcan-DoorsFloor2Escape-1.1.1 (disabled)
JacobG5-ReservedJsonSlots-1.0.1
Squid-ReservedBeltBagSlot-1.0.3 (disabled)
FlipMods-ReservedWeaponSlot-1.1.5
ControlCompany-ControlCompanyFilter-1.0.0
ControlCompany-ControlCompany-1.3.2
Nicole-OBS_Sync-1.0.0 (disabled)
no00ob-LCSoundTool-1.5.1
Clementinise-CustomSounds-2.3.2
Shamburg-SpongebobSporeLizard-1.1.1
Ozone-BepInUtils-1.2.1
Ozone-Glow_Steps-1.1.2
ModdingNoob-ItemsForQuota-1.3.3
thomas-AlwaysShowClock-1.0.0
MaxWasUnavailable-LethalModDataLib-1.2.2
Evaisa-FixPluginTypesSerialization-1.1.1
IAmBatby-LethalLevelLoader-1.3.13
DuskWise-WiseWilderness-1.1.2
LethalCompanyModding-VertexLibrary-1.1.0
LethalCompanyModding-RuntimeIcons-0.3.0
WhiteSpike-Interactive_Terminal_API-1.2.0
Sigurd-CSync-5.0.1
malco-Lategame_Upgrades-3.11.0
299792458-MoreMoneyStart-3.0.1
Plotection-MoneyForKills-1.4.0

steady trail
#

No, a mod can't modify the game's assembly file.

mystic pivot
#

i see

steady trail
#

But I guess you can try removing LC_API

#

It's already known to be broken.

mystic pivot
#

didnt fix it but ill keep it off

neon grove
#

how come item progression mode does nothing for me?

#

im still able to purchase upgrades wtih credits, and selling an apparatus does nothing

#

is there anything wrong here or could it be a mod conflict

steady trail
#

Without logs, I don't know.

neon grove
steady trail
#

Nothing was touched with item progression mode for a long while so yeah.

neon grove
#

but now i think its a mod conflict

#

would it help to send a mod list too?

#

log file

#

#help-and-troubleshooting message

strange violet
little onyx
#

Hi guys! In my game, when I buy something in LGU, my credits are not spending. That is, if I do not have enough credits to buy - I can not buy the item. But if I have enough money, then I buy an upgrade and the number of my credits does not change. How can this be fixed?

steady trail
#

Something something HostFixes.

steady trail
steady trail
# neon grove

I could not find issues so it could be something altering the selling scrap logic which ignores all mods' patches.

cold vigil
# steady trail It does the locked check so it should be fine then.

Alright so I did some tests and got a few results:

  • It does pick the moons only out of the current constellation
  • Random Contract on free moons only doesn't respect modded moons which were given a free price via LC. You have to set prices for it manually in LLL. Vanilla moons set via LC work correctly
steady trail
#

Then they don't have a route keyword.

#

Because otherwise I would have found the free price.

cold vigil
#

Previously I tried to generate contracts in a constellation and the command would continously try to pick either rend or dine
I'll test some more

cold vigil
#

Ok so

#

Nevermind the LLL argument

#

It can only pick from vanilla moons for some godamn reason

#

Trying to launch a contract from a constellation with no vanilla moons straight up crashes the game

#

Liquidation is here too for some reason???

#

(keep in mind I made all of these moons free except StarlancerZero)

#

Something silly is clearly going on

steady trail
#

That's probably because it only applies the actual price tag when it matters.

cold vigil
#

You mean it checks for the "paid" tag?

steady trail
#

It checks for whatever tag it has stored.

#

However if you change the routing to only care about the values you use, then the ones stored are useless.

cold vigil
#

and there is no way I can change the stored tags is there...?

steady trail
#

User-wise, I don't know

#

It depends on the mod that allows you to change that.

#

I only know that LLL creates the routing the same way as vanilla intends.

#

Nice.

cold vigil
#

LLL doesn't really allow me to change moon tags via the config unfortunately...
Neither does LC...

#

I have no idea why changing the price to 0 didn't remove the paid tag, assuming it's even supposed to do that.

steady trail
#

When I meant "price tag", I meant its cost.

#

You seem focused on tags so I just wanted to make that clear.

cold vigil
#

Oh. Then that's double weird because the moons were actually 0 credits

#

In both LLL and in LC

#

Summit for example

steady trail
#

I don't know then.

#

It has explicit check for free cost.

#

If the node I am getting is in fact not the one being used for the actual routing.

#

This will never work, yes.

cold vigil
#

Alright. There's one more mod that could be acting up with prices, That being LethalQuantities

#

I'll set them to 0 there and come back with the results

neon grove
#

because i can

steady trail
#

See, yes.
Purchase, no.

#

I think?

neon grove
#

i recall being able to purchase them as well

#

its as if nothing under the "item progression mode" tab works