#archived-modding-development

1 messages · Page 471 of 1

flat forum
#

hey, Grenade

#

you know the really narrow tunnel at the end of the second to last room in PoP?

hasty fractal
#

Nice!

flat forum
#

you pogo on saws n gotta dash into really tight spaces

#

will there be anything like that in ToT?

fair rampart
#

dude path of pain was rediculous

flat forum
#

in the empty rooms

#

at ~2:49

#

you see a tiny tunnel

steep pawn
#

If I'm making a skin for customknight but i want orbfull.png to have 2 parts, am I allowed to decompile and change CustomKnight.dll? or is there already a simpler way to do this?

ornate rivet
#

yea you can change the dll

steep pawn
#

alright, thanks

covert pebble
#

yo, does anyone have a reference for the different variables and hooks that are used for modding? I can't seem to find a comprehensive guide

#

yep i saw that one, but it doesn't seem to be comprehensive at all

fair rampart
#

the most comprehensive guide you'll find is reading the pinned messages

covert pebble
#

alright thanks

solemn rivet
#

yo, does anyone have a reference for the different variables and hooks that are used for modding? I can't seem to find a comprehensive guide
There isn't one because there's a hook for each and every method in the game's code

ornate rivet
#

Started working on a shade boss today

valid ridge
#

Asking for another Unity game, is there a way to hook the Start method on a script that doesn't implement Start, or do something equivalent

copper nacelle
#

idk of any way but the monomod server might

#

because start isn't a real virtual method

#

because unity is weird

valid ridge
#

Ok, I just wanted to know if you guys had found something already

#

Found a workaround for what I wanted to do anyway

fresh cipher
#

I wish to make a boss but have no experience in Unity...but what I've heard is that Hollow Knight's code is modular and somewhat easy to work with

flat forum
#

@ornate rivet @fair rampart

ornate rivet
#

Yea it's not too bad, especially once you get the hang of it. There's a very basic doc that describes how to setup your mod (radiance.host) but it's not very in-depth so you will need to look at other people's code and/or ask questions here.
Unity is fairly easy to figure out, most people who have made hk mods started out knowing nothing about unity.

ornate rivet
#

I did not use grass particles

#

how come?

flat forum
#

which grass particles are those?

#

now that I think of it

#

the Isma fight you have outside Godhome would benefit quite nicely from particles

ornate rivet
#

the pillar?

#

mebi drew that

#

OH

#

those green leaf particles?

#

I made those zote

#

I was trying to get a mana based system going (shade has to attack you to be able to use spells) but it's not working too well so I wont do it. Maybe if I added nail arts in, it could work.

weak lodge
#

is this finally a mod without a nkg attack

ornate rivet
#

don't worry, void tendrils exist in the game

#

fire pillar, fire bats, pillars that twist from the floor

weak lodge
#

also saleh i thought you were working on the knight of hallownest mod

ornate rivet
#

I am but I needed something to get me back into modding

nimble lake
#

wouldn't that mean that every mod that replaces a boss in HoG would have to be compatible with this?

#

if somehow this is made and somehow they can make it easy to make it compatible and easily add bosses to that room..
maybe?

#

i would imagine this would be pretty difficult.

copper nacelle
#

any dyndata users

#

monomod dyndata

#

lets you put fake fields on types which you access w/ it and access normal fields in the same way using it

ornate rivet
#

BossModCore when

fair rampart
#

Are there any other knight textures that are missing from the mod?

#

sure

#

you can just dm me

fair rampart
#

I just want to know everyone's preference

#

Sean originally had them with brackets, idk if he wants it to stay that way

#

@rain cedar

floral furnace
#

yeah was gonna say if you could potentially just loop and destroy them there

rain cedar
#

My preference is braces always yeah

#

I was planning to rewrite custom knight anyway but that'll probably never happen

fair rampart
#

whoops

rain cedar
#

The idea was to have a system where you don't need to hard code every sprite sheet

#

Just have some json that tells you where the sprites should go

#

But like I've had that idea all year and haven't done shit so yeah

fair rampart
#

got shape of unn, the monarch wings cutscene, dream nail cutscene, shade cloak cutscene, beast's den, and abyss shriek cutscene

floral furnace
#

nice

copper nacelle
#

nre

floral furnace
#

yeah definitely agree with 56 on this one

fair rampart
#

so this happens apparently when you try to change a texture at runtime

solemn rivet
#

I see nothing wrong

unborn badger
#

he’s radiant

tiny idol
#

that's what happens to thk in my friends game

#

only to thk but not to anything

fair rampart
#

I may have to bloat customknight with preloads

copper nacelle
#

I will remove your head from your body

hidden galleon
#

no head to be removed

fair rampart
#

please do

fair rampart
#

do preloaded objects get yeeted out of existence when you reinitialize a mod by e.g. toggling it in the mod menu?

copper nacelle
#

It doesn't create a new instance or anything I don't think

#

it's just .Unload()

fair rampart
#

hmm, preloadedObjects is null in Initialize() when I disable then reenable my version of customknight

unborn flicker
#

just make them static lol

fair rampart
#

a null check fixed it

fair rampart
ornate rivet
#

that's awesome

hasty fractal
#

Nice!

fair rampart
copper nacelle
#

actual menus monkaU

fair rampart
#

I should've probably add some feedback to those buttons

copper nacelle
#

screen shake easy

unborn badger
#

add a gunshot noise

fair rampart
unborn badger
brazen mortar
#

fade out to white transition?

fair rampart
#

honestly I was just gonna add a button bg

#

but ig if I wanna make it TC style there shouldn't be any background at all

#

wdym by fade out to white?

copper nacelle
#

looks perfect to me

#

set the blanker on

#

I assume

fair rampart
#

mm

copper nacelle
#

temporarily flashbang the user

fair rampart
copper nacelle
#

sick

royal ridge
#

good stuff jngo

patent zealot
#

Are we going to talk about how hes in godseeker mode

copper nacelle
#

no because he isn't

patent zealot
#

O my bad

fair rampart
fair rampart
#

okay, I quickly readded womb and added fluke spells, NOW I'm done

nimble lake
#

Do you think an icon.png could be added and displayed instead of some of the sprites? (assuming the maker of the pack provided an icon for previews)

crisp forge
#

I have pirate Hollow Knight. Can I use Skins ?

fair rampart
#

no

crisp forge
#

:/ thx

nimble lake
#

coming into the hollow knight server with the devs and gametesters and admitting that you're pirating the game thinkgrub

fair rampart
#

Ooh yeah I could do an icon

unique flicker
#

can anyone direct me a lil with how I would set the rng seed for a fight?

#

I wanna make something where I can set the pattern for a fight if possible

#

I have a bit of programming experience in c/js/python so i wouldn't mind learning something

#

jsut uhhh not really sure where to start or if it's possible

nimble lake
#

also would there be a scrollbar or something for when there are a lot of skins?

fair rampart
#

I'm considering that

#

@unique flicker learning the basics of C# is the first step, also check the pins for other tools used in development

#

You'll probably be using the fsm viewer a lot since that shows enemy behaviors

unique flicker
#

ooh i see thanks

vapid plover
#

Hi guys, I just downloaded the SpritePacker 1.3 but I was only able to run it 1 time. Then whenever I try to open it, it just crashes immediately. I am seeing this error from the event viewer.

safe hamlet
#

modding hk in 2020, cringe

floral furnace
#

sid please i beg you

safe hamlet
#

i am right tho

ornate rivet
#

no, you're sid

safe hamlet
#

no

#

my last name is right

#

sid right

young walrus
#

That doesn't Sid right with me

safe hamlet
#

same

fair rampart
flat forum
#

"Horknight"

solemn rivet
#

Horny Knight

hasty fractal
#

See so many people used my skin make me happy.

pulsar dragon
#

Are there mod on Xbox

copper nacelle
#

no

pulsar dragon
#

Mods*

#

Oh ok thanks

kindred sedge
#

@fair rampart where do I get little hornet godm?

young walrus
fair rampart
#

when the P4 cutscene is made of multiple individual spriterenderers :monkaU:

safe hamlet
#

what's the p4 cutscene

fair rampart
#

I got the sitting animation, hornet rescue, and birthplace cutscene

#

not sure if any artists would want to go through the effort of redrawing Bretta's plushes so I'mma ignore those

kindred sedge
#

@young walrus which pin? its not in the custom knight sprites pack nor the white palace skins pack

young walrus
#

literally the first thing in the custom knight sprites pack list

kindred sedge
#

that isnt there for me

young walrus
#

do you have a screenshot of what you're looking at

kindred sedge
#

why is yours stacked but mine grid

young walrus
#

you can change the view

kindred sedge
#

hahgybuibp;uwehay

safe hamlet
#

can't believe jesus can't change the view

copper nacelle
#

very nice modding development

young walrus
kindred sedge
#

WHAT

young walrus
#

just did it with no perms, and it's there

ornate rivet
#

you know it's a modding channel when there's 3 11 different thinking emotes in one post

copper nacelle
#

3 i snooze

kindred sedge
#

why you booly

copper nacelle
#

because this is not modding-help

kindred sedge
#

well I saw the sprite in the post above and asked where it was because it was relevant to the image posted

fair rampart
#

I'm frequently getting the following error when loading up my game with the new custom knight mod

  in module UnityPlayer.dll at 0023:576fdb13.```
#
71% memory in use.
0 MB physical memory [0 MB free].
0 MB paging file [0 MB free].
0 MB user address space [68 MB free].
Write to location 03ffc000 caused an access violation.```
#

thinking it has something to do with it taking 12 years to load the skin changing menu

#

I copied Sean's existing work using WWW to get the file location of each png and then got their textureNonReadables

#

the game seems to open fine when I leave it alone and don't alt+tab out or click my mouse

copper nacelle
#

@fair rampart call gc.collect

charred crest
#

Hello! I was wondering if anybody could tell me what to do to start developing mods for Hollow Knight. I have Unity and know how to use it but I'm not sure if there are other programs that are used.

copper nacelle
#

dnSpy and an ide

charred crest
#

Thank you!

nimble lake
#

where's the thing that checks if you already double jumped in the air?

#

so that you wouldn't be able to double jump again?

safe hamlet
nimble lake
#

oh actually, both would be useful (if it's not asking for much)

floral furnace
#

gonna add a bit but theres also a method at the HeroController that resets both the airDashed and doubleJumped fields

#

iirc its public too

#

fair enough but i mean it in the case for ara if he just wanted to reset it for multiple double jumps

nimble lake
#

Thank you, much appreciated.

fair rampart
#

Added icons that are activated if you put an image of size 300x128 named "Icon.png" in a skin folder, otherwise it defaults to a cropped version of Knight.png

fair rampart
#

Should I make my fork of customknight separate from the original in the modinstaller?

copper nacelle
#

fragmentation maggotprime

fair rampart
#

CustomKnight 1.2.1

#

2x the features

#

100x the loading time

charred crest
#

Is there any way to edit hollow knight in the unity editor

safe hamlet
#

yes

#

there is hkworldedit that someone is working on

#

allows you to edit scenes

charred crest
#

thank you

unborn flicker
#

Out of curiosity, why does the modlinks link to the [1.4.3.6] version for PDT? I was going to add TopHatLuke's randomizer compatibility update today

#

or is that a version number that only coincidentally matched the game version at some past point in time, which seems like a rather strange choice

#

@simple python maybe?

simple python
#

The zip file? I think that's a game version, I haven't ever updated that part of the name 😅

#

The PR is for Luke's updated version

unborn flicker
#

Oh, if you already updated I won't worry about it then

#

But the current patch is 1.4.3.2, so it struck me as weird tamershrug

simple python
#

lol then I have no idea

warped sinew
#

@charred crest yeah just load up the source and change whatever you want

unborn flicker
#

So I'm trying to put an IL hook onto HeroController.EnterScene, but logging the ILContext doesn't seem match what I see in dnspy

#

etc etc

#

Is it an issue with the IEnumerator, or am I looking in the wrong place?

solemn rivet
#

@copper nacelle

copper nacelle
#

@unborn flicker ienumerators with yield are a lie

#

enable compiler generated classes

#

it's actually a state machine

unborn flicker
#

wdym by compiler generated classes?

copper nacelle
#

it's under options => decompiler

unborn flicker
#

Right, so now I see the actual method is HeroController.<EnterScene>c__Iterator0.MoveNext

#

can I still place an IL hook on it?

copper nacelle
#

yeah

#

probably want to use new ILHook(MethodInfo, MethodInfo)

unborn flicker
#

oh great, I'll try that

unborn flicker
#

I think it worked

#

The reason why I think it worked is that I walked into a transition and it infinite loaded going back and forth instantly between the two scenes

copper nacelle
#

both

sullen tiger
#

shroedingers knight

unborn flicker
#

removing the .165s wait seems to work fine

#

removing any of the .25, .33, or .4 second waits breaks transitions

#

but could probably be fixed if someone wrote something to change how the transition works

copper nacelle
#

enter scene is called after load

unborn flicker
#
public override void Initialize()
    {
        instance = this;
        Type T = typeof(HeroController).GetNestedTypes(BindingFlags.NonPublic | BindingFlags.Instance).First(t => t.Name == "<EnterScene>c__Iterator0");
        MethodBase M = T.GetMethod("MoveNext", BindingFlags.Instance | BindingFlags.Public);
            new ILHook(M, HeroController_EnterScene);
        }

        private void HeroController_EnterScene(MonoMod.Cil.ILContext il)
        {
            ILCursor c = new ILCursor(il).Goto(0);
            while (c.TryGotoNext(
                i => i.OpCode == OpCodes.Ldc_R4,
                i => i.OpCode == OpCodes.Newobj && i.MatchNewobj<WaitForSeconds>()
                ))
            {
                if ((float)c.Instrs[c.Index].Operand == .165f)
                {
                    c.Remove();
                    c.Emit(OpCodes.Ldc_R4, 0f);
                    c.Index += 2;
                }
            }
        }
copper nacelle
#

il hooks are chad af my guy

#

insert stuff in the middle of methods and modify method params

fair rampart
copper nacelle
#

relatable

unborn flicker
#

.615s of timesave shroompog

copper nacelle
#

fwiw on the GetMethod where it's instance and public those are default

#

so you can just omit the flags

unborn flicker
#

oh yeah, I thought it was private originally so I left it in

copper nacelle
#

i think that wait fucks w/ the blanker on interaction doors

#

it's absurd how much faster loads feel with this

unborn flicker
#

what doors have you tested? I don't have any issues in Dirtmouth

copper nacelle
#

HoG

#

if you go through it repeatedly

unborn flicker
#

although I ended up setting the last one back to .25/.33

copper nacelle
unborn flicker
#

lol

copper nacelle
#

i can't get it to break anymore

#

incredible

unborn flicker
copper nacelle
#

1 frame really isn't enough

#

unlucky

#

dirtmouth well is literally instant though

unborn flicker
#

dirtmouth well doesn't spawn you in the transition

copper nacelle
#

ah

unborn flicker
#

that's the main difference

#

if you had an offset for every transition you could drop it to 0 probably

#

the only wait that matters is the one after it sets the hero state to entering

copper nacelle
unborn flicker
#

that's the .25/.33 one for ch/no ch that I didn't change

copper nacelle
#

could maybe just modify TransitionPoint

#

i'll give it a shot

nimble lake
#

wow

copper nacelle
#

i have some other transition stuff already in qol fwiw

#

you can set entryDelay to 0 and decrease fade time

#

it's in skip cutscenes

unborn flicker
#

oh yeah

#

I'd think only special stuff like dream sequences uses entry delay, right?

copper nacelle
#

idk

#

i set it to 0 without checking infinity years ago

#

nothing broke

#

¯_(ツ)_/¯

unborn flicker
#

But yeah, if you want to add faster transitions as one of the submods of qol that'd be great. I'm fine releasing it bundled, or by itself on the installer, either way

copper nacelle
#

I'd be down if you're cool with it

#

oh yeah do you want nohardsaves off by default

#

i remember you saying something about that

unborn flicker
#

Yeah, the only hard save that still exists and people care about in rando is the one after KP

#

But it's nice to have on for quitting out after fury

nimble lake
#

@jolly oriole hey, sorry about the ping but i need some help with the code you sent me before for the infinite double jump and air dash:

var hero = HeroController.instance;
ReflectionExtensions.SetAttr<HeroController, int>(hero, "doubleJump_steps", 0);
ReflectionExtensions.SetAttr<HeroController, float>(hero, "dash_timer", 0.0f);
ReflectionExtensions.SetAttr<HeroController, bool>(hero, "airDashed", false);
ReflectionExtensions.SetAttr<HeroController, bool>(hero, "doubleJumped", false);

Can't seem to get it to work. No errors or anything like that, it's just not doing anything in the game. Tried some stuff like looping it but I couldn't get it to work.

ornate rivet
#

where does this run in your code?

nimble lake
#

hm, i thought you said that this one wasn't working

#

or maybe it was someone else..

copper nacelle
#

setting thing is less ugly now too

#

really a win win

nimble lake
#

can't seem to be able to insert ResetAirMoves()..

copper nacelle
unborn flicker
#

SKIP is { .165f, .4f }?

copper nacelle
#

yeah

unborn flicker
#

I think that should work then

#

it'll feel a little different for movement because you'll stop early entering in rooms

#

but I don't know that that's necessarily a bad thing

copper nacelle
#

yeah cycles might be a bit different

nimble lake
copper nacelle
#

well for one it's not a static method

unborn flicker
#

instance method

nimble lake
#

it's public

#

and void

copper nacelle
#

that is not what we referred to

#

hero.ResetAirMoves moment

#

i have found a problematic load

#

crossroads_07 -> crossroads_33

unborn flicker
#

set it back to .33/.25

#

.2 might be a bit too low

#

and it isn't black screen time anyways

copper nacelle
#

unlucky

#

.25 works for both

unborn flicker
#

.33 should give the same dash cycles for rooms

#

might be worth it for safety

copper nacelle
#

i'll compare them

#

it's not a huge diff

nimble lake
#

hold on i just fixed an error that wouldn't let me build so let me try now

#

no unfortunately

#

Do I just add that under the other lines of code?

#

still not working for me

unborn flicker
#

where is this code?

#

Is it in a hook?

nimble lake
#

I just threw it in the middle of a charm mod

copper nacelle
unborn flicker
#

fast shroompog

copper nacelle
#

is it worth keeping the fast one

#

I think it's nicer enough but it's like .225 for both?

unborn flicker
#

I wouldn't expect the fast one to make any difference, unless it moves you at a different speed while it's still "entering"

#

I think the timer just affects when you get control

copper nacelle
#

yeah with .225 and the cornifer room you can hold right and not hit the platform

#

dunno if that's a good thing

unborn flicker
#

Also, @nimble lake you should put that code in a ModHooks.Instance.HeroUpdateHook if you want it to have any effect

#

Right now it's just giving double jump/dash when you equip a charm for the first time, probably

#

Yeah, I'd just leave the entering timers as vanilla 56. I don't see much benefit to changing them

copper nacelle
#

alright cool

#

I'll put it up in a tiny bit

#

going to eat

unborn flicker
nimble lake
#

Where can I find modhooks?

unborn flicker
#

in Modding

fair rampart
nimble lake
#

multiplayer as in, 2 keyboards or internet

fair rampart
copper nacelle
#

i also enjoy the green video

fair rampart
#

ok discord

copper nacelle
nimble lake
copper nacelle
#

v nice

nimble lake
#

yea that's really cool

icy moss
#

that looks interesting

fair rampart
#

I have no idea why there's another knight stacked

nimble lake
#

once we were joking about hollow knight multiplayer mod
but here we are

fair rampart
#

meh, proof of concept

#

likely gonna scrap it like I did with v1

nimble lake
#

no.

#

where were you wen hk multiplayer die

i was at house eating dorito when phone ring

‘hk multiplayer is kil’

‘no’```
icy moss
#

😔

safe hamlet
#

nice attempt at humor

ornate rivet
#

woah

floral furnace
#

wow

valid ridge
#

How do you deal with exported shaders in the editor for custom levels? Do you have a way to export them?

#

Actually, how are custom areas done in general

valid ridge
#

Thanks, this’ll help a lot

fair rampart
#

I have no idea why my client is disconnecting on scene changes GWczoneHotdog

short vessel
#

cannot get health value from memory address c++

#

in hollow knight

#

it works with other games

safe hamlet
#

what memory address are you using

#

and where is the code

short vessel
#

I am using cheat engine to get the dynamic address

#

for health

safe hamlet
#

the health should be a static address tho

short vessel
#

not for me

safe hamlet
#

what did you use

short vessel
#

what do you mean

#

c++

safe hamlet
#

for the memory address

short vessel
#

994AE0E4

copper nacelle
#

do you have an actual pointer path or

short vessel
#

i don't know what doing

#

i learned c++ yesterday

safe hamlet
#

bruh

#

you need to get the path from program to gamemanger to playerdata to health

#

i think unless i am missing something there

#

actually you don't need gm

short vessel
#

thing is the code worked on hollow knight

#

then it stopped working

copper nacelle
#

yeah because you're using an offset instead of a path

#

offset isn't going to be consistent at all

short vessel
#

you mean an address

copper nacelle
#

and if you're not using win32 calls it's probably ub too

#

if it's just an address with no ref to the exe that's just not going to work period after reopening the game

safe hamlet
#

well hk isn't just a simple program that you can just use a single offset

short vessel
#

it one health varible

safe hamlet
#

bro

#

you need the pointer offsets that lead to the health variable

short vessel
#

i just want the current health

safe hamlet
#

it's not just one offset like you are assuming

short vessel
#

there's 4

#

in normal

#

they contain health

copper nacelle
#

what

short vessel
#

right now there are 4 address that contain the current health

#

i just the value of it

#

my program get the value of any other game but hollow knight'

#

it goes negative 900 millon

#

sometimes 2 billion

#

the output i get is 2081995776

#

that is not a valid address

#

the output

copper nacelle
short vessel
#

WHAT

ornate rivet
#

time to mute 56 again

short vessel
#

so this no help at all

rain cedar
#

Not exactly what you're trying to do but very similar

safe hamlet
#

^ you can also look at livesplit to see how they read it

#

you don't even need to find them since livesplit has the value you are looking for

short vessel
#

so you're telling me to learn another language

copper nacelle
#

no

#

@leaden hedge can i put darkness on github

#

i added/changed some stuff for the toggling meme

gilded lotus
#

does show hitboxes on 1432 have a toggle

copper nacelle
#

idts

gilded lotus
#

😔

leaden hedge
#

you can put darkness on github

#

only reason I didn't is it's like 5lines like sanic mod

copper nacelle
#

not anymore 😤

short vessel
#

its working again

#

from reason

copper nacelle
#

you know if you posted your code it'd be a lot easier to help

short vessel
#

well i have to commit to github

#

do you know how to turn the string "0x93FE40E4" into a DWORD

#

this is for getting arguments in the command prompt

copper nacelle
#

at runtime or

#

strtoul seems like what you want

#

DWORD is just typedef'd to ul

short vessel
#

what

copper nacelle
short vessel
#

i watch a tutorial and he used dword

#

dword works

#

DWORD memoryAddress = strtol("0x93FE40E4", 0, 0);

#

this does not work

#

it going to be DWORD memoryAddress = strtol(argv[2], 0, 0);

copper nacelle
#

those are not the right args

#

it takes a cstr

#

so it needs a length

#

if you're just hardcoding an address you can just assign it directly though

#

DWORD memoryAddress = 0x93FE40E4ULL

short vessel
#

i not hard coding it

#

for arguments in the command prompt

#

so dont have to recompile everytime

#

help hollowcry

copper nacelle
#

then they're null terminated

#

make the second arg strlen(argv[2])

short vessel
#

testing that

#

aa

#

no

#

argv[2] is a char*

#

it doesn't accept anything that is not 0

#

do u want the code

copper nacelle
#

yeah

short vessel
#

how do you what it

copper nacelle
#

idk

#

hatebin is nice

short vessel
copper nacelle
#

oh

#

i got it

#

just declare a char* before the strol

#

and then pass the ptr to that

short vessel
#

give an example

copper nacelle
#

int main(int argc, char** argv)
{
     char* next_char;
     DWORD addr = strol(argv[2], &next_char, 10);
     // ...
}
short vessel
#

do i have to include 0x

fair rampart
short vessel
#

what would happen if dreamnail it

fair rampart
#

the answer was once again simple, just add a DontDestroyOnLoad

copper nacelle
#

you want the last arg as 16 actually

short vessel
#

and not strol

copper nacelle
#

what

#

just 16 instead of 10

#

because hex

short vessel
#

strol(argv[2], &next_char, 10);

copper nacelle
#

yeah

short vessel
#

guess what

viral snow
#

One second me and the boys are joking about a possible online mode and yet here we are

short vessel
#

it didn't work

copper nacelle
#

did it not parse

short vessel
#

no

#

it parses if its hardcoded

#

i am going to have breakdown

#

1364943872

#

that the output

#

common sense tells me that dont have 1364943872 health

copper nacelle
short vessel
#

DWORD addr = strtol("93FE40E4", &next_char, 16);
DWORD addre = 0x93FE40E4;

#

those are not =

#

addr = 2147483647
addre = 2482913508

copper nacelle
#

strtoul

short vessel
#

it works

#

its better original plan using opencv python to get the health

#

and in the photo you're using strol

#

time to do pain of path but everytime i take damage i get shocked

short vessel
#

thank you very much

robust shale
#

Are the memory addresses documented or do memory scan it myself?

leaden hedge
#

dunno why you'd memory scan

#

just use something like PDT

#

and output it from the game with sockets

robust shale
#

PDT?

solemn rivet
#

player data tracker

#

what exactly is your aim here kid kat?

robust shale
#

Thanks! Yeah alright, I was just curious if the addresses were documented.

copper nacelle
#

Hk's livesplit components has some offsets documented

robust shale
#

Oh alright, thanks 56

upper niche
#

Oh my gosh, hollow knight coop

#

Incredible

sullen tiger
#

pls elaborate

ornate rivet
#

this is so cool, jngo you're awesome

nimble lake
#

damn who's that 3rd dude

ornate rivet
#

56, jngo, and I

nimble lake
#

just standing there

#

also, awesome work there

sullen tiger
#

where do i get this

fair rampart
#

it's under development

ornate rivet
#

it works with debug

#

nope

#

yea you're right

#

I haven't seen the code so idk

nimble lake
#

imagine making it work with custom knight for each player

patent zealot
#

How would it work in the pantheons? thinkgrub

fair rampart
#

You can race with others, you can't damage other players' enemies

patent zealot
#

Ah thats cool

fair rampart
#

yay mods im using enemy health bar mod

#

don't forget the QoL mod

grizzled steppe
#

So is it like GhostMod for Celeste but a lot more complicated

#

I probably can't understand any of it but it looks complicated and hard so

nimble lake
#

where?

valid jetty
#

this excites me

nimble lake
#

heard multiplayer and came as fast as I can
take that out of context

dark shale
#

HOLY omg

turbid sonnet
patent zealot
#

Its not even out

#

Its in development by jngo

#

it's under development

grizzled steppe
#

megamind

nimble lake
#

How do unlocked abilities work?

#

Does it like, take them from the save file of the host and gives them to each player?

fair rampart
#

everyone's on their own in their own world

nimble lake
#

cool

#

HollowNet

#

or Hallownet because it's almost Hallownest

ornate rivet
#

let's do a WP race with multiplayer mod

gilded lotus
#

im in

#

you don't stand a chance against my saw room optimizations 😎

fair rampart
gilded lotus
#

how does it work with room cycles and mobs, are they client side or whoever loads the room first

fair rampart
#

client side

gilded lotus
#

unlucky, so you cant all do eternal ordeal

fair rampart
#

yeah I'm not sending an entire world over to all the clients

nimble lake
#

Do I need to turn off other mods or something for this?

fair rampart
#

it's recommended

gilded lotus
#

so basically turn off any saleh mod

fair rampart
#

wait that dll is broken

ornate rivet
#

oh god imagine eternal ordeal if mobs were shared

#

50 knights vs infinite zotes

#

that would actually be the best thing ever

#

jngo please make p5/trial of fools/eternal ordeal enemies shared

fair rampart
nimble lake
#

ok
now what?

ornate rivet
#

someone needs to host with hamachi

fair rampart
#

I'll host since I have the server dll

nimble lake
#

i remember hamachi

gilded lotus
#

yeah sure you just want my personal info

fair rampart
#

if you want in on this, dm me

copper nacelle
#

i would put actual money on zaliant winning

solemn rivet
#

^

#

stream this you fools

floral furnace
#

cant believe competitive pvp is finally becoming a thing

#

see you guys in ESL at 2021

nimble lake
#

can't wait for the 1st esport hollow knight tournament

ornate rivet
#

hk in the olympics

nimble lake
#

HK is a real sport, you know?

raw sierra
#

Greetings Genltmen, is there anyone know who is jngo102?

#

The search function presents three users with no special tags.

fair rampart
#

hello

raw sierra
#

Greetings from the twp, I've heard you from the Administrator

fair rampart
#

ok

raw sierra
#

Please excuse me from my attempt of creating a conversation environment with more......privacy I assume.

safe hamlet
#

bro what

turbid sonnet
#

i must get in on this

grizzled steppe
#

no

fair rampart
floral furnace
#

elderbug bout to lose it

raw sierra
#

Greetings, 56

#

I’ve also heard about you while having a conversation with the Administrator

copper nacelle
#

who

raw sierra
#

The Administrator........

viral snow
#

I must play this even if it means going out of quarantine

copper nacelle
#

this is not descriptive

#

my guesses here are benji and simo

raw sierra
#

Please allow me to verify my information

#

Emmmm

#

The user with the surname “Benji”

#

0790

copper nacelle
#

cool

leaden hedge
#

banjo POGGERS

copper nacelle
#

🪕

raw sierra
#

So......I was planning to send some messages to inform you something, which is prohibited by your “do not disrupt” circumstances(according to my memory a while ago)

safe hamlet
#

communicate with him here

raw sierra
#

Form my personal perspective, this very moment will be a good chance for me.

solemn rivet
#

👀

raw sierra
#

My apologize, such an action is unacceptable according to my personal standard.....

copper nacelle
#

what

raw sierra
#

User "56" #1363 please check your.......private communication channel?

copper nacelle
#

do you want me to enable dms or

raw sierra
#

(I am not quite sure about its nickname)

#

Done.

#

It's a lot of contexts.....selective reading is expected.

hazy sentinel
#

user "end underscore 2^11 (Communicator)" have you tried communicating like a human

raw sierra
#

My lack of knowledge to the popular culture in this community is the main cause of the current circumstances.

dusky lion
#

Are you using google translate to talk

raw sierra
#

Depends on your perspective

dusky lion
#

Are you a native english speaker

raw sierra
#

May you be so kind to show me your relative evidences of such a hypothesis?

#

No, unfortunately

dusky lion
#

You sound like a sentient thesaurus and the jury is still out whether that's the fault of google translate

young walrus
#

"May you be so kind to show me your relative evidences of such a hypothesis?"

My favorite sentence I've read today

raw sierra
#

But judging by them, I am the best possible comminutor they got

#

You may ask a twp member you met for a request of a replacement.

dusky lion
#

I will ask the Washington post that

raw sierra
#

........

#

the twp

#

.........

young walrus
#

您是否正在使用Google翻译与我们交谈?

raw sierra
#

Oh, here he is.

#

Greetings Wood

fair rampart
#

Hi Wood

cerulean patio
#

But judging by them, I am the best possible comminutor they got
well,that's true

dusky lion
#

wood can you please give any amount of context

raw sierra
#

In language that is within your understanding or far beyond your understanding?

dusky lion
#

far beyond please

unborn flicker
#

end_2048 is the spokesperson for The White Palace, which is a mostly Chinese-speaking group of artists that make custom knight skins.

dusky lion
#

so is it google translate

leaden hedge
#

any proof cammie?

iron crown
#

maybe they just took a really good english class

unborn badger
#

chief i'm not trying to be an ass but

#

a communicator should probably be able to actually communicate well

young walrus
#

is about to ass

unborn badger
#

why are you eldercing me i'm right

solemn rivet
#

stfu

#

no bulli

safe hamlet
#

well yes but actually no

leaden hedge
#

modding is still toxic to pepo

floral furnace
#

society do be like this

leaden hedge
#

even when pepo is expected

fair rampart
#

what

iron crown
dusky lion
#

If it is language inteference, I apologize end

solemn rivet
#

I mean

#

ofc it is

leaden hedge
#

serotype is not remotely correct

raw sierra
#

No need for this my colleague

young walrus
#

they don't speak english, so ofc the syntax is going to be weird

leaden hedge
#

did you mean stereotypical

raw sierra
#

And it is not an interference.

dusky lion
#

You are using very formal language likely because you aren't a native english speaker; I don't think they teach internet speech in english classes

leaden hedge
#

its not even formal

unborn badger
#

it's okay to say you're using some kind of translation program

leaden hedge
#

its just unnatural

solemn rivet
#

^

dusky lion
#

Katie English isn't their first language

#

Just give them some slack

#

Who knows what teaching program they used

solemn rivet
#

poppy

#

save us

still locust
#

What happened???

solemn rivet
#

we're having communication issues

dusky lion
#

Your ambassador is speaking very verbosely which confused a lot of people

raw sierra
#

Hypothetical correct based on my instinctual analyzation

You are using very formal language likely because you aren't a native english speaker; I don't think they teach internet speech in english classes

still locust
iron crown
#

bruh just say yes

raw sierra
#

yes.

still locust
#

I'm trying to catch up

leaden hedge
#

i dunno why people have a problem,
its not that bad, besides unnatural word selection and some weird dictionary forms of words instead of the grammatically correct one

solemn rivet
#

yeah, I agree

#

most often than not the general meaning is properly conveyed

raw sierra
#

I didn't prepare well for a general conversation........under most circumstances.....but I will rearrange and script a proper speech for a public announcement, if ever needed

still locust
#

Oh I see, infact he always talk to us like that, even in Chinese
I'm sorry for the weird atmosphere, he is kind of shy and sensitive, maybe he was afraid of not behaving appropriately?

raw sierra
#

No I am not shy

still locust
#

OK

solemn rivet
#

no, it's fine

raw sierra
#

Mon dieu please Poppy don't inform them about this at least

#

_>

fair rampart
#

I loved reading this 😁

dusky lion
#

french?

#

You trilingual end?

iron crown
#

oh god they do french too

raw sierra
#

I've forgot where did I learn this

#

Just a habit.

#

Please ignore that

valid ridge
#

It's not that uncommon for people to mix in other languages like that

solemn rivet
#

that's fine, don't sweat it

cerulean patio
#

I think I must learn English well😫

rugged river
#

No I am not shy
@raw sierra you aren‘t shy but nervous

raw sierra
#

.......

#

This phenomenon shall not be acknowledged.

still locust
#

Shall we back to modding-development now...
I'm so excited about the mutiplayer mod, is there any user guide about it?

raw sierra
#

If you desire a translated version, just send me a copy.....

fair rampart
#

I wanna work on the mod more before making a guide on it

still locust
#

mylajoy got it

fair rampart
#

@rain cedar Do you mind if I replace the current customknight with mine once it's finished?

rain cedar
#

Go for it

fair rampart
#

alright thanks

fair rampart
patent zealot
#

Can they hit each other with nails?

fair rampart
#

not yet

patent zealot
#

hk pvp confirmed

nimble lake
#

did gamer got hit as well?

fair rampart
#

yes, you can see so

grizzled steppe
#

Player contact dmg sounds kinda spook

#

PoP but there's 5 people playing

fair rampart
#

it's toggleable by the host

leaden hedge
#

How laggy is that lol

fair rampart
#

it runs better than I expected but it's definitely not production ready

warped sinew
#

oh my

nimble lake
#

LittleGhostNet

grizzled steppe
#

That's actually a big brain name

nimble lake
#

ShadeNet

ornate rivet
#

HallowNet

#

if I win a pvp battle against graig, can I get an early copy of ss?

floral furnace
#

bruh dont bother graig is just gonna go full tri lifeblood charms + thorns then hell just face tank you to death /s

grizzled steppe
#

Max lifeblood Fury spam

ornate rivet
#

spell build sounds more op tbh

grizzled steppe
#

Honestly yea

#

Hit someone like 3 times and just spam them

quiet lodge
#

fill up ur soul beforehand

ornate rivet
#

get the gank squad out

hasty fractal
#

I'm French and my english is not very good.

fair rampart
#

Someone needs to host the server

#

Would you like me to host?

#

also you need hamachi

leaden hedge
#

no punchthrough PepeHands

young walrus
#

So does the server create an instance of the entire world?

ornate rivet
#

nope

fair rampart
#

nope, only an instance of the player

ornate rivet
#

jngo is the server you sent in the fk discord the latest version?

fair rampart
#

no

ornate rivet
#

can you send the latest one?

buoyant obsidian
#

did you just say it needs Hamachi? 😨

ornate rivet
#

yea

buoyant obsidian
#

war flashbacks

ornate rivet
#

oh I meant the server file

fair rampart
#

oh

ornate rivet
leaden hedge
#

thats probably why its so laggy lol

#

can't you ask angle if you can use their server for udp punchthrough

ornate rivet
#

@compact sedge

leaden hedge
#

i assume you're not doing hole punching because it requires a server to matchmake

fair rampart
#

multiplayer preloads shroompog

compact sedge
#

Depends on what you write the matchmaker in. The server only has 2 GB of ram total and it’s in France so don’t use it as a bridge, only as a discovery point for clients. If they use upnp tho it should be good

#

@ornate rivet

ornate rivet
#

@fair rampart

fair rampart
#

"only" 2GB lol

#

my networking knowledge is garbage

#

so no unet

#

that simplifies things a lot

#

so the server has no content from hollow knight at all ?

#

it does, the server still uses the modding api

leaden hedge
#

i mean it should be pretty similar, but instead of using hamachi

#

the server connects to the matchmaker and never close that connection so you get a port and address open temporarily
then the client does the same,
then server and client can connect directly by asking the matchmaker for the ips and ports of other clients

fair rampart
#

Do I write the matchmaker myself or does Angle need to do that for his server?

leaden hedge
#

it needs to be on the server

#

i assume you'd write it and get angle to compile it

fair rampart
#

any tutorials on how to get started with that? I'd guess that it'd need to written in something more performant like C++

leaden hedge
#

you could do it in c#

#

it doesn't really need to do much

fair rampart
#

alright

fair rampart
#

I'd guess that it'd need to written in something more performant like C++
you mean than c# ?

#

C# is fine even for full servers

copper nacelle
#

why

unborn badger
#

ignore him, he's just someone who posts random stupid shit

#

and will probably get banned in a moment for ban evasion

young walrus
warped sinew
#

Hamachi is a word I haven't seen in like 20 years. We used to use that to play Street Fighter over emulation in like 2002

#

playing street fighter over ADSL1 over hamachi with like 300ms ping. ahh good times.

nimble lake
#

i remember playing minecraft with friends using hamachi

fervent rampart
#

How do you make mods? I would like to try and get started

safe hamlet
#

do you know c#

#

any .net language for that matter

copper nacelle
#

vb 😬

sinful epoch
#

pls Senpais how to debug mods with visual studio or with rider, it doesn't matter 🙏
I have a build that outputs a mod and its .pdb into the /managed/mods game directory, and the game loads this mod, 100%.
But for some reason neither VS nor Rider can't hit a breakpoint. VS, for example, says that pdb not found even though it's right there near the mod dll. And there is no my dll in "Modules" after attaching to a running HK exe

copper nacelle
#

you can't

rain cedar
#

You got the dnspy debugger to work though

#

Right?

copper nacelle
#

Kinda

#

Works unless you use any mod at all which uses any sort of On/IL hook

#

which is like all of them

rain cedar
#

Ah so it's useless

copper nacelle
#

Yeah

#

You can use the pdb for line numbers if:

  • you convert it to an mdb
  • you change your hk build to debug by getting the debug unity player by downloading unity
#

kind of effort

sinful epoch
#

Ooff. I'm like a total .net baby

fair rampart
#

relatable

sinful epoch
#

So the fact that I can't step-debug is normal, right?

copper nacelle
#

yeah

sinful epoch
#

Thanks God, I was thinking that I'm being a total pepo

#

Ok, will try to get the most of the object explorer or how tf this thing is called then. And my favorite printf debugging 🙂

copper nacelle
#

I have a tiny thing which might make debugging easier

#

Didn't end up using it but I made it for better printf debugs like rust's dbg! macro

sinful epoch
#

Oh, pog

copper nacelle
sinful epoch
#

Looks cool

#

although that one is an uber-tracing-machine

copper nacelle
#

that looks cool

sinful epoch
#

Yeah, I use it all the time

copper nacelle
#

note: it reads the file to get the line

#

because c# does not have macros

#

but there's an attribute for line number and file location so i abuse it

sinful epoch
#

nice

copper nacelle
#

i just realized the whole thing is internal

#

suboptimal

#

the idea was set these so you could use it wherever instead of stdout

sinful epoch
#

I need a debugger mostly to learn how the code works step by step to get myself more familiar with a codebase, but this should be helpful as well. Do I just add a reference to that and I good to go, right?

copper nacelle
#

yeah

#

put it in mods

#

so it actually gets loaded

#

set the properties

#

and then vibe

sinful epoch
#

Will try, thanks!

gilded lotus
#

iS iT sAfE?

sinful epoch
#

I only use Windows to launch games so I don't care feelspkman

copper nacelle
sinful epoch
#

Although now I installed all my gpg crap to sign commits on windows so pls don't virus me senpai seerpray

hollow gale
#

A m a z i n g

gilded lotus
fervent rampart
#

How far along is the multiplayer mod @fair rampart? It sounds amazing

nimble lake
#

what is dbg.dll?

fair rampart
#

It's in the very early stages of development and is full of dangerous bugs @fervent rampart

grizzled steppe
#

You cannot escape 56

reef sluice
#

not even in the main menu are you safe from it

hollow gale
#

👍

fervent rampart
#

Aight cool @fair rampart

fair rampart
nimble lake
#

how is he even doing that?

fair rampart
#

I thought I had it deactivate on the animation "NA Cyclone End" but guess not

copper nacelle
#

get a lag switch so it drops the frames where you'd end cyclone and then run after people

fair rampart
#

anyways, I got all the slashes, spells, and nail arts done

weak lodge
#

jngo being god smh

#

when youre done with that wanna work on KoL with me zote

fair rampart
#

bGWjiangoOmegaLULss mGWjiangoOmegaLULds

weak lodge
#

mmm thats a yes

#

dont worry im not saleh

#

6*

#

youll see

#

coming soon™️

#

depends

#

if i finally give and ask someone for help then before

#

if not then after

#

if im not dead by that point it will be made

young walrus
#

silksong is ded, so definitely not after

fervent rampart
#

Lmao

gilded lotus
ornate rivet
#

I cant believe Zal is doing this when he hasn't even finished five knights music soulpensive

patent zealot
#

i thought that was 5 knights music

grizzled steppe
#

What a noob

ornate rivet
#

na it's for Grenade's mod

patent zealot
#

Ah

nimble lake
#

i wonder what's supposed to be in the end.

gilded lotus
#

too lazy to wrap to beginning even tho 2 clicks

fervent rampart
fair rampart
#

why might this be happening and making scene loads get stuck?

  at SceneLoad+<BeginRoutine>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0 
  at UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) [0x00000] in <filename unknown>:0 ```
fervent rampart
#

Hm

fair rampart
copper nacelle
fair rampart
#

it happens when I load up a save, change scenes, exit the game, open the game, then load the save again

#

yeah idk why it's fetching an empty string

copper nacelle
#

check whatever the bench scene is set to

fair rampart
#

with dnspy or?

copper nacelle
#

just hook save game load and check the field

#

or decrypt the save with qol or something

fair rampart
#

is it respawnScene?

#

cause I see that's an empty string

copper nacelle
#

probably

rain cedar
#

To some degree yeah

#

Obviously it's not gonna get sharper than the actual resolution of the art

fair rampart
#

alright, so the issue is that respawnScene becomes empty whenever I bench somewhere other than the one I start the save at

#

I have no idea why that's happening

rain cedar
#

It depends

gilded lotus
#

cant you just set the resolution and see

fervent rampart
fair rampart
#

okay, for now I'm just manually setting the respawnScene and respawnMarkerName to the current scene's

#

this will probably break for hard saves

copper nacelle
#

do you hook setstring or anything

#

because I grepped it and there's nothing actually setting respawn scene in the client

fair rampart
#

no

copper nacelle
#

how do you send equipped charms

#

do you just do it every scene or something

rain cedar
#

@celest eagle I have a 1440p monitor and the game is noticeably crisper than 1080p

fair rampart
#

what happens is if multiple players share the same active scene then instances of the players get spawned on the client side

#

the PlayerData charm bools get sent in the same packet

copper nacelle
#

I can't see anything obvious

#

One thing to note is that if you throw in activeSceneChanged

#

Other hooks won't run

#

for some reason

#

So if tc had any and you threw that could be something

#

¯_(ツ)_/¯

fair rampart
#

throw as in a try/catch?

copper nacelle
#

throw as in throw without a try catch

fair rampart
#

ah

#

yeah I'm not doing any of that anywhere

#

hol up

#

there's a throw in an if else in the tutorial I followed

#

that's only in the packet reading method though and the scene change hook only sends packets, so

ornate rivet
#

MEBI asks if anyone wants to do a phase 2 for massive moss charger, he wants to make new animations for it.

fair rampart
#

He asked me too and I denied lol

floral furnace
#

you might have luck with sid, if hes in the mood

fair rampart
#

Is there anything else I should do besides replace CustomKnight.zip on the drive and update the dll sha1sum on modlinks.xml to update CustomKnight?

copper nacelle
#

ping sid

#

or put it on github actually

fair rampart
#

@safe hamlet

copper nacelle
#

cannot believe he would ignore the second message

fair rampart
#

I am doing both

copper nacelle
#

drive has a confirmation for files >25

#

so you need to host custom knight somewhere else

#

sid put it on dying is fun / owo.pomf or whatever

fair rampart
#

yeah I saw that link in the xml too

copper nacelle
#

github releases should also work fine though if that's easier

#

commiting binaries 🤢 🤢 🤢 🤢 🤢 🤢 🤢 🤢 🤢 🤢

fair rampart
#

what'd I do wrong this time

copper nacelle
#

no i was 🤢 ing grenade

fair rampart
#

oh

#

well let's see if this works, just proposed the changes

tacit trail
#

should I know the fundamentals of C# before attempting to make mods

copper nacelle
#

yeah

sinful epoch
#

Or just be like me and bullshit your way aroud 4Head

solemn rivet
#

^

#

Me irl

spiral forum
#

How can I change the original sprites for hollow knight?

nimble lake
#

there's customknight

spiral forum
#

Doesn’t that only let you change what your knight looks like?

#

Bc what I want to do is remake all of the sprites in MS Paint

copper nacelle
#

write a shader to do it

spiral forum
#

Yes... that

spiral forum
#

Would I do it though unity?

compact sedge
#

this is why, if y'all are curious, I host my own site for my mod downloads

safe hamlet
#

no we aren't meowpuffygottem

upper niche
#

--`

#

Sorry cat stepped on my keyboard

#

But does the coop mod share enemies, or is it more like celeste ghostmod

copper nacelle
#

latter

upper niche
#

Oh, so you can't interact with the others/their enemies?

copper nacelle
#

there was some like slashes going to other people stuff and those could hit their enemies

upper niche
#

Wow! That's really cool! So you could, say, co-op bosses by having the occasion p2 slash hit the boss?

#

It would be really cool if enemies could share health but not location, so both players could fight the boss on their own, but are also helping the other in doing so

#

Would that be realistic?

fair rampart
#

You might be onto something

upper niche
#

Yeah? Glad to help, then! Though, if that's the case, a bit of health scaling might need to be implemented too

unreal wren
#

Hello does anyone have like base code that I could use? Like for the game

rain cedar
#

hollow_knight_Data/Managed/Assembly-CSharp.dll

unreal wren
#

@rain cedar is that it?

#

If so thank you so much

rain cedar
#

It's a .net decompiler

#
  • the path to the assembly with the game code
unreal wren
#

Oh, so it's not like a document with the base code

young walrus
#

your game is the base code

#

this just reads it

rain cedar
#

Kinda

#

We don't have access to the actual base code

unreal wren
#

Ummm about that, I dont have it on steam

unborn badger
#

GoG?

rain cedar
#

Wherever you have it the file structure is the same

unreal wren
#

I just need to see like how the charm system code works

#

I have it on my switch

rain cedar
#

Charm system is an fsm

#

There's an fsm viewer but it's not gonna work if you don't have the game on pc

#

Why do you want to see?

unreal wren
#

I'm working on like an original game and I wanted to implement a charm system like hollow knights since it works so well, so I wanted to see like how I would go about coding it

ornate rivet
#

you probably dont want to copy their code lol
they dont even use code for most of the charm ui technically. They use playmaker fsm which is more like drag and drop coding.

unborn badger
#

do you have ori and the will of the wisps FeelsDabMan

unreal wren
#

No, I don't have a computer