#archived-modding-development

1 messages · Page 509 of 1

cedar hemlock
#

If you use the QoL mod, you will also see user1.json which you want to look at

teal hatch
#

K

light zodiac
teal hatch
#

Shoot. right ok

teal hatch
cedar hemlock
#

doesn't matter

teal hatch
#

Ok

summer tapir
#

hey, was language are the HK mods written in?

#

C#?

vocal spire
#

Yes

cedar hemlock
#

C#

vocal spire
cedar hemlock
#

just throw it out there before they ask lol

summer tapir
#

hmm I see, I was thinking of getting into C# myself since Im on vacation. May I ask what IDE is common to use? I saw Visual Studio Code has a C# Extension but I dont know if thats the best idea

cedar hemlock
#

visual studio

vocal spire
#

I use visual studio community

cedar hemlock
#

or rider

#

never used it

#

idk if its real

#

(rider)

paper valve
#

vs or vs community are both pretty good options

#

vs code too maybe ?

vocal spire
#

I know vscode can do stuff for it, but I think vs is preferred?

#

Vs != vscode

paper valve
#

i personnaly use community too

summer tapir
#

I installed the .NET core and was able to compile a little hello world console script. So I guess it kinda works?

paper valve
#

i sometimes use vscode but not for c#

summer tapir
#

I guess community is also free?

cedar hemlock
#

yes

vocal spire
#

Community is free

#

From what I’ve tried from vscode, I personally prefer vs community

paper valve
#

fair

#

i feel like vs code runs faster tho

vocal spire
#

I also have no idea what I’m doing in vscode

#

Since the only time I use it is in free time on my school pc

#

And I can’t install much since school computers don’t have admin privileges

#

I know it’s better than notepad at least

summer tapir
#

oki doki, I take a look at it. Thank you for the docs aswell PeepoLove Im a total C# noob so its gonna be a fun ride

paper valve
#

school pc without visual studio community

#

fucked up

vocal spire
#

can’t install it without admin perms

#

Also can’t install .Net core sdk

copper nacelle
#

vsc is fine

jolly jungle
#

Is there a way to change a bunch of random objects' textures via a full atlas rather than a sprite for each object?

jolly oriole
jolly jungle
#

What does that do?

jolly oriole
#

dumps/replaces everything with a tk2d spritesheet

jolly jungle
#

wdym?

jolly oriole
#

the mod i made dumps/replaces everything with a tk2d spritesheet

jolly jungle
#

Damn, grenade, your'e the best explainer ever

#

So what am I supposed to do with this?

#

Use it or analyse it?

jolly oriole
#

nvm, read that wrong

#

read that as if you want to change objects that have a full atlas

#

which only the tk2d spritesheets are

jolly jungle
#

Ah

#

What I meant was, suppose I have a few sprites here I want to swap out

jolly oriole
#

oh wait, that's an atlas too

jolly jungle
#

I have the new sheet ready and all

jolly jungle
jolly oriole
#

no

#

different kind of atlas

jolly jungle
#

:/

jolly oriole
#

tk2d atlas: atlas0.png (in afaik all cases)
"normal" atlas: spriteatlas_xyz.png

jolly jungle
#

See, I have problematic images like this one, where the ripped version is totally off with the edges and all

jolly oriole
#

you'd have to hook either USceneManager.ActiveSceneChanged or USceneManager.SceneLoaded and then replace all spriterenderers (though idk how you'd go about the atlas part)

#

never worked with atlases before

jolly jungle
#

Also ignore the weird smear on the image, that's just transparency being funny

#

So, no ideas?

jolly oriole
#

no

jolly jungle
#

Damnit

#

We'll need to suffer this for now, I suppose

#

Till we figure out something else

jolly jungle
stone elm
#

I'm back to (trying) getting 1.5 ModdingAPI working for me (from source). The output ZIP contains an Assembly-CSharp.dll, MMHOOK_Assembly-CSharp.dll and MMHOOK_Playmaker.dll. It appears that the Assembly-CSharp has the Modding namespace and types but none of the MonoMod hooks (which are in MMHOOK_Assembly-Sharp.dll. I feel like I'm doing something silly and missing a step... Perhaps the repack just isn't going and I'm missing a manual step? Any advice? Thanks in advance.

jolly oriole
#

the repack is removed to make the assembly csharp not a huge file

stone elm
#

Yeah, I'm with you there. The issue is that the types are now not in the assemblies they were in before, thus creating an issue.

#

I suppose I'll reference the MMHOOK assemblies separately. Is that the intended solution?

jolly oriole
#

currently yes

stone elm
#

Ok, thanks!

burnt gyro
#

What have I created

#

(it's the first skin I put remotely any effort into so sorry it's wobbly, but I think that makes a cool effect anyway)

stone elm
#

Here's how my luck is going. This is new. tisoweary

copper nacelle
#

extremely interesting

stone elm
#

Managed to somehow get through it by adding a try-catch to log exceptions. Now I at least have info. I know what the issue is and I'm just gonna throw my shoulders up, say "fuck it", and wait for 1.5.

copper nacelle
#

true

rough pulsar
#

so uh i may need help with modding lmao

#

for some reason when i subtract or add geo it doesn't even display anything unless i quit the game

#

how do i fix this?

cedar hemlock
#

it updates when you change scene

#

or pickup geo

#

56 got something lately

#

something w/ event

#

but that was with blue health

#

.

rough pulsar
#

i have to use that?

#

oh

light zodiac
#

If you want to add geo, why would you add blue health?

rough pulsar
#

i don't wanna add blue health

#

@cedar hemlock does it have to be a valid event or any event string works?

cedar hemlock
#

(i hope)

rough pulsar
#

so any event string works or does it have to be a specific one

steady comet
#

If you want to add/remove geo, you could try

HeroController.instance.AddGeo(amount)
HeroController.instance.TakeGeo(amount)
rough pulsar
#

i forgot herocontroller exists

#

i'll try that

cedar hemlock
#

oh yeah makes sense

rough pulsar
#

thanks

paper valve
#

has anyone messed with menu map yet ? like showing new zones on the map

rough pulsar
#

so uh

#

do i also have to call HeroController.instance.UpdateGeo();?
also does PlayerData.instance.geo and the such only updates when I save the game or not?

#

oh nevermind i guess i could try HeroController.instance.playerData

vocal spire
vocal spire
vocal spire
paper valve
vocal spire
#

Yeah

#

They added a white palace map to the menu

paper valve
#

YO

jolly oriole
paper valve
#

HOLY SHIT

#

you gotta show me how sometimes

#

im so interested in this

#

👁️

vocal spire
#

The code is on GitHub

jolly oriole
paper valve
#

YOOOO

#

you are so powerful omg

#

i'll look into that once i have free time again

fair rampart
#

Quick question, in what programming language are hk mods mainly written?

paper valve
#

C#

#

as hollow knight was created using Unity

fair rampart
#

Aaah, thanks!

vocal spire
cedar hemlock
jolly oriole
#

currently yes

jolly oriole
#

yeet, now only to change sprites and positioning

paper valve
#

YO???

paper valve
#

also actualball very dumb question

#

how'd you get the logs written in game ?

#

like on this screenshot

stone elm
#

ModdingAPI has options in your saves folder

#

Which I believe you can turn on that logging

paper valve
#

alright

#

thank you

stone elm
paper valve
#

i do not have time to mod atm sorry

#

so i havent tried

cedar hemlock
#

sometimes it isn't even there

stone elm
#

There's a hotkey for it. F1 or F9 or something.

cedar hemlock
#

i thought f10 lol

solemn rivet
#

f10 it is

cedar hemlock
#

nice

stone elm
#

I usually spam the keys until I get what I want so I never remember it. 🙂

solemn rivet
#

truly is gorbrain

jolly oriole
#

me when somebody asks which key hides the knight with debug mod

#

all i can say is that it's one of those above the arrow keys

#

wait nvm

#

it's backspace

rough pulsar
#

dang

#

so

#

i tried the ADD GEO event thingy and UpdateGeo();

#

neither of them seemed to work

vocal spire
#

Is there and AddGeo method on HeroController?

rough pulsar
#

yeah i tried that

#

except I used TakeGeo()

vocal spire
#

Try add geo just to test

rough pulsar
#

ok i will

light zodiac
rough pulsar
#

hold on. i think i may have used PlayerData.TakeGeo() in somewhere so I fixed it and I will try it

#

if my dll file wants to get compiled eventually

#

i use ADD GEO by EventRegister.SendEvent("ADD GEO");

vocal spire
#

I don’t think that’s an event

rough pulsar
#

m

vocal spire
#

Are you sure it exists

rough pulsar
#

i honestly don't know what events are there in the game

#

also someone told that the geo counter starts counting after an event

steady comet
#

Randomizer gives you geo by doing HeroContoller.instance.AddGeo(amount) and that works there

rough pulsar
#

oh

#

ok

steady comet
#

And that function calls playerdata.addgeo as well as updating it on the UI

light zodiac
steady comet
#

(I may have the wrong capitals)

light zodiac
rough pulsar
#

yeah i wonder too.

#

that function might save lives

#

well

#

at least save my life

steady comet
#

Yes (you can check it with dnspy, not at comp right now so I can’t)

steady comet
#

Don’t do playerdata.addgeo

rough pulsar
#

oh sorry i forgot to tell; i was away

#

yup! it works

jolly oriole
rough pulsar
#

I. WANT. THIS.

#

one of the best things

#

also a map of white palace would be cool

#

whatever i'M getting off topic

#

also, how does cState even work? like, when i swing my nail horizontally, the attacking value becomes true, but after the swing ends does it stay true or what?

#

also what is altAttack

cedar hemlock
#

tbh should've said that...

rough pulsar
#

oh

#

sorry

rough pulsar
cedar hemlock
#

nail art?

jolly oriole
#

alt attack is simple the nailslash that goes in the other direction

cedar hemlock
#

ah

jolly oriole
#

like the nailslashes go: up, down, up down, the up part is attack, the down part is altAttack

teal belfry
#

hey so i am new here and i just installed the mod installer but when i install the hollow point mod the sprite for the ak showed up in the game but it only did one shot and it did no damage so what else here do i need to install to get it working

young walrus
rough pulsar
#

there is already a cstate for down attacking

#

downAttacking

teal belfry
#

oh thanks sorry

rough pulsar
#

i'm still confused as to what altAttack is

cedar hemlock
#

if the 2nd attack is in the opposite direction

rough pulsar
#

oh

#

ok

#

thanks

#

is there a cState when you use the nail art

#

any nail art

cedar hemlock
#

afaik not any nail art but sure there is one for a specific nail art

rough pulsar
#

ok

jolly jungle
#

How are the original game's sprites for anything static managed?

#

Are they kept as the individual sprites or are there atlases/sheets similar to the ones we see in the ripped files?

jolly oriole
#

i mean, sprites are sprites for unity, so tc decided some sprites are in an atlas, while others are single sprite images

rough pulsar
#

also how can you edit sprites or strings from the game in an IDE rather than unity

#

i'll simply guess you can2t

#

uh

#

how can you edit sprites or strings from the game provided any tool?

jolly jungle
#

How is it all Forgotten Crossroads sprites were in a huge chunk together, and why is there Crystal Peak in there too?

rough pulsar
#

noticed the .net framework was 3.5
is it OK if i change it to 4.8..?

light zodiac
#

Pretty sure no

rough pulsar
#

also

#

uh

#

cs0656

#

oh wait

#

nevermind

#

it seems to only happen if i declare a dynamic type

jolly oriole
#

i have no clue what tc thought

#

btw, does anybody want to test this? (imma @merry lotus because you asked), requires sfcore from the modinstaller

#

part in the kings workshop, part in godhome near the bench

jolly jungle
#

Does this mean it'll work only on tk2d sheets?

jolly oriole
#

possibly? i never worked with that

dark wigeon
#

the command line version it was based on only worked on unity sprites but the gui version only works on tk2d

#

kind of weird but that's just how it is

jolly jungle
#

Any reason?

dark wigeon
#

not enough time

#

school busy

jolly jungle
#

Ah, alright

dark wigeon
#

lots of projects need finishing

jolly jungle
#

Of course, of course

#

Where can the command line version be found?

dark wigeon
#

uhh somewhere

#

let me look

jolly jungle
#

The gui version isn't very cooperative anyways

dark wigeon
#

yeah it doesn't seem to work on hk right now

#

probably because I'm on beta branch

#

it kind of worked but threw an exception in the middle of it

dark wigeon
#

I "updated" it but it's still missing a lot of sprites so I wouldn't really call that working

jolly jungle
#

Wait where does it send all these files?

#

also, I entirely forgot to ask

#

Any idea why something that was supposed to be brk_crystal4 uses brk_crystal2? It seems like most of those in the scene do

#

The first is the original, using sprite #4

#

The second is what happens after my reskin, using sprite #2

#

It seems like most of those in the scene do
Cross that, actually

#

Not sure

clever tulip
#

hellow

#

does anyone know how to edit cutscenes?

#

I'm new, can't find .mp4 files in the game dir

vocal spire
#

I’d look at the redwing mod to see how to do that

vocal spire
#

Might be able to get them by using utiny ripper

clever tulip
#

thanks!

#

how do you think I should open a mod? I only found the redwing .exe online

jolly jungle
#

Even weirder, there seem to be no brk_crystal4 in the scene at all

jolly jungle
clever tulip
#

Actually found this github as well https://github.com/natis1/redwing , but not sure how to proceed integrating it

jolly jungle
#

Even weirder, there seem to be no brk_crystal4 in the scene at all
Now, I'd understand it if for some reason some of the brk_crystal2 use sprite 4 and then in my code it recognises them as crystal type 2 so it gives it sprite 4, but then there are some things that definitely use sprite 4 after the reskin so those would need to be named brk_crystal4 but I can't find a single instance in the dumps

#

Do these dumps include every tiny thing in the scene or are there any things it overlooks?

#

Any specific layers it doesn't return, for example

vocal spire
copper nacelle
#

depends on the dump and when it was taken

#

If stuff is instantiated by other objects and the dump is first frame then obv that stuff isn't going to be there unless the prefab is

jolly oriole
#

can i have edit perms for the summaries doc or does somebody else want to add AdditionalMaps there?

jolly jungle
charred topaz
#

Finally got a working build of IKG for HK 1.5

The asset bundle script that nes gave me worked perfectly. I just needed to clone AssetTools.Net and build it since the Pack() function wasn't in the version I had.

For some reason, having the Aspect Ratio Fitter on the Weaver UI Canvas causes all elements on it to not show, so I removed that temporarily

https://github.com/nickc01/Inferno-King-Grimm/releases/tag/v2.0.2.1_1.5

copper nacelle
#

nice

cedar hemlock
#

to make your mod 1.5 ready you just need to change the .net framework right?

rough pulsar
#

is the UI in hollow knight a Canvas object or another thing?

jolly oriole
#

very likely*

copper nacelle
#

"just"

cedar hemlock
copper nacelle
#

no

cedar hemlock
#

that comes with the new api?

copper nacelle
#

a few ig but there's other shit you have to change generally

rough pulsar
#

wait an update is coming to modding api?

stone elm
#

The settings/savefile stuff is all different so anything using ModSettings needs a change, among other things. That's just the biggest problem I ran into yet. x_x

copper nacelle
#

it's not different if you're not using deprecated stuff ngl

cedar hemlock
light zodiac
#

How do I use healthmanager.hit to manually make an enemy take damage. When I call the function it says the parameter should be hit instance but idk what that means

stone elm
copper nacelle
#

make a hitinstance and pass it

light zodiac
#

So would a modhooks.instance.slashhithook work?

copper nacelle
#

what

#

new Hitinstance()

light zodiac
#

Oh I get it now

#

Thanks

copper nacelle
#

np

solemn rivet
#

wait

#

does making a new hitinstance work?

#

I don't remember how I did it in blackmoth/bonfire

#

On.HealthManager.TakeDamage += SetDamages; oh

jolly oriole
#

i hate quake floors

light zodiac
sleek tulip
#

I want to make a mod that changes the text to whatever I put. Is there any guide thing I can read now on mobile that can explain some stuff on Mod making?

cedar hemlock
sleek tulip
#

Thanks!

jolly oriole
#

quake_floor is the only fsm, from those that i looked at, that has an fsm template

#

fuck this inconsistency

stray whale
#

кто в холлоу найт по сетке, я думаю, тут есть русские.-.

cedar hemlock
#

Pls use english,as otherwise no one will understand what you're saying...

#

Google translate makes absolute shit of it

ornate rivet
#

they're probably asking who here speaks russian

cedar hemlock
#

Well i dont if they wanna know

rough pulsar
#

is there a way to add UI elements to the game

#

like a text, or a sprite showing up in the canvas.

#

like the geo logo near the geo counter

#

or the geo counter itself

#

ohhh i have to run GameObject.Instatiate() right?

jolly jungle
#

How do I choose randomly between two or three things?

jolly oriole
#

list[UnityEngine.Random.Range(0, list.Length)]

rough pulsar
#

alright so this code runs when you load a save file

        private void LoadGame(int id)
        {
            canv = GameObject.FindObjectOfType<Canvas>();
            enemylist = new GameObject("enemylist");
            enemylist.AddComponent<Transform>();
            enemylist.AddComponent<Text>();
            Text t = enemylist.GetComponent<Text>();
            t.text = "hello!";
            t.color = new Color(255, 255, 255);
            t.fontSize = 30;
            Transform tr = enemylist.GetComponent<Transform>();
            tr.parent = canv.transform;
            tr.localPosition = new Vector3(0, 0);
            tr.localScale = new Vector3(1f, 1f);
            enemylist.Spawn();
        }
#

i still haven't figured it out how do you make actual gui text

#

i searched

#

looks like they use the same solution

#

maybe the mistake was at the canv variable

#

i'm trying to print text on the HUD

vocal spire
rose vapor
#

When building the modding API, I get 43 errors in Mod class all pertaining to type is defined in an assembly that is not referenced
Just looking to set this up so I can see how it all works

copper nacelle
#

if you're just planning on making mods you don't need to build the api fwiw

#

if you want to build the api, do you have a vanilla folder as specified in the readme

rose vapor
#

yeah I might not build it, was just wondering why it was erroring
But yeah I copied the contents of Managed to Vanilla folder (had to create folder)

copper nacelle
#

what types?

rose vapor
#

All errors seem to be related to the same class - JsonConvert

copper nacelle
#

Oh you need newtonsoft referenced

#

There should be a folder in the solution folder containing it

jolly oriole
#

yea, the JsonNet folder

#

containing the custom newtonsoft.json.dll i compiled

rose vapor
#

no such folder

vocal spire
#

Not under assembly C sharp

jolly oriole
#

this one

#

forgot to highlight

#

but the jsonnet in the middle

rose vapor
#

oh yeah I have that folder

#

but it's not in solution

jolly oriole
#

yea, just needs to be referenced

rose vapor
#

How do I reference it?

vocal spire
#

Add it like any other reference

jolly oriole
#

right click dependencies -> add dependency -> select dependency (json.dll)

rose vapor
#

I did that but nothing changes. Newtonsoft.Json is already referenced and removing & re-adding it doesn't change anything

vocal spire
#

What are all the referenced assemblies

#

Can you take a screenshot

rose vapor
vocal spire
#

Hmm

#

What are the errors?

rose vapor
vocal spire
#

Re add the netstandard reference

#

Tmk re add everything with yellow triangles on them

rose vapor
#

the problem was I didn't have the right versions of those references. mscorlib I had older version and netstandard I apparently don't have at all, doesn't show up in search

#

but yeah not worth fixing this, will just use the mod installer. Thanks for the help though 🙂

#

And is there a recommended way to extract Unity project? In the past I've used utinyripper but not sure if there's something better

jolly oriole
#

depends on what you want extracted

#

if you want scenes to copy then utinyripper, if it's only assets, uabe is enough

rose vapor
#

I tend to want everything. Downside to utinyripper is it doesn't extract majority of code, just fields is all it does, so can't run it in Unity
but for the most part, all that's needed is looking at scene hierarchy, component setup and some default values

copper nacelle
#

Oh netstandard

#

Nothing is going to work

#

You're on the 1.5 commits

vocal spire
torpid pumice
#

sorry, wasn't sure

deep wave
#

if I don't unhook stuff on Unload() does it remain hooked, or does api actually completely unload the mod?

copper nacelle
#

it remains hooked

deep wave
#

excellent

copper nacelle
deep wave
#

and if I launch the game with a mod disabled in config, does it still init?

#

and then immediately unload?

copper nacelle
#

no

#

it will not load

#

what cursed shit are you doing

deep wave
#

its 4am ok

#

i have a mod that disables isma's tear and lantern, but also quill, for reasons
i wanted to extend it to yeet quill even if the mod is disabled from the mods menu, so you can keep lantern + tear

#

might make more sense just to add quill yeet to qol at this point rather than being a separate mod zote

copper nacelle
#

have you heard of my boy

#

settings

#

how tf is yeeting quill a qol feature

deep wave
#

i fucking hate quill

copper nacelle
#

x5fiftPrime ??

deep wave
#

when you pick it up in rando you cry because it makes benching very marginally slower and makes an annoying noise

copper nacelle
#

oml

soft sparrow
#

I am trying to use MonoMod to patch the assembly, but it is saying it can't find "Assembly.exe". Where is that file located?

jolly jungle
#

Though it sin't really a list

#

I'll just use the random range aprt I guess

primal latch
#

Does the hollow knight API support .net 5? Or do I have to install another SDK?

cedar hemlock
#

you need 3.5

deep wave
#

depends, for all versions before 1.5 it's .net framework 3.5. I think the new version in 1.5 is 4.8? might be wrong

cedar hemlock
#

i thought 4.6

#

1.5 has this

deep wave
#

might be wrong

cedar hemlock
#

yea

deep wave
#

it's net 4 anyway, thank the lord

cedar hemlock
#

is net 4 good?

#

i dont have much knowledge on it

primal latch
#

Ok. That explains why I get errors.

rough pulsar
#

ok so i tried to make a mod for hollow knight and uh it for some reasons appears in modloader now, does that mean it's public now and i'm screwed or only i can see it?

#

help

#

please

cedar hemlock
#

only you can see it

rough pulsar
#

oh

#

ok

#

good

cedar hemlock
#

if you have a mod in your mods folder it will auto detect it

#

to add it for everyone elso you need to pr modlinks

#

but you can ask about that when you want to make it public

rough pulsar
#

thank

shut plume
#

Hey guys, I've been interested in getting into modding, are there any guides or sites to help me get started?

cedar hemlock
shut plume
#

Thanks!

gusty dove
#

modding-development

cedar hemlock
#

stop

gusty dove
cedar hemlock
#

why?

#

just stop

gusty dove
#

well it's already done so i cant stop something i've already done

#

i wont do it again if thats what your asking

vocal spire
#

Hmmmm.... looks like this is a situation mods can solve

#

@ Mods

cedar hemlock
#

always violent

gusty dove
#

imagine i get banned for saying the name of the channel of a bunch of channels

vocal spire
#

It is off topic

light zodiac
#

It's spamming for no reason

vocal spire
#

Here in the modding channels one mod is really strict on that

cedar hemlock
#

who

worn eagle
#

me

young walrus
#

they've been muted

vocal spire
#

Huh

#

Cool

cedar hemlock
#

bruh

#

xD

fair rampart
#

modding

#

development

jolly oriole
fair rampart
#

ah ok

vocal spire
#

what's with people doing this lately?

light zodiac
#

1.4.2021?

vocal spire
#

well I'm dumb

floral blade
#

i'm trying to add skins into the HKMP mod, and so far i've got the skins to sync for 3 local instances of hollow knight, would anyone be willing to help out with testing the mod over the network?

#

the goal would be to test these things

a) the skins get downloaded to the players from the server
b) the skin selections actually get synced between players
c) let multiple players select their own skins and try to roam the map a bit see interactions with different abilities & items etc

primal latch
#

Is there a way to return several lines of dialogue using LanguageGetHook?

copper nacelle
#

just return the entire paragraph and it goes into pages for most dialogue

rough pulsar
#

what's the maximum length the scenesMapped (or mappedScenes) the variable can be?

vocal spire
jolly oriole
#

so either your system memory or around 2.1 billion

rough pulsar
#

i mean

jolly oriole
#

oh wait, 1432

#

then up to 4 GB

rough pulsar
#

if you had the complete map, how many items would be in scenesMapped?

jolly oriole
#

around 480 - 500

rough pulsar
#

i need an exact value though

vocal spire
rough pulsar
#

too lazy but ok i'll try

#

i unlocked 99% of the map anyways

#

the only one i didn't get was that one area in deepnest (concerned)

cedar hemlock
#

bruh sfcore infinitly updates

#

is ItemChanger usefull

rough pulsar
#

if you want to add more inventory items it could be

#

also can i add external libraries to my mod?

vocal spire
#

SFCore adds more inventory items, not item changer

cedar hemlock
#

yeah but what does itemchanger do

vocal spire
vocal spire
cedar hemlock
#

oh ok then i will start modinstaller 1

#

i want dark theme for modinstaller 1

vocal spire
#

56 plz add readmes to 2

rough pulsar
#

I JUST ADDED IN THE WRONG DLL

#

lol

cedar hemlock
#

then remove it

rough pulsar
#

nah

#

i think it's the external library i used for my mod

#

i will keep it

cedar hemlock
#

no

#

just aadd dark to 1

jolly oriole
cedar hemlock
#

yes what

rough pulsar
#

ah yes double mods

light zodiac
#

That means it failed to load

cedar hemlock
#

no

rough pulsar
#

and it succeeded???

cedar hemlock
#

the top one and the low one are the same

rough pulsar
#

it both succeeded and failed

cedar hemlock
#

thats what he means

light zodiac
#

It only failed

rough pulsar
#

i hope i finish this mod

#

i'm always lazy

#

:)

cedar hemlock
#

oohh itemchanger is very usefull

#

i hate the preload shit

rough pulsar
#

you mean

#

itemhelper

cedar hemlock
#

no

#

is it new?

jolly oriole
# cedar hemlock yes what

i don't know how the installer manages to not know that it has the newest sfcore, considering the SHA1 checksums are identical (in the modlinks and from the file itself)

cedar hemlock
#

do you also have the inf update or is it only me?

jolly oriole
#

modinstaller 2 inf updates it

#

modinstaller 1 apparently fixed it after downloading it once

cedar hemlock
#

wierd

rough pulsar
#

sigh

#

i put in the DLLs i used in my mod

#

it still says something like

#

couldn't load that from the assembly

light zodiac
#

are you adding a reference to that mod?

rough pulsar
#

yes?

light zodiac
#

and then saying using modname on the top

rough pulsar
#

i am

#

i'm using visual studio 2019 as ide

cedar hemlock
#

do you get couldn't load that from the assembly in the modlog?

rough pulsar
#

it would show me the error otherwise

#

yes

#

do i just paste the content of interest?

cedar hemlock
#

did you enable your references

rough pulsar
#

i referenced the dlls in my project

jolly oriole
#

wait nvm

#

like this? (just to be sure)

rough pulsar
#

yes

#

exactly

jolly oriole
#

then the only way that error would show up is when you start the game with your mod, but not the dependency mods

light zodiac
#

does a yellow triangle show next to the name of the library mod when you expand references

rough pulsar
#

hm

#

true

#

i might have missed something even though i'm confident i didn't

#

though

#

also

#

no yellow triangles

#

i'll just assume i missed to add referenced dlls

cedar hemlock
#

wait how does sfgrenade have "Remove Unused References"?

rough pulsar
#

sigh

#

the same error again

cedar hemlock
#

where do you get the error??

rough pulsar
#

hold on

cedar hemlock
#

after running the game, in modlog or in vs or smth

rough pulsar
#
[INFO]:[HollowKnightDRPC] - Establishing Discord RPC...
[ERROR]:[API] - Error: System.TypeLoadException: Could not load type 'DiscordRPC.IO.ManagedNamedPipeClient' from assembly 'DiscordRPC, Version=1.0.175.0, Culture=neutral, PublicKeyToken=null'.
[ERROR]:[API] -   at DiscordRPC.DiscordRpcClient..ctor (System.String applicationID) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at HollowKnightDRPC.HollowKnightDRPC.Initialize () [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.Mod.Initialize (System.Collections.Generic.Dictionary`2 preloadedObjects) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.ModLoader.LoadMod (IMod mod, Boolean updateModText, Boolean changeSettings, System.Collections.Generic.Dictionary`2 preloadedObjects) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.ModLoader+<LoadMods>d__9.MoveNext () [0x00000] in <filename unknown>:0 
#

modlog

#

the error is in modlog

cedar hemlock
#

Error: System.TypeLoadException: Could not load type 'DiscordRPC.IO.ManagedNamedPipeClient' from assembly 'DiscordRPC

light zodiac
#

whats the code in public overide void initilize?

rough pulsar
#
public override void Initialize()
{
    Log("Establishing Discord RPC...");
    client = new DiscordRpcClient("a");

    client.OnReady += RPCReady;
    ModHooks.Instance.ApplicationQuitHook += GameClosing;
}
cedar hemlock
#

wait how thw colors

#

fancy

rough pulsar
#

there are absolutely no errors in VS

#

also it compiles the DLL just fine

light zodiac
#

why is there a asembly csharp in mods folder?

cedar hemlock
#

if it says that then the modding api is broken

rough pulsar
#

so how do i fix that problem

#

reinstall the modding api? if so how do i do that

cedar hemlock
#

is there a modding api at the top?

rough pulsar
#

in game?

cedar hemlock
#

yes?

rough pulsar
#

it does

cedar hemlock
#

what

#

why -60

rough pulsar
#

idk

cedar hemlock
#

i have that too shroompog

#

new shit

rough pulsar
#

yes that's the proper channel

cinder loom
#

ok sorry

light zodiac
cedar hemlock
#

but you'll need to keep the RPCReady part

#

otherwise your hook wont work

rough pulsar
#

the RPCReady isn't really a modhook

#

it's just related to the external library

#

my mod works just fine disabling the code

#

the issue is the libraries i included don't load

light zodiac
#

or maybe it doesnt need to happen on initialize. you could do it on a save game load hook

rough pulsar
#

so uh

#

the thing i'm trying to do here that

#

once the game opens it should say "in menus" in the rpc

#

the rpc like

#

discord game status

#

uh

#

i'll just share the whole modlog.txt in a file embed

cedar hemlock
#

Could not render this file preview. nice

rough pulsar
#

nice

languid goblet
#

how difficult would it be to upscale the mask sprites?
asking bc my customknight skin has cool mask designs, but they look a bit small and i can't make them any larger because of the sprite size limits, and i think just having a mod to do that might be an option

rough pulsar
#

if i delete the assembly csharp dll in mods folder will it still load the assembly csharp from the Managed/ folder instead of Managed/Mods

cedar hemlock
#

why is it in mods?????

rough pulsar
#

idk?

cedar hemlock
#

that makes no sense

#

yeet it

rough pulsar
#

guess what

#

😔

midnight canyon
rough pulsar
#

huh?

midnight canyon
#

It's a weird solution but you could try it

rough pulsar
#

i'm gonna try

midnight canyon
#

I've had a similar issue, that solved it for me but at the same time I'm using Discord Game SDK which isn't the same library

rough pulsar
#

well

#

i should try the discord game sdk

midnight canyon
#

You could

rough pulsar
#

i'm not sure why i am using this library but eh ¯_(ツ)_/¯

languid goblet
#

ooh are you tryinng to add rich prescence to hk?

rough pulsar
#

yes

languid goblet
#

sounds cool

rough pulsar
#

would be way better if i could add the room status

midnight canyon
#

That's doable as well

rough pulsar
#

oof

#

you know what i'm just gonna use discord game sdk

#

is there a variable in PlayerData.instance that shows whether you're in godseeker mode or not

midnight canyon
#

PlayerData.instance.bossRushMode

rough pulsar
#

ohh

#

ok

#

i can't add the GameSDK dll file @midnight canyon

midnight canyon
rough pulsar
#

as a reference

midnight canyon
#

@rough pulsar
You add the contents of the csharp folder in your project

rough pulsar
#

oh

#

ok

midnight canyon
#

The dll files go into hollow_knight_Data/Plugins

rough pulsar
#

@midnight canyon it doesn't seem to work, i put the discord_game_sdk into plugins folder

#
[INFO]:[HollowKnightDRPC] - Establishing Discord RPC...
[ERROR]:[API] - Error: System.DllNotFoundException: discord_game_sdk
[ERROR]:[API] -   at (wrapper managed-to-native) Discord.Discord:DiscordCreate (uint,Discord.Discord/FFICreateParams&,intptr&)
[ERROR]:[API] -   at Discord.Discord..ctor (Int64 clientId, UInt64 flags) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at HollowKnightDRPC.HollowKnightDRPC.Initialize () [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.Mod.Initialize (System.Collections.Generic.Dictionary`2 preloadedObjects) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.ModLoader.LoadMod (IMod mod, Boolean updateModText, Boolean changeSettings, System.Collections.Generic.Dictionary`2 preloadedObjects) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at Modding.ModLoader+<LoadMods>d__9.MoveNext () [0x00000] in <filename unknown>:0 
copper nacelle
#

put it in managed or mods

rough pulsar
#

i put it in managed

#

the same error

#

i put it in mods

#

the mods don't even load at all

vocal spire
#

Wdym

rough pulsar
#

wait so

#

if i am using a COM library do i put it in the Plugins folder?

#

someone suggested me to put it in there

#

the same error just happened

vocal spire
#

What happened when you put it in the mods folder?

rough pulsar
#

no mods loaded at all

#

like

#

the mod list doesn't appear at top left

vocal spire
#

Can you send your modlog

rough pulsar
#

i guess the library i'm using is a COM library

#

the white loading bar didn't even appear

vocal spire
rough pulsar
#

i also have other mods loaded don't get bothered by them

#

hold on let me put the dll into mods again

light zodiac
#

redownload the api

vocal spire
rough pulsar
rough pulsar
vocal spire
#

Hmmm

#

Can you screenshot your mods folder

rough pulsar
#

the discord_game_sdk.dll is the one causing this because when it wasn't there the mods loaded

#

ignore the zip file

#

it was always there

vocal spire
#

Try removing all mods but what you need

#

Also could you send Output_log.txt(in the same place as modlog)

rough pulsar
#

it's the no-mod-list agian

#

i have to go

floral blade
#

does anyone know where the mod installer downloads the mods from ?

light zodiac
#

the links provided by the mod maker

jolly oriole
rough pulsar
#

@midnight canyon i put the dll in Plugins folder, didn't work, what do i do

floral blade
jolly oriole
#

idk how one gets the links, but apparently it's possible

midnight canyon
floral blade
rough pulsar
vocal spire
jolly oriole
#

i can't read ¯_(ツ)_/¯

rough pulsar
#

it just parses xml into c# object then iterates through the array then shows you it

#

what i guess what happens

#

i didn't read the source code

vocal spire
deep wave
#

I mean you don't have to use Google drive, you can also use a github release if you prefer

jolly oriole
#

like i do

#

and others

copper nacelle
#

don't use google drive thanks

rough pulsar
#

wow it works though i need an image asset so once it gets uploaded i'll try the thing, thaanks f4iTh!

midnight canyon
#

Glad it works now

floral blade
rough pulsar
#

is there any way to enable so that debug logs appear on modlog.txt?

light zodiac
#

Use Modding.Logger.Log ("thing you wanna log");

vocal spire
midnight canyon
#

Setting it to 1 will give debug logs

rough pulsar
#

is there any way to get knight's located scene? i tried HeroController.instance.gameObject.scene.name and SceneChanged hook, none of them worked as expected

copper nacelle
#

UnityEngine.SceneManagement.SceneManager.GetActiveScene().name

rough pulsar
#

O H

#

though

#

i can't seem to find the getactivescene() method

deep wave
#

have you referenced unityengine

rough pulsar
#

i did

copper nacelle
#

did you ref coremodule

rough pulsar
#

really?

#

holdupholdup

copper nacelle
#

@jolly oriole why are you setting nulls

#

i swear this was already a thing

rough pulsar
#

how can i not see this???

#

i referenced both unityengine and coremodule

jolly oriole
#

UnityEngine.SceneManagement.SceneManager.GetActiveScene

copper nacelle
#

you gotta qualify it

#

otherwise it'll use hk's

rough pulsar
#

i added using UnityEngine.SceneManagement;

#

ohhhhhhh

#

ok

#

o h

#

thanks

jolly oriole
#

btw i also think that it was a thing at one point

rough pulsar
#

now i did most of the things done, the rest should be easy

copper nacelle
#

alright

jolly oriole
#

but i'll check rn

#

again

copper nacelle
#

merged it anyways but this feels very familiar

jolly oriole
#

yea

rough pulsar
#

ok time to test this bad boy mod

#

it works

#

great

vocal spire
#

On mobile

rough pulsar
#

great

#

that's pog

#

i'll fix it so it says the actual names of the area

#

i won't be naming each scene individually

#

otherwise i would either have to:

#
  1. datamine hollow knight, i have done this once and my pc completely lagged out
  2. run around all scenes and take note
vocal spire
#

You can probably get the area name by getting the map zone or something like that

deep wave
#

i already have named every scene in hk feelspkman

jolly oriole
#

nerd

deep wave
#

rando does things to you man

vocal spire
#

Boo

deep wave
rough pulsar
#

mmm

#

useful source

jolly oriole
# jolly oriole yea

the git logs say that it only changed 3 times:

  1. improved logging
  2. remove logging on events
  3. the one you just merged
rough pulsar
#

i'll put the method for translating each scene name into actual names into a seperate file

#

because it would bloat the code anyways

#

if it were put in a file that already has code

rough pulsar
#

i will change some for my fitting

deep wave
#

you may want to change eternal ordeal's name though TeeHee

rough pulsar
#

I have made the Forgotten Crossroad's names so far

jolly oriole
#

i also don't know, haven't done anything with tk2d, what is probably used for the masks

languid goblet
#

sad

rough pulsar
#

i added more stuff to my discord game status

#

pog

cedar hemlock
#

Elderbug

rough pulsar
#

elderbug

#

now tiktik

patent zealot
#

It doesnt show anything for me

fair rampart
#

Oooh, are you working on a discord rich presence mod kaan gaming?

rough pulsar
#

look at my status now

#

@fair rampart yup

vocal spire
#

On mobile

fair rampart
#

Damn thats super cool, def give us a github link once your finished

primal latch
#

Is there a way to replace the icons for the nail arts?

jolly oriole
cedar hemlock
#

fast

rough pulsar
#

i forgot to give howling cliffs its own logo so it looks like this lmao

cedar hemlock
#

why you not doing ToT??

rough pulsar
#

tot?

cedar hemlock
#

Test of Teamwork

#

just released

rough pulsar
#

oh

rough pulsar
#

i saw the mod

#

it cool

cedar hemlock
#

yes

#

it is

rough pulsar
#

what if i added support for test of teamwork in my rpc mod

cedar hemlock
#

nice

rough pulsar
#

as long as they give the scene names

cedar hemlock
#

do

rough pulsar
#

x)

#

ok cool

#

now i only have to do

#

city of tears, the waterways, white palace, godhome, and some other rooms i haven't counted

#

AND deepnest

cedar hemlock
#

lol the scene name is SF_ToT_ToT_01

rough pulsar
#

so far the only thing i have been doing now is just giving each scene a name

#

also there are two scenes i couldn't name yet, like Room_Tram and Room_Tram_RG, the page i use doesn't really give them clear names yet

#

anyone knows where these scenes belong to?

cedar hemlock
#

the trams

#

inside them

rough pulsar
#

i-

#

oh

#

OH

#

what is the RG one then?

#

oh wait

cedar hemlock
#

idk

rough pulsar
#

resting grounds

#

i'm stupid

cedar hemlock
#

makes sense

light zodiac
rough pulsar
rough pulsar
#

Waterways, Deepnest, White Palace, Queen's Garden and a few other rooms left

#

For now I'll give them icons

jolly oriole
#

what will you do with custom scenes now that tot is released?

rough pulsar
#

I'll also add them

#

It's simple to add custom scenes

#

I can just add an if statement to them

#

Can you give me the github link to your mod@jolly oriole

jolly oriole
rough pulsar
#

Where are the scenes

#

I can't seem to find them

jolly oriole
#
SF_ToT_ToT_01
SF_ToT_ToT_02
SF_ToT_ToT_03
SF_ToT_ToT_Endless
SF_ToT_ToT_Dropdown
rough pulsar
#

Thanks

#

I just named all of them the same name, once I publish this mod to github you can add a pull request to change the strings. It will be located at the end of GetRoomName(string) method in RoomNames.cs

#

I don't know what icon to give it but it uses Hornet's help so I'll add the hornet icon i guess

jolly oriole
#

alright, though i'll probs leave it at 'Test of Teamwork'

rough pulsar
#

Once I have given every scene its name, I'll switch the version to beta and release it to github

#

Waterways & Deepnest done, White Palace, Queen's Garden etc. left

#

I wonder how many people will be using my mod

languid goblet
#

well, i will

ornate rivet
languid goblet
#

rich presence is cool
and now people can watch me die to absrad through rich presence shadeshades

rough pulsar
#

x)

cedar hemlock
#

what is that

rough pulsar
#

@ornate rivet Is that a mod you're making?

languid goblet
#

yo what

vocal spire
rough pulsar
#

I doN't know anytihng about pale court x)

vocal spire
rough pulsar
#

i haven't

#

:(

cedar hemlock
#

what

#

how

vocal spire
rough pulsar
#

I have been playing hollow knight for 2 months now :c

languid goblet
#

basically a fifth fan made dlc

vocal spire
#

You’d be more hyped if you saw the little spoilers posted by the devs in the modding channels

rough pulsar
#

ho

#

YO

#

IT'S AWESOME

#

i might even consider adding pale court support to my mod if it ever releases

#

or if it has released

cedar hemlock
#

only consider?

rough pulsar
#

well

#

ok

#

i will

#

add

#

i finished making queens garden rpc now

#

white palace left

#

also i noticed PoP has only 4 scenes

#

.-.

#

anyone has any idea what's the GG_Atrium scene for?

#

and GG_Atrium_Roof

light zodiac
#

1st is the main godhome room where you spawn and roof is the p5 room

#

If you want a list with all the HoG bosses with the boss name I can help with that

vocal spire
rough pulsar
#

also uh

#

i don't think i can add a status on what boss you're fighting in godhome

#

if i did i would have to get the list of gameobject then iterate through them and detect a boss

#

which is hard because i don't have every boss's gameobject name

light zodiac
#

Each boss has its own scene

#

So you could check the scene name and return a boss name

rough pulsar
#

in godhome?

light zodiac
#

Yee

rough pulsar
#

i would like a list because i can't seem to find a list of them in the page i'm using

light zodiac
languid goblet
#

isn't there a list of godhome scenes in pins?

rough pulsar
#

oh

#

thanks

#

@light zodiac this list is very helpful!!!!

#

thanks

light zodiac
#

Some bosses have a normal version and a _V version (I used the V version for my mod for the ones that do have so if there's a V in the end of the name write one for with V and without V)

rough pulsar
#

what's V version, ascended?

jolly oriole
#

very hard

light zodiac
#

Yea for the ones that have diff arena

rough pulsar
#

ok

floral blade
#

has anyone had Texture2D.loadImage crash the game?

#

it's either that or new Texture2D(2,2); crashing the game for me and i can't figure out why 😅

deep wave
#

i mean modlog could help you there

rough pulsar
#

i think i'm almost finished zote

#

only things left to do is add boss names zote

#

from godhome

light zodiac
#

Add the ones TC uses

rough pulsar
#

wdym

floral blade
jolly oriole
#

output_log then

light zodiac
#

Giant buzzer col for vengefly King or zombie beam miner (1) for CG

jolly oriole
floral blade
#

like the last log function that adds to the log is before new Texture2D(2,2);

rough pulsar
#

uh ok

floral blade
jolly oriole
#

next to modlog.txt

deep wave
#

same folder as modlog

light zodiac
floral blade
#

it's not there

#

in case it helps, this is my code snippet & the log above it

cedar hemlock
#

is there a way to make bosses less damage?

#

like if it does 2 make it 1?

floral blade
#

i think you can use the ondamage hook

cedar hemlock
#

yeah and then?

#

then i detect damage

#

and how do i make it only 1

floral blade
#

by reducing the damage value you return

cedar hemlock
#

so then return(1) or smth?

floral blade
#

i'm assuming you want all bosses to do 1 mask ?

cedar hemlock
#

not all but i can select a boss i just want to know haw to make 1 damage

rough pulsar
#

@light zodiac does it contain all bosses?

floral blade
#

on the boss game object

light zodiac
rough pulsar
#

what's the nosk's scene name in godhome?

light zodiac
#

Rest of the ones (eg mantis lords) Is just SOB's name minus the V

rough pulsar
#

so nosk is GG_Nosk right?

light zodiac
#

I'm not sure

rough pulsar
#

i'll try

cedar hemlock
light zodiac
#

Wouldn't be a bad guess but TC being TC can name it anything

rough pulsar
#

@cedar hemlock do you want to set the knight's damage or what?

deep wave
#

get the healthmanager of the gameobject, get damageHero, set damageDealt to 1

light zodiac
cedar hemlock
#

i know how to make only one boss do it

light zodiac
#

How are you currently doing it

rough pulsar
#

i think i'm done

cedar hemlock
#

i use it for the custom thk texture

light zodiac
#

So when the code for enter the scene runs, add a only 1 damage function that hooks onto take health and just returns 1

rough pulsar
#

good, i think i'm done, now i have to wait for discord assets to upload then i'll call everything else a day

#

discord rpc assets take a good few minutes to upload idk why

cedar hemlock
#

i just want to make nkg do only 1 damage lol

rough pulsar
#

first check if it's the NKG scene

#

one way to do that is

#
if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "GG_Grimm_Nightmare" || UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "Grimm_Nightmare") {
  // run code if the player is fighting against nightmare king grimm
}
#

actually i'll just share the whole code to make nkg deal 1 damage

#

hold on

cedar hemlock
#

why are so many people telling me how to find nkg as i said i know how to do that lol

floral blade
#

so i get all the logs before new Texture but none after it 😐 any idea what could be going wrong here ?

jolly oriole
#

if you have nkg go

foreach (var dh in go.GetComponentsInChildren<DamageHero>())
  dh.damage = 1;
cedar hemlock
#

thx

rough pulsar
#

o

cedar hemlock
#

nice

rough pulsar
#

remember

#

place this code in the method that subscribed to TakeDamageHook

safe hamlet
#

please just do what grenade said

rough pulsar
#

ok

cedar hemlock
#

lol

rough pulsar
#

dont do my code x)

light zodiac
#

What is get components in children

jolly oriole
#

gets all components of the type on the go and all of it's (active) children

rough pulsar
#

look at my discord game status :o

#

i didn't change the icons or anything

#

this only appears when i have the godseeker mode

cedar hemlock
#

wow nice

light zodiac
#

Nice

rough pulsar
#

it's about to change

cedar hemlock
#

vengefly

light zodiac
#

Gg boss door entrance?

cedar hemlock
#

HoG

#

no

light zodiac
#

You didn't use the TC names smh

cedar hemlock
#

smh

rough pulsar
#

i didn't know there would be gg boss door entrance

cedar hemlock
#

giant jellyfish

rough pulsar
#

lol

#

BRO

#

i didn't add GG_Spa

light zodiac
#

There's also the lifeblood room and the eternal ordeal

#

And room outside that

rough pulsar
#

can you list the scenes

light zodiac
#

I can't open hk rn