#archived-modding-development

1 messages ยท Page 43 of 1

slate owl
#

Well, I was mostly looking into "content" / "logic" feedback XD

hazy sentinel
#

Inconsistent use of 'geo' and 'geos'

#

Dirthmoth

slate owl
#

Ill correct spelling mistakes later.

buoyant obsidian
#

It's all pretty logical to me

slate owl
#

@buoyant obsidian Do you speedrun the Randomizer?

buoyant obsidian
#

Nope, but I'm familiar with the concepts involved

#

so your guide would be helpful to new speedrunners at least

buoyant wasp
#

i wonder if there's relatively easy way to get the radiance light pillar out of that scene...hmmmm

buoyant obsidian
buoyant wasp
#

I just had this amusing notion of taking the beams from CG1, CG2, and Radiance, and turning HK into Goku, where fireball has a windup, and the longer the windup, the bigger the beam.

buoyant obsidian
#

I actually messed around with something like that

#

The fireball prefab is a bitch to transform though, I'd need a copy of the fireball 2 prefab

#

since fireball 1 prefab would disappear immediately if there was even a twig 5 feet away from it

#

beams though sound viable if you could find them

halcyon blade
exotic venture
#

final battle

young walrus
#

actual final boss

#

you did it

halcyon blade
#

yup zote

buoyant obsidian
#

Poteiga you're on the old version

hazy sentinel
#

gruz mother has since been buffed intenseface

buoyant obsidian
#

as entertaining as that is there's a fixed one

#

@halcyon blade

halcyon blade
#

oh ok where can i get the new one?

hazy sentinel
#

moddb

buoyant obsidian
rain cedar
#

You want me to update that in the drive folder too or nah?

halcyon blade
#

Thanks, the mod is amazing btw, great job

buoyant obsidian
#

probably a good idea Seanpr

karmic drift
#

Does anyone know why that gruz mother boss fight looks like touhou?

lusty lantern
#

I'm now curious why there's no gruz goddess boss fight.

stray dune
#

wait until the gruzland DLC, folks

spice niche
#

Playable Gruz when

dire charm
#

anyone know how to mod charm ability? or at least where i need to mod it:P

#

i want to add some new ability for void heart charm and rebalance spell damage

#

i have dnspy and have mod charm cost before , but i don't know where to mod it ability

fair rampart
#

hmm

royal ridge
#

Ask @buoyant obsidian When he's online, He'll know for sure

dire charm
#

alright, i will have a lot of thing to ask maggot

buoyant obsidian
#

In HeroController, this.playerData.equippedCharm_X is the charm name

hazy sentinel
#

at seven five three

buoyant obsidian
#

so wherever that is used is a charm effect

hazy sentinel
#

hey do you pronounce your name seven five three, seven fifty-three, seven hundred and fifty-three, seven hundred five tens and three ones or something else

fair rampart
#

its pronounced "play lightbringer"

#

lol

young walrus
buoyant obsidian
#

seven fifty-three

hollow pier
#

it's actually seven hundo five tendo three wunno

dire charm
#

@buoyant obsidian ty a lot XD BTW is it possible to made some charm interaction too?also which one in HeroController i need to mod? there are too many thing in this one:P and is charm 20 soul catcher? if so i guess i got some feeling how to mod it , and where to mod boss damage and hp?

buoyant obsidian
#

I'd recomnend opening up Debug mod and figuring out how they handle things for enemy HP, damage, etc

#

some charms aren't possible to change and stuff like spell damage is really hard to change

dire charm
#

why it is hard to change spell damage?want to add some trait for void heartcryla

#

and also what is debug mod ? ><

young walrus
#

a mod that lets you do whatever you want pretty much

leaden hedge
#

every charm is possible to change ๐Ÿ‘€

buoyant wasp
#

the reason charm effects can be hard is because many of their effects are in the FSM's (Finite State Machines) which can be tricky to change in a reliable way. Spells are.....evil

dire charm
#

why FSM is hard to change ? sorry for being newbie in mod game:P

#

and is king soul charm also in FSM too?

buoyant wasp
#

because you can't just open the FSM in dnspy, if you want to see what one looks like dumped out, go get the FSM dumper in the pins and use it

#

you'll get a sense as to level of crap even the simplest things has in it

#

then you can look at something like NightmareGodGrimm mod or bonfire mod to see the amount of code required to change stuff

#

it's not impossible

#

it's just a pain to get right

#

an a cinch to just flat out break stuff

dire charm
#

fbm just want to make void heart useful by boost shadow spell damagecryla

buoyant wasp
#

ouch

#

spell damage is one of the worst ones to change ๐Ÿ˜ƒ

#

that said, we have done it

#

and i have code that does it

#

but it's on my personal PC, so will have to get it later

young walrus
#

boost shadow spell dmg

#

kek

#

MOAR OVERPOWERED

dire charm
#

at least i will not feel heartbreak when i transform my king soul to void heart:P

#

thank for help Wyza !!! , i will try to figure out how to use it later><

buoyant wasp
#

heh, if you have void soul, you're already so overpowered

#

and kingsoul is one of the worst trinkets in the game

young walrus
#

you had heartbreak over losing kingsoul?

#

but.... it sucks

buoyant wasp
#

that you'd never, ever, ever, want to use

#

5 charm notches for some spare soul? worthless

dire charm
#

when i play my second round , i mod other charm cost , so...

buoyant wasp
#

still worthless

#

i wouldn't equip it even if the cost was 1

exotic venture
#

i'd grab it if it was 1

#

could be useful

buoyant wasp
#

i'd use dreamcatcher if i have 1 spare slot

exotic venture
#

that one is more useful yeah

buoyant wasp
#

if i have 2 spare slots, there are a ton of other good charms

young walrus
#

that's 2 notches tho

buoyant wasp
#

dream catcher is 1

exotic venture
#

for 2 notches one could also have sharp shadow

buoyant wasp
#

which is....meme build territory ? ๐Ÿ˜›

young walrus
#

first off.... dream catcher isn't a thing

#

second.... soul catcher is 2 notches

#

dream wielder is 1

buoyant wasp
#

that then, words are hard today apparently

dire charm
#

i already try meme build for radiance XD

buoyant wasp
#

dream wielder > kingsoul

#

is what i meant

#

even if both were 1 notch

young walrus
#

2 soul for 1 dream nail swing is amazing

#

and it's supa fast

buoyant wasp
#

yup

deep pilot
#

Dream Wielder won me my first legit Trial of Fools

dire charm
#

yup , then i will say at least i can make void heart useful ๐Ÿ˜›

buoyant wasp
#

which is kind of sad, you get to the end of WP, you get kingsoul and are like, yes 5 notches, this must be amazing!

#

and.........nope

exotic venture
#

i did WP before going to the queen

#

fight me

buoyant wasp
#

but then you have 40 charms and there are basically only like 5 good charms

#

maybe 6 or 7, but it's not much

#

so, sadness abounds

deep pilot
#

Well, that number depends on whether you like nail builds or spell builds

buoyant wasp
#

like is not what i'm talking about, pure numbers is though

dire charm
#

i have spend 2H in WP and wish i can find PK to let he explain lore and...

buoyant wasp
#

you can literally kill HK with him getting 3-4 attacks off with Fluke+Shaman+Shade Soul

deep pilot
#

That's if you are a fan of spell builds

#

I hate 'em

buoyant wasp
#

and can basically 2-3 shot every other boss in the game

deep pilot
#

For me, I go full nail build all the way

buoyant wasp
#

spell builds are objectively better in every way. nail builds can be ok, but for speedrunning you do most of the game with nail 0

dire charm
#

i use spell build to win my first radiance fighthollowdab

buoyant wasp
#

because the investment to get a good nail build is huge

deep pilot
#

But we're not talking about speedrunning here, are we?

#

We're talking about just playing the game

exotic venture
#

everyone's got their preference

buoyant wasp
#

like by the time nail builds can be good, there isn't much left

exotic venture
#

i prefer the all rounder

buoyant wasp
#

you need quickslash+fstrength+nail3+ for it to really get anywhere near spells

deep pilot
#

If you only care about speed with which you can kill off bosses, then sure spells are your go to

#

But if you care about advancing your ability to dodge bosses and want more "satisfying" progression, then nail builds are better

young walrus
#

maybe spells are more satisfying for me

dire charm
#

with full upgrate nail and quick smash + Fragile Strength + Grubberfly's Elegy and good skill it will be powerful for boss fight , especial redaince:P

deep pilot
#

That's why I added progression to my statement, cause nail takes more build-up

#

With spells, it's a few charms and you're good to go

buoyant wasp
#

as far as "dodging" lul, if you want to talk about dodging bosses with folks, go watch @young walrus's NKG with basically nothing. it only takes 17 minutes of dodging

deep pilot
#

Does he spam spells which do tons of damage which kill off the boss in just a few hits?

young walrus
#

"basically" nothing

#

how bout exactly nothing

deep pilot
#

Cause if not, my point still stands

buoyant wasp
#

no, it literally took 17 minutes

young walrus
#

17 minute fight

#

no upgrades

buoyant wasp
#

my point being that using spells doesn't make you bad

deep pilot
#

Sure it doesn't

buoyant wasp
#

plenty of folks do spell builds can dodge just as well

deep pilot
#

But in terms of build-up the nail takes more effort

exotic venture
#

the heck

deep pilot
#

And that effort makes it feel more worth to me

exotic venture
#

no?

#

wut

buoyant wasp
#

which goes back to me saying "Objectively", not "Subjectively"

#

i specifically said that for a reason

exotic venture
#

spells can be as much as a pain as with the nail

#

but it's a matter of preference anyway

#

play the way you want

deep pilot
#

That wasn't the source of this convo

#

This was:

#
maybe 6 or 7, but it's not much```
buoyant wasp
#

which, uhm, still true, nail builds only need 2 charms to be good, spell builds are 3 charms

young walrus
#

i mean.... that's pretty true

buoyant wasp
#

so....

deep pilot
#

I was pointing out that the "6 or 7" good charms is pretty subjective

buoyant wasp
#

i didn't pull that number out of the air

exotic venture
#

6 or 7 isn't too out of the blue tbh

young walrus
#

shaman, soul catcher, eater, dream wielder, quick slash, Fr. Str., .....

#

that's pretty much it

#

i'm probably missing 1 or 2

exotic venture
#

maybe sharp shadow

young walrus
#

Fury

exotic venture
#

but that is situational

deep pilot
#

Some people would argue Quick Focus

#

Other's Joni's Blessing

young walrus
#

quick focus is only good if you get hit

exotic venture
#

outbeat if you just git gud

deep pilot
#

and even Hiveblood

exotic venture
#

hiveblood is get out of jail free card for WP

deep pilot
#

But people, surprise surprise, get hit

buoyant wasp
#

i'm going to walk away now before my brain explodes, also, we've now strayed pretty far out of the purpose of this channel hollowface

young walrus
#

quick focus would be like a C tier charm

#

not completely useless, but also not super useful

dire charm
#

some kind of charm are protected and are forgot by skilled people but it didnt mean they are useless for new player

exotic venture
#

you wanna get a useless charm

#

heavy blow

young walrus
#

steady body

#

long nail

exotic venture
#

MoP always outclasses longnail

young walrus
#

they're both C class charms

exotic venture
#

quicknail tho

young walrus
#

if you're good with base nail range, longnail and MoP add nothing

exotic venture
#

that's a good one

young walrus
#

quickslash is obviously amazing

#

A tier

deep pilot
#

You say that @young walrus but the Reddit survey done a few months ago clearly shows the community thinks otherwise:

young walrus
#

the community is wrong

#

something that puts shaman in c tier is completely wrong

#

and flukenest as E tier?

#

not even close

exotic venture
#

dashmaster D?

#

wtf

#

more like B

young walrus
#

this picture is completely wrong

#

on so many levels

dire charm
#

how can Wayward Compass not be in S tier?hollowlenny

deep pilot
#

Hey, I'm just putting up what the community ranked the charms as

exotic venture
#

grubsong on B

#

are you kidding me

deep pilot
#

Mind you, this was pre-Flukenest buff

exotic venture
#

the one who composed this takes damage on a minute basis

#

calling it right now

deep pilot
#

which, to be fair, is most of the HK community

exotic venture
#

also Fr Str on C

#

what

young walrus
#

the casual HK community doesn't know about the game in depth

#

having fluke as E shows that

#

even pre initial buff

#

since it was nerfed after that

#

it's still OP af

deep pilot
#

People value range more than damage

#

And Vengeful Spirit has more

exotic venture
#

and health more than spells too

young walrus
#

and nail more than dps

exotic venture
#

which is just wrong

#

imo

deep pilot
#

Apparently more than 200 people took part in that ranking

#

So it's a pretty hefty sample

exotic venture
#

the compass is B tier

young walrus
#

compass is D or E tier

exotic venture
#

anyone who know his way around doesn't need a compass

#

literally

young walrus
#

literally useless if you try for half a second

exotic venture
#

it just takes up a precious notch

dire charm
#

i think not every player are skillful to not been attacked by boss even once...

young walrus
#

that's not the point

deep pilot
#

Also, people struggle with reading maps all the time

young walrus
#

every boss has more than enough time to heal during

deep pilot
#

Hence why Compass is overvalued

exotic venture
#

nailmaster's glory on B is also a bit too high for my taste

#

i'd say that's a C

young walrus
#

i'd probably agree

#

B or C

#

like a low B

exotic venture
#

aye

young walrus
#

I should do a broadcast to classify these based on what they ACTUALLY do

#

not just perception from "most players"

exotic venture
#

didn't someone make a vid on charm combos

#

which were quite useful

young walrus
#

probably. i just mean to do a tier ranking of them based on how useful they are

deep pilot
#

My guess is that a good 80% of the people who created that ranking above did 1 playthrough

exotic venture
#

why not take the pic provided and rearrange them like how they are actually good

young walrus
#

that's what it'd be. and would add the new charms

exotic venture
#

grimmchild is dope

deep pilot
#

And one has to take into account first playthrough vs. subsequent playthroughs in terms of ranking

#

Cause for first playthrough, most people find Compass to be a godsend

young walrus
#

i never used it for my first playthrough

exotic venture
#

i didn't use it after i visited the first time

young walrus
#

it's just a notch penalty

#

for "comfort"

exotic venture
#

it becomes a liability

young walrus
#

^

deep pilot
#

Most people don't understand how to read maps properly

young walrus
#

yeah well..... 50% of people are below average

exotic venture
#

^

young walrus
#

or they think "i'm playing a video game, why would effort or a tiny bit of thought be required?"

deep pilot
#

Hey, that's the state of many video games nowadays

#

Not trying to defend Compass or anything

exotic venture
#

besides, it's a metroidvania

deep pilot
#

Just reasoning it out

exotic venture
#

usually you don't even get a map indicator with those

deep pilot
#

people have their opinion colored by games in other genres which are more prevalent

young walrus
#

i don't disagree. it's just.... disappointing

exotic venture
#

disappointing to say the least tbh

fair rampart
#

@hazy sentinel

exotic venture
#

where to put this?

fair rampart
#

Get the api

#

which is pinned

exotic venture
#

also could you send your savefile, so i can try too

fair rampart
#

then create a modding folder in hk data mangaement

#

oki

#

install and I'll send

exotic venture
#

got it

#

gimme dat shieet and i'll have a go at it

fair rampart
#

where is saves again

exotic venture
#

AppData\LocalLow\Team Cherry\Hollow Knight

#

from [User]

fair rampart
#

hm cant find it

#

where do you find yoru username

exotic venture
#

okay so

#

type int he search bar

#

%appdata%

#

go one folder above that

#

there you will find Roaming (where you came from)

#

Local and LocalLow

fair rampart
#

aight

#

I got it now

exotic venture
#

nice

#

then ya can send me the file corresponding to your save

#

so user1.dat = slot 1

fair rampart
exotic venture
#

et cetera

#

ok cools

bold edge
#

Well user1.dat means sf 1 most of the time

#

My original save was user2 for some reason.

leaden hedge
#

quick focus is literally never good

#

the maths doesn't work out

copper nacelle
#

what is shadeMP used for

#

is it the MP after you've died?

lusty lantern
#

Why do I now want Multiplayer hollow knight.

copper nacelle
#

is there/what is the variable that stores if your shade exists/you died and haven't killed your shade

#

nevermind found it

#

it's PlayerData.instance.soulLimited

rain cedar
#

There's also shadeMapZone if you care where specifically the player died

slate owl
#

Quick Focus + Shape of Unn means you can heal pretty much at any time.

leaden hedge
#

doesn't matter

#

at 9 hp with all spells, you'd need to get hit for 8 hearts, which takes 24hits to get the soul required to actually heal back ( which you'll have to do four times for something like nkg, twice for other bosses )
480dmg for nail hits, ~700 for diving 8 times is enough to kill everything except nkg / radiance, and it does kill them with f str + shaman stone

buoyant obsidian
#

He did the math

leaden hedge
#

and if you can miss with dive

#

I'd be impressed

buoyant obsidian
#

Baldur Shell is a good charm though

#

since it lets you learn what phases are safe to heal in without taking damage

slate owl
#

@leaden hedge You start the fight with 6 HP worth of soul.

leaden hedge
#

depends on the boss

#

and if you use that on dive thats like 500 damage

#

pre dive / fluke there might be an arguement for it

daring snow
#

I was doing a rando post-soul master with no desolate dive. Dropped into this room, gates closed but the Soul Warrior didn't spawn. Any thoughts?

#

Had to quit out and do the Soul Master exit gauntlet again ๐Ÿ˜ฆ

buoyant wasp
#

yeah, it's known that it happens, but not why

rain cedar
#

Is this randomizer specific?

buoyant wasp
#

pretty sure, ciplax found it and gave it to you a long time ago

#

you were puzzled as to why and warned folks not to do that

#

at least, i thought that's what this was

rain cedar
#

Nah he got a different soft lock

buoyant wasp
#

ah

#

mb then, not known

daring snow
#

the only thing I did that I think is associated with this problem is hitting the lever below through the ground, unlocking the shortcut

#

although i've done it a few times previously and this didn't happen

#

(I didn't enter the room from the right side either)

slate owl
#

@rain cedar Whats the logic behind Sharp Shadow requiring Shade Cloak + (Mantis Claw | Isma's Tear | (Monarch Wings + HARD + CLASSIC))

young walrus
#

You can get into deepest with those

#

Deepnest*

slate owl
#

Ismas Tear is used where?

young walrus
#

Queens garden

slate owl
young walrus
#

Yes you could. I think

slate owl
#

So formula is probably more complex.

#

Because you need to come from Greenpath so you need tyo kill Baldur.

young walrus
#

Or have ismas or claw

#

Or wings

#

Or dash

#

But you'd have shade cloak

#

Hmm....

#

I don't know if you can get into deepest tho

#

Need to wall jump down there

#

Room above deepnest

slate owl
#

If I have Shade cloak + Grubberfly Elegy, can I reach it?

young walrus
#

You don't need elegy

slate owl
#

And using shade skips.

young walrus
#

You could get into fog canyon from fungal

#

With just shade cloak

slate owl
#

Oh lol

#

We have dash, right

young walrus
#

Hmm.... Going that way with just dash isn't possible

slate owl
#

Where do you get stuck?

young walrus
#

Couple spots you have to walk jump ornuse wings

#

Room above deepnest

#

Room 2 rooms left of the spring

#

And you can't shade skip all of them

#

Maybe you can spike pogo there

slate owl
#

Wait, where are you going from?

young walrus
#

On the spikes on the wall

#

You come in from queens garden

slate owl
young walrus
#

Need claw or wings to get in there

slate owl
#

really?

young walrus
#

Wings with shade skip

#

Yes really

slate owl
#

Where?

young walrus
#

Conifers room

#

Just below him in fungal

#

Or are you coming from the left

#

Even so.... Need wings or claw right before the drop into the spring

slate owl
#

Cant you just pogo on the flying stuff?

young walrus
#

There isn't flying stuff in that room you can Pogo below cornifer

slate owl
#

Ill just go try directly.

young walrus
#

I think you could come in the top of QG, go through the moss prophet room, down into deepnest... But then you'd have to die to something right before the long spring drop to spawn a shade there

#

But I don't think there's anything there....

#

Or a shade spawn point close enough

#

That'd be the only shot with just dash to get down to sharp shadow

slate owl
#

Would need to savewarp...

young walrus
#

Yes

slate owl
#

Wait Im dumb.

young walrus
#

How did you get up there without the shade. Lol

slate owl
#

Oh, I cheated there.

young walrus
#

Haha

slate owl
#

But it turns out that even if I go back super far and die there, the shade will stay at the same palce.

young walrus
#

Probably the only spot it can spawn in that room

#

Hmm.... I wonder if a shade soul shot could hit it from way to the right

slate owl
#

Does the shade have a maximal distance from origin?

young walrus
#

Yes

#

It leashes back to spawn point

slate owl
#

Theres a wall between the shade and you

young walrus
#

Shade soul goes through walls

slate owl
#

Really?

young walrus
#

Yes

#

VS does not

slate owl
#

But its still too far up.

young walrus
#

Yeah, you'd have to hit it from way to the right

#

When you're higher up

slate owl
#

Can you shoot shade soul while being "hollow"?

young walrus
#

Yes

slate owl
#

Ok, I guess DebugMod doesnt work properly with Randomizer..

young walrus
#

Dunno if it has that much range

#

Or if the shade would have enough hp

#

To withstand it

slate owl
#

But its still too far

#

Even if I pogo the rock there.

young walrus
#

The shade soul shot is meant to aggro the shade

slate owl
#

It has to hit it to aggro it?

young walrus
#

Yes

slate owl
#

Well, its not going to hit it.

young walrus
#

That or you have to get close to it

#

Why's that?

#

If you're on the right by the centipede

slate owl
#

Ooh.

young walrus
#

You'd be even with it

#

IF the shade soul even travels that far

slate owl
#

๐Ÿ˜ฆ

#

It does hit it.

#

But it dies instantly.

young walrus
#

What nail do you have

slate owl
#

Nail?

#

Old

young walrus
#

It gets more HP with a nail upgrade

slate owl
#

I cant even alter nail level with debugmod...

young walrus
#

You can go get one though

#

Lol

slate owl
#

Thats work...

#

Rather just edit the save file.

young walrus
#

So is all this ish

#

Lol

#

That works

slate owl
#

Wiki says "The Shade will become stronger as the player progresses through the game; as the Knight gains more health and new Spells, the Shade will be tougher to kill and will be able to use the same Spells."

young walrus
#

Kek

#

Wiki

slate owl
#

Also dies instantly with Sharpened Nail

young walrus
#

You have shaman stone on?

slate owl
#

I can try with next nail upgrade but tbh, I wouldn't want that to be in the Randomizer

#

No charm.

young walrus
#

Hmm... Part of the shade skip to get to vessel includes a nail upgrade to give the shade enough HP to be aggroed by a fireball

#

But that may have been a regular vs

#

And not a shade soul

slate owl
#

Im dumb... I have debugmod, I can just check the shade hp.

#

That doesnt sound right tho.

#

Wtf.

#

Gonna try without DebugMod.

#

Wtf.

#

I dont have any mods and the shade soul doesnt have collision and doesnt aggro.

#

Ok, maybe my save is all messed up.

#

Ok, shade has nailDamage * 2

#

And activating a cheat makes the shade always have 1 HP and never be aggro..

#

Aka you'd need pure nail in order to not kill the shade with shade soul..

#

But my Shade soul only damaged him for 30...

#

So coiled would be enough.

#

Anyway...

#

Cant go the other way to Deepnest because of that.

#

And shade soul spawns way far a t the bottom.

young walrus
#

Yeah. This is the wall I was worried about

copper nacelle
#

foreach (state in HeroController.spellControl.state) {
if( state.Name == "Deep Focus Speed" ) {
((FloatMultiply)state.Actions[1]).multiplyBy = 3
}}

#

would this triple the speed of deepfocus

leaden hedge
#

yeah

#

you can make it faster

copper nacelle
#

is there a normal focus speed that I'm just not seeing?

leaden hedge
#

do you see Set Focus Speed

copper nacelle
#

yeah

#

Time Per MP Drain and Time Per MP Drain CH

leaden hedge
#

do you see the 2 SetFloatValue

#

the Time Per MP Drain is the actual value thats going to be used

#

its set to one of 2 values

#

Time Per MP Drain UnCH or Time Per MP Drain CH

#

which you can set just by doing

#
spellCtrl.FsmVariables.GetFsmFloat("Time Per MP Drain CH").Value = whatever
copper nacelle
#

foreach (state in HeroController.spellControl.state) {
if( state.Name == "Deep Focus Speed" ) {
bad = state.Actions[1]
}}
HeroController.spellControl.GetFsmFloat("Time Per MP Drain CH").Value = bad

#

why can't you do

#

HeroController.spellControl.GetFsmFloat("Deep Focus Speed").Value

#

?

leaden hedge
#

there isn't a float for it

#

its hard coded

#

look at Deep Focus Speed

copper nacelle
#

ohh, it's that weird looking number thingy

leaden hedge
#

theres no variable there

copper nacelle
#

can I set floats to 33ร“?

#

or is that just unusable

leaden hedge
#

thats just garbage data

#

it is an float

#

if you want the actual value

copper nacelle
#

so is this good:

foreach (state in HeroController.spellControl.state) {
    if( state.Name == "Deep Focus Speed" ) {
          bad = state.Actions[1]
          state.Actions[1] *= bad
}}
HeroController.spellControl.GetFsmFloat("Time Per MP Drain CH").Value = bad
leaden hedge
#

do

Debug.Log( ((FloatMultiply)spellCtrl.States[63].Actions[1]).multiplyBy )
#

also let me explain how fsm work

#

ok so playmaker fsms have an array of states

#

in this case the 64th one is the deep focus one

#

and this is a FsmState

#

FsmStates have 2 things were interested in

#

an array of FsmTransitions

#

and an array of FsmStateActions

#

in this case we want the 2nd FsmStateAction, which is a FloatMultiply

#

and the float multiply class (which inherits from FsmStateAction) has 2 variables

#

floatVariable, which is the whats being multiplied

#

and multiplyBy which is by what

copper nacelle
#

shouldn't state.Actions[1] be equal to FloatMultiply(ยธ=Time Per MP Drain,33ร“?,FALSE) then?

#

because it's the 2nd action

leaden hedge
#

thats just a serialization

#

check assembly-csharp.dll > HutongGame.PlayMaker.Actions

#

and you can find FloatMultiply

copper nacelle
#

so

#

what it's actually doing is

#

this.floatVariable=("Time Per MP Drain")
this.multiplyBy=(33O?)
this.everyFrame = FALSE

leaden hedge
#

kinda

acoustic depot
#

nerds

#

I tried to learn programming and the best I could do was a simple if/else script with js

leaden hedge
#

what its going to do exactly is something like this
on change to state deep focus speed
do
state.Actions[0].OnEnter()
then
state.Actions[1].OnEnter()

#

and all floatMultiply.OnEnter does is

this.floatVariable.Value *= this.multiplyBy.Value;
#

so you need to think about changing this actions variables as just changing this line of code

copper nacelle
#

so if I had state.Actions[0], I could change deep focus speed to be changing something else?

leaden hedge
#

well you could technically add any amount of fsms afterwards

copper nacelle
#

so i could set time per mp drain to an absurdly long amount

#

force the sluggo charm

#

and then make the whole game you being a slug

#

theoretically

leaden hedge
copper nacelle
#

so states 63 gets deep focus speed

#

and actions[1] gets the floatmultiply?

leaden hedge
#

yes

#

and FloatMultiply is just a class inherited from FsmState

#

and you can see its definition in dnspy

copper nacelle
#

so for this:

#

foreach (state in HeroController.spellControl.state) {
if( state.Name == "Deep Focus Speed" ) {
bad = state.Actions[1]
state.Actions[1] *= bad
}}

#

why aren't we doing

#

state.Actions[1].multiplyBy

#

if state.Actions[1] is = to the whole FloatMultiply class

leaden hedge
#

because you wrote that code not me

copper nacelle
#

lol

leaden hedge
#

not thats even correct

#

its ((FloatMultiply)spellCtrl.States[63].Actions[1]).multiplyBy.Value

copper nacelle
#

is it actually spellCtrl?

#

I thought it was HeroController.spellControl

leaden hedge
#

dunno if its spellCtrl or spellControl

copper nacelle
#

alright

leaden hedge
#

its spellControl

#

its heroCtrl thats shortened

copper nacelle
#

wait what

leaden hedge
#

oh wait

#

its hero_ctrl

#

oh wait

#

its randomly hero_ctrl and heroCtrl

copper nacelle
#

lmao

leaden hedge
#

just look at HeroController used by

#

and just at variable names

#

half the time its hero_ctrl half its heroCtrl and once its heroCon

copper nacelle
#

oh wtf

#

so I'd use hero_ctrl or heroCtrl instead of just HeroController.instance?

leaden hedge
#

depends where you put your code

#

if its in GameManger you can just use hero_ctrl

#

but if you want a reference to it in your own class you'd still do HeroController.instance

copper nacelle
#

so

#

if I put the stuff in the on focus hook

#

it'd just be HeroController.instance

leaden hedge
#

wouldn't put it on the onfocus hook

#

do it when you load a scene

copper nacelle
#

Instance.SceneChanged

leaden hedge
#

nah

#

UnityEngine.SceneMangement.SceneManger.SceneLoaded += yourDelegateFunction iirc

#

too lazy to load vs

copper nacelle
#

why do you use the unity one

#

over the mod hook one

leaden hedge
#

pretty sure it does it at another time, like before the scene loads

#

i forget though

copper nacelle
#

lol

#

I got a no overload thingy

#

for the unity one

leaden hedge
#

its Scene, LoadSceneMode

copper nacelle
leaden hedge
#

you dont

#

the problem was your function prototype was wrong

#

Instance_SceneChanged(Scene scene, LoadSceneMode lsm)

copper nacelle
leaden hedge
#

well you still have LoadSceneMode +=

#

instead of SceneLoaded

copper nacelle
#

now it says the no overload thing again

leaden hedge
#
UnityEngine.SceneManagement.SceneManager.sceneLoaded += onSceneLoad;

public void onSceneLoad(Scene dst, LoadSceneMode lsm)
copper nacelle
#

same thing is occuring

leaden hedge
#

well

#

you haven't resolved those errors

#

you'll need to import UnityEngine.SceneManagement probably

copper nacelle
#

ayy

#

that worked

#

in the foreeach

#

state is an Array, right?

leaden hedge
#

States is an array of FsmState

copper nacelle
#

alright

#

I gotta sleep now tho

#

thanks for explaining FSMs and helping with it; it helped a ton

solemn rivet
#

what's going on people?

#

been too busy playing okami to mod anything

ornate rivet
buoyant wasp
#

shakes head

buoyant obsidian
dapper folio
#

I didn't know it was april salubrafull

How's it work? local co-op with control of the shield?

#

reads readme
Numpad controls? I've played Brothers: Tale of Two Sons, I'm ready for this!

finite musk
#

are those controls able to be changed?

buoyant obsidian
#

Nope!

#

wait a second

#

I don't even have a numpad fuck me

hazy sentinel
#

this is what you get for having a 60% keyboard

#

wouldn't it be 40% off though

buoyant obsidian
#

It was 40% off I had to buy it

lusty lantern
#

lol.

copper nacelle
#

60%s are great

#

I've got a 65% for the arrow keys

hazy sentinel
#

I've got a 100% for the keys

copper nacelle
#

I had 100% but it felt too long

lusty lantern
#

I remember buying something half off because a small piece was chipped off.

copper nacelle
#

@buoyant obsidian you clearly need a 753%

buoyant obsidian
#

I'm gonna fix Dreamshield Co-Op controls

hazy sentinel
copper nacelle
#

why

glossy pelican
#

science isn't about why, it's about why not

buoyant obsidian
#

Now with alphanumeric support

#

Not ideal, but not the worst

glossy pelican
buoyant obsidian
#

You can teleport back in by moving your shield in-bounds and hitting 7

glossy pelican
#

ั‰ั€

#

oh

#

ok

#

can i disable mod without deleting it?

buoyant obsidian
#

Sadly not

glossy pelican
#

like.... unequip it

#

maybe in new version

glossy pelican
#

@buoyant obsidian

buoyant obsidian
#

Yeah it's more of a silly mod than a serious one

trim totem
#

whoa that's cool

slate owl
#

How can you get Defender's Crest with only Claw?

#

O rather, can you do shade skip to blue lake with only claw?

young walrus
#

Yes

glossy pelican
#

@buoyant obsidian i found ultimate weapon for this mode

#

DESCENDING DARK+nmpad7

buoyant obsidian
#

oh my I never even thought of that

glossy pelican
#

thats so OP

royal ridge
#

i-minutes

knotty grove
#

I wonder if writing an input visualizer in unity is a good idea ๐Ÿค”

buoyant wasp
#

pretty sure there's already one, and sean was talking about making another

#

or maybe not, my brain is mush

knotty grove
#

sean was making one with windows forms, I haven't found a unity one online, I did also write one in dx9 but with the new windows update the screen flashes like mad for no reason

#

could also be caused by other things

leaden hedge
#

its like 20 seconds to do

#

if you want something that just shows every key being pressed

knotty grove
#

right, but while the application is not in focus it's a bit different

leaden hedge
#

I mean in unity

knotty grove
#

it is easy to show that in any reasonable engine

#

I mean it's about 20s in gamemaker too ๐Ÿ˜‚

trim nimbus
#

I installed 1221 modding api, randomizer and charm notch mod on my laptop and when I run the game my menu isnt responsive

#

I cant do anything in the menu and the modding api isnt show

#

Any idea why?

leaden hedge
#

do you have 1.2.2.1 installed on your laptop

trim nimbus
#

Yes

#

As you see, unresponsive menu, and 1221

#

Not providing screenshots cause im on a train

#

Oh

#

The modding api dll isnt in the downloaded file

#

??????????

leaden hedge
#

I dunno must have done something or the menu would work

trim nimbus
#

The downloaded modding API has no ddl file

#

Lmao

#

The mods folder is empty

leaden hedge
#

yes

#

the dll is one up from mods

#

it replaces assembly-csharp

trim nimbus
#

Im on the train and signal is shit. Excuse the multi sent messages

#

Idk. I dragged everything from the modding api rar to my game folder like I did on my pc, then I installed randomizer mod, then I installed charm notch mod

#

I genuinely wish I knew where I went wrong

leaden hedge
#

myb antivirus

trim nimbus
#

I dont have one. Maybe turning off windows defender tho

#

Nope

#

Jebaited

#

I was supposed to play some rando on my train but I ended up trying to get it to work and I didnt even fix it tdogSad

#

I'll try reinstalling my game when I arrive and retry

noble trout
#

753 i saw what you were playing

buoyant obsidian
vestal plaza
#

@buoyant obsidian does your mod funtion by modifying memory?

buoyant obsidian
#

Modifying memory?

vestal plaza
#

like cheat engine

buoyant obsidian
#

I don't think so?

vestal plaza
#

ah alright

buoyant wasp
#

none of the mods you find here change memory externally

#

they are all altering the game's code itself

#

for 753's mods, it's changing Assembly-CSharp.dll, for most of the rest that use the modding API, we have a single modified Assembly-CSharp that provides a standard interface for modders to create seperate dlls for.

vestal plaza
#

thats pretty cool, thank you for the explanation ๐Ÿ˜ƒ

buoyant obsidian
buoyant wasp
#

yeahhhhhh right

marble scarab
#

thank you just pls dont ill never cheat again

lusty lantern
#

Uhhhh

fair rampart
#

uhhh

hollow pier
#

uhhhh

fair rampart
#

lol, are you faking to work at valve?

#

bravo

copper nacelle
#

uhhhh

kindred palm
#

Is it possible to check the code and identify how the amount of Geo you get from Millibelle is calculated?

leaden hedge
#

yes

#

its whatever you put in, capped at 2500 iirc

kindred palm
#

Do you have the exact formula?

#

It's quite different from what some of us tested (it's not like +2500 but +50%)

#

How should I find the formula using dnSpy?

leaden hedge
#

the int its based off is bankerBalance

#

which has no references in dnspy

#

its an fsm

swift python
#

I downloaded the boss rush mod for some practice before the race today. Is there any way to remove it or otherwise negate it for plain randomizer without deleting files?

buoyant wasp
#

just move bossrush out of the mods folder

quaint star
#

is the modding api developed publicly (on github ...) or privatly? are contributions generally welcomed?

buoyant wasp
#

it's on github

swift python
#

Thanks

quaint star
#

"Link not available due to copyright infringement"

buoyant wasp
#

huh?

quaint star
#

alright thank you! might wanna pin that one, google doesn't really help

buoyant wasp
#

eh, the number of people who actively contribute to it are....2, basically

#

and they have to come here anyway ๐Ÿ˜‰

quaint star
#

okay ^^

#

im kind of used to reading source code/docs/contributions.... etc on github and didn't find anything, thats why I asked

buoyant wasp
#

the big reason is that we don't publish the compiled version of it anywhere but here due to copyright stuff

quaint star
swift python
#

Alright, I have had a whole string of problems all of a sudden. First, the game executable literally disappeared from my files, then I tried to uninstall/reinstall, but that just makes it install 99% and then pause, saying that the content file is locked.

lyric moss
#

.gr Speedrunner

paper basinBOT
#

Speedrunner successfully assigned.

buoyant wasp
#

they are, but legally speaking, posting the dll publicly is not ok

#

thus, we came to an understanding, we mod, but keep the stuff here, and all is well ๐Ÿ˜ƒ

buoyant obsidian
#

pfffffft

buoyant wasp
#

except 753

#

he doesn't give a crap about legal anything

#

he either is too young to know better, or lives in a country where copyright law doesn't matter

fair rampart
#

lol

buoyant obsidian
#

I'm a rebel at the peak of my youth

copper nacelle
#

lol

buoyant wasp
#

kind of surprised we didn't get a small wave of rando folks in here after this morning

#

and a little sad

royal ridge
#

We had like 20 people join last night wheter that be from the stream or not I don't know

buoyant wasp
#

oh well, tomorrow gonna release the new overlay tracker and updated playerdatadumper and updated randomizer

royal ridge
#

But I'm sure they're lurking

buoyant wasp
#

now that we're past those 2 races, can finally move forward with future dev

copper nacelle
#

how do you get the value from an action from an FsmState

#

FsmState.Actions[1] is an FsmStateAction, but .multiplyBy is for FloatMultiply

#

nevermind

copper nacelle
#

idk, fixed it

#

how do I set Actions[1] to a value if it's an FsmAction and setting values is with .multiplyBy.Value of FloatMultiply

leaden hedge
#

one

#

multiplyBy is a float

#

two

#

you have too many bracket

#

three

#

you need to do multiplyBy.Value

#

four

#

on second line you need to cast action to FloatMultiply

copper nacelle
#

how do you cast the action to FloatMultiply

#

I got the other line working

#

except

#

I changed the value and nothing happened

leaden hedge
#

you just need to do ((FloatMultiply)state.Actions[1])..multiplyBy.Value *= 2

copper nacelle
#

I thought you were supposed to do

#

HeroController.instance.spellControl.Fsm.GetFsmFloat("Time Per MP Drain").Value *=

#

for changing heal speeds

leaden hedge
#

no thats the variable that it uses to determine what the heal speed is

#

and its recalculated everytime you focus

#

so you need change, normal heal time, quick focus heal time and deep focus multiplier

copper nacelle
#

so I'd change the SetFocusValue for Focus?

#

and FloatMultiply for Deep Focus Speed

leaden hedge
#

I already told you everything you need to change zzz

#

now I've gotta refind it all

#

you need to change the variables:
Time Per MP Drain UnCH
Time Per MP Drain CH
and
you need to change the multiplyBy Value of the Deep Focus Speed state's second action

copper nacelle
#

I change Time Per MP Drain UnCH to the deep focus multiplyBy value, rright?

leaden hedge
#

no

#

deep focus multiplyBy is a multiplier

#

it'll be like 2.0

copper nacelle
#

so *= the multiplyBy value

leaden hedge
#

whereas Time Per MP Drain UnCH will be like 0.01

#

I'd just dump all three values out

#

then figure what I want them to be

#

if Time Per MP Drain UnCH is 0.05 and multiplyBy is 2.0 then set it to 0.1

copper nacelle
#

and I just set those like

#

HeroController.instance.spellControl.Fsm.GetFsmFloat("Time Per MP Drain UnCH").Value = 0.1;

#

right?

leaden hedge
#

yes

copper nacelle
#

alright

#

thanks

#

I multiply both Time Per MP Drain UnCH and Time Per MP Drain CH by the Deep Focus multiplyBy value, right?

leaden hedge
#

yes

copper nacelle
#

wait why do I change deep focus multiplyBy if it's a multiplier

#

won't it just affect the new UnCH and CH? (even unchaged)

leaden hedge
#

it will

#

I'd assume youd want to nerf that too

copper nacelle
#

hmm

#

sure

#

nerfed

warped sinew
#

I was playing bonfire last night, its really good

#

Probably my fav mod

hazy sentinel
#

great for breaking the game

warped sinew
#

Its not too bad as HP scales

hazy sentinel
#

you weren't here when the HP scaled too much intenseface

warped sinew
#

I still think a perk/passive system would be amazing

#

Ever 15 levels unlock a perk

#

That way the game has many "builds"

hazy sentinel
#

I mean that's a lot harder than changing stats

warped sinew
#

Yer I know :(

hazy sentinel
#

tell TC to do it hollowface

warped sinew
#

I'll tell wilbo to create an editor

buoyant obsidian
#

...favorite mod?

warped sinew
#

Content pack 03 is my true fav mod

copper nacelle
#

oof

weary junco
#

I am new to modding,
But I loved hollow knight so much, I wanted to give it a try.
Is there are resources available or tutorials to help me get started?

buoyant obsidian
#

Any coding experience?

fair rampart
#

umm

#

which one's the modding API?

leaden hedge
#

put it in list view

#

instead of box view

#

should be top right

fair rampart
#

Oh

#

thanks

#

how did i not know about htis before

buoyant wasp
echo cape
#

Wow i did not know there was a modding API

#

and that you can just open up Assembly-CSharp in dnSpy

#

I spent like 4 hours yesterday figuring out how to mod the menu controls using cheat engines buggy mono dissector

fair rampart
#

lol

leaden hedge
#

dnspy wouldn't help you

#

the menu control screen is coded in the screen

echo cape
#

Coded in the screen?

leaden hedge
#

theres no code in assembly-csharp that controls how the menus work directly

#

just generic classes for it

#

so theres no code for a button that puts the game into a control listen state

#

and theres no code for the jump rebind button

echo cape
#

I just needed to remap the controls for paneLeft and paneRight in the inventory

#

Was able to do so just by swapping some pointers in the HeroActions class using CE

leaden hedge
#

probably changing the pointer for GameManger.instance.inputHandler.whatever to GameManger.instance.inputHandler.paneLeft / paneRight

echo cape
#

I swapped paneLeft with quickMap which worked for my bindings

leaden hedge
#

you can actually change the bindings

#

rather than changing the pointer

#

so you could have just removed the LB and RB bindings

echo cape
#

Yeah CEs mono dissector isnt too easy to work with so I'm just glad i got something that worked lol

#

I think the best solution would be if menuSubmit was used to select things in the inventory, instead of jump.

leaden hedge
#

it is

echo cape
#

It changes to w\e my jump button is for me though?

leaden hedge
#

might be a hack for controllers

#

try it with keyboard

#

enter is menu submit

#

and z is jump

#

you cant go through menus with z

echo cape
#

Its z for my inventory too

leaden hedge
#

z does accept stuff in your inventory?

#

it definitely doesn't work in the main menu

echo cape
#

Inventory only, normal menus use enter on keyboard, A on contorller

#

Same with the map or anything in those panes

#

Its not like that for everyone else?

leaden hedge
#

that is correct

#

menuSubmit is hard coded to be a specific key

echo cape
#

Well damn what did I do to deserve this lol

leaden hedge
#

so that it doesn't conflict with pane / cancel keys

#

no I mean this is a problem everyone gets

#

it is the same with the map and everything else

#

the inventory system randomly uses jump, menuCancel, paneLeft and paneRight

#

instead of using menuSubmit, menuCancel, paneLeft and paneRight

echo cape
#

Do you know where the code for the inventory system is?

leaden hedge
#

its all finite state machines

buoyant wasp
#

which is why kdt was writing a new one ๐Ÿ˜›

leaden hedge
#

I'll complain to graig next time I see him online

#

seems like a bug

echo cape
#

I put jump on bumpers for pretty much every platformer I play so its kind of inconvenient for me

#

So this inventory_control.json is extracted from the game files somewhere?

buoyant wasp
#

look in the pins, there is a FSM Dumper

#

and a FSM Viewer

#

there's also a alpha FSM viewer i put up if you search for from:wyza has:files

#

that lets you do a few other nice things

echo cape
#

Ah nice, thanks

leaden hedge
#

pretty much everything is coded in fsms

buoyant wasp
#

fair warning the fsm editing is...."fun"

leaden hedge
#

besides player movement

echo cape
#

Yeah looks like a headache

leaden hedge
#

well we used to have to read them by hand

#

so its way better than then

echo cape
#

Only game I've had much experience modding is Lethal League

#

Which was coded in C++ with the SFML framework

#

So lots of stepping through unnamed assembly functions in CE wondering what the hell is going on

#

This is much nicer lol

#

Thankfully the sequel, Lethal League Blaze, is being made in Unity

#

Definitely taking notes on what you guys are doing here

buoyant wasp
#

"Thankfully the sequel, <insert>, is being made in Unity" - Said no one ever

#

The problem with unity isn't that it's a bad engine

#

it's that it lets non-programmers make games

echo cape
#

Well it might mean they can actually create a decent amount of content for the game

buoyant wasp
#

and thus they make really bad choices on how to do things ๐Ÿ˜‰

echo cape
#

LL was kind of barebones

buoyant wasp
#

so, it gives us hollow knight, but it also gave us the code base for hollow knight

#

which is a nightmare

echo cape
#

lol fair enough

#

I like Godot personally

buoyant wasp
#

but yeah, if you really get into modding this game, you'll find alot of things that will leave you going "wth"

buoyant wasp
#

lol

#

i think the problem is where you draw the line for "learned".

#

I mean, i've been programming in .net for....7 years? and programming in general for like 17 years

#

the only thing i know now is how little i know compared to the sum knowledge available to me

fair rampart
#

ya lol

#

their definition of learned is knowing how to do "hello world"

buoyant wasp
#

hehe, if that takes you more than an hour, you either A: shouldn't be programming, or B: should find a better language

fair rampart
#

yes

young walrus
#

doesn't that take like.... a minute?

#

tops

fair rampart
#

ya

buoyant wasp
#

depends on how much work you have to do to get the environment setup

fair rampart
#

bad example on my part

buoyant wasp
#

and I include environmental setup in the learning part

fair rampart
#

maybe 21 days to learn how to do a calculator

buoyant wasp
#

"learn X in < 100 days" is just silly on the face of it for almost anything

#

dunno how true it is, but i was always taught that the minimum time required to become proficient in something is 10,000 hours

hazy sentinel
#

i mean learning is easy to do quickly

young walrus
#

proficient master

#

that's what i've heard

hazy sentinel
#

learning isn't mastery though

buoyant obsidian
#

Yeah mastery is 10k hours. For me learning Python was 5 minutes writing it, 40 minutes trying to get my computer to actually run Python scripts without causing weird errors

buoyant wasp
#

well, and the notion of "to learn" to do something is odd too. Cause learning should be a continuous process, it isn't something you really complete

fair rampart
#

^

young walrus
#

^

ornate rivet
#

v

random nova
#

How exactly do I find out specifics on what the mods add, and how do I install them on steam?

young walrus
#

pinned messages

#

there's also a video on how to install

random nova
#

Thx mate

buoyant wasp
#

as far as what mods do, that's hit or miss. some mods have decent documentation, many have little to none hollowface

buoyant obsidian
#

If anyone wants commented code for my mods I'll give it out on request

gray nymph
#

im trying out the randomizer mod, and the first item i found was dream nail and the shop has the dash and double jump...

#

seems gud

#

how did the randomizer racers display the items they found on the screen, is that a different mod?

rain cedar
#

It's not really a mod, it's an in browser thing you can overlay on the stream with obs

gray nymph
#

oh

dapper folio
#

it's pinned to the channel

gray nymph
#

found it!

rain cedar
#

Also I assume with all that so early you're playing on easy?

gray nymph
#

yea

rain cedar
#

Nobody really plays on that so let me know what you think of the balance on it

#

It'll be good to get feedback

gray nymph
#

i will probably do a race on easy with some scrubs so yeah ill tell u what i think after ๐Ÿ˜„

knotty grove
#

I'd be into doing an easy race

weary junco
#

Where do I get the API?

leaden hedge
#

its in the google doc

#

in pinned messages

fair rampart
copper nacelle
#

no

#

do not

#

lies

serene spindle
#

Do any of these mods work for mac?

young walrus
#

i think the old version of bonfire might?

#

API based mods do not

serene spindle
#

Okay

#

I wanted to get the boss rush mod.

young walrus
#

boss rush is not Mac compatible, no

serene spindle
#

Thanks for the help

leaden hedge
#

you could always try wine, not sure how well it'll run hollow knight though

serene spindle
#

Okay

#

Thank you

copper nacelle
#

wine works pretty well iirc

#

it worked for King's Pass at least when I tested it