#archived-modding-development

1 messages · Page 512 of 1

copper nacelle
#

like software or

fair rampart
#

Well lets juat say i wanna make a mod. Do you know where a can make one or is it even possible?

jolly oriole
fair rampart
#

Juat from that link?

cedar hemlock
#

yes

#

you code

#

in c#

fair rampart
#

Noise. Thats the only coding language i know

#

:)

steady comet
#

What is the difference?

copper nacelle
#

GetBool goes through the modhook

steady comet
#

Oh I see

steady comet
#

Another question - suppose there are multiple mods that hook GetPlayerBoolHook (orwhatever it's called) with functions like

if (boolName == ...) return ...
else if (boolName == ...) return ...
else return pd.GetBoolInternal(boolName);

how does this work? Surely if one returns GetBoolInternal(boolName) then the other one has no chance to override the output value?

jolly oriole
#

if the hook returns the same value as an internally called GetBoolInternal it continues to go over the rest of the hooks

copper nacelle
#

yeah

#

i think that's a bit scuffed honestly tbh

#

could have like trygetvalue kinda beat

jolly oriole
#

more changes for the 1.5 mapi shroompog

copper nacelle
#

that might be a bit much

#

i am only mostly breaking every mod

steady comet
#

So that means there's no way to say "I want this to return false, even if the playerdata says false but another mod wants it to be true"?

copper nacelle
#

correct

#

that's why i think it's a bit scuffed

#

i mean there is

#

you override the override with a monomod hook

steady comet
#

That sounds spooky

jolly oriole
#

wait nvm

#

read that wrong

#

make it more if it improves the overall quality

copper nacelle
#

ig

#

i mean updating is relatively simple rn

#

it's just rebuild, don't have been using deprecated stuff

#

as far as the modding api changes go

steady comet
#

Side question is there a list of what the deprecated stuff is?

copper nacelle
#

if your ide yells at you it is deprecated

jolly oriole
#

wait a sec

stone elm
#

The visual studio error list

jolly oriole
#

what determines which hook to use if multiple ones change the same bool

steady comet
#

Oh i see, there's nothing that's secretly deprecated or something?

copper nacelle
#

I guess BoolValues/StringValues/IntValues on settings aren't explicitly deprecated rn

steady comet
copper nacelle
#

and i yeeted some unused hooks

#

doubt you'll use them anyways

#

I mean yeah if you change it for a bool you can't exactly be different in a two-state system

#

But for ints I think it's load-order

#

idr if it's first is best or last is best

stone elm
#

Unrelated: I'm really new tot he FSM stuff, I get the gist of it I just haven't messed with it yet, and I'm hoping someone knows this before I have to really dig-in and debug. This is pertaining to rando mod, so maybe Flib you can help me out. I've hit a point where, in my tinkering, I broke shinies. Ex: The knight hits the chest and shiny pops out. You go to pick it up and the knight crouches down and just never gets back up. (And input is blocked and you get soft-locked.)

steady comet
#

What did you do to the FSM?

stone elm
#

Actually nothing. That's the stupid part. I edited no FSMs or RandomizerActions.

steady comet
#

Oh huh

#

What did you change?

stone elm
#

I'm at work, but maybe tonight I could petition you to help me debug it?

steady comet
#

I can't guarantee I'll be awake but I'm happy to try to help at least

copper nacelle
#

i swear that exact thing has happened before

stone elm
#

Basically I was trying to get the RandomizerActions to apply but not actually randomize anything. So I've been doing a lot of jury-rigging to trick the mod into thinking everything is rando when the items are actually in vanilla.

copper nacelle
#

it was something with a canvas nre

steady comet
stone elm
#

Does it spit out a RandoResult that's 'vanilla'?

steady comet
#

IIRC the unrandoitems contains items it's supposed to do all the fsm actions on but treat it as an item that's been randomized to its own location

#

(With the caveat that it's excluded from the spoiler log)

stone elm
#

Eh, spoiler log schmoiler log

steady comet
#

It's for if, say, you don't randomize dreamers, then it'll put a shiny at the top of Watcher's Spire that gives you Lurien when you pick it up (with the YN dream nail cost)

stone elm
#

Oh, okay, I'll try using that instead of the awful terribad jury rigging I've been doing.

jolly oriole
stone elm
#

I'd expect an NRE to pop up in a log somewhere but I didn't see any.

#

I don't see output_log.txt anywhere from Unity... It's supposed to be in the save games location right? Or was it a mod that put it there?

vocal spire
#

Yes, it should be in the saves

cedar hemlock
#

i mean for me its there

copper nacelle
#

unless you're on 1.5 yeah

stone elm
#

I found a file called Player.log with the same contents

copper nacelle
#

Player.log, same folder

stone elm
#

Thanks

copper nacelle
#

Yeah

stone elm
#

IDK how much of this is 'expected' output garbage, but yeah:

jolly oriole
#

the way i solved it: preload one of those and instantiate it in the scene you want to use it in

stone elm
#

Thanks! Although I'm confused as to why it wouldn't have been in the scene to begin with. It's not like the scene should normally lack that component, right? I'm talking about Tutorial_01 (King's Pass).

jolly oriole
#

hm, in theory it should work there

#

as the fotf charm is also there

copper nacelle
#

nah it isn't

#

not if you delete it

stone elm
#

It's what I've been testing with haha

copper nacelle
#

does rando not replace the shiny

stone elm
#

It does. It doesn't seem to be executing the actions it should be upon pickup, though.

#

I'll dive into it deeper this afternoon since it's probably something I messed up anyway. My messing around is definitely outside the norms of what the rando expects.

unborn flicker
stone elm
unborn flicker
#

Well, you can certainly add logs to null-check each object. Depending on which one, they may need to go within the methods called from the fsm, or as separate fsm actions.

#

It can depend a lot on which item you are making as well. On randomizer, the BigItemPopup is especially fragile.

stone elm
unborn flicker
#

Well, a first step might be to add logs at the start of each state visited in the shiny fsm, to pinpoint where the crash occurs. Keep in mind that the RandomizerAction will almost never crash, since it is just editing the fsm when the scene loads; the code doesn't run until the fsm moves after interacting with the shiny.

stone elm
#

Yes, I figured that the RandomizerAction itself isn't problematic.

a first step might be to add logs at the start of each state visited in the shiny fsm
This part is the part that's over my head. I don't want to sit here and ask for hand-holding but if there's a mod or reference I can look at, that'd be a great pointer. I know the modding api docs have a section on this and I plan to go through it, so just give me a shroompog reaction if that's all I should check out.

unborn flicker
#

I just meant something simple like this (changes are at the bottom)

#

I'm not sure that the api docs will be especially helpful, but maybe they can help clear some things up?

steady comet
stone elm
#

Thanks, both of you. Very helpful!

jolly oriole
hasty fractal
#

Why I have these red line? Someone can help me.

#

This is the second time that I have made a skin and it is the first time that this has happened to me.

proven cipher
#

Did you repackage the sprites with Sprite Packer?

#

Looks like you were set to the wrong settings at the bottom.

#

There's a "choose version" and I think the options are 1.3 and 1.4

#

You can see that you have way more problems here than just the red outlines.

hasty fractal
#

You can explain me in private message please? This is will be easer for me.

proven cipher
#

I've not used the Sprite Packer in a while and no longer have it downloaded so I'm not going to be able to be much help, but just try using the other setting in the drop menu at the bottom.

hasty fractal
#

Ok. Thank you.

#

I will try.

hasty fractal
#

Problem resolved.😉

frozen crystal
#

Do i need to have Hollow Knight installed for using the API?

jolly oriole
#

yes?

pure nova
#

How else would you use it?

frozen crystal
copper nacelle
#

I mean you're not going to be able to test anything but you should just need the references

light zodiac
#

Coding mods and having them work first try

jolly oriole
#

magic

frozen crystal
#

Needing to test sucks, i am without a Video Card and don't want to risk my game

pure nova
#

Make backups then.

#

You also don't need a video card to record or test for that matter.

languid goblet
#

nah, you write the code and assume it works
you just never test it to find out if it actually works gorbbrain

frozen crystal
copper nacelle
#

wtf do you mean risk your game

pure nova
#

I assume he means save files.

languid goblet
#

what does a video card have to do with it though?

copper nacelle
#

they call me copy paste

frozen crystal
pure nova
#

You don't even need to record though.

copper nacelle
#

have you tried 1.5

#

might be a bit better performance wise

frozen crystal
#

How do i backup? zote

copper nacelle
#

save files or

#

you just copy paste them somewhere

languid goblet
#

is there even a 1.5 modding api?

copper nacelle
#

yeah

frozen crystal
languid goblet
#

is it compatible with all 1.4 mods?

jolly oriole
languid goblet
#

sad

#

but to be expected

pure nova
#

?saves

finite forumBOT
#

Saves


Windows File Paths: (Assumes Default Steam Install Path, Adjust accordingly for DRM Free or Non-Standard Steam Path)

Game Files: C:\Program Files (x86)\Steam\steamapps\common\Hollow Knight\```
** **
Mac File Paths:
```Save Files: ~/Library/Application Support/unity.Team Cherry.Hollow Knight/
Game Files: ~/Library/Application Support/Steam/steamapps/common/Hollow Knight/hollow_knight.app/```
** **
Linux File Paths:
```Save Files: ~/.config/unity3d/Team Cherry/Hollow Knight/
Game Files: ~/.local/share/Steam/steamapps/common/Hollow Knight/```
jolly oriole
#

but in most cases only a change of references is needed

frozen crystal
copper nacelle
#

and the changes of 1.5 itself

#

playmaker x5fiftAleph

jolly oriole
#

i mean, playmaker itself didn't change much, only transitions

#

but tc simultaneously also changed some event names

copper nacelle
#

oh did they

#

interesting

jolly oriole
#

convo_finish for example

copper nacelle
#

The transition stuff is relatively large depending on how much you do

jolly oriole
#

idk what before/after is

#

transition stuff is only necessary to move adding/changing transitions to after making states

copper nacelle
#

like you could create transitions to non existent states and then add them

#

yeah

#

bit of a pain

jolly oriole
#

but i mean, basic variable using is exactly the same

#

first make var, then use it

copper nacelle
#

yeah

frozen crystal
#

Okay so the file i want to keep is my second file

copper nacelle
#

oh yeah and hooking any coroutine type beat

#

like ilhooking

#

nested type names changed

#

Expectedly

#

just copy paste the whole folder bro

frozen crystal
copper nacelle
#

sure

#

I'd just copy the entire folder from the containing folder but that works

frozen crystal
#

Okay saved it in my images folder.

#

Now what do i do?

copper nacelle
#

that is all you have backed up your saves

frozen crystal
#

Okay, now i just install the API?

copper nacelle
#

yeah

frozen crystal
#

That one?

copper nacelle
#

I mean yes but why are you there

#

use the installer

frozen crystal
#

Wait the installer allows modding?

copper nacelle
frozen crystal
frozen crystal
#

Okay so i can use the installer to make mods

#

Now lemme see where is the installer

copper nacelle
#

no you can use the installer to install things

#

such as

#

the api

frozen crystal
#

Oh lmao

#

The ModInstaller?

copper nacelle
#

probably

frozen crystal
#

The Zote one?

copper nacelle
#

if you'd like

#

I prefer omegamaggotprime

frozen crystal
copper nacelle
#

basically

frozen crystal
#

How do i put the installation path?

copper nacelle
#

what

#

first of all which one

frozen crystal
#

Did it

#

How do i get the API from the installer?

copper nacelle
#

is it the zote one

frozen crystal
copper nacelle
#

ok then you are done

frozen crystal
#

What does that mean?

copper nacelle
#

it means that the api is installed

mossy eagle
#

can i post a screenshot of a wip of a custom knight skin im making?

#

im kinda doing it in a weird way but i want some feedback

copper nacelle
#

sure

mossy eagle
#

ok one sec

#

ive just been trying to get the outlines for the bodys done

#

sry for low quality screenshot

mossy eagle
#

any advice?

languid goblet
#

looks good

#

but i'd suggest using godump and spritepacker

#

it's far easier

mossy eagle
#

?

#

ive just been drawing my charecter over the sprite sheet

marble hollow
#

spritepacker is an application that makes it easier

mossy eagle
#

Oh ok

#

What's godump then

#

Actually I should ask in modding help

hasty fractal
mossy eagle
#

wo nice

#

||is that what spritepacker is?||

knotty monolith
#

yeah

#

and that is a nice sprite being packed

floral blade
#

my creation is alive!

@vocal spire this is where that right stick control went !
right stick to emote hollowflower

rough pulsar
#

ok which key to press

#

which one of these keys do i press

jolly jungle
rough pulsar
#

ok i'm sure that keyboard will be able to do emotes too

#

i love the creative idea

floral blade
jolly oriole
#

conflicts with PressGToDab smhmyheads

light zodiac
#

Is it changeable?

floral blade
light zodiac
#

Also might conflict with people that use blue.exe to use mouse

deep wave
#

blue.exe goes to m1 h, m2 k i believe

light zodiac
#

Wasn't it h and t

deep wave
#

so definite conflicts. recommend adding globalsettings for it like immediately

#

h and t also sounds right 🥴

#

yeah h and t

floral blade
granite kestrel
#

Hi every god developers

#

I am not a programmer but I want to be one

#

So can anyone give me some advice?

cedar hemlock
granite kestrel
#

Should I write the code in Visual Studio?

#

Or can I use any IDE I like?

cedar hemlock
#

yes

#

c#

#

net 3.5

granite kestrel
#

VS?

cedar hemlock
#

yes

granite kestrel
#

Hmmm

#

Is it possible to make a mod that adds a new mode when starting a new game?

cedar hemlock
#

(almost) anything is possible

granite kestrel
#

Did anyone ever do this before?

#

I would like to get an example if I can

cedar hemlock
#

afaik not

granite kestrel
#

So I am doing it from scratch... It may take me a lot of time but thank you for helping

cedar hemlock
#

maybe SFG or Someone wants to help you

jolly oriole
#

idk how difficult adding a new play mode is, but in theory it should be nothing more than a new selectable thing when creating a new game and a bool setting in save settings to save if that new mode was selected

light zodiac
#

If you want you can use the steel soul mode to play your game mode

#

To make it easier

granite kestrel
#

Sorry but I never use VS before and how should I download .NET 3.5?

cedar hemlock
#

get a .net class library

#

the option should be there

#

and watch the "Bad modding tutorial"

granite kestrel
#

Okay

light zodiac
granite kestrel
#

Thx

#

I should create a C# All Platforms and All Project types project right?

cedar hemlock
#

no

#

class library

#

oh nvm

rough pulsar
#

make a funny class library in .net framework 3.5, then add CSharp-Assembly.dll or whatever it was called from the hollow_knight_Data\Managed folder

cedar hemlock
#

its the other way around

#

Assembly-Csharp.dll

rough pulsar
#

oh

#

ok

cedar hemlock
#

lol

granite kestrel
#

I will wait a long time for my 50KB/s network to download the .NET framework lol

rough pulsar
#

you're installing both SDK and runtime

#

i think runtime is included in SDK

rough pulsar
granite kestrel
#

Not the casual one but yes for now

rough pulsar
#

install the 3.5 one too

#

i hope you have done that

granite kestrel
#

I can't see it

rough pulsar
#

nvm

#

just hope the vs2019 installs with it

granite kestrel
#

I cannot see any option for installing .NET 3.5

light zodiac
#

in VS?

rough pulsar
#

is it installing rn?

#

are you using V.S.Installer

granite kestrel
#

Yes I am using VS Installer

light zodiac
#

in workloads click on .NET desktop dev

granite kestrel
#

It is already downloading

light zodiac
granite kestrel
#

Nvm I will wait for it to complete

#

I will try it out later

cedar hemlock
#

SFG is that a magnet?

jolly oriole
#

according to wikipedia, it's a broad collar

cedar hemlock
#

amazing

granite kestrel
#

Can I use JetBrain Rider to be VS alternative?

cedar hemlock
#

ye

#

watch the "bad modding tutorial"

#

in the docs

steady comet
#

Why is this FSM state orange?

vocal spire
#

You can color them

#

Tc is inconsistent

#

Few fsms are colored

steady comet
#

So TC just randomly decided to colour that state?

vocal spire
#

Yes

#

Nothing special

#

Just tc being inconsistent

steady comet
#

Huh

#

Thanks

vocal spire
#

Np

cedar hemlock
#

tc being funny

stone elm
#

Yeah, it goes "big get flash" then "GODFINDER" then "hero up", clearly

#

Get that emphasis in

vocal spire
#

||GODFINDER||

cedar hemlock
rough raft
#

right, i've seen that one. is there anything else? is there a top level google drive folder maybe?

cedar hemlock
#

thats all

rough raft
#

so far i've found the drive folder with all of the mods and some "random" ones with skins

cedar hemlock
#

further you can look at other mods on github

rough raft
#

hm i guess so

vocal spire
#

My CoDe Is ThE bEsT cOdE

rough raft
#

is the modinstaller that's hosted on radiance the same as the one that's in the pins?

vocal spire
#

Yes

#

That’s the link to the one on radiance

cedar hemlock
#

its the same link

vocal spire
#

Unless you mean mod installer 2

cedar hemlock
#

modinstaller 2 is mainly for mac

rough raft
#

i don't mean the link in the pins, but the file that's been uploaded to discord

vocal spire
#

Yeah

cedar hemlock
#

but i use it bc dark mode

rough raft
#

mhm

#

i'm on linux, so that's why i'm asking. the radiance link is an exe from what i've seen

cedar hemlock
#

use the one in pins for linux

vocal spire
#

Ah

#

Yeah

rough raft
#

right, ok. just wanted to make sure it's not out of date or something

cedar hemlock
#

in help

cedar hemlock
rough raft
#

OoF

#

so there are 2 versions of modinstaller? the one hosted on radiance and all of the ones uploaded to discord are all v2?

cedar hemlock
#

v2 is different from 1

rough raft
#

i see that the exe on discord is called ModInstaller2.exe, but the versions for linux and mac don't have the 2

vocal spire
#

It’s fine

cedar hemlock
#

2 is for mac/linux with a win version

#

1 is better for win

rough raft
#

because?

light zodiac
#

56

rough raft
#

LOL

cedar hemlock
#

it's just better for win

rough raft
#

yeah, but i'm wondering why? do the two just have very different interfaces or what?

#

i would assume that v2 would be an upgrade, and not just a linux/mac version

#

the naming is a little confusing

copper nacelle
#

2 is a rewrite in avalonia

cedar hemlock
#

1 is specificly made for win 2 is for multiple

vocal spire
rough raft
cedar hemlock
#

so if they get the same attention then 1 will be better then 2

copper nacelle
#

captual

#

winforms is ugly as fuck

rough raft
#

it's confusing that the filenames are "ModInstaller2.exe" and "ModInstaller.zip", even though both are v2 :^)

light zodiac
#

i mean there isn't a 1 for mac/linux so the modinstaller 2 takes the place as modinstaller 1

copper nacelle
#

i mean

#

you can run the old one through mono

rough raft
#

right, you could

copper nacelle
#

it just looks like windows 95 with screen tearing like that solitaire animation

light zodiac
#

name 1 person that has done that

copper nacelle
#

idr people names but people did

rough raft
copper nacelle
#

i mean

#

it's an entire rewrite

rough raft
#

exactly, so it would make sense for the filenames to be consistent and say ModInstaller2

copper nacelle
#

but that's effort

rough raft
#

LOL

#

hmm also, one thing that i couldn't find anywhere by googling

#

where the heck are archievements stored?

vocal spire
#

stop arguing with 56, it’s bound to fail

rough raft
#

they seem to be independent of the save files

copper nacelle
#

which os

rough raft
#

linux, gog version

#

(and not using the gog launcher)

copper nacelle
#

~/.config/unity3d/Team Cherry/Hollow Knight probably

#

I think it was under PlayerPrefs so that should be right at least

rough raft
#

let me double check, because i'm pretty sure i already inspected all of the files in there

cedar hemlock
#

it can be stored in GOG files

#

or in the saves

rough raft
#

i don't have PlayerPrefs, but i do have "prefs", but that seems to only store the game settings, keybinds, etc., no?

#

it's all base64 encoded though so i can't tell, but i dismissed it when i looked at it a while back

jolly oriole
#

56, while you're here, last time i used 2 it didn't want to actually update mods, idk what was up with that, used 1 at that point then

rough raft
cedar hemlock
#

hmm yeah

rough raft
granite kestrel
#

Guys are there anyone of you are using Linux?

cedar hemlock
#

tun is

rough raft
#

i am, but i haven't done any modding (neither creation nor usage) yet

granite kestrel
#

I am unable to find .NET 3.5 on ArchLinux

#

And I wonder is there anyway to install it

rough raft
#

is there a distribution of .net on non-windows oses even?

copper nacelle
#

when is last time

rough raft
#

i'm not sure, but aren't you supposed to use mono?

cedar hemlock
#

no

copper nacelle
#

yeah

cedar hemlock
#

oh

#

nvm me

granite kestrel
#

No

#

I need it in JetBrains Rider

vocal spire
#

🤔 mono bad!?!?

granite kestrel
#

For making my own mod

rough raft
#

obviously, but that doesn't make my point above any less valid

#

i don't keep up with c# or .net though so i might be wrong, but that's my guess

copper nacelle
#

rider should work fine

granite kestrel
#

Oh is it

#

I'm installing it and let me try it out

jolly jungle
#

Does something's layer have any direct correlation to z value?

vocal spire
#

No

copper nacelle
jolly jungle
rough raft
vocal spire
#

🤔

copper nacelle
#

it is in playerprefs

#

just a bit encrypted

vocal spire
rough raft
#

qed to what? that the achievements are in there?

copper nacelle
#

yes

rough raft
#

hmm, but the file does seem sort of tiny to be able to hold them all

copper nacelle
#

idk show

rough raft
#

do you know if it's just base64 or something more spicy?

#

i saw that there was a tool (or a mod?) to decrypt your save files and be able to load unencrypted saves. what tools or mods do i look into for this?

vocal spire
#

Qol mod

copper nacelle
#

Rijndael encryption

rough raft
#

are they really using aes?

copper nacelle
#

you gotta

#

can't have people cheating achievements smh

rough raft
#

LOL

#

and the encryption key? is it static or derived somehow?

cedar hemlock
#

just get QoL and open the save once

rough raft
copper nacelle
#

it's some getbytes thing

vocal spire
#

I don’t think it decrypts achievements?

#

Might be wrong

cedar hemlock
#

only saves afaik

copper nacelle
#

yeah

rough raft
#

it might not, but if the encryption scheme it the same then i guess it can just be repurposed

jolly jungle
#

How do I make a sprite centered on an enemy?

copper nacelle
#

no

jolly jungle
#

Like Radiance's aura

copper nacelle
#

my man is really gonna decrypt aes to get his achievements

rough raft
#

:^))))))))))))

copper nacelle
#

why

rough raft
#

i mean, didn't you have to go through the same process in order to decrypt the save files?

copper nacelle
#

no

rough raft
#

what is the difference in the encryption scheme?

vocal spire
#

Haven’t looked at the qol code, but I think it just saves/loads from a file that’s just not sent through decryption

rough raft
#

do the saves even use aes?

copper nacelle
#

no

rough raft
#

what do they use?

copper nacelle
#

nvm it's aes

rough raft
#

:^)

copper nacelle
#

it's just generic Encryption.Encrypt

rough raft
#

so the work has already been done then

copper nacelle
#

the key is different

rough raft
#

not familiar with c#'s stdlib too much, but ok, doesn't seem too bad

#

is the key for the save files static or?

copper nacelle
#

they're both static

rough raft
#

nice, ez

copper nacelle
#

UKu52ePUBwetZ9wNX88o54dnfKRu0T1l?

jolly oriole
#

the achievements thing is easy to print all playerprefs, but not easy to distinguish between achievement and other encrypted settings

copper nacelle
#

qol doesn't even decrypt

#

sounds like effort

jolly oriole
copper nacelle
#

you just hook before savegame and write the pd

vocal spire
rough raft
#

this encryption.encrypt thing might be hk's custom thingy, right?

#

or is it actually part of c#'s stdlib or something?

copper nacelle
#

just a wrapper over rijandelmanaged

rough raft
#

right

jolly oriole
#

if vs would start i could show the code i use to print the playerprefs stored in windows registry

rough raft
#

give it a couple of hours to warm up :^)

copper nacelle
#

finding outdated versions i sleep

jolly oriole
#

it's pinned

copper nacelle
#

copy pasting debugmod and renaming it SFCore.dll i awaken

vocal spire
#

???

copper nacelle
#

you

jolly oriole
#

copy pasting sfcore and renaming it modcommon hollowwoke

copper nacelle
#

was sfcore last updated on the 2nd by any chance

vocal spire
#

Copy pasting FrogCore and renaming it Assembly-Csharp

rough raft
#

big sadface :^( [1] 234203 segmentation fault (core dumped) ./Modinstaller2

copper nacelle
#

how do you segfault a .net app

#

raw skill

#

you ever have one parameter in a method you wrote called incorrectly

#

so it updates mods into being disabled

#

even if they're enabled

#

fucked up

jolly oriole
#

lol

rough raft
#

no clue. i got to the hk installation dir selection but the dialog just sat there frozen for a couple of seconds and then the whole thing crashed

copper nacelle
#

any log

rough raft
#

nope, that's the worst part :^(

jolly jungle
#

How do I make a sprite centered on an enemy?
Like Radiance's aura
Anyone?

copper nacelle
#

wonderful

#

there's some offset thing on the renderer no?

jolly jungle
#

I tried creating a gameobject, giving it a renderer, and setting it asa child of the enemy at 0,0,0

rough raft
#

i don't know if i'm maybe missing any dependencies that this binary might rely on?

jolly oriole
jolly jungle
#

But I can't see the thing

vocal spire
jolly jungle
#

My problem is that it doesn't appear

#

At all

vocal spire
#

GameObject.SetActive?

jolly oriole
#

then check where it went

vocal spire
#

Show your code for creating and positioning

jolly oriole
#

if it has a nice vacation

copper nacelle
#

the binary is compiled in single-file mode lmao

jolly jungle
#

Is it definitely needed?

#

Like, mandatory?

copper nacelle
#

should def have no deps

jolly jungle
#

For something to work?

vocal spire
#

Idk, show code?

vocal spire
#

Try changing the z value

rough raft
jolly jungle
#

Higher or lower?

vocal spire
#

Lower

jolly jungle
#

I can't figure out the enemy's z

#

sure

copper nacelle
#

it's native

vocal spire
#

Well you’re setting it to the same z as the enemy

copper nacelle
#

single-file framework-independent meme

rough raft
#

lel

jolly jungle
#

So why wouldn't it appear in the same place?

vocal spire
jolly jungle
#

does the renderer have some offset?

vocal spire
jolly jungle
#

Sure

rough raft
vocal spire
#

No

copper nacelle
#

that is in fact the repo for neither

rough raft
#

OoF

vocal spire
#

That is the ModdingApi

rough raft
#

aha aha

vocal spire
#

As it says in the description of the repo

cedar hemlock
rough raft
#

i did read it, but i thought the tool might have been included somewhere

cedar hemlock
#

thats for 1

rough raft
#

mhm

cedar hemlock
#

2 prob

rough raft
#

ok nice

jolly oriole
#

the windows exclusive code i used to print playerprefs

foreach (var keyname in Registry.CurrentUser.OpenSubKey("SOFTWARE").OpenSubKey("Team Cherry").OpenSubKey("Hollow Knight").GetValueNames())
{
    if (keyname.Contains("_"))
    {
        string paddedName = keyname.Substring(0, keyname.LastIndexOf('_'));
        try
        {
            string decryptedName = Encryption.Decrypt(paddedName);
            string ret = (string) typeof(PlayerPrefsSharedData).GetMethod("ReadEncrypted", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(Platform.Current.EncryptedSharedData, new object[] { decryptedName });

            Log($"Raw Key: '{decryptedName}': '{ret}'");
        }
        catch (Exception e)
        {
            string retString = PlayerPrefs.GetString(paddedName, "DOESN'T EXIST");
            if (retString.Equals("DOESN'T EXIST"))
            {
                float retfloat = PlayerPrefs.GetFloat(paddedName, -123.456f);
                if (retfloat.Equals(-123.456f))
                {
                    Log($"Other Key: '{paddedName}': '{PlayerPrefs.GetInt(paddedName, 0)}'");
                }
                else
                {
                    Log($"Float Key: '{paddedName}': '{retfloat}'");
                }
            }
            else
            {
                Log($"String Key: '{paddedName}': '{retString}'");
            }
        }
    }
}
rough raft
#

so on windows they store the achievements in the registry?

copper nacelle
#

yes

#

they store it in unity playerprefs

#

which is registry for windows

rough raft
#

ah

#

and i assume the PlayerPrefs file you were talking about exists on mac?

cedar hemlock
#

use <> against embeds smh

copper nacelle
#

no

floral blade
# copper nacelle no

are you one of the authors of radiance.host? or is it a community driven thing ?

cedar hemlock
#

i think its not done by 56 alone at least

#

maybe SFG?

copper nacelle
#

no

#

it's angle's site

#

idek what's up to date on it now lmao

cedar hemlock
copper nacelle
#

one day

cedar hemlock
#

cry for help

copper nacelle
#

yeah

floral blade
jolly oriole
#

i'm just some dude vibin

floral blade
#

and i suspect this is the case but just wanted to confirm , is ModSettings same across a mod or could one have 2 ModSettings?

cedar hemlock
copper nacelle
#

there's savesettings and globalsettings

jolly oriole
#

i did

jolly jungle
#

Alrighty, @vocal spire, neither of them worked

#

gtg brb

copper nacelle
#

besides that just it's just 1 per

copper nacelle
#

anyone have any other complaints before i put 3 100mb files into modding-help again

jolly oriole
#

can it be pink?

cedar hemlock
#

no

copper nacelle
#

no

jolly oriole
#

Sadge

light zodiac
copper nacelle
#

this is the least descriptive complaint

#

nvm not least descriptive

floral blade
#

and if i want to expose a function from my mod to another mod, do i just keep it as a public function in the class & access it by using the namespace from the dll ?

copper nacelle
#

basically yeah

#

you just ref the other mod

#

provided it's a non-optional dependency

jolly jungle
#

Alright I'm back

#

So anyone has any more ideas?

light zodiac
copper nacelle
#

the fuck

#

when you look inside a folder and it starts working

#

i am going to commit (geno|sui)cide

light zodiac
jolly jungle
#

Hm, maybe the rotation is 90 to the camera

floral blade
copper nacelle
#

you check if it's loaded via reflection

#

and if it is

#

then you invoke a separate method

#

and then you just use it normally

jolly oriole
#

maybe reflection works on that? or you could make a mess with playerdata abuse

copper nacelle
#

assembly loads are scoped per method

#

so as long as you don't call the method with it it vibes

copper nacelle
#

the executable is in the wrong spot

#

suicide

#

thanks

floral blade
#

so if it's non optional your mod just dies because it can't find it, i see

copper nacelle
#

yes

#

optimal

jolly jungle
#

Alrighty, it was a matter of broken rotation

cedar hemlock
#

amazing

light zodiac
#

cool

jolly oriole
vocal spire
#

I like abusing Playerdata 😄

cedar hemlock
#

how difficult would it be to make a flamethrower as extension for hollow point

#

or has this already been done

jolly oriole
#

idk

rough pulsar
#

i wonder if you can make the player manually dash using the Cstate

vocal spire
#

You can probably just manually make them dash by copying the dash code

jolly oriole
#

i could make a tutorial on how i make custom scenes

cedar hemlock
#

pls do

#

(not like it has been done on html)

floral blade
#

is there really no way to add a debugger on your mod while it runs in HK ?

copper nacelle
#

if your mod uses no on hooks and no mod you use uses on hooks then there's a tutorial on dnSpy's page

#

otherwise correct there is not

floral blade
#

i see, thanks for the info

floral blade
#

so if i use a coroutine , will it be like a separate thread or a slice of time every update ?

jolly oriole
#

basically yes

floral blade
#

wait so which is it ?

#

a thread or a slice of time ?

jolly oriole
#

oh, a slice of time

floral blade
#

i see, good for doing compute without tanking frames bad for downloading files

stone elm
#

Rando just spins up a new thread for parsing its XML logic. You could just do the same for downloads, probably.

#

Or listen to SF, I don't know Unity much anyway

jolly oriole
#

the data should be the file (as binary)

copper nacelle
#

downloading files can be done if you use unity's stuff

floral blade
copper nacelle
#

yeah prob

jolly oriole
#

i mean, you can use it inside coroutines

jolly oriole
#

dandy is asking for 1432

#

oh wait, exists there too

steady comet
#

Does anyone know where the repo for the version of CustomKnight on the modinstaller is?

light zodiac
#

Forgot to remove the embed

steady comet
#

Oh right

#

Thanks 🙂

light zodiac
#

Np

floral blade
copper nacelle
#

yeah

floral blade
#

i'm trying an implementation with 'DownloadFileAsync' if that doesnt work out then i'm going to look into coroutines, the documentation says it wont block the calling thread

jolly oriole
#

tutorial should be halfway done

hasty fractal
#

Hello, I installed the AdditionnalMaps mod and I wanted to put the texts in French by modifying the text file.

After registering, I start the game and all mods deactivate as if I had installed no mods.
If I remove all the texts in French, it works again.

I guess I shouldn't do that.

jolly oriole
#

that's... weird, especially the

deactivate as if I had none installed
part

hasty fractal
#

I'm french, I use Google Translate sometimes.

#

Sorry for these mistakes.

copper nacelle
#

no not the english

jolly oriole
#

when you tested this, can you send me the ModLog.txt and output_log.txt from the save file folder? (if you played without this afterwards, please test with it again and send me those files)

copper nacelle
#

the error

hasty fractal
#

Oh ok.

hasty fractal
#

I need to remember where it is.

jolly oriole
jolly oriole
jolly oriole
#

xenophobe zal smhmyheads

copper nacelle
#

til grenade is an alien

floral blade
#

maybe cycling player opacity slowly as a loader is a bad idea , or maybe its the best idea gorbbrain

#

is FSMViewer Windows only ? no Mac ?

vocal spire
#

Let me introduce you to avalonia fsmviewer

floral blade
vocal spire
floral blade
#

oh releases are win / linux only , but i guess it can compile for mac?

#

seems like avalonia is cross platform

#

i'll try building this tonight

copper nacelle
#

yeah should work fine on mac

runic topaz
#

where can i find area names?

vocal spire
#

Room names?

runic topaz
#

no, like royal_gardens

vocal spire
#

Pins, GameObject/Scene dumps

runic topaz
#

areas

vocal spire
#

Hmm

#

Might want to browse through the map fsms with fsmviewer?

runic topaz
#

kk, ill check that

#

where are the map fsms?

vocal spire
#

Probably in Resources.assets(or whatever the thing is in fsmviewer, been a while since I used it)

runic topaz
#

oh, i tried the sprites drive under area save art and they're all there

cedar hemlock
light zodiac
#

or just send it here?

cedar hemlock
#

yes

#

i mean it has a higher chance

hasty fractal
#

Thank you @jolly oriole for helping me.

ornate rivet
#

nice

runic topaz
#

how do i make it so the camera doesn't show the out of bounds of my custom scene?

jolly oriole
runic topaz
#
            {
                float width = 32;
                float height = 864;
                self.tilemap.width = (int)width;
                self.tilemap.height = (int)height;
                self.sceneWidth = width;
                self.sceneHeight = height;
                FindObjectOfType<GameMap>().SetManualTilemap(0, 0, width, height);
            }```
#

is this it? itd be my guess but im not 100% sure

jolly oriole
#

i mean, that is for one scene, with width and height being the width and height of the custom scene

runic topaz
#

ok

#

thx

primal latch
#

For some reason my mod is recognised as a library. I have added “[AssemblyType(AssemblyTypeAttribute.MOD)]” right above the main class

#

@vocal spire can confirm this issue and couldn’t find the cause.

floral blade
primal latch
#

The output type is library but that should be correct

floral blade
primal latch
#

Ok

pure nova
#

How would you do FixedUpdate in a mod?

vocal spire
#

You would attach a monobehavior to an object and include a method with the name of FixedUpdate with no perameters in the monobehavior

pure nova
#

Okay sounds good.

pure nova
#

Wait is it possible to just delete a whole FSM? That would make my life way easier.

vocal spire
ornate rivet
vocal spire
ornate rivet
#

Sorry folks, it's fixed now, be sure to reset the cache for the page

runic topaz
#

how do i fix this?

safe hamlet
#

can't

runic topaz
#

ok, then whats a work around?

floral furnace
#

well first you must have a game object with the name of go

runic topaz
#

what do i make the gameobject of?

potent dirge
#

By checking already existing mods and see how they do it

#

That's how it works peepoHappy

runic topaz
#

the api doc has an example, it just doesn't apply to sharp shadow for what i can see

potent dirge
#

Ah yea, but sharp shadow and whatever fsm it uses will use the same process 99%<

#

So first you should set the go/gameobject, which I can't remember specifically what you set it up from, but that's where existing mods to steal from comes in

primal latch
#

I am trying to set the corpse sprite of the soul master to another sprite. I have a preload to the object. I get the component and I set the sprite. I get no errors. When loading the corpse it has it’s original sprite

runic topaz
#

OK, i tried, and I'm at a complete loss as to what my "GameObject go" should be set as, in the api doc, it sets it to a preloaded object, but to my knowledge, there is no preloadable object for a dash

#

i tried digging through some preexisting mods, and i couldnt find any examples, either

cedar hemlock
#

Look at the game code

#

If the game code can do it you can too

jolly oriole
#

what you probably want, is to hook into HeroController.Awake or HeroController.Start (i prefer Start), since the sharp shadow effect is somewhere in the children of the knight go, then do the effect change in that hook (after orig(self))

#

that way it also works when people save+exit

ornate rivet
#

not sure if any one has told you this yet but your fsm name is also wrong

runic topaz
#

it is?

steady comet
jolly oriole
#

the fsm name is probably right

steady comet
#

Well, the FSM name isn't Attacks-Set Sharp Shadow Damage which is what they have in the screenshot

jolly oriole
#

but it is

steady comet
#

Uhhh

jolly oriole
steady comet
#

Is it not just Set Sharp Shadow Damage

jolly oriole
#

oh yeah, missed that part somehow

steady comet
#

Woah what is that?

jolly oriole
#

assetsview, also by nesrak

steady comet
#

Ooh, thanks!

runic topaz
#

thank you!

steady comet
#

(In general, not necessarily for HeroController)

jolly oriole
#

awake is called when the component is constructed (so only the constructor is earlier), start is called when the whole scene was awaked (afaik, could be wrong), and onenable is called each time the go goes from inactive to active

pulsar fog
#

can we somehow make our own mods?

cedar hemlock
#

yes

thick hazel
#

Is there any Costom Knight skin related to mantis tribe?

cedar hemlock
primal latch
#

This is the beginning of the main class of my mod. Why is this recognised as a library?

jolly oriole
#

idk if you even need the assemblytype thing

primal latch
#

Without it does the same

#

It still says library

#

@vocal spire added that

copper nacelle
#

That's not where that goes ngl

#

it's an assembly attribute you don't put it on a class

primal latch
#

Wait.. you are right

jolly oriole
#

i mean, tot works fine and gets recognized as a normal mod, so idk what you guys did to fyremoth to make it seem like a library

primal latch
#

Yeah. What are things that make it get recognised as a library?

#

It contains lots of static functions but that can’t be it right?

copper nacelle
#

stop using the generic

#

qed

primal latch
#

Qed?

copper nacelle
#

end of a proof meme

#

don't think about it

primal latch
copper nacelle
#

FullSettingsMod

#

Pretty sure that's unironically it lmao

primal latch
#

What should it be then

jolly oriole
#

nah, tot works with it

primal latch
#

Otherwise we get a obsolete warning

copper nacelle
#

I can check though

#

Oml

#

Please it literally says the answer on the warning

#

I cry everytime

primal latch
#

I read the warning. I couldn’t get it working

copper nacelle
#

Wtf my line number

#

bitchhub

#

L700

#

you just override the properties and add a backing field

jolly oriole
#

oh wait yea, tot is also a library, sad

#

still works though

#

sfcore is recognized as a mod lol

#

does it make a difference if it's recognized as a library instead of a mod?

copper nacelle
#

It's for the hook annotations

#

Apparently

#

From the look of it

jolly oriole
#

the only thing i see rn is that it's at the front of typePaths

copper nacelle
#

Oh right assembly load order

jolly oriole
#

but since i didn't make a type attribute of it, it doesn't appear to be an actual issue, as only explicitly defined mods are in front

primal latch
#

I'll try to fix it tomorrow. Thanks guys.

jolly oriole
#

i think i'll add a bit for the detection of mod vs library to the mapi, so things like sfcore are correctly identified as a library and mods that use sfcore's generic mod inheritance are correctly classified as mods

#

wait, AssemblyContainsMod should already identify the generic mod inheritance as a mod

#

so apparently the loading of mods to determine the types is already flawed:

[INFO]:[API] - Attempting to determine type of mod assemblies (library/mod/addon)
[INFO]:[API] - Type Fullname: '<Module>'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.AmSaveSettings'
[INFO]:[API] -     Fullname: 'Modding.ModSettings'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.AmGlobalSettings'
[INFO]:[API] -     Fullname: 'Modding.ModSettings'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.AdditionalMaps'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.MonoBehaviours.s_CustomArea'
[INFO]:[API] -     Fullname: 'System.ValueType'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.MonoBehaviours.GameMapHooks'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.MonoBehaviours.MappedCustomRoom'
[INFO]:[API] -     Fullname: 'UnityEngine.Component'
[INFO]:[API] -     Fullname: 'UnityEngine.Object'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.Consts.TextureStrings'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - Type Fullname: 'AdditionalMaps.Consts.LanguageStrings'
[INFO]:[API] -     Fullname: 'System.Object'
[INFO]:[API] - AdditionalMaps - LIBRARY

AdditionalMaps.AdditionalMaps apparently doesn't inherit anything, not even System.Object, no wonder it's classified as a library

copper nacelle
#

this is closer but it still won't detect your subclasses

#

basetype is only direct basetype

jolly oriole
#

yea, the subclass thing is only because the other dll isn't loaded, so i doesn't even know that type

#

btw, the basetype thing would detect it, if the class exists while checking

#

possibly, idk exactly how mono cecil works

copper nacelle
#

load libraries first

jolly oriole
#

so just load all of them, check for the subclasses, unload them then reload them in order? because otherwise there still is the problem of non-existing mod subclasses being classified as libraries

copper nacelle
jolly oriole
#

i have actually no idea what you want me to do tbh

copper nacelle
#

is the basetype just straight up null if the assembly isn't loaded

jolly oriole
#

appears like it, as it doesn't enter the while (parent != null)

floral blade
#

Just for confirming my understanding :
when an FSM has a "target" or "owner" GO in the variables, changing those would make the FSM logic run on other GOs ?

#

for example like could this be used to make weaverlings display on zote and follow him by changing their owner?

vague venture
#

I'm looking for someone to commission to code a mod (a branch of randomizer, probably) to imitate battle royale loot drops and spawns. Please ping me if capable/interested.

runic topaz
#

is it possible to preload a grimmchild?

copper nacelle
#

is it not just on charm effects

dark wigeon
#

good question let me go test on my laptop

#

winforms sort of does but it messes with the designer sometimes

unborn flicker
dark wigeon
#

@fair rampart is this for fsm view?

#

I'm testing with latest avalonia and it looks great on high dpi

#

assetsview uses winforms not avalonia

#

uabea uses avalonia and is what I'm testing on

#

what kind of search

#

oh man the latest assetsview on high dpi looks like garbage

#

the listview is half cut off by the file list

#

blame visual studio for that and is really hard to fix

#

I just have to keep switching back and forth between high dpi and non high dpi until it fixes

#

I didn't test it for this release though

#

if you set windows scaling to system for AssetsView it will fix but it looks blurry

#

oh search in uabea not assetsview?

#

assetsview has local file searching and global file searching

#

uabea is sort of broken right now because of assetstools which is what I'm working on right now

#

yeah it's currently set to do nothing on the repo rn

#

I have already made a local commit to add it, but due to other bugs I haven't pushed it yet

#

just give me a few days

vague venture
blissful wedge
#

i downloaded the modinstaller and it has a mod called randomizer 3 but doesnt work how can i fix it

paper valve
#

been a bit inactive here, im not gone, just need to finish my other projects first, don't like letting stuff unfinished :>

jolly oriole
#

Leaving things unfinished is the best way to have others completely ruin it

vocal spire
#

Yeah!

#

wait what

cedar hemlock
#

Hello

fair rampart
#

i'm making an evil% customknight, is it possible to add it to the official mods drive afterwards

floral blade
#

what's evil%

gilded lotus
fair rampart
#

Been working on this one sprite for way to long bc like i can’t figure out if the eyes ok

#

I swear the tiny little eye shouldn’t be this much of a issue

oak idol
#

is it possible to "mod" hollow knight onto Mobile With the Dev Permissions?

light zodiac
#

I don't think the problem will be the Devs permission

primal latch
cedar hemlock
#

you have to make a new game

oak idol
#

poop

rough pulsar
#

has anyone yet discovered to make new pins for the map?

jolly oriole
#

should be ez

proven cipher
#

Might want to check it out

jolly oriole
#

no :)

vocal spire
#

Why is the way it’s looking at me want me to join

fair rampart
#

Looking at the sprites wondering if I should start over and actually make it look like a tiny lurien

vocal spire
fair rampart
#

Ah not really a discussion more just “this is my current progress , but , I’m thinking of restarting”

fair rampart
#

where hollow point

light zodiac
finite forumBOT
fair rampart
#

poggers

stone elm
#

Anyone capable of viewing FSMs for 1.5? I figure I need an updated cldb.dat for Unity 2020 but I don't know how to get one.

dark wigeon
#

use fsm view avalonia

stone elm
#

Do you have a link or pointer? I checked pins but could be blind

dark wigeon
stone elm
#

I checked your repos on github and also missed it

#

Thanks deeply, though. I appreciate the time

vale mortar
#

Welp, I'm back on my Eternal Ordeal nonsense: Is there any evidence within the code for EO that suggests any sort of "class" of Zoteling? By this I mean:

  • Zotelings the Mighty, Lankies, and Heavies are one class
  • Hoppers and Fliers are another
  • Turrets and Heads are another (possibly Flukes in here too)
  • Volatiles
  • Curses

I ask because I am seeing a lot of patterns in their spawns. If a Turret leaves, there will be another Turret or Head to fill its place (or possibly a Fluke...more examples needed). If a Hopper or Flyer dies, I'll see a Hopper or Flyer replace it. The ZoM class seems to be the most volatile class with a chance to spawn another ZoM, a Lanky, or a Heavy when one dies. Volatiles seem to be completely on their own schedule regardless.

Am I seeing patterns that don't exist or is there truth to it buried in the code?

heavy patrol
#

Is about 300 lines in a single file okay for a simple mod? It runs just fine, but I want to help insure I follow best practices the best I can

prime urchin
heavy patrol
#

Ah, I see! It is one class, so I guess that part is good haha. My methods are around 60 lines or so, but I guess since I use so many modhooks it makes my program a little thicker

#

Thanks for the info ^^

floral blade
#

can anyone point me to the latest customKnight repo ?

copper nacelle
#

yes

floral blade
#

ty i will raise a pr soon 🙂

light zodiac
#

How do i get the players current position?

copper nacelle
#

HeroController.instance.transform.position

light zodiac
#

when I'm logging it, it just shows (0.0, 0.0, 0.0)

#

nvm I'm just dumb

#

Thanks

light zodiac
primal latch
#

Yes

jolly oriole
#

yes

stone elm
#

Any ideas why a FSM would freeze in a certain state? This is till referring to my issue (from a week or two ago) with the knight bending down to pick up an item and never getting back up. I can tell which state in the FSM it's stuck in but no idea why or how to diagnose. Thanks in advance. 😅

copper nacelle
#

exception, invalid transition, etc.

steady comet
#

There was a problem like this in the AddYNDialogueToShiny function in rando - the issue was that when the hero was damaged, it froze because it couldn't play the animation (this has been fixed in the branch in my repo). It could be something similar - it's trying to play an animation that it's not allowed to?

copper nacelle
#

You said you were on 1.5 yeah?

stone elm
#

Yeah, I'm on 1.5

copper nacelle
#

If you ever create a new state or fuck with transitions those don't work anymore lmao

stone elm
#

Yeah, that's my reaction too

steady comet
#

Does that mean you can't modify FSMs as much as you used to be able to?

copper nacelle
#

no you can

#

just your old code is dead af

jolly oriole
#

You have to have an update famutil if any fotm

copper nacelle
#

they changed the backing field yeah

steady comet
#

Oh, you just need to completely change the code

jolly oriole
#

Not completely

copper nacelle
#

and you have to have added any states you're going to transition to before adding the transition as it's a ref to the state

#

i have a commit example if you want it tbh

steady comet
#

Yes please (though I'm still on 1432 for now)

stone elm
#

Yes, please. I'm still processing here, very slowly

#

I'm on 1.5 with randomizer mod as a base, so flib will go through my pain soon 😢

stone elm
jolly oriole
#

Fuck mobile, gimme like 10 mins ro get to my pc

vocal spire
#

Oof

#

Thank you 56

copper nacelle
#

you

vocal spire
#

So if I’m understanding this right, fsmutil needs to be updated to use state refs instead of state names?

copper nacelle
#

good ol massive diff

#

i changed more than necessary tbf because i changed the backing util a bunch

#

ig this is more accurate

#

not a huge deal just the transitions

#

and some ordering stuff in your actual code

stone elm
#

I jury-rigged a vasi update for 1.5 since I was too stupid to find your repo

#

This will probably help fix the issues

#

Thanks dearly, though, this will be fun to dive into. Hopefully I'll make progress finally. hollowD

jolly oriole
steady comet
#

I'm guessing SereCore will need to be updated too?

stone elm
#

I jury-rigged serecore update for 1.5 too, so yes I guess

jolly oriole
#

i mean, all mods have to be updated for 1.5

stone elm
#

I don't know if it was update properly for 1.5, I'm just a stupid

jolly oriole
#

since it's a new .net framework version

steady comet
vocal spire
#

(Probably if it messes with fsms)

jolly oriole
copper nacelle
#

it does

#

why have one util when you can have 5

jolly oriole
#

nice

copper nacelle
#

ax2uHappy . o O ( breaking changes )

vocal spire
#

make that 6 when I include one in frogcore! I’m too lazy to make my own fsmutil

jolly oriole
copper nacelle
#

yeah

jolly oriole
#

btw, is the mapi going to be bundled for distribution when it's released?

#

or in pieces like rn

copper nacelle
#

fuck no

#

pieces

#

all my homies hate 23mb dll

jolly oriole
#

you're going to love pale court's dll then

copper nacelle
vocal spire
#

Is ThAt CoNsIdErEd LaRgE?

stone elm
#

Bundled mapi killed progress on my work so pieces makes me happy

jolly oriole
#

oh wait no, it's not 23 mb, maybe with an additional 0 at the end though

stone elm
#

Did you bundle another game with it? tisoweary

copper nacelle
#

just like 8 asset bundles

jolly oriole
#

20

vocal spire
#

Yeah

#

Quite a lot more

#

Not counting the other embedded resources

stone elm
#

I'd suggest something like tree shaking but that won't fix it

jolly oriole
#

i made tot go from 3 MB to ~10 MB by just increasing audio quality :)

vocal spire
#

Let’s make the audio better than full quality for pale court

#

No one will have trouble being patient to download it