#archived-modding-development

1 messages · Page 532 of 1

floral blade
#

could the same sort of a setup be built with an if else in an IEnumerator & update that keeps calling the coro after a certain flag is set?
so one IEnumerator handles all states but after one state is finished the update calls the same coroutine to go to the next state (some of which might involve waiting)?

tidal geyser
#

ow will I start making my own custom knight

#

how do I make it like the proper size to fit the knight and stuff

worn eagle
floral blade
#

yeah i was thinking along similar lines but have a library of static methods as "moves" and then make a IEnumerator that strings them together

#

so the high level logic/flow is in one place and the rest of implementation is maintainable

jolly oriole
#

i have a script that does specific stuff all in fixedupdate and with bool checks to know which thing to do. it's horrible

floral blade
#

Sf your create collider script worked great except when I tried to assetbundle unity kept crying about it so I had to yeet it out of the project to bundle

#

did I do it wrong or is that normal

jolly oriole
#

unity assets structure

Sprites \
- this collection whatever
Audio \
- this collection whatever
Scripts \
- Game    // compiled into assembly-csharp when building game
- Editor    // not compiled into assembly-csharp when building game, only for editor

the editor script can be anywhere, it does need at least one Editor folder in its path

floral blade
#

oh so it will work whereever but if i put it in the wrong place it will be attempted to compile it

worn eagle
#

hmm, having a collider on any child of an enemy makes it a viable hitbox

floral blade
#

makes sense then i just put it in the root

jolly oriole
#

yea

primal latch
worn eagle
#

tf why does hitting a parented cyclone damage sheo while hitting his other child attacks don't

jolly oriole
#

it goes up 2 parents and hits healthmanagers

worn eagle
#

idk why something like his yellow stab doesn't propagate hits up to its parent then

jolly oriole
#

because its layer is Enemy Attack probably

#

layer 22

languid goblet
# tidal geyser how do I make it like the proper size to fit the knight and stuff

My (arguably too) in-depth tutorial on how to create a Custom Knight skin. Includes: downloading and installing Hollow Knight's ModInstaller and Custom Knight mod, using SpritePacker, using FireAlpaca/art tips, and uploading and properly saving your sprite, plus a much simpler method. Please let me know in the comments if you have any questions!...

▶ Play video
tidal geyser
#

Thanks!

worn eagle
#

I did change the layer to 22

#

lemme see what I did with doppelganger

#

I uh

jolly oriole
#

there is a lot of scripts

worn eagle
#

instantiated the hits, assigned the points, then destroyed the original hits?

#

I changed the layer to 11 too :/

worn eagle
#

damn I forgot to change the layer of the hits

#

I read Attack and thought it was Enemy Attack

jolly oriole
#

lol

languid goblet
#

why does just editing the amount of lifeblood have to be so annoying

light zodiac
#

for (int i = 0; i < amount; i++)
PlayMakerFSM.SendEvent("ADD BLUE HEALTH");

languid goblet
#

does it have to be eventregister?

light zodiac
#

Nope

#

Mistake

languid goblet
#

yeah I just did that

#

and it didn't work for some reason

#

well, it worked, but it gave the wrong amount of lifeblood

#

I'm probably just stupid and screwing up something really simple

light zodiac
#

Idk

languid goblet
#

what's the difference between the two

rough pulsar
#

@languid goblet Can't you just use HeroController.instance.add lifeblood method or something?

languid goblet
#

there's no method for adding lifeblood

rough pulsar
#

Really?

languid goblet
#

yeah idk why

rough pulsar
#

Disappointing

steady comet
#

The code I linked works for randomizer, so I see no reason it wouldn't work for what you're doing

rough pulsar
#

Back to learning to make mods in celeste

steady comet
#

Though IDK what you're doing so maybe there's a reason

rough pulsar
#

Reject team cherry go back to extremely okay games

light zodiac
#

Also I just checked what I did in epp and it was event register and not pfsm

#

Oops

languid goblet
#

I'll try eventregister then

primal latch
#

I really hope Tc just uses c# for everything in silksong

rough pulsar
#

After all they use Unity lol

primal latch
#

I mean like no fsm

worn eagle
#

they're gonna go back to unity 4.3 and use boo + js

rough pulsar
#

Use fmod in silksong grubthink

primal latch
#

Did unity ever support boo?

languid goblet
#

good news: it works
bad news: now my code isn't restoring regular health zote

rough pulsar
#

Ok guys brb im gonna code omori battle system into hollow knight

light zodiac
#

It says add blue

rough pulsar
#

Nevermind

languid goblet
#

I've got code for adding reg health
whatever I'll mess with it some more

light zodiac
#

Maybe do a check for pd.health Vs pd.max health

languid goblet
rough pulsar
#

What did you try to accomplish

#

oh

languid goblet
#

temporarily sets your health to 1 after taking damage, so that if you make two mistakes in a row you're dead

rough pulsar
#

Sounds so good for radiant practice ngl

languid goblet
#

I thought I could do it in a day but then teamcherry 🍝 happened

rough pulsar
#

Pressures you into avoiding damage thus making it easier to learn imo

languid goblet
#

I could see it used that way, but it's just part of a larger project I'm working on

#

which is (trying) modding challenge mode from enter the gungeon into hk

rough pulsar
#

Should we work on doing mediumcore from terraria into hollow knight? lol

#

Mediumcore: Lose everything you have

languid goblet
#

I don't play terraria, although a friend has been nagging me to try it for like the past month

rough pulsar
#

How should it work though

#

like, have old nail until you get it back?

#

Or just disable nail entirely

primal latch
#

And you died at radiance

#

Good luck getting that back

rough pulsar
#

Nah there should be special cases just like how vanilla does it

primal latch
#

Nah

#

Just call it a feature

rough pulsar
#

I won't be a dick for doing that lmao

winter moss
#

How should I set up my build events to copy the DLL into the mod folder after building?

winged mason
#

Are there any modders that want a suggestion for a boss

#

If so xero eyes would be cool

unborn flicker
copper nacelle
#

windows specific feelsbadman

winter moss
#

My first test of the mod.

winter moss
copper nacelle
#

yeah

winter moss
#

Then idk what's going wrong but I'm adding GameObjects to the map and they aren't displaying. Here is the code:

GameObject pinObject = new GameObject("pin_randomizer_item");

pinObject.AddComponent<SpriteRenderer>();
pinObject.GetComponent<SpriteRenderer>().sprite = RandomizerMod.GetSprite("UI.itempin");
pinObject.GetComponent<SpriteRenderer>().enabled = true;

pinObject.transform.SetParent(mapRoom.transform);
pinObject.transform.position = new Vector3(0, 0, 0);

pinObject.SetActive(true);
worn eagle
deep wave
#

sly has much less vertical movement, horizontal looks about right

rough pulsar
#

the special attack where sheo uses his red paint then his horn & paint brush turns black and uses the cyclone slash

winter moss
copper nacelle
#

what

winter moss
#

Yeah I just built it and started the mod and nothing changed

copper nacelle
#

Pretty sure it does

#

But I stopped using that

fair rampart
#

Hi

copper nacelle
#

They both should overwrite though

fair rampart
#

I’m going to continue work on my mod today

copper nacelle
#

oh homothety forgot /Y

#

my bad

fair rampart
#

Hi 56

winter moss
#

Wait does it need to be a capital y

copper nacelle
#

i don't think so but idr

fair rampart
#

Should I look at ExampleMod to get a grasp on how FSMs work? Because I’ve read the docs but can’t seem to fully understand the commands required to change certain actions

copper nacelle
#

Like I said I use msbuild tasks

winter moss
#

Well I put in the /Y and it worked

#

Google lied to me, it said put a lowercase y

#

Also how do you use code to make a GameObject a child of another GameObject

worn eagle
#
childGO.transform.SetParent(parentGO.transform);
winter moss
#

I did that but I don't think it worked

worn eagle
#

what didn't work

winter moss
#

The GameObject wasn't displaying

fair rampart
#

quick question

#

what does the action <Wait> do in a GetAction command?

#

is it literally just wait time

copper nacelle
#

It's the generic constraint for the method

#

So it returns that type and if it doesn't indicate an index it'll find the first of that type

fair rampart
#

alright

#

thanks

#

im just trying to lock the Light Orbs position to Radiance's eyes

#

but so far the most I have done is made them spawn below the floor

#

oh wait I just realized what Wait is

#

its an action, and the orange part afterwards is the state

copper nacelle
#

orange

#

what

fair rampart
#

the orange text in the code

#

in the parenthesis part of the command

#

ive stopped for now because im tired and my brain fog makes it hard to program

copper nacelle
#

oh the string

#

yeah

#

fsm.GetAction<T>(string state) -> first action of type T in state state

fair rampart
#

I wish I knew how to reverse engineer easier

#

because I would normally get this type of stuff easy if it wasnt for my brain being fuzzy

#

and I just want the light orbs to spawn at one fixed position so I can spawn a lot in a gatling type formation

worn eagle
#

what's the workflow like for loading and saving global settings in 1.5 api? don't really get much from the docs

vocal spire
#

public class ModClass : Mod, IGlobalSettingsThingOrSomeClassWhateverIForgotTheName<YourClass>
{
Some methods for saving and loading the global settings
}

#

No I am not doing the cool code thing in discord, on mobile and too tired

worn eagle
#

there wouldn't happen to be a way to access LoadGlobalSettings is there?

#

trying to port godump to 1.5 for internal use, which has the user modify and then load global settings during runtime

tidal geyser
#

after a while I can finally START on making a custom knight

worn eagle
pine kayak
#

im very new to modding, lets say im making a mod to remove the cooldown time between attacks, how would i do so?

#

do i just do "attack_cooldown" = 0;?

#

in my on attack method

deep wave
#

first you need to find what in the game code handles attack cooldowns (my first guess would be HeroController)

#

you can view the game code using dnspy or similar on the vanilla Assembly-CSharp

iron current
#

Hi! So I don't know any C# or Unity (but do know C, Typescript, Ruby and a bit of Rust) and I have a mod (well, several) that I would like to make
I'm working through a C# cheatsheet at the moment (and hoping that my typescript experience would be enough to make up the rest) and I thought I'd post my idea here to find out what parts of the modding API would be useful/required esp. because I don't know shit about Unity lmao

#

basically the idea is for a mod that changes baldur shell pretty drastically. besides becoming unbreakable (or at least breaking in way more hits than 4) it becomes a "focus ability" i.e. an ability that's activated by holding (as opposed to tapping) focus/cast + a direction. focus abilities are defensive (focus + up is shield (baldur), I haven't thought of any others yet)

Focus abilities like shield/baldur have a shorter active frame window than plain focus. This should work by consuming soul at a faster rate than regular healing does, kinda like how Quick Focus works. Also like with ddark you lose the effect of a focus ability in between if you cast it in succession (so the shield/baldur would lose its i-frames for a tiny period)

#

i think right now my preliminary questions are stuff like if in your experience it's straightforward to add new cases to the input handling system or what the easiest way to remodel baldur would be (keep it as a charm and make it notch cost 0? i know it's possible to make entirely new abilities because Swim is a thing but I am not sure how possible a more complicated ability like this would be). also someone I could pair with would be really nice but i know people are probably busy

deep wave
#

a quick warning is that quick cast already casts on button down, and changing that functionality would be v. unreccomended as that would make it just as laggy and horrible to use as focus casting

iron current
#

oh I am not planning on changing quick cast! specifically using the focus button. you...focus to do focus abilities 😅

#

i figure that the game waits for a bit to process the focus button (to tell if it's a tap or a long press). i want to hook into the "it's a long press" bit and check if a direction is also held and take over from there

#

also wait ugh I did not think of shape of unn

deep wave
#

ah you will probably need to modify the focus fsm

#

one of the dependency mods adds better fsm handling but i can't remember which one 🥴 w/ that you should be able to add states to the existing focus fsm on initialisation

worn eagle
#

different cyclone textures

#

I wonder if this breaks the trust I've been given by the maker of the little sheo skin if I distribute the mod with these sprites

iron current
#

thank you!

jolly oriole
pine kayak
#

nope it does not work :(

jolly oriole
#

have you tried changing the other 3 values as well?

#

duration, cooldown_ch & duration_ch

pine kayak
#

oh

#

i did not

#

i can just make changes to all these values in the initialize method right?

jolly oriole
#

maybe? ¯_(ツ)_/¯

pine kayak
#

it did not work ;(

languid goblet
#

welcome to modding, where what should be simple is unnecessarily complicated (at least in my experience)

light zodiac
#

Do it in heroupdate just to see if it works

#

In initialze doesn't herocontroller not exist

deep wave
#

yeah that would be correct

light zodiac
#

It also gets destroyed on quitouts

floral blade
#

How do breakable walls work ?

#

And how does one replace an existing wall with breakable one ?

#

I fear that I might need to edit the level itself to add a breakable wall where there was none

jolly oriole
#

tot does it

floral blade
#

Could you point me to the code please

floral blade
#

So we just move the points on the collider to make room behind the breakable wall that we add

#

And add the gate there

jolly oriole
#

yea

floral blade
#

Makes sense

#

How did you figure out which points you needed to move ?

#

Like their array indices

jolly jungle
jolly oriole
worn eagle
jolly jungle
#

If you feel bad about it just ask the creator's permission

worn eagle
#

last msg from the point of contact to TWP

#

so yeah, don't think that's happening anytime soon

nimble lake
#

damn

marble hollow
#

man i wish i can join twp but i cant even manage to use tencent qq

vocal spire
pine kayak
#

what is the _ch referring to?

#

this piece of code allows me to slash very fast but not every swing hits

worn eagle
#

charm

vocal spire
#

Specifically the quick slash charm

pine kayak
#

so a getbool call to see if charm is equipped

#

and then do this code?

vocal spire
#

No

pine kayak
#

or modify quickslash itselfd

vocal spire
#

Just modify the _CH to what you want the quick slash value to be

pine kayak
#

oh

#

oof misunderstood

vocal spire
#

If quick slash is equipped it will use _CH instead

pine kayak
#

anything that comes to mind as to why not every swing hits?

vocal spire
#

Wasn’t active for long enough

pine kayak
#

duration must be longer

vocal spire
#

Or enemies have iframes

pine kayak
#

oh

#

👀

#

damn

vocal spire
#

Cyclone slash would be really op without those

pine kayak
#

oh yes i never thought about that

#

there should be a variable that decides how many i frames they get

#

so i can find it and make it zero

vocal spire
#

There probably is, might be a private one.

#

It’s also probably on the HealthManager class

pine kayak
#

dnspy cannot access private variables?

vocal spire
#

It can?

#

It accesses everything

pine kayak
#

oh

#

but

#

i cant use it in my ide

#

reference it*

vocal spire
#

Well you need to use reflection then

pine kayak
#

im really new to c# im sorry if i sound dumb

vocal spire
#

It’s fine, reflection isn’t your every day thing

jolly oriole
#

anything would be op without iframes

vocal spire
#

Good point

#

Would it hit like every frame?

jolly oriole
#

certainly possible

#

because double hit VS work

pine kayak
#

oh yes

#

vs

#

would work like cuphead supers

#

more like cuphead supers

jolly jungle
#

Is there any way to speed up a tk2d animation?

worn eagle
#

the whole animation object or just one of its clips?

jolly jungle
#

A clip

#

Well, multiple, but each one separately, so yeah, one of the clips

worn eagle
#

tk2dSpriteAnimationClip.fps

jolly jungle
#

Hm

#

Why are so many of these only one frame?

#

This is gonna be a pain

worn eagle
#

so it's easier to split up parts of an animation with parry colliders

jolly jungle
#

Ah, alright

#

either way, how do I access the clip itself

#

Wait I think I can figure this one out

#

Wait, nope

#

will this work?

#

gonna test it

worn eagle
#

GetComponent<tk2dSpriteAnimator>().Library.GetClipByName("").fps

jolly jungle
#

Oh

#

Hm

#

Thanks

#

what's tk2dAnimatedSprite used for, then?

worn eagle
#

deprecated

jolly jungle
#

Ah, thanks

#

Aight, it works perfectly shroompog

#

Thanks

cedar hemlock
#

<@&283547423706447872>

remote zealot
#

wtf was that "hi gays" lmao

#

anyway thanks

primal latch
#

Could anyone try to open debug mod during the regular radiance fight? It throws an error for me

cedar hemlock
#

copy the error and send it here

primal latch
#
[ERROR]:[DebugMod] - System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: The scene is invalid.
[ERROR]:[DebugMod] -   at UnityEngine.SceneManagement.Scene.GetRootGameObjects (System.Collections.Generic.List`1[T] rootGameObjects) [0x00034] in <047294ce45cf4b9a9441e48d2b8435e4>:0 
[ERROR]:[DebugMod] -   at UnityEngine.SceneManagement.Scene.GetRootGameObjects () [0x0000d] in <047294ce45cf4b9a9441e48d2b8435e4>:0 
[ERROR]:[DebugMod] -   at DebugMod.EnemiesPanel.RefreshEnemyList () [0x0001e] in <2ceb67abcf884db8baebba7413b9ac06>:0 
[ERROR]:[DebugMod] -   at DebugMod.BindableFunctions.ToggleEnemyPanel () [0x00027] in <2ceb67abcf884db8baebba7413b9ac06>:0 
[ERROR]:[DebugMod] -   at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&)
[ERROR]:[DebugMod] -   at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in <9577ac7a62ef43179789031239ba8798>:0 
[ERROR]:[DebugMod] -    --- End of inner exception stack trace ---
[ERROR]:[DebugMod] -   at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00048] in <9577ac7a62ef43179789031239ba8798>:0 
[ERROR]:[DebugMod] -   at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 ```
light zodiac
#

version?

primal latch
#

1.5 but also happends on 1.4

cedar hemlock
#

i'll post it in bugs mulhima

light zodiac
primal latch
#

It doesn’t show radiance for me

vocal spire
#

”Works”

jolly oriole
#

Worksn't

light zodiac
vocal spire
#

Has fsmview avolonia crashing on false knight’s fsm been fixed

jolly oriole
#

test it?

vocal spire
#

fine

floral blade
#

redfrog what're you working on

tidal geyser
#

almost done with my idle animation!

vocal spire
floral blade
#

😮

winter moss
#

Does anyone know why this random lifeblood pin is here? I don't have pins unlocked yet

jolly jungle
#

A bug

floral blade
#

how many unity units can a scene be without requiring the camera to pan?

winter moss
#

Depends on the camera's z position

jolly jungle
#

You can lock the camera, technically

#

like boss arenas

floral blade
#

oh. so they lock the camera.

#

i just thought it was a size thing

jolly jungle
#

mhm

#

Either they lock once you enter the arena (like in Hive Kight) or they limit the panning (like in Nosk's arena)

jolly oriole
#

cameralockarea my beloved

floral blade
#

i'm gonna try it then

merry lotus
# worn eagle different cyclone textures

If you end up using red/orange/yellow as a color that has projectiles, I please ask that you either

  • don't, or
  • find a way to make them more visible from the background

I have red-brown colorblindness, which is not only relatively common as far as colorblindness goes, but also makes Sheo already a miserable fight. Please don't make your Sheo do that too lol

cedar hemlock
#

huh never knew that, learned something new

merry lotus
#

@rough pulsar
I was just testing HK DRPC for 1.5, and it seems to be failing to get the other plugins it needs, which I thought was supposed to be automated now?

Edit: posting here because I assume all 1.5 mod stuff should be here more than other channels rn

floral blade
#

loading sprites from unity assetbundles gives me pink sprites pls help

floral blade
#

it's set to sprites - default currently in unity, do i need to manually set them to something in mod code?

vocal spire
#

Maybe, iirc there’s a way to properly set them in the editor

floral blade
#

and what layer is background and foreground stuff that player can not interact with are set on ? (if a reference exists , that tells what each layer does it would be great!)

floral blade
#

saleh you are a literal god

rough pulsar
#

can you post the log file?

merry lotus
#

I can't post the whole thing rn, but this was the issue:

[INFO]:[HollowKnightDRPC] - Mod initializing
[ERROR]:[API] - Failed to load Mod `Hollow Knight Discord RPC`
[ERROR]:[API] - System.DllNotFoundException: discord_game_sdk
[ERROR]:[API] -   at (wrapper managed-to-native) Discord.Discord.DiscordCreate(uint,Discord.Discord/FFICreateParams&,intptr&)
[ERROR]:[API] -   at Discord.Discord..ctor (System.Int64 clientId, System.UInt64 flags) [0x0030c] in <ca37d2d2c44a45d8801c2efd32523f02>:0 
[ERROR]:[API] -   at HollowKnightDRPC.HollowKnightDRPC.Initialize () [0x002d8] in <ca37d2d2c44a45d8801c2efd32523f02>:0 
[ERROR]:[API] -   at Modding.Mod.Initialize (System.Collections.Generic.Dictionary`2[TKey,TValue] preloadedObjects) [0x00000] in <c2a48dab016a4177be1ebaa8c1a99f48>:0 
[ERROR]:[API] -   at Modding.ModLoader.LoadMod (Modding.ModLoader+ModInstance mod, System.Boolean updateModText, System.Collections.Generic.Dictionary`2[TKey,TValue] preloadedObjects) [0x00022] in <c2a48dab016a4177be1ebaa8c1a99f48>:0 ```
floral blade
#

trying this now

rough pulsar
#

what OS are you on?

merry lotus
#

I don't seem to have any other messages from it, so it never even tried to get them 🥴

merry lotus
#

Wait

rough pulsar
#

wait did you update it recently? version number should be 1.1.3.1 beta or something

#

auto installation was implemented in 1.1.3 (and 1.1.3.1)

merry lotus
#

Does it use Global Settings to know if I had the files?

rough pulsar
#

it just directly checks from the game file location

#

it doesn't have any global settings or save settings

#

can you check the plugins folder?

merry lotus
#

it has the joke readme

rough pulsar
#

check C:\Program Files (x86)\Steam\steamapps\common\Hollow Knight\hollow_knight_Data\Plugins

#

and see if x86 and x86_64 exists

merry lotus
#

This install is GoG, fwiw

#

but I'll check the relative folder

rough pulsar
#

i tested the auto installation function multiple times in my steam installation

merry lotus
#

Okay, so it does have them, but it's failing to use them?

rough pulsar
#

no it totally doesn't have them

#

actually this is my code's fault

#

it only checks if x86 and x86_64 exists because in my plugins folder those folders are non existent

#

i'll start working on it now

#

i'm gonna ping you when i release the patch

nimble lake
#

is there a way to increase the knight's horizontal air speed?

rough pulsar
merry lotus
cedar hemlock
#

1.4 or 1.5

rough pulsar
#

1.5

cedar hemlock
#

yay

#

i won't be able to test cus late but still yay

rough pulsar
#

ok

patent zealot
#

<@&283547423706447872>

#

ty

primal latch
rough pulsar
#

Discord shitro instead

primal latch
#

Ah

#

Yay

rough pulsar
#

Csgo knives > everything

#

Unpopular opinion

cedar hemlock
#

shitro shroompog

primal latch
#

I agree. Why make something paid and let bots use it for free?

cedar hemlock
#

nqn does prob not have nitro for free

primal latch
#

Bots have nitro for free

primal latch
cedar hemlock
#

bullying soulpensive 😔 grubsad sadcowgrub hollowsad shamansad

rough pulsar
#

Error shaming mods

primal latch
jolly oriole
# worn eagle ok

that is straight up rude smhmyheads jingle, you can't just do that to people

safe hamlet
#

nah

#

it's not

#

quite deserved

jolly oriole
#

you are quite deserved 😤

rough pulsar
#

your mom is quite deserved

floral blade
#

welcome to my ugly abode

winter moss
#

How do I find the scene name of the room outside the Ancestral Mound?

rough pulsar
#

um

#

um

#

benchwarp

#

benchwarp has a global setting that displays name of rooms

#

at bottom left

vocal spire
#
  1. Debug mod
  2. Benchwarp
  3. Map location to room names in pins
#

3rd option

#

I suggest the 3rd option since it doesn’t require getting a mod and opening the game

winter moss
#

Thanks that's going to make this so much faster

rough pulsar
#

time to

#

put a primal aspid into pop

#

i'm gonna do it and nothing is stopping me

jolly oriole
#

56, when is mi2.5 done?

copper nacelle
#

idk a week ago

#

I just want to refactor things

#

works fine functionally

jolly oriole
#

put it on github, let me refactor, definetly won't go wrong

worn eagle
#

56, when is Crisanta done?

copper nacelle
#

that's so much effort

#

and it's on gh

rough pulsar
#

sfgrenade, when is Pale Court done?

copper nacelle
#

on the dev branch

#

you can see my beautiful wip commit

#

which I need to squash

rough pulsar
#

what is crisanta

jolly oriole
#

absolutely telling commit messages you have there, mr 56

fickle sparrow
#

mold simulator

rough pulsar
# nimble lake what's the difference

It originally checked if x86 and x86_64 folders existed in plugins folder, but due to dwarfwoot's situation where he already had x86 and x86_64 folders (which had other dlls) i had to tweak my code so that it checks for the dlls inside them now

rough pulsar
#

it takes a fucking year to load white_palace_18

#

IT'S STILL LOADING THE ROOM

#

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

#

NOOOOOOOOOOOOOOOOO

worn eagle
#

would it be possible to make this look better with like a screen space shader or should I just go the material route

rough pulsar
#

is this even the correct way of loading primal aspid?

vocal spire
rough pulsar
#

aaaaaaaaaaaaaaaaaaaaaa

#

hold on let me check that scene again

#

IT IS SUPER SPITTER

#

THANK YOU REDFROG

vocal spire
#

Np

buoyant obsidian
#

I think it looks good already aside from the slight fog and the dark box on the right

worn eagle
#

just to make it look cool with white silhouettes on a black bg ig

copper nacelle
#

yo that's so fucking sick

vocal spire
#

Nice job with that

fair rampart
#

is anyone else making radiance mods rn?

#

because if anyone needs a good music track for their mod I found a good mashup

#

im actually surprised there's no radiance mods with altered music

marble locust
#

has someone made a mod where it says git gud when you die

merry lotus
merry lotus
# rough pulsar <@!123361745023533058> Take this because i'm too lazy to publish a github patch

It appears to fail still.
Should I delete that folder and try maybe?

Edit: I tried deleting the folder inside of plugins, and it didn't fix anything grubsad
Same exact message:

[INFO]:[HollowKnightDRPC] - Mod initializing
[ERROR]:[API] - Failed to load Mod `Hollow Knight Discord RPC`
[ERROR]:[API] - System.DllNotFoundException: discord_game_sdk
[ERROR]:[API] -   at (wrapper managed-to-native) Discord.Discord.DiscordCreate(uint,Discord.Discord/FFICreateParams&,intptr&)
[ERROR]:[API] -   at Discord.Discord..ctor (System.Int64 clientId, System.UInt64 flags) [0x0030c] in <1ef5e954bb9c42bbafc6deba578f9819>:0 
[ERROR]:[API] -   at HollowKnightDRPC.HollowKnightDRPC.Initialize () [0x002d8] in <1ef5e954bb9c42bbafc6deba578f9819>:0 
[ERROR]:[API] -   at Modding.Mod.Initialize (System.Collections.Generic.Dictionary`2[TKey,TValue] preloadedObjects) [0x00000] in <c2a48dab016a4177be1ebaa8c1a99f48>:0 
[ERROR]:[API] -   at Modding.ModLoader.LoadMod (Modding.ModLoader+ModInstance mod, System.Boolean updateModText, System.Collections.Generic.Dictionary`2[TKey,TValue] preloadedObjects) [0x00022] in <c2a48dab016a4177be1ebaa8c1a99f48>:0 ```

I can copy over the stuff from my 1432 install-- but I can just wait and keep trying to help figure out why this ones not working if too.
worn eagle
#

not an empty room, just all the game objects that aren't the knight, enemies, or godseeker have their renderer materials set to black

#

if anyone could guess what the translucent box to the right could be so that I don't have to parse the scene tree that'd be nice

primal latch
worn eagle
#

nope, just GG_Painter

primal latch
#

Wierd.

nimble lake
#

is there a way to increase the knight's horizontal air speed?

jolly oriole
#

should both be controlled by one const value

#

would need to check for in air after this method (HeroController.Move)

arctic marsh
#

lemme just confirm, i can ask how to make customknight skins here right?

cedar hemlock
arctic marsh
#

well i saw someone making a skin and they had all the sprites neatly separated in a folder and named like "idle [some number]", where can i find those in such a format and whats some good free software to edit them
if these questions dont fit the channel i will move em

cedar hemlock
#
  1. look at pins and get spritepacker
  2. look at #modding-discussion and get the krita plugin
  3. get the modified GODump
  4. dump the sprites and edit them
worn eagle
cedar hemlock
#

oop nice

worn eagle
#
fixed4 frag(v2f IN) : SV_Target
{
    fixed4 c = tex2D(_MainTex, IN.texcoord);
    //c.rgb = _SilhouetteColor.rgb;
    
    return c;
}
#
fixed4 frag(v2f IN) : SV_Target
{
    fixed4 c = tex2D(_MainTex, IN.texcoord);
    c.rgb = _SilhouetteColor.rgb;
    
    return c;
}
#

why

jolly oriole
#

idk, mayba a isn't being copied over

arctic marsh
arctic marsh
#

ah i didnt read it, i was being a dumbass, thanks

#

to add to this dumbassery i dont know where to put the spriteloader, is there a plugin folder where i can put it?

worn eagle
#

had to do

c.rgb *= c.a;

for some reason

worn eagle
patent zealot
#

a bit

#

This is yours

#

compared to the normal one

jolly oriole
#

Nice, in the middle of trying to refactor mi2.5 i get a fucking bluescreen of DPC_WATCHDOG_VIOLATION

rough pulsar
#

@jolly oriole HKWorldEdit should be able to preview the scene accurately right? i wrote down the coordinates for aspids to spawn but they don't seem to spawn at all

#

or maybe there is something wrong within my code?

jolly oriole
rough pulsar
jolly oriole
#

oh

#

try so setActive

rough pulsar
#

ok

jolly oriole
#

ig aspid is a preloaded one

rough pulsar
#

yeah

jolly oriole
#

and with that it's inactive, and instantiating puts it in the same active state as the original

worn eagle
#

be sure to get its pfsm and set its state to "Init"

rough pulsar
#

ok

jolly oriole
#

it's set automatically when setting it active

rough pulsar
#

then im gonna go ahead and test it

jolly oriole
#

but if you want to be really carefull, you do

foreach (var pfsm in go.GetComponentsInChildren<PlayMakerFSM>()) {
    pfsm.SetState(pfsm.Fsm.StartState);
}
#

... after instantiating

rough pulsar
#

it doesn't attack for some reason

#

so i have to set the fsm

jolly oriole
#

i guess

floral blade
#

if i have 2 mods with the same namespace like "Utils" would that break things ? or is it okay because they're separate dlls ? or do the namespaces get merged into 1?

#

or is it like the RootNamespace bit in csproj makes them separate ?

copper nacelle
#

it's fine with separate dlls afaik

jolly oriole
#

as long as the namespace is different i'd say

#

so like SFCore.Utils =/= FrogCore.Utils

copper nacelle
#

you have to specify if it's the same by alias

#

I'd do whatever.utils like grenade said though

floral blade
#

what i'm trying to do is setup a shared project so i dont have to rewrite utilities that i use often in my mods but also not require a dll dependency

jolly oriole
#

then you'd probably run into issues with duplicate types

#

in the game of course

proven plover
#

I just downloaded one of Sf Grenades mods, and most of the code has errors. The code says that I'm missing something called "sgKey.sfk" though, so that might be it. It might also be missing references, because it seems that whatever mod I get to see the code of always does. Here's a photo:

copper nacelle
#

you gotta fix the references

jolly oriole
#

click on the .csproj file, line 15 and change that to your hk installation managed folder

copper nacelle
#

and a shared project should still have a root namespace with like a library name

proven plover
#

thanks!

jolly oriole
#

the sgkey thing is only for releases, not important that it's missing

proven plover
#

k

floral blade
#

there is also this https://stackoverflow.com/questions/314101/difference-between-root-namespace-and-assembly-name
Assuming that you are talking about .NET (with relation to Visual Studio) then the root namespace is what each class you create in a visual studio project will become part of. It is also the base for any sub-namespaces that are automatically assigned when you create a class inside of a project folder.

so if i import my shared project , in mod 1 would it essentially be mod1.utils & in mod2 mod2.utils ?

copper nacelle
#

no

#

it'd be shared.util if you put everything under a root namespace like you should

floral blade
#

but then if both the mods were compiled with different versions of the utils project, in game which one would be used ?

copper nacelle
#

whatever version of the library you actually load

#

provided your updates are backwards compatible it'll work fine

floral blade
#

but the library's code is compiled in the mod

copper nacelle
#

why would you do this

jolly oriole
#

wouldn't it be massive duplicate type errors if the util classes are public?

copper nacelle
#

only if they ref one of their other mods

#

otherwise it doesn't matter at runtime

floral blade
#

this is why i am trying to understand if it namespace them

floral blade
jolly oriole
#

but the mapi loads all types?

#

or does it not matter for that?

copper nacelle
#

it doesn't matter

#

your assembly references types with the assembly for said type included

floral blade
#

so unless i try to make one of my mods a dependency of another mod with the same namespace i'll be fine ?
and even in that case i can just do what we do for UnityEngine.Object ?

copper nacelle
#

yes, no

#

in the case you do ref another one of your mods you'll have to give it an alias

#

but then you can just qualify it by name

floral blade
#

so in my csproj i'd add => <Aliases>Main</Aliases> for the reference

using potato = Main::Utils.potato;

and then i can use potato.Version();

copper nacelle
#

probably

#

I haven't used aliases

floral blade
#

okay so far this seems like a good solution for what i want then, thanks!

winter moss
#

Help I need to find the modding logs

primal latch
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/```
cedar hemlock
#

<@&283547423706447872>

floral blade
#

<@&283547423706447872>

wary rose
jolly oriole
copper nacelle
#

that's fair

#

I moved those out of moditem now

jolly oriole
#

also fair

rough pulsar
#

what is it with scam bots coming here more often

cedar hemlock
#

beeg server

light zodiac
#

?serverinfo is the reason

finite forumBOT
#
Hollow Knight
Owner

Simo#4622

Channel Categories

7

Text Channels

61

Voice Channels

6

Members

134677

Roles

23

Role List

@everyone, Admins, Bots, Mods, Speedrun.com Mods, Muted, Art Staff, Team Cherry, Modding Staff, Speedrun Racer, Dyno, Speedrunner, Nitro Booster, SpeedGaming, AutoDelete, Statbot, Wiki-Bot, Race Organiser, Randomizer Racer, GiveawayBot, ModMail, Dyno Premium, Speedrun Community Support

rough pulsar
#

i mean

#

this channel

cedar hemlock
#

every channel

#

we just check here more often

rough pulsar
#

ah i see

#

i'm just biased to this channel

cedar hemlock
jolly oriole
#

rip ig

worn eagle
#
using Modding;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.SceneManagement;
using USceneManager = UnityEngine.SceneManagement.SceneManager;

namespace SpawnAspid
{
    public class SpawnAspid : Mod
    {
        private GameObject _aspid;
        private const string _scene = "Deepnest_East_07";
        private const string _obj = "Super Spitter";

        public override List<(string, string)> GetPreloadNames() => new() { (_scene, _obj) };
        public override void Initialize(Dictionary<string, Dictionary<string, GameObject>> preloadedObjects)
        {
            _aspid = preloadedObjects[_scene][_obj];

            USceneManager.activeSceneChanged += OnSceneChange;
        }

        private void OnSceneChange(Scene prevScene, Scene nextScene)
        {
            if (nextScene.name == "White_Palace_18") AddAspid(new Vector2(284, 19));
        }

        private GameObject AddAspid(Vector2 position)
        {
            GameObject aspid = GameObject.Instantiate(_aspid);
            aspid.SetActive(true);
            var aspidHP = aspid.GetComponent<HealthManager>();
            aspidHP.hp = int.MaxValue;
            aspid.transform.SetPosition2D(position);
            aspid.GetComponentsInChildren<PlayMakerFSM>().ToList().ForEach(pfsm => pfsm.SetState(pfsm.Fsm.StartState));
            return aspid;
        }
    }
}
rough pulsar
rough pulsar
#

how do i check if the knight is in air

floral blade
#

maybe cstate?

rough pulsar
#

i forget cstate exists

#

thank

cedar hemlock
#

who alp tho

ornate rivet
#

doxxed

cedar hemlock
#

hk-meme

rough pulsar
cedar hemlock
#

why they bad

fair rampart
jolly oriole
floral blade
#

apparently my scene needs to have a scene manager or i will get NREs

#

should i just make a random GO and add the SceneManager component on it ? 😮

#

ToT seems to preload it

jolly oriole
#

1.4.3.2 or 1.5?

rough pulsar
cedar hemlock
#

hahaha lol

jolly oriole
floral blade
#

1432 for now but will 1.5 it too

jolly oriole
#

for 1.5 you can use a newer version of sfcore, for 1.4.3.2 you'd have to preload it and change things you want for it to work properly

rough pulsar
#

Nice log

floral blade
#

okay, and preloading would work for 1.5 too ?

jolly oriole
#

yes

#

i think even the 1.5 tot does the preload

floral blade
#

i assume its because of the other GOs and values it holds that we can't just add it to a random GO ? and that's what the patcher does basically pre-fills it in?

jolly oriole
#

yea

#

@cedar hemlock no need

cedar hemlock
#

why not

jolly oriole
#

clogs up chat space

#

i only have a 480x320 monitor

cedar hemlock
#

grubsad _ _

#

smol

floral blade
#

i'll just preload it too then thanks!

worn eagle
jolly oriole
#

smh

floral blade
#

NRE gone, even got some particles lol

copper nacelle
#

anyone have thoughts on moving proxies/handlers into a delegates namespace?

#

prob the only thing i really want to change still

rough pulsar
#

Can anyone give me the crystal hunter gameobject path?

worn eagle
#

Mines_07/Crystal Flyer

rough pulsar
#

Thanks

jolly oriole
#

i love how tc missspelled the file name of the charm whtie_charm_large_pieces_0001_left

copper nacelle
#

i will take this as a yes

worn eagle
#

dk anything about it but what advantage does this bring?

jolly oriole
#

idk why i didn't do that sooner

copper nacelle
#

grouping

#

is about all

#

not really a huge change

#

they just kinda float

#

in the docs esp

#

which is annoying

rough pulsar
#

This should work right?

#

Preloading enemy that the user chose

floral blade
#

it should

#

if the settings is global settings iirc

rough pulsar
#

Global settings

#

Awesome

floral blade
#

adding a bench saved it as the mapZone i used and loading the scene gives more NREs lol

#

but that's a task for tomorrow

jolly oriole
#

oh yea, have fun with benches in custom scenes

proven plover
#

Can I have a dll version of sf grenades gravity mod? Thanks

proven plover
#

ty

#

How do I update the modinstaller?

merry lotus
#

Mod installer isn't on 1.5

proven plover
#

oh

#

then how would I play that mod?

rough pulsar
#

This channel's pins

proven plover
#

what pin?

rough pulsar
#

Think codemassi think
Which pinned message has the 1.5 modding api?

proven plover
#

oh

#

Think I found it

#

wait

rough pulsar
#

The one with "nightly builds"

proven plover
#

thanks

fair rampart
#

quick question

#

do the Light Orbs spawn around you or the Radiance?

#

because there's this Vector 3 called "Hero Pos"

dense quarry
#

How do you make mods? I cant find any tutorials and I want to make a mod that makes bosses harder

patent zealot
dense quarry
#

Thanks

dense quarry
#

Is the api from the installer?

#

Or do I download something else

rough pulsar
#

dang i was lat

#

e

dense quarry
#

Im still not sure how to make mods and I dont really get the tutorials because ive never done anything like this before so idk what to do

buoyant goblet
#

Have you updated the mod installer for version 1.5 ?

copper nacelle
#

yeah but i haven't released it

#

still want to change things

buoyant goblet
#

I hope you release it soon please!

buoyant goblet
copper nacelle
#

yes no

crude wave
#

is there a planned release date?

deep wave
#

planning is overrated
disassociating for 4 hours at 3am and waking up having accidentally released an update is based

turbid kayak
#

So if I wanted to start developing my own mods, where should I begin?

worn eagle
floral blade
patent zealot
#

ok thats really cool

floral blade
#

so apparently i need something called a tilemap that is a tk2dTileMap problem is idk how i can make it

primal latch
nimble lake
#

it’s like in terraria

light zodiac
vocal spire
hybrid meadow
#

I don't imagine most mods are updated for 1.5 yet anyhow

jolly oriole
#

Afaik there are like 30 or so mods for 1.5, in a working condition or not

floral blade
jolly oriole
#

Ah, that may be why i didn't have success with loading a save into a custom scene

floral blade
#

it's possible i am just preloading it and yeeting it's renderData and that seems to work

jolly jungle
jolly oriole
light zodiac
jolly oriole
#

mi2.5 uses those

vocal spire
#

Mi1.5(new version) also uses those

#

*a modified version of those stored locally on my computer that I may or may not push to a fork at some point

jolly oriole
#

?????????

#

what was TCs google form again?

steady comet
#

Does anyone know why

ParticleSystem.MainModule psm = go.GetComponent<ParticleSystem>().main;
psm.startColor = Color.green;

sometimes doesn't change the colour of the particle system?

jolly oriole
#

even better, it shows nowhere that it's dying

floral blade
#

i have two benches one in in front of the player and another is behind 😐

#

i instantiate one in a monobehavior and another in the mod class

#

nvm. i typecasted it to vector 2 without realising it.

jolly jungle
jolly oriole
#

whatever the currently latest 1.5 is

#

1.5.75 something

worn eagle
#

self awareness

jolly oriole
#

that is somewhere when finding a transitionpoint

jolly oriole
#

*all of my 1.5 hk installations

#

as it turns out, my entire hk installation was fucked, now to get to other errors

#

so, idk why vs does it, but not having

using Modding.Delegates;

in a cs file, but using e.g. an languagegethook lets the modloader die because it can't find the type, even though vs shows no errors

#

wow, now it doesn't anymore, fuck this

worn eagle
rough pulsar
#

cool

worn eagle
#

dunno why it doesn't work for some scenes like distant village and colo

floral blade
#

does it do reverse of what the game does to show map? or is it something you had to hardcode ?

jolly oriole
worn eagle
#

hardcode

jolly oriole
#

i also found out that the game apparently doesn't care if you set the internal resolution to 1920x1080, though i haven't tested cutscenes yet

jolly oriole
#

nvm, the game straight up just resets those

floral blade
nimble lake
rough pulsar
worn eagle
#

K doesn't do anything yet

rough pulsar
#

Oh

#

So you have a hardcoded key atm?

worn eagle
#

it's K for you too? I thought it was bound to whatever the attack key was

nimble lake
#

it's not doing anything for me

rough pulsar
#

Oh

#

No i haven't even tried out the mod yet

#

Try attack button @nimble lake

nimble lake
#

oh wait actually i just noticed the mod failed to load

rough pulsar
#

sad

worn eagle
#

are you on 1432

nimble lake
#

yes

worn eagle
#

1.5 mod

nimble lake
#

damn.

#

no 1432 version?

rough pulsar
#

Download the 1.5 modding api via this channel's pinned messages

nimble lake
#

yea but i'm playing on 1432

#

mods mods aren't in 1.5

ornate rivet
#

so cool

worn eagle
nimble lake
worn eagle
#

show log

nimble lake
jolly oriole
#

dandy, release it, so that's the first mod to add an actual new area to the game

worn eagle
floral blade
#

ToT already adds a new area though right ?

#

or do u mean with save slots

vocal spire
#

I guess tot is more like a sub area

jolly oriole
#

somebody once let me know that apparently the sanctuary will still be the first mod that adds a new area, because tot is just white palace, so just to spite them, you can release whatever you're working on before the sanctuary to still snatch that

ornate rivet
#

bruh fuck them

#

ToT does count

#

but technically speaking my castlevania mod is the first one :)

jolly oriole
#

yea

vocal spire
#

Good point

jolly oriole
#

by a large margin even

worn eagle
#

what about cagney carnation 😔

vocal spire
#

Put it on the installer and you’re good to go, claimed the title of “made the first mod with a new are”

vocal spire
jolly oriole
ornate rivet
vocal spire
#

We are speaking of new area as in new room loaded from assetbundle?

jolly oriole
#

good question

#

i don't even remember rn who told me that in the first place

floral blade
#

also yes ToT does count

jolly oriole
vocal spire
#

What was the first mod on the installer to add a new scene

#

I’d say that’s the first mod to add a new area

#

If not, then the first mod to add an scene with one of those area title things, which I think is tot

jolly oriole
#

on the installer? either tot or redwing (as it adds a cutscene, though technically not a scene)

#

is there even another mod on the installer that adds a scene

vocal spire
#

Cagney

jolly oriole
#

oh yea

#

totally forgot the indie crossovers

#

sorry to everyone who worked on those

ornate rivet
#

someone should add artorias to that mod

#

now that would be gamer

vocal spire
#

So jngo would be the creator of the first public area-adding mod

#

Someone should add sans

worn eagle
#

somebody should add crisanta

ornate rivet
#

@ 56

#

crisanta with her new voice would be hot

ornate rivet
#

first mod with a boss that talks

vocal spire
#

lol

vocal spire
#

A couple bosses that talk

ornate rivet
#

I meant talk as in have voice acting that isn't gibberish

vocal spire
#

Yes

ornate rivet
#

oh dang

jolly oriole
#

wait, no cagney yet

#

so congrats cagney to be the first mod that adds a custom area to the game

nimble lake
jolly oriole
copper nacelle
#

things in the installer

#

I put out the api release

#

changed one thing then which was moving delegates to a namespace

jolly oriole
#

ah, thought you still wanted to change more things other than the delegate namespace

floral blade
jolly oriole
#

i will now report you for piracy hollowpirate

jolly jungle
#

audio theft smh

floral blade
rough pulsar
#

Thanks

#

Very descriptive

light zodiac
#

Could you like read one line below grubsad

jolly oriole
#

reading WutFace

merry lotus
# worn eagle

I know that you're probably not looking to maintain a 1432 version, on account of 1.5 hopefully being the standard soon™️, but fwiw I cannot get this version of it to work.
The TP/Attack button just doesn't seem to have an effect VV

worn eagle
#

tp doesn't do anything in that build

#

should I just make it so that the cursor is visible all the time instead of having to press attack to show/hide it

winter moss
#

It's nearly complete

junior thunder
#

oh what's dat

surreal kindle
#

does anyone know a more up to date version of utinyripper?

merry lotus
#

Mod Installer 1.5 / 2.5 /3 question (possibly a ModLinks Q?):
Will the "next generation" of mod installers correctly install the Unix modding API on Unix systems?

jolly oriole
#

yes

safe bough
#

anyone know a way i could disable achievements from being earned

#

??

#

nvm

worn eagle
#

anyone know why loading into a scene w GameManager.BeginSceneTransition causes the inventory to go wack and get stuck?

jolly oriole
#

doesn't transitionpoint when entered also broadcast some fsm events? can't check rn though

#

but instead of calling GameManager.BeginSceneTransition directly, you could also just plonk a trigger-collider with a TransitionPoint on the player and let the game handle the rest

worn eagle
#

trueeee

jolly jungle
#

Anyone knows what in my mod messes up Geo?

#

The geo counter is updated only between rooms

#

and geo that is picked up doesn't disappear

#

Doesn't happen when only my mod is off

#

But I didn't do anything to touch geo in there

steady comet
#

I had this problem when I forgot to put orig(self) in the code I was hooking onto HeroController.Start, so it could be that

steady comet
#

Does anyone have a build of the latest version of the 1.5 MAPI?

steady comet
#

Do I just take the latest, or the one that says build?

cedar hemlock
#

the latest i would think

#

master seems to be for 1.5 so the latest would prob work

worn eagle
#

inventory still gets stuck :|

steady comet
#

As in, the modding api loaded but none of my installed mods did

worn eagle
#

if someone could try, open the map and click on a spot, then open your inventory and see if you can close it

steady comet
#

Can I simply plonk the dlls in the mods folder, or is there somthing special for 1.5 I need to do?

cedar hemlock
#

ah yes

#

put one folder between the mods folder and the dll's

steady comet
#

WTF

#

I'm guessing the disabled folder doesn't count

cedar hemlock
#

new change

#

nope

steady comet
cedar hemlock
#

was changed with modpacks and readmes and stuff in mind

#

every mod can just give a folder and have a folder of its own

#

but i still don't get why the mods folder gets ignored

steady comet
#

OK, I created a folder called "hivescream" between Mods and the mods

cedar hemlock
#

test and see what happens

steady comet
cedar hemlock
#

first see if i am right and am not stoopid elderC

steady comet
#

OK you're right except I think I need up to date versions of benchwarp, debug and qol

cedar hemlock
#

lol

#

nice

#

<@&283547423706447872>

#

wow i am slow 🐌

jolly oriole
primal latch
#

SFGrenade: doesn’t like to be pinged
Also grenade: pings 56 for something that someone else needs help with

cedar hemlock
#

not help

#

its a suggestion

primal latch
cedar hemlock
#

but why

fickle sparrow
#

wtf

#

Like

#

PLEASE

#

Just make an issue

steady comet
#

K

fickle sparrow
#

With some supporting arguments on why it should be

#

Before you make a pull request

#

Or something

steady comet
#

Oh

#

Well the only supporting argument is "it's like way more convenient, and there's no reason to force a pointless folder in between" except for what mandar1jn said I guess

cedar hemlock
primal latch
#

Also something wierd: why load from one sub folder but not sub folders of those folders? Like: let’s say there is a imaginary mod pack. It has a folder with the name of the mod pack and in that a seperate folder for each mod with a readme and all. That wouldn’t work

cedar hemlock
#

i thought it would?

#

idk i have no idea i shouldn't be talking abt this with no clue what it actually does

primal latch
#

This recuses all subdirectories instead of just one level deep, which is worse as you then don't preserve the behaviour of moving mods into folders acting as a disable. As it stands you would move the mod folder into the disabled folder and as it only goes one deep this would have it be ignored by the loader.

fickle sparrow
#

top 10 pull requests that should have been issues first

primal latch
#

True

steady comet
#

Apparently copying fsm states with new FsmState(oldState) copies the transitions but sets the ToFsmState to null

#

Actually I guess it would have to do that because the new state isn't part of the old FSM yet but still, quite bothersome

winter moss
steady comet
winter moss
steady comet
#

Giving all maps for free is optional in randomapmod though? I was under the impression it shows you on the maps you've got if you don't do the "get all maps" thing

#

I might be wrong; I haven't used randomapmod

winter moss
#

It still shows whether you can access pins or not. For me that seems like it just gives you a list of locations to check

jolly jungle
#

How do I make this work?

#

I don't know what's the correct thing to write there

#

the editor isn't really helping me in this case

#

and the old apidocs don't have much pmfsm info

cedar hemlock
#

isn't it broadcastevent?

jolly jungle
#

I'll check

rough pulsar
#

what was the github link to modding api again

cedar hemlock
rough pulsar
#

thakns

cedar hemlock
#

np

jolly jungle
#

Wait, it gave me something

#

Hm

#

broadcastevent is obsolete

cedar hemlock
#

idk then

jolly jungle
#

"use sendevent with event target instead"

cedar hemlock
#

its only a warning

jolly jungle
#

So what can I o about this?

jolly jungle
cedar hemlock
#

what does it say if you do SendEvent()?

jolly jungle
cedar hemlock
jolly jungle
#

:/

cedar hemlock
#

:/

vocal spire
cedar hemlock
#

true

#

but doesn't the Hollow_Knight_Data folder get renamed to Hollow Knight_Data?

vocal spire
#

No?

#

Not renamed

#

Ex: I have both in my hk installation

#

Idk about gog but steam just updated the stuff in the root folder of hk and installed the hollow knight_data folder

jolly oriole
jolly oriole
cedar hemlock
#

for my 1.5 install

vocal spire
#

Huh

#

What

jolly oriole
#

screenshot or it didn't happen

vocal spire
#

I guess it could have been testing mi1.5 but I’m basing my info for 1.5 being that way off this

jolly jungle
#

That's not what I missed but something else tho, thanks

#

Goddamnit this is gonna take longer than I thought

#

Suppose I want to quit a state if a bool comparison is true/false

#

what do I do?

#

whoops @grenade my finger slipped hornetsip

jolly oriole
#

i think was it named

worn eagle
#

why does creating a transitionpoint kill the inventorythkhands

jolly jungle
#

No boolcheck so I'll assume its booltest?

jolly oriole
jolly oriole
worn eagle
#

it works fine in normal transitions

jolly jungle
#

So this should work?

worn eagle
jolly oriole
jolly oriole
mystic badger
#

:/

cedar hemlock
#

what

jolly oriole
#

<@&283547423706447872> you can yeet that post-in-every-channel-guy here

jolly jungle
#

yeah ruttie stop posting "what" in all channels smh zote

#

Anyways

jolly oriole
jolly jungle
#

?

#

Not my name

jolly oriole
#

the fsm state name

jolly jungle
#

it's attack 3 cooldown 1

#

tc chose it for me

jolly oriole
#

nah, it's a3 paper and counted CDs

jolly jungle
#

of course it is

#

Anyhow I don't understand how to just send FINISHED to it

jolly oriole
#
isFalse = FsmEvent.Get("FINISHED")

?

jolly jungle
#

Is this it?

#

without the ;

jolly jungle
jolly oriole
#

i would use the static Get (or similar) method, as that picks existing ones instead of creating new ones

#

oh

jolly jungle
#

Wait lemme stuff the whole chunk before it

#

This looks good?

#

Think so

#

worst case scenario wont work

jolly oriole
#

should work

#

if not, HutongGames.PlayMaker.FsmEvent.Finished is also an option

#

though i personally had like 2 times i tried it and it didn't work

floral blade
#

What the heck is a audio mixer snapshot

#

Is it just like what volume each of the kinds of music Is gotta be at ?

#

elderC I thought playing music would be easy

jolly oriole
#

O yea, those are fun

floral blade
#

Can / should you be setting clips for all of them or only just music

#

I looked at sfcore and tot

#

So I know that you can but I have no idea what I would accomplish with it

rough pulsar
#

Pale court's source code should help

floral blade
#

where it?

worn eagle
#

this is how I do it

var musicCue = new MusicCue();
var channelInfos = new MusicCue.MusicChannelInfo[] { new MusicCue.MusicChannelInfo() };
ReflectionHelper.SetField(channelInfos[0], "clip", _audioClip);
ReflectionHelper.SetField(musicCue, "channelInfos", channelInfos);
GameManager.instance.GetComponentInChildren<AudioManager>().ApplyMusicCue(musicCue, 0, 0, false);
floral blade
jolly oriole
#

new on a scriptableobject shroompause

rough pulsar
#

Hollow knight doesn't use fmod knightbonk

jolly oriole
floral blade
#

against just loading a clip and playing it in a loop

#

right now i do this +

#

this

#

but i dont understand why

jolly oriole
#

because it respects the set audio options

#

just playing audio, similar to how the pale court thing did it, completely ignores those