#archived-modding-development

1 messages · Page 525 of 1

rough pulsar
#

Or wait

#

I don't know

floral blade
#

there's already a 1.5 branch right ?

#

i was just trying to do an equivalent of if(false) without changing the code, i may as well have commented the block lol , though looking at Mul's editor it makes me question if C# even short-circuits boolean logic how i was expecting it to at all

primal latch
#

Why not just set globalsettings to a new instance?

#

Can anybody answer this?

floral blade
# primal latch Can anybody answer this?

all i know is if i recompiled mapi on macos controller would work, and similar motivations lead to the creation of unix.zip. 56 probably knows more as they'd made the zip afaik.

fickle sparrow
#

if your json files are messed up

#

you should know

#

but this is configuration data

#

and if your file is messed up, we don't want to override the config with the default

#

because that could mean you'd lose all of your stuff over a simple fix

primal latch
fickle sparrow
#

look

light zodiac
fickle sparrow
#

unless the user is explicitly editing their json files

primal latch
fickle sparrow
#

this stuff wont ever be invalid

#

and if they are editing it

#

most likely they forgot a comma or some shit

#

so which is better

#

resetting all of their data

primal latch
#

haven't we had cases where it just happened? The serialisation can fail or the write to the file

fickle sparrow
#

or telling them theres a problem

#

it shouldn't

#

unless a mod is extremely bugged

#

but thats on the mod author

floral blade
fickle sparrow
#

what does this question even mean

#

the assembly-csharp is the same for unix and macos iirc

primal latch
#

ok. That was my guess but I was too lazy to verify

primal latch
fickle sparrow
#

I mean an error gets printed

primal latch
#

also, Fyremoth is encountering a similar issue right now. For some reason the code that adds custom items and journal entries also messes up the save selection screen and we have no idea why

floral blade
#

maybe : fix the settings.json and make a backup of the player's previous settings, in case they'd like to recover them + print a message in modlog

light zodiac
light zodiac
floral blade
fickle sparrow
#

fine

primal latch
fickle sparrow
#

I'll work out something

#

I'll just keep the game open and log that the settings are fucked

#

the user can just delete the files or whatever to fix it

#

also uh you do realize you have to set default global settings yeah?

#

hold up

#

it literally doesn't even crash

#

_>

floral blade
# fickle sparrow

i remember seeing this for the benchwarp crash and seeing that even though there is a try catch, in some cases benchwarp screws up it's settings and then things dont work.

fickle sparrow
#

well as you can see in the code flow

#

the value doesn't get set if the deserialization fails

#

which means that the default value of the settings field gets used

floral blade
#

yep that's what i'd concluded. i'm just confused about how deleting the settings file fixes the issue. tamershrug

fickle sparrow
#

there is no issue

jolly oriole
#

what issue

fickle sparrow
#

this

#

literally only happens if you don't use the settings correctly

floral blade
fickle sparrow
#

idk if theres a bug send logs

#

plus thats from 1.4

#

I completely rewrote the save file implementation in 1.5

floral blade
#

true

floral blade
fickle sparrow
#

like as long as you implement the interfaces correctly and w/e

#

there shouldn't really be any problems

copper nacelle
#

qed

floral blade
#

if a mod errors in their unload i think mapi breaks

floral blade
#

So i tried it with radiance , ended up having to replace like 6 GO's tk2dsprites but it works. the halo behind radiance is a sprite though so that stays the same for now.

#

so i guess it should work for the rest of them too

floral blade
#

apparently it switches back and forth between a version of the same sprite for some reason, so i made a cursed skin for it sethscheme

fickle sparrow
#

huh was it not wrapped in a catch

#

gonna check

#

nope its fine

#

ah I do need to wrap init though

floral blade
fickle sparrow
#

Im uh

#

Rewriting most of the mod loader btw

#

Right now it is in a state of very pauseshroom

floral blade
#

okay

fickle sparrow
#

Having a ref of another (non-library) mod can cause the loader to die

primal latch
floral blade
#

how does one make the scroll bar of the modmenu scroll the content ?

#

okay giving the thing a size fixed the scrolling but using keyboard does not scroll now

floral blade
#

it scrolls using keyboard if i click the scrollbar before pressing the keys but it does not auto scroll when i press down and end up selecting an option that isn't visible feelsgrubman .

nimble lake
#

yo this menu cool

light zodiac
floral blade
#

the addMenuOptions is basically same as that's on the repo (with a few more elements), i've fiddled with this to get it to scroll. so far this is what i have

cedar hemlock
#

Do you guys know which mods on this list:

Benchwarp;
Customknight;
FrogCore;
Hollow_Point_changes_Fix;
HollowknightDRPC;
HowwowKnyight;
Modcommon;
QoL;
SereCore
SFCore;
Vasi.
```Can be causing this:
```cs
[ERROR]:[UNITY] - FormatException: Input string was not in the correct format
[ERROR]:[UNITY] - System.Int32.Parse (System.String s)
[ERROR]:[UNITY] - HutongGames.PlayMaker.Actions.ConvertStringToInt.DoConvertStringToInt ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.Actions.ConvertStringToInt.OnUpdate ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.FsmState.OnUpdate ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.Fsm.UpdateState (HutongGames.PlayMaker.FsmState state)
[ERROR]:[UNITY] - HutongGames.PlayMaker.Fsm.Update ()
[ERROR]:[UNITY] - PlayMakerFSM.Update ()
[ERROR]:[UNITY] - 
light zodiac
#

Pale court?

cedar hemlock
#

_ _

#

i forgot to remove it

light zodiac
#

Remove that and see

cedar hemlock
#

did that already

#

i should have remove it from the list

#

done

floral blade
#

i doubt CK is it, though you were messing with geo when it happened

#

highly suspect HowwowKnyight

cedar hemlock
#

i'll try and if it is then i'll have to live with softlocks

floral blade
#

is HowwowKnyight even on github?

cedar hemlock
#

ah fook

#

it is howwoKnyight

#

shat

#

not fun

cedar hemlock
#

i cant find it

#

big sad

floral blade
#

download swapster, set your own rules to convert chunks of text into owo in replace.txt
for example if you add this:

ll=>ww
ni=>nyi

hollow knight becomes howwow knyight (and all other words matching the pattern)

cedar hemlock
#

how do i even use github search

#

i try to find HowwowKnyight in pr's

#

but i can't

floral blade
#

same

cedar hemlock
#

it was added before frogcore

#

lets see when that ws added

floral blade
#

if u want the modlinks commit you can just look at file file history / blame

floral blade
#

and once you're happy with it, you could just make your own owo mod that follows those rules

primal latch
#

Just use dnspy

cedar hemlock
#

i am

floral blade
primal latch
#

I hate this mod. I looked at the code once. It is like unreadable

cedar hemlock
#

hehe

#

funny

floral blade
primal latch
#

I mean: all variables and functions also have OwO names

#

Why is owo to OwO an autocorrect feature?

#

I hate it

floral blade
#

i mean if any mod should have OwO variable names it's that one

cedar hemlock
cedar hemlock
floral blade
cedar hemlock
#

it adds things like:
OwO >w<
and stuff random

#

swapster is not random i hope

floral blade
#

not yet

cedar hemlock
#
{
                "R",
                "W"
            },
            {
                "L",
                "W"
            },
            {
                "l",
                "w"
            },
            {
                "OU",
                "UW"
            },
            {
                "Ou",
                "Uw"
            },
            {
                "ou",
                "uw"
            },
            {
                "TH",
                "D"
            },
            {
                "Th",
                "D"
            },
            {
                "th",
                "d"
            }
#

is that what i'm looking for you think?

floral blade
#

yep

#

R=>W
L=>W

cedar hemlock
#

and this then:

#
{
                "N([AEIOU])",
                "NY$1"
            },
            {
                "N([aeiou])",
                "Ny$1"
            },
            {
                "n([aeiou])",
                "ny$1"
            },
            {
                "(?<!<b)r(?!>)",
                "w"
            },
            {
                "T[Hh]\\b",
                "F"
            },
            {
                "th\\b",
                "f"
            },
            {
                "T[Hh]([UI][^sS])",
                "F$1"
            },
            {
                "th([ui][^sS])",
                "f$1"
            },
            {
                "OVE\\b",
                "UV"
            },
            {
                "Ove\\b",
                "Uv"
            },
            {
                "ove\\b",
                "uv"
            }
#

how do i do that

floral blade
#

no can do regex but atleast the first one is just

ni=>nyi
na=>nya
...

cedar hemlock
#

and this would be impossible:

#
bool flag7 = owig.EndsWith("?") || (!flag4 && Random.value < 0.2f);
            if (flag7)
            {
                owig = owig.TrimEnd(HowwowKnyight.sepawatows);
                switch (Random.Range(0, 10))
                {
                case 0:
                    owig += " uwu";
                    break;
                case 1:
                    owig += " owo";
                    break;
                case 2:
                    owig += " UwU";
                    break;
                case 3:
                    owig += " OwO";
                    break;
                case 4:
                    owig += " >w<";
                    break;
                case 5:
                    owig += " ^w^";
                    break;
                case 6:
                case 7:
                    owig += " UwU";
                    break;
                default:
                    owig += "~";
                    break;
                }
            }
            return owig;
#

anyways imma try looking at it better later, but i have to go now

#

still no idea how it gets caused

floral blade
floral blade
jolly oriole
jolly oriole
#

Hot reload of all mods when

light zodiac
jolly oriole
primal latch
jolly oriole
#

it's fucking awful

floral blade
cedar hemlock
#

I shall try later

floral blade
#

sounds to me like at some point it adds some owofication to a string that is then attempted to be parsed as an Int

cedar hemlock
#

Oh!

#

That would make sense

#

It tried to owo-ify the numbers in the bank

#

How would i fix that if i had the code?

floral blade
#

i mean you could see if the string can be parsed into an Int, if yes don't owofy it

cedar hemlock
#

is owo-ify a word lol

#

ok i'm really confused rn

#

that folder i talked about is completely empty

#

what is it for

#

which would i choose

#

Modding. or UnityEnigine.

#

nvm

#

what why does GetActiveScene() not exist

#

what even is scenemanager

#

this is a giant mess

#

what is Scenemanager

vocal spire
#

Unity one or hk one?

cedar hemlock
#

idk

#

i assume unity:

#

SceneManager.sceneLoaded -= new UnityAction<Scene, LoadSceneMode>(HowwowKnyight.ActiveSceneChangedHandwer);

vocal spire
#

Try adding
using SceneManager = UnityEngine.SceneManagment;
to the top

cedar hemlock
#

i've only got 4 errors now, 3 are Scenemanager

#

i only get 2 more errors

vocal spire
#

Screenshot?

cedar hemlock
#

there already is a using scenemanager

vocal spire
#

I made a spelling error

jolly oriole
cedar hemlock
#

the 2 errors get fixed

jolly oriole
#

make that line

using USceneManager = UnityEngine.SceneManagement.SceneManager;

and you should be good

cedar hemlock
#

wait the 3 errors have changed

jolly oriole
#

then you can have both hk scenemanager and unity one

#

without conflicts

cedar hemlock
#

nope

jolly oriole
#

just need to have the unity one be addressed with u at the front

cedar hemlock
#

oh ye

#

that actually did it yay

#

only one error left

jolly oriole
#

line 89

vocal spire
#

Remove the
Stream stweam = null line

cedar hemlock
#

i shouldn't be worried about yield break; not getting reached right?

jolly oriole
#

i can't believe that that mod does sprite replacement in coroutines NotLikeThis

light zodiac
#

Both uses scroll bars

cedar hemlock
#

i'm just going to build and hope for the best

fickle sparrow
#

idk it might be scuffed

#

I'm gonna clean the scrollbar up at some point

cedar hemlock
#

it does seem to have worked

fickle sparrow
#

how is your handle broken

#

this aint it

light zodiac
#

Handle isn't broken for moresaves

vocal spire
#

int.TryParse?

light zodiac
#

Int32.try parse

vocal spire
cedar hemlock
primal latch
vocal spire
primal latch
#

Why does coroutine auto correct to corpse stone?

vocal spire
primal latch
#

Yeah

vocal spire
#

I’ll move the stuff out of it if you want, don’t like hollow point compatibility called there anyways

light zodiac
primal latch
cedar hemlock
cedar hemlock
jolly oriole
primal latch
#

Ah. You used dnspy.

cedar hemlock
vocal spire
jolly oriole
#

why tryparse, just parse and let it crash

cedar hemlock
#

if (int.TryParse(string, out int _)) ?

cedar hemlock
jolly oriole
#

sad

vocal spire
#

You can add a try around it, but if you want to continue with TryParse, do you ever need to use the parsed value?

cedar hemlock
#

what does it output

#

always, or only if there are numbers?

vocal spire
#

Well if you have a string 1
it gives a int 1

cedar hemlock
#

i want, that if the string i give it contains a number, then ignore it

vocal spire
#

If you have a string 2527384843
it gives a int 2527384843

vocal spire
#

Might have the wrong method name

cedar hemlock
#

i don't understand shat of what i see here, so this is going to be pain

vocal spire
#

So
if (contains numbers)
continue

primal latch
#

Just use regex

light zodiac
cedar hemlock
#

so what i actually want is If !(string.Contains(0) || string.Contains(1) ect)

#

cus i want it to stop if theres a number

#

ok wait let me explain what i'm trying to do again

vocal spire
#

No I understand, if it has numbers, don’t do code

#

I’ll just rewrite it

cedar hemlock
#

I want, that if the string i give it contains a number, dont OwO-ify it
Cus it OwO-ify's numbers rn and its creating softlock bc of this:

[ERROR]:[UNITY] - FormatException: Input string was not in the correct format
[ERROR]:[UNITY] - System.Int32.Parse (System.String s)
[ERROR]:[UNITY] - HutongGames.PlayMaker.Actions.ConvertStringToInt.DoConvertStringToInt ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.Actions.ConvertStringToInt.OnUpdate ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.FsmState.OnUpdate ()
[ERROR]:[UNITY] - HutongGames.PlayMaker.Fsm.UpdateState (HutongGames.PlayMaker.FsmState state)
[ERROR]:[UNITY] - HutongGames.PlayMaker.Fsm.Update ()
[ERROR]:[UNITY] - PlayMakerFSM.Update ()
[ERROR]:[UNITY] -
vocal spire
#

int[] nums = new int [] {0,1,2,3,4,5,6,7,8,9};
foreach (int num in nums)
if (orig.Contains(num.ToString())
return orig;

jolly oriole
#
Regex r = new Regex(@"\d", RegexOptions.IgnoreCase);
MatchCollection matches = r.Matches(inputString);
if (matches.Count > 0)
{
  // number in string
}
else
{
  // no number in string
}
cedar hemlock
#

which one works better

#

two people tell me to do complete opposite things xD

primal latch
#

Regex

cedar hemlock
#

ok

primal latch
#

Nobody will understand it later

cedar hemlock
#

even better

primal latch
#

Not like that code was readable to start with

cedar hemlock
#

time for RedFrog to be ignored again zote

jolly oriole
#

use whichever you want to use, both have pros and cons

cedar hemlock
#

i'm just going to place random if's everywhere and pray it works

#

wow, i have no idea what is going on here

jolly oriole
#

have you tried learning c#?

cedar hemlock
#

its not really c#'s problem

#

but i get confused when LanguageGetHook is WanguageGet

jolly oriole
#

ctrl+r, ctrl+r, then rename to LanguageGet

cedar hemlock
#

and the random comments from DNSpy dont help either

#

i mean, what am i supposed to do with this:
// Token: 0x06000008 RID: 8 RVA: 0x000021F8 File Offset: 0x000003F8

jolly oriole
#

literally nothing, just ignore it

cedar hemlock
#

then why is it there wai

primal latch
#

It is the memory location relative to the file where the function was found

cedar hemlock
#

what is this:

Error    CS0120    An object reference is required for the non-static field, method, or property
#

why can't i just put
Regex r = new Regex(@"\d", RegexOptions.IgnoreCase);
at the top and be done

#
private static string WanguageGet(HowwowKnyight.WanguageGetWef owig, ModHooks instance, string key, string tabwe)
        {
            string owig2 = owig(instance, key, tabwe);
            Regex r = new Regex(@"\d", RegexOptions.IgnoreCase); 
            MatchCollection matches = r.Matches(owig2);
            if (matches.Count > 0)
            {
                return (owig2);
            }
            else
            {
                return HowwowKnyight.UWUfyStwing(HowwowKnyight.PwepwocessDiawogeOwO(owig2));
            }
        }
#

will that work

#

or do i need to change owig2 to owig

jolly oriole
#

owig2 should work

cedar hemlock
#

lets try it

#

it seems to work, but its random so i have no way to be sure

#

oh wait i can just log something if theres a number

#

why do i have to put base. before Log

#

and it doesn't even work in static classes

#

pain

#
Error    CS0120    An object reference is required for the non-static field, method, or property 'Loggable.Log(string)'
jolly oriole
#

you can always Modding.Logger.Log(), otherwise the mod may have an instance field, over which you can also log

cedar hemlock
#

bruh my vs is drunk

#

how would i change the reference paths

#

i saw someone do that once

#

and i have no idea how

floral blade
cedar hemlock
#

i have tried multiple times

floral blade
cedar hemlock
vocal spire
#

Doesn’t it already work on 1.5?

#

Nvm I’m on .72

primal latch
copper nacelle
#

yeah they do

copper nacelle
#

have you tried scrolling down

cobalt crescent
#

hey i wanted to make a custom skin for hollow knight, but i've never done any form of coding before, does anyone have like a video I can watch or

cedar hemlock
#

Custom knight?

#

Just go to the default folder, make a copy of it and edit the png's

#

All editable png's are there

cobalt crescent
#

oh awesome ty!

floral blade
cedar hemlock
#

Big sad

primal latch
copper nacelle
#

have you tried scrolling up

floral blade
#

okay so, it's definitely a thing with the scroll setup itself

primal latch
fickle sparrow
#

you know

#

im not convinced I ever made the thing actually scroll on selection

#

might have been a dream

floral blade
fickle sparrow
#

I know it was working at some point

#

but I think I found some weird stuff with the old navigation code

cedar hemlock
#

Woooww

#

Thats alot of custom knights

floral blade
#

i literally just copy pasted the dll like 10 times

light zodiac
#

I'm surprised moresaves didn't have a failed to load

floral blade
#

probably better code in there lol

light zodiac
#

This is what I did for more saves
if (Instance == null) Instance = this;

primal latch
#

Fyremoth does the same.

floral blade
#

the failed to load is trying to preload an object multiple times for the same "mod" in mapi i think lol

light zodiac
#

That's what it looks like

#

But thkshadeidk tbh

floral blade
#

imma try adding it

warped elbow
#

How do you make mods?

#

You = people

jolly oriole
copper nacelle
#

kidnap 3 modders and work them to death

vocal spire
#

Can confirm am modder

rough pulsar
#

No don't

radiant basin
ornate rivet
#

omg you're doing a calamity anne from amphibia skin?

#

that's so cool

jolly oriole
#

for a second i wondered who you were, then i read the name

#

but nice dashmaster grimm

ornate rivet
#

dw I dont know who I am either

radiant basin
#

i managed to get the name work by myself yay

jolly oriole
#

AdditionalMaps, BlindRadiance, BossModCore, CustomBgm, CustomSaveArt, DreamKing, EnemyChanger, FireIsSmolBrain, FuryFix, GeoLog, HKHKHKHKHK, LanguageSupport, LockZoteTheme, MenuThemesInGame, MetroidVania, MoreHealing, NailsmithBackPay, TestingStuff, PlayCountLog, PvpArena, RadiantMenu, RedoBirthplace, ResetCharmNotches, SFCore & TestOfTeamwork ported to 1.5, still doing others as well and still need to upload those to github

nimble lake
radiant basin
jolly oriole
#

i can't believe they fucking fixed it

deep wave
#

excuse me????????????? what????????? tc????????

fickle sparrow
#

thats so sad

#

they hate thorn yump

light zodiac
#

Did they fix the one on top of this area too?

jolly oriole
#

yes

radiant basin
#

damn

deep wave
#

huh, did they fix pop thornwalk?

nimble lake
vocal spire
#

NOOOOOOOOOO

#

im depression now

jolly jungle
cedar hemlock
#

<@&283547423706447872>

primal latch
#

What happened?

cedar hemlock
#

CSGO

#

csgo happened

primal latch
#

Ah

#

Let me guess. He was quitting and giving away skins?

cedar hemlock
#

how did you guess

primal latch
#

I have been on the internet for longer then just today

cedar hemlock
#

judging by the fact i've seen more messages from you then only the ones you just send, you're totally right

light zodiac
#

damn

light zodiac
jolly oriole
#

oh god, i have errors

#

but nice, most seems to work

jolly jungle
#

Where does SOUL-from-dreamnail happen?

cedar hemlock
#

when you Dnail an enemy?

jolly jungle
#

yeah that

#

Nevermind I'll hunt it down myself

cedar hemlock
#

good luck with your hunting

jolly oriole
#

no errors anymore

#

time to commit

nimble lake
light zodiac
#

why unavailable?

#

he just said he'll commit

nimble lake
#

nah i’m talking about the mods he have installed

#

like fire is smol brain

#

unavailable

#

not in loader

vocal spire
#

Is that the one with the soul totem in dirtmouth

nimble lake
#

well that’s just one example

#

among the many others he has

vocal spire
#

Dream king, more healing

nimble lake
#

like all of those

#

save for a few

#

and i guess also with how debug mod is a much more updated version not in the loader

jolly oriole
#

smh, calling me out

#

that's what mul linked here some time ago

nimble lake
#

kinda weird though
some mods are getting lots of updates and commits, but never get updated in the loader

jolly oriole
#

currently because it's 1432 and these updates are 1.5

vocal spire
#

I made a pr for 1.5 support but no one care

light zodiac
#

then i made more update and didn't even push cuz no one care

nimble lake
#

smh smashing my head

light zodiac
#

if you want to use (for 1432)

jolly oriole
#

i pushed a bit

light zodiac
#

something doesnt feel right

jolly oriole
#

fuck

jolly jungle
nimble lake
#

yea that’s an example

jolly oriole
#

that's made for fireb0rn, but i can upload it to github

light zodiac
#

why did you make this

jolly oriole
#

made for fireb0rn

light zodiac
#

hard to guess that damn

jolly oriole
#

done now

#

i think i can automatically make myself ready-to-release packages on windows in post build event

light zodiac
#

HKHKHKHKHK 👀

jolly oriole
#

inspired by VVVVVVVVV, but some parts are very funky

jolly oriole
#

csproj god 56, how can i write the output of a command to a file in postbuildevent, kinda want the output of

$(certUtil -hashfile "$(ZipFileLocation)" SHA256)[1] -replace " ",""

written to a file so i can copy paste that easier to modlinks and release description

primal latch
jolly jungle
#

lmao

primal latch
#

Well, with grenade pushing all his mods like 1/4 of the mod loader has been update to 1.5

jolly oriole
#

you do know i have like 4 mods on the modinstaller

primal latch
#

Wait. Are all the others not on the installer?

#

My bad

jolly oriole
#

oh my bad

#

i have 5 on the modinstaller

#

but yea, all others weren't/aren't on the modinstaller

primal latch
#

Ok

#

So, what is still in the work that would delay the release of the 1.5 mapi to the installer? The API seems stable and I don’t think any important mods are in the work to be ported to 1.5 that we are waiting for.

jolly oriole
#

the modinstaller

primal latch
#

Ah. Yeah.

#

What has to be done to it?

#

I’m in support for multi patch support, but not in the way frog did it. Would there be a way to split it up into multiple files? 1 for every version

jolly oriole
#

the way frog has a pr for is one way, but i had some texts between me and 56 (i think a few things also were here, idk).
And out came ideas for a completely new modinstaller that is not SHA1 based for versioning, but has an internal database of installed mods and their versions.
That way sideloading would be difficult, but idrc.
Also changed is SHA1 -> SHA256 and also not for individual files, but the zip download itself, to verify that the download is unchanged.
Also both of us didn't want to actually deal with making mods for multiple patches.
Which is all why the new modlinks repo is the way it is

primal latch
#

Ah. What do you mean with side loading?

#

Does that mean it gets harder to develop mods?

jolly oriole
#

side loading in this case would be manually moving mods in the mods folder

primal latch
#

So yes. Developing a mod would get more difficult

floral blade
jolly oriole
#

only the modinstaller

primal latch
#

How significantly would this impact testing a build of an in development mod?

fickle sparrow
primal latch
#

What does it do?

fickle sparrow
#

im like 99% sure it works

#

it loads mods

#

I just rewrote it

#

to not be cursed af

floral blade
primal latch
#

How about you?

jolly oriole
#

only how it's displayed in the modinstaller, but idk if 56 is working on it and if a method of manually scanning the mods folder to update the version manually maybe is considered

jolly oriole
fickle sparrow
#

hm?

jolly oriole
#

is the preloading done in serial? looks like it in dnspy

fickle sparrow
#

in serial what

jolly oriole
#

serial, one after another

fickle sparrow
#

oh

#

probably idk

#

I kept the preloading code the same

jolly oriole
#

wait what

#

do you have a testing branch so i don't have to look at this garbage decomp?

fickle sparrow
#

no changes

#

I do not yet

jolly oriole
#

wait a second, i need to check something

#

idk if it looks anything like this for you

fickle sparrow
#

thats a coroutine

#

or rather a generator

#

none of the preloading code changed

jolly oriole
#

ok, compilation just makes this ass to look at in dnspy

fickle sparrow
#

yeah it compiles to a state machine

jolly oriole
#

now i just need to find this method that is in another method

#

ok, can't look at the code for it, but if the actual preloading didn't change i think it should be good

fickle sparrow
#

yeah I didn't change that

primal latch
fickle sparrow
jolly oriole
#

don't have it installed

primal latch
#

Dnspy has been discontinued

jolly oriole
#

archived*

primal latch
#

But dnspy does look beter then ILspy

fickle sparrow
#

dnspy is so much better than ilspy

#

its unreal

primal latch
jolly oriole
#

can't believe ilspy doesn't have a dark mode

floral blade
primal latch
#

It does

jolly oriole
#

where

#

oih

primal latch
#

Click the moon icon

jolly oriole
#

why isn't it in the fucking options

floral blade
#

is a dropdown for me

jolly oriole
#

not even normal ilspy layout lets me view the state machine thing

#

fuck this, uninstalling

fickle sparrow
#

its not trivial to decompile a generator

jolly oriole
#

yea, can look at it in il but i don't want to look at it in il

fickle sparrow
#

making a branch

jolly oriole
#

the backslash is ruining things

fickle sparrow
#

what backslash

jolly oriole
#

wait what

fickle sparrow
cedar hemlock
#

Modding.Logger.Log("Found something usefull"); this should log something in modlog right?

fickle sparrow
#

it is better to use the Log methods on your mod instance

#

because it will automatically prefix it with your mod name

cedar hemlock
#
Error    CS0120    An object reference is required for the non-static field, method, or property 'Loggable.Log(string)'
``` ;-;
jolly oriole
fickle sparrow
#

🥴

#

I did press backslash at the same frame I sent the message

#

cause typing is hard

jolly oriole
#

smh, not signing commits

cedar hemlock
fickle sparrow
#

yeah sure

cedar hemlock
#

well it doesn't 🥴

#

and i'm 100% sure it gets called

fickle sparrow
#

clearly it isn't

#

or you're looking in the wrong place

jolly oriole
#

i love how that commit is titled "Rework the mod loader code" and the first thing i see is something for the mod menus

fickle sparrow
#

yeah I did that at the same time

jolly oriole
#

making me scroll shroompause

fickle sparrow
#

look

#

if I don't start the changes that someone asks for

cedar hemlock
# fickle sparrow clearly it isn't
if (matches.Count > 0)
            {
                Modding.Logger.Log("Theres a number here!");
                //No longer needed, it worked! OwO
                return (text);
            }
            else
            {
                Modding.Logger.Log("Found something usefull");
                return UWUfyStwing(PwepwocessDiawoge(text));
            }
``` It has 2 options, either do this if or do the else right?
And i know that it does `return UWUfyStwing(PwepwocessDiawoge(text));`, cus the text in-game changes.
fickle sparrow
#

I will forget it within like an hour

#

ModLog.txt

cedar hemlock
#

yes

jolly oriole
#

i can't believe there was a whitespace

cedar hemlock
#

whats with it

fickle sparrow
#

the log

#

I formatted the whole file

#

cause it was mildly messy

#

idk what to say cause the logger isn't broken

cedar hemlock
#

i look in modlog, and the ingame console by the api, and theres nothing

fickle sparrow
#

idk then

jolly oriole
#

look in player.log to see which thing errored out

fickle sparrow
#

very true

cedar hemlock
#

what would it look like you think?

#

a keyword that would be in it cus this log is huge

jolly oriole
#

exception

vocal spire
#

Just search for the class name containing the method that failed or the method that failed or the method calling the method that failed or the class containing the method calling the method that failed

cedar hemlock
#

i see an NRE, i'll post it here

#
NullReferenceException: Object reference not set to an instance of an object
  at ActionButtonIconBase.GetButtonIcon (HeroActionButton actionButton) [0x00000] in <filename unknown>:0 
  at ActionButtonIconBase.RefreshButtonIcon () [0x00000] in <filename unknown>:0 
  at ActionButtonIconBase.OnEnable () [0x00000] in <filename unknown>:0 
UnityEngine.GameObject:SetActive(Boolean)
GameCameras:StartScene()
GameCameras:SceneInit()
GameManager:BeginScene()
GameManager:LevelActivated(Scene, Scene)
UnityEngine.SceneManagement.SceneManager:Internal_ActiveSceneChanged(Scene, Scene)
 
(Filename:  Line: -1)
jolly oriole
#

nothing by mapi

vocal spire
#

I do it all the time with fyremoth

cedar hemlock
#

nothing

vocal spire
#

Then it didn’t have an exception

cedar hemlock
#

neither the name of the class, or the name of the method

copper nacelle
#

among us suicide

jolly oriole
#

give player log

copper nacelle
#

use debug.log if you don't trust the modding logger

cedar hemlock
#

i'll try logging to player_log instead of modlog

copper nacelle
#

it's gonna give the same thing though

jolly oriole
#

give player log, let me search in it

cedar hemlock
jolly oriole
#

output_log is from 1432

cedar hemlock
#

oh ok this is the right one then

#

the method is: WanguageGet
the class is: HowwowKnyight
the namespace is: HowwowKnyight
the file is: HowwowKnyight.dll/ HowwowKnyight.cs

copper nacelle
#

my eyes

cedar hemlock
#

hehe

jolly oriole
#

are you making a mod for 1432 or 1.5

vocal spire
#

Look at player_log if 1.5

cedar hemlock
#

1432

floral blade
#

Yuri i have a feature request for modmenu, TBH i'm not sure if it should be handled by the api itself but, horizontalOptions don't have a way to go "back to previous option" using a mouse but using a kb / controller one can go back, would it make sense to make the < & > icons be buttons ?

fickle sparrow
#

idk

#

if you are using a mouse its implied you can use a keyboard tbh

#

I'll put it on my backlog

#

cause its a good solution

#

it just requires effort to make it look nice

jolly oriole
floral blade
cedar hemlock
vocal spire
#

Nice

primal latch
#

hey. Remember that conversation that serialising settings and writing to a file can't fail? It just did

vocal spire
#

Fun

fickle sparrow
#

yeah sure

#

thats your mods problem

vocal spire
primal latch
vocal spire
#

Fun

primal latch
vocal spire
#

Kool

fickle sparrow
#

I mean what did you do

vocal spire
#

Which mod

fickle sparrow
#

I have never encountered this error

vocal spire
#

Null globalsettings prob

fickle sparrow
#

so true

vocal spire
#

I think I’ve seen it before

fickle sparrow
#

luckily there is fallback to defaulting the settings file

#

so the mod loader shouldn't crash

#

in fact if theres an error loading the file it wont even call OnLoadGlobalSettings

primal latch
copper nacelle
#

go on

#

where's the log

#

because there's a nice try catch you know

primal latch
jolly oriole
#

player.log

primal latch
vocal spire
#

Looks pretty null reference exception not try catched to me

copper nacelle
#

oh not the mod one

fickle sparrow
#

what the fuck happened

copper nacelle
#

it does that

fickle sparrow
#

how did this mess up

copper nacelle
#

it breaks all the save loading

fickle sparrow
vocal spire
#

Fun

fickle sparrow
#

ill fix that in my loader rewrite

#

cause that code was sketchy

primal latch
fickle sparrow
#

what does this mean

#

I see a null deref

primal latch
#

yeah. But it isn't thrown when loading using the latest github version

fickle sparrow
#

idk I need to see the code

primal latch
#

oh god

jolly oriole
#

i'm nearly done setting up postbuild to have a package ready for instant upload

jolly oriole
# jolly oriole i'm nearly done setting up postbuild to have a package ready for instant upload
<Target Name="CopyMod" AfterTargets="PostBuildEvent">
    <RemoveDir Directories="$(ExportDir)$(TargetName)/" />
    <MakeDir Directories="$(ExportDir)$(TargetName)/" />
    <MakeDir Directories="$(ExportDir)$(TargetName)/zip/" />
    <Copy SourceFiles="$(TargetPath)" DestinationFolder="$(HollowKnightRefs)/Mods/" />
    <Copy SourceFiles="$(TargetDir)$(TargetName).pdb" DestinationFolder="$(HollowKnightRefs)/Mods/" />
    <Copy SourceFiles="ReadMe.md" DestinationFolder="$(ExportDir)$(TargetName)/zip/" />
    <Copy SourceFiles="$(TargetPath)" DestinationFolder="$(ExportDir)$(TargetName)/" />
    <Copy SourceFiles="$(TargetPath)" DestinationFolder="$(ExportDir)$(TargetName)/zip/" />
    <Copy SourceFiles="$(TargetDir)$(TargetName).pdb" DestinationFolder="$(ExportDir)$(TargetName)/zip/" />
    <ZipDirectory SourceDirectory="$(ExportDir)$(TargetName)/zip/" DestinationFile="$(ExportDir)$(TargetName)/$(TargetName).zip" />
    <RemoveDir Directories="$(ExportDir)$(TargetName)/zip/" />
    
    <GetFileHash Files="$(ExportDir)$(TargetName)/$(TargetName).zip" Algorithm="SHA256">
        <Output TaskParameter="Items" ItemName="FilesWithHashes" />
    </GetFileHash>
    <WriteLinesToFile File="$(ExportDir)$(TargetName)/SHA.txt" Lines="@(FilesWithHashes->'%(FileHash)')" Overwrite="true" Encoding="UTF-8"/>
</Target>

hotdogHotdog

cedar hemlock
fickle sparrow
#

fixed the settings loading bug

#

well I actually just rewrote the global settings

#

also ModHooksGlobalSettings.ModEnabledSettings was changed a lot so I basically removed it

#

use ModHooks.ModEnabled(string name) now

#

well once I can see this loading code is stable

copper nacelle
#

moved/rewrote a bit

#

the cross-reference to actual classes is nice

jolly oriole
#

then ig over the next 2 years the apidocs website can/will be transfered to that?

copper nacelle
#

2 years PauseShroom

jolly oriole
#

realistic timeframe

copper nacelle
#

nope

jolly oriole
#

oh yea sorry, exactly until silksong releases, so 4 years

copper nacelle
#

wdym that's never happening

jolly oriole
#

but the other part?

#

||then ig over the next 2 years|| the apidocs website can/will be transfered to that?

#

the contents ofc

copper nacelle
#

idk presumably

jolly oriole
#

i need a single more contribution today

copper nacelle
#

what

jolly oriole
copper nacelle
jolly oriole
#

i updated a bit

jolly oriole
copper nacelle
#

no that's from your page

#

private commits PauseShroom

jolly oriole
#

i know

#

now you see 1 more hotdogHotdog

copper nacelle
jolly oriole
#

the last one i won't show until it's done 😤

copper nacelle
#

why is the note massive

jolly oriole
#

lmao

#

yea, you have this text that shows how things can be altered

note
PLEASE DO THINGS THIS WAY TO MAKE YOUR MOD COMPATIBLE TO OTHER MODS

#

finally

========== Alles neu erstellen: 32 erfolgreich, 0 fehlerhaft, 0 übersprungen ==========
copper nacelle
jolly oriole
#

nice

#

brb making releases of these 21 mods

fickle sparrow
jolly oriole
#

i made a few (21) releases

jolly jungle
#

Were those all ported to 1.5

#

wow

#

What's Hall of Custom Gods?

copper nacelle
jolly jungle
#

And Dream King

jolly oriole
jolly jungle
jolly oriole
jolly jungle
jolly oriole
jolly oriole
copper nacelle
#

ig it's 1.5

#

just moving/adding to docs

jolly oriole
#

PlayerData.instance.GetBool("gotCharm_X")
it's 1432 docs lol

#

but yea

jolly jungle
copper nacelle
#

is that not the case in 1.5

jolly oriole
#

oh wait

copper nacelle
jolly oriole
#

it's playerdata, not modhooks

jolly jungle
copper nacelle
#

lmao

#

yeah i used the new modhooks

#

the old thing had just setting the ints

jolly oriole
jolly oriole
floral blade
#

(please keep a moderate volume when watching)

how do i tune the sound on Beeg knight's walk?
i want it to feel impactful but my current tuning makes it feel like too much impact?

light zodiac
#

i want it to feel impactful
add screenshake

#

imo it feels like someone is playing a guitar rather than walking

#

hence i just took a monster stepping sound and didn't mess with it much

floral blade
#

should i just remove the mosterwalk and play the original sound ?grubsad

fickle sparrow
#

just lower the speed

#

or lower pitch and increase echo a bit

floral blade
#

lower pitch on the current one or the default one ?

jolly jungle
#

Original, I think they mean

floral blade
#

this is how that sounds, maybe i've messed up the reverb params ? i have this rn.

r.reverbLevel = 200f;
r.decayTime = 3f;
r.decayHFRatio = 2f;
fickle sparrow
#

reverb makes things generally sound far away

#

or in a large room

floral blade
#

i'll try an AudioEchoFilter once

fickle sparrow
#

and definitely lower the pitch to be like 70% of the original

#

maybe even lower depending on how it sounds

floral blade
#

yeah i'm lowering/raising the pitch of all knight sounds, just want to get the walk right for beeg

fickle sparrow
#

yeah

merry lotus
floral blade
#

going to try adjusting the pitch a bit more

radiant basin
#

are these unused?

copper nacelle
#

spikes

radiant basin
#

hes off screen for those though

jolly oriole
#

then ig

copper nacelle
#

Oh yeah

#

I guess they just recolored the Grimm ones

#

You can see similar things with pure vessel

radiant basin
#

oh huh

#

thanks, i was just double checking

jolly oriole
#

though with pure vessel there do be a lot of sprites just not being there

#

same with thk not having some sprites pv has

vocal spire
floral blade
#

i think i'll go with this for now, it's not much of an impact but feels better than the previous one

proven plover
#

The ArmorCtrl Code doesn't seem to work for me

#

I think I'm missing a reference or something

vocal spire
proven plover
#

Thanks!

primal latch
cedar hemlock
#

where can i find the latest api

jolly oriole
cedar hemlock
#

the latest release is for 1.5.68 tho and not 1.5.75

#

and in steam i have no way to go to .68

jolly oriole
#

if that's the latest master artifact, likely

primal latch
#

I remember someone posting a link when visiting was first implemented that always linked to the latest run

jolly oriole
#

you mean that pinned one by yuri?

cedar hemlock
#

damn HowwowKnyight updated to 1.5 and .net 4.7.2, and 0 errors, prob did something wrong

cedar hemlock
#

how do i add multiple links to modlinks

#

do i just do:

<Link>https://link1.com</Link>
<Link>https://link2.com</Link>
```?
jolly oriole
#

which modlinks

cedar hemlock
#

the main modlinks

#

by the modinstaller

jolly oriole
#

idk

#

and then: how the two links, for one mod or different mods

cedar hemlock
#

art mods are hosted on radiance.host, so if i want to add a mod to them i need the have a seperate link

jolly oriole
#
  1. download arts mods zip
  2. add mod to zip
  3. ask somebody to upload new zip to radiance.host
  4. update shas in modinstaller
cedar hemlock
#

but who has access to radiance.host

jolly oriole
#

idk

floral blade
#

They do

cedar hemlock
#

i can't find the zip there

floral blade
#

No I meant to say that they can update radiance host

cedar hemlock
#

thats only for the api doc i think

cedar hemlock
steady comet
#

Is there an updated QoL (plus dependencies) for 1.5.75?

#

Also, if I'm updating mods to 1.5, is it .NET Framework 4.7.2? (Plus changes to the MAPI, plus possible changes to FSMs)

cedar hemlock
#

i believe 4.7.2 yeah

#
Error    CS1069    The type name 'Regex' could not be found in the namespace 'System.Text.RegularExpressions'. This type has been forwarded to assembly 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' Consider adding a reference to that assembly.
```I have searched for that to reference it, but i cannot find it anywhere, anyone know where it is?
primal latch
#

@cedar hemlock add a refference to the system assembly

cedar hemlock
#

Just system?

primal latch
#

Yes

cedar hemlock
#

Cus i can't reference that

#

Something about it already being there or smth

primal latch
#

Ah. Look through all the references and remove the reference to system and add a reference to the dll in the managed dir of HK

jolly oriole
#

edit your csproj to have that reference

#

vs doesn't let you do that, but if you edit the file directly vs will accept it

cedar hemlock
#

Ah ok

arctic dragon
#

hollow knight skin creators- does ANYONE know why the full soul orb texture is seperate from the rest of the HUD textures, while there's a perfectly fine full orb texture in the HUD textures?

cedar hemlock
#

Nope teamcherry

arctic dragon
#

we still have no idea how to change the liquid soul color in the big orb right

cedar hemlock
#

nope

arctic dragon
cedar hemlock
#

ah i got it i believe

cedar hemlock
#

ayy it worked

#
[ERROR]:[API] - Error: System.InvalidOperationException: Return type of hook for  doesn't match, must be System.Void
wanguageGetHook = new Hook(typeof(ModHooks).GetMethod("LanguageGet", BindingFlags.NonPublic | BindingFlags.Instance), typeof(HowwowKnyight).GetMethod("WanguageGet", BindingFlags.NonPublic | BindingFlags.Static));
```Any ideas?
primal latch
#

what is the latest debug mod bui;d?

cedar hemlock
#

see mulhima's fork

#

Did LanguageGet change in 1.5?

steady comet
#

Yes

#

Well, the hook changed

#

BTW I think with how the hook changed you could probably just go through the hook rather than detouring it for howwowknyight (that seems like it's probably safer IG)

cedar hemlock
#

i should learn more c# i have almost no idea what that means

#

just use modhook.blabla += WanguageGet?

steady comet
#

You'd need to change the signature of WanguageGet though to match the LanguageGetProxy

#

So it would need to be something like

private string WanguageGet(string key, string sheetTitle, string orig)
{
  // code goes here
}
#

(And then ModHooks.LanguageGetHook += WanguageGet)

jolly oriole
#

at one point or another it may be easier to just make a completely new project and reimplement the functionality of that mod into the fresh project so you don't have to deal with decomp

cedar hemlock
#

dw i got the source

jolly oriole
#

then you wouldn't have to deal with whatever

wanguageGetHook = new Hook(typeof(ModHooks).GetMethod("LanguageGet", BindingFlags.NonPublic | BindingFlags.Instance), typeof(HowwowKnyight).GetMethod("WanguageGet", BindingFlags.NonPublic | BindingFlags.Static));

is

cedar hemlock
#

yes i do?

#

its in the source

#
private string WanguageGet((string key, string sheetTitle, string owig))
        {
            string text = owig(instance, key, tabwe);
```what do i do with `string text`
copper nacelle
#

why

cedar hemlock
#

dunno

copper nacelle
#

just use the hook

#

the modhook

steady comet
#

Is there a way to ensure that your function gets applied last, other than just giving a load priority of 1000 or something?

#

(Or would it be -1000?)

copper nacelle
#

just the load priority thing

jolly oriole
#

yes, that single line

cedar hemlock
#

wth is my game doing

#

i have the saves not loading error, but the procedure to fix it doesn't fix it

#

damn got it working

#

but how did i fix the saves not loading error without deleting the globalsettings

#

i'm ultimate confusion

small heart
#

Hello there!

Currently, I've been stuck finding Nightmare Grimm's attacks in FSMView. I have looked through everything, but I still can't find the attacks. I'm using Gods and Glory Nightmare Grimm, but that doesn't make a difference. Please help me locate the fsm.

Thanks in advance!

copper nacelle
#

what scene did you check

jolly oriole
#

Should be viewable in gg_nightmare_grimm

copper nacelle
#

^

jolly oriole
#

I have no idea if i spelled it correctly

small heart
#

I have checked GG_Grimm_Nightmare and am checking. I just cant find it. Sorry for the late response. Still looking through 😦

copper nacelle
#

show

small heart
copper nacelle
#

where are you checking

#

Like you can't find it in the list?

#

it's like something - control

small heart
#

1sec

#

and ...

copper nacelle
#

yeah

small heart
#

one sec

#

wait thats it?

#

i saw many more

#

well umm, how can i spawn a grimm fireball?

jolly oriole
#

get gameobject, instantiate gameobject

floral blade
#

SF how can one get a GO as if you preloaded it but without preloading it ? like in any scene

jolly oriole
#

you have to get it in any way, preloading is one way to get a GO, another way is to just GameObject.Find it in initialize (requires the go to be loaded in the main menu)

floral blade
#

no so i don't want to preload it but rather load it on demand in a random scene

jolly oriole
#

if you want to do that at any point then the async level load also isn't an option, then ig you could dump the GO and bundle it in your mod to then load on demand

floral blade
#

if i'd do it at scene transition instead would that make it better ?

jolly oriole
#

then the async loading is way less noticable (and i also do it on scene transition)

#

don't ask me why all those logs are still there

floral blade
#

i don't fully understand what you do, but is it basically

start scene transition => load scene with GO => get GO => go back to scene you originally wanted to go to but now you have the GO you wanted

jolly oriole
#

in bossmodcore i do it in a slightly odd way (which you probably won't do, because you don't have a custom scene)
but basically yea

  1. wait for scene transition to the scene you want to have your stuff in
  2. Load scene (with your wanted content) additively
  3. copy/move the content you want to the scene you want (UnityEngine.SceneManagement.SceneManager.MoveGameObjectToScene(go, scene) to move gos)
  4. unload the additively loaded scene
  5. do stuff with your go
floral blade
#

would GameObject.Find work with inactive GOs ?

jolly oriole
#

afaik no

#

but

#

sfcore's gameObject.Find(name) and scene.Find(name) methods can find inactive GOs

floral blade
#

time to look at sfcore's code then!

floral blade
#

it might not work but basically i want to load the GOs defined in /Swapster on skin change but i would not know which GOs i need preloaded. if i can load them async then i can ensure all GOs are updated regardless of which scene they're in / if they're active or inactive, not even sure if that's a great idea tbh.

jolly oriole
#

idk

floral blade
#

i'm gonna try it once, atleast going to use the gameObject.Find to make it apply textures without having to poll GameObject.Find , though i guess that would fail if some object tries to spawn a GO right ?

jolly oriole
#

i needed to read this like 5 times to somewhat understand it, but if you check with either scene.Find or GameObject.Find it would not work with GOs that are spawned later in

floral blade
#

sorry i can be like that sometimes! thanks for the help tho, i have ideas now sethscheme

pine girder
#

Does anyone know where is the file (For soul orb halfway not full and not mini ones) is?

#

And dont tell me it is impossible to reskin that file
I know killer whale and sapphire did this

radiant basin
#

do you mean the eyes that appear when the meter is half full?

floral blade
#

or the color of the liquid that fills?

pine girder
#

The eyes
Although I am not sure if the color is reskinable

radiant basin
#

the eyes are here on the right side of the HUD sheet

pine girder
#

Oh ty

#

Wait it is not there??

#

I am confused

#

Nvm, sorry

#

Another question, how do I find the file without other critters like hearts?

#

I tried to find it inside the sprite packer's dumped sprites

radiant basin
#

wdym?

#

what are you looking for exactly

floral blade
pine girder
#

Oh nice

radiant basin
#

oh pog you can change the feathers!!

pine girder
#

Like atlas dumped into individual files

radiant basin
#

ohh right

#

the eyes are not dumped

#

you just draw straight onto the atlas

#

i recommend doing it at the end

#

after the other sprites

floral blade
pine girder
#

Let me show an example

#

It is a dumped file

radiant basin
#

oh yeah you just have to guess i think

pine girder
#

although I may be wrong about the label

radiant basin
#

though there was a version of the knight atlas with the boundaries on so maybe there a version of the hud one?

pine girder
#

Yeah I already found the dumped hub but eyes aren't there

#

So far i know of

floral blade
#

it's really not a lot of room tbh

radiant basin
#

yeah its real tight

#

you can overlay that image with yours to work out where the boundary is

floral blade
#

i was gonna say : alternate black and white stripes to count and figure out lol

#

a checker board pattern might be better to get horizontal scale too.

radiant basin
#

oh man why did i not look into 1.5 ck earlier i couldve done beans defender and nk sans way easier

pine girder
#

I always use checker board with grey color
Less strain for me

#

Although I sometimes turn off checker

#

Shouldn't be too much problem

#

And beside my custom eyes aren't too different

floral blade
radiant basin
#

ohh cool!

jolly jungle
radiant basin
#

yeah true
plus more people can use them sooner

jolly jungle
#

Exactly

floral blade
#

did a basic grid thing

jolly jungle
#

Uhhhh

#

Transparency?

floral blade
jolly jungle
#

Oh wait I get it now

floral blade
jolly jungle
#

To see the outlines?

#

yeah I see now

pine girder
#

Btw this is the eyes I going to use

#

If it is not fitting
I can resize and make it smaller

radiant basin
#

ooo thats cool

#

reminds me of shounen protag eyes lol

pine girder
#

👀

#

Well Gaara ain't a protagonist but yes

floral blade
#

is there a skin that turns the weaverlings into little hornets ?

jolly jungle
#

Sadly, not that I know of

radiant basin
#

oh thatd be cute

floral blade
fickle sparrow
#

if you find any crashes, send the logs and please find any of the problematic code from the error stack trace and send it to me

#

because I cannot fix a bug if I do not know whats causing it

#

🙂

jolly oriole
#

infinite menu load

#

let me get logs

#

@fickle sparrow seems like after initializing all mods it just decides to say that the preload is done again, resulting in all mods initializing, resulting in ...

grave willow
#

Can you make a Hank J Wimbleton for Hollow Knight?

fickle sparrow
#

hmmm

#
NullReferenceException: Object reference not set to an instance of an object
  at GameManager.SetupHeroRefs () [0x00016] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at GameManager.orig_SetupSceneRefs (System.Boolean refreshTilemapInfo) [0x0006c] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at GameManager.SetupSceneRefs (System.Boolean refreshTilemapInfo) [0x00001] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at GameManager.LevelActivated (UnityEngine.SceneManagement.Scene sceneFrom, UnityEngine.SceneManagement.Scene sceneTo) [0x0003c] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at (wrapper delegate-invoke) UnityEngine.Events.UnityAction`2[UnityEngine.SceneManagement.Scene,UnityEngine.SceneManagement.Scene].invoke_void_T0_T1(UnityEngine.SceneManagement.Scene,UnityEngine.SceneManagement.Scene)
  at UnityEngine.SceneManagement.SceneManager.Internal_ActiveSceneChanged (UnityEngine.SceneManagement.Scene previousActiveScene, UnityEngine.SceneManagement.Scene newActiveScene) [0x0000e] in <047294ce45cf4b9a9441e48d2b8435e4>:0 
jolly oriole
#

that's normal

light zodiac
#

Debug do be doing that

fickle sparrow
#

wtf

light zodiac
#

Or is it not debug?

fickle sparrow
#

why does this keep looping

jolly oriole
#

i could disable some of these to see if it helps

fickle sparrow
#

uhhh i think i know

jolly oriole
#

PauseChamp

fickle sparrow
jolly oriole
#

no more infinite load

fickle sparrow
#

xdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxdxd

jolly oriole
#

what was it

fickle sparrow
#

bad infrastructure

#

OnScreenDebugInfo getting recreated

#

stupid shit

floral blade
jolly oriole
#

that's why starting mod loading in StartManager update (last i tested start didn't work) is better 😤

fickle sparrow
jolly oriole
#

it do be loaded only once

fickle sparrow
#

I'll just do

#

StartManager awake

jolly oriole
#

won't work

fickle sparrow
#

yeah makes sense

jolly oriole
#

camera doesn't exist then

#

which is also why i had problems with startmanager start

fickle sparrow
#

yeah

#

fair enough

#

time to keep this the same

#

wait

jolly oriole
#

... it also clogs modlog / player log because gamemanager/herocontroller/basically everything doesn't exist

fickle sparrow
#

StartManager Start should work

#

if you patch the stuff to the end

jolly oriole
#

i swear i had a branch where i had that barely working

floral blade
#

hmm i have random errors like doublejump anim playing but it not working and multiple dreamgates and getting stuck in walk animation ( not sure if related to the current dll)

#

lemme confirm by reverting

floral blade
fickle sparrow
#

any erorr logs

floral blade
#

sending last modlog and player prev

jolly oriole
floral blade
jolly oriole
#

looks like it's caused by hkmp?

floral blade
fickle sparrow
#

I did change stuff

#

but this is probably not a bug with the new codde

#

I'll need to see the relevant code in HKMP

floral blade
#

want me to disable all mods and try ?

jolly oriole
#
NullReferenceException: Object reference not set to an instance of an object
  at DesktopPlatform.GetVibrationMixer () [0x00000] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at VibrationManager.GetMixer () [0x00019] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at VibrationManager.PlayVibrationClipOneShot (VibrationData vibrationData, System.Nullable`1[T] vibrationTarget, System.Boolean isLooping, System.String tag) [0x00009] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at HeroController.BackOnGround () [0x0004e] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at HeroController.FailSafeChecks () [0x0015a] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at HeroController.orig_Update () [0x00027] in <ec95cbe21af7448ea086a0245ca33b78>:0 
  at (wrapper dynamic-method) HeroController.DMD<HeroController::Update>(HeroController)
  at (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Trampoline<HeroController::Update>?-1653690368(HeroController)
  at HKMP.Game.Client.MapManager.HeroControllerOnUpdate (On.HeroController+orig_Update orig, HeroController self) [0x00001] in <fc613eecd7b64064a8b5e4e51bd8948c>:0 
  at (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Hook<HeroController::Update>?648599168(HeroController)
  at (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Trampoline<HeroController::Update>?-1967164416(HeroController)
  at HKMP.Game.Client.ClientManager.OnPlayerUpdate (On.HeroController+orig_Update orig, HeroController self) [0x00001] in <fc613eecd7b64064a8b5e4e51bd8948c>:0 
  at (wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition.Hook<HeroController::Update>?642833408(HeroController)

no pdb moment