#archived-modding-development

1 messages ¡ Page 511 of 1

cedar hemlock
#

prob with cap

steady comet
#

If you want to be sure then do what 𓁿 said

rough pulsar
#

hmmmmmmm

cedar hemlock
#

just say mulhima lol

rough pulsar
#

oki

light zodiac
#

there's also a end credits scene

rough pulsar
#

End_Credits right

steady comet
#

Actually, what you could do is download Benchwarp, turn on Show Room Names in the settings and it'll show the room name in the bottom left of the screen

light zodiac
#

does it also show for endings?

light zodiac
rough pulsar
#

i added the endings strings

#

the ones i didn't add was end_credits, mrmushroom scene and stag travel

light zodiac
#

oh wait, dont hook onto this, use SceneChanged and log target scene

vocal spire
#

Ah yes, language gets scene names

light zodiac
#

i am very smart thank you

jolly oriole
#

could also just dump scene names from the global managers

copper nacelle
#

do be already pinned

jolly oriole
#

with the amount of question regarding scene names, i don't think that it's pinned

#

but i also refuse to check

copper nacelle
rough pulsar
#

what about it

#

i'm adding one more functionality someone suggested: customizable strings

#

though i'm making them with keywords but i'll give them very unusual names

light zodiac
#

customizable strings?

rough pulsar
#

like

#

you can customize and add something so like

#

you can add anything next to the room you're in

#

"Colosseum of Fools (doing the funny challenge)"

#

instead of just

#

"Colosseum of Fools"

#

I am writing the guide first because that's the time I can set keywords for value displays

rough pulsar
#

i'm going to add everything i can zote

jolly oriole
#

wth are those abreviations

rough pulsar
#

the ones after the horizontal line won't be used much so i seperated them

jolly oriole
#

you could've started those with m_ or something

rough pulsar
#

hmmm

#

suree

#

now that i have that idea

#

i might give them proper names

#

it looks... way cleaner

light zodiac
rough pulsar
#

no.

#

its not in the main readme or anything

#

also

#

uh adding those are entirely optional

#

people can choose whether they want custom strings or not

#

it will still function normally

rough pulsar
#

also

#

the readme is only for installation guide

light zodiac
#

where do you have to put these values

rough pulsar
#

in the modsettings

#

which will only be used for custom strings

#

entirely optional

rough pulsar
#

so uh question

#

in ModSettings based class it sets the values loaded from the modsettings file right

#

oh wait i think i get it nvm

#

nvm i give up

light zodiac
#

Whats the problem?

copper nacelle
#

me when i wake up in the morning

rough pulsar
#

hm

#

is there an alternative to HeroUpdateHook that uh

#

runs every frame even if the knight isn't there?

#

and is there any way to detect if the knight object exists

copper nacelle
#

just add your own monobehaviour to a gameobject you instantiate and set as dontdestroyonload

#

check if HeroController.instance is/isn't null

rough pulsar
#

oki

#

luckily visual studio gives me sum stuff related to unityengine when i do funny stuff shroompog

#

wait how do you make C# events again

#

let me google it up

jolly oriole
copper nacelle
#

prob check unsafeInstance or w/e

solemn rivet
copper nacelle
#

yeah checking .UnsafeInstance in a coro should be fine

#

the issue is with the other one

#

because that does FindObjectOfType every frame

solemn rivet
#

findobjects in general are no good anyways

jolly oriole
#

I mean, having them once in Start or awake is fine

solemn rivet
#

yeah

#

once or twice is fine

#

but every frame

jolly oriole
#

Utterly decimates frames

solemn rivet
#

tru

rough pulsar
#

i made funny rpc mod into toggleable

#

funny

#

when you toggle it off it will just do........ one thing

jolly oriole
#

RIP discord, idk when - 2021

rough pulsar
#

discord, more like
disposed

solemn rivet
#

that's what happens when microsoft buys you

rough pulsar
#

fuck

#

more funny error messages.

#

more funny error messages.

jolly oriole
#

what would happen if facebook buys discord?

rough pulsar
rough pulsar
#

or "invite facebook friends"

jolly oriole
#

i heard that the toggle thing during gameplay displays the toggleable mods differently than that on the main menu

rough pulsar
#

yeah.....

#

it does

jolly oriole
#

and there's no need to @ me, i will read every single message here

#

... sooner or later

rough pulsar
#

i know

#

hmmmm

#

oh shit

#

i forgot to initialize the RPC

#

that's why it's not working zote

#

fricc

#

errr

#

i mean

#

i didn't institiate the gameobject

#

DANGIT

#

not what i wanted to display

#

:')

#

OH WAIT I CHECKED IF PLAYERDATA WAS NULL

#

not the HeroController

#

am stupid af

jolly oriole
#

i mean, you could just check if the scene is a gameplay scene

rough pulsar
#

ok so hollow knight just stops responding after i toggle the RPC mod off

floral blade
#

would you be reseting the status or something on unload ?

rough pulsar
#

hmm

#

i was disposing the gameobject so it wouldn't keep using memory i guess

floral blade
#

like save the status when started and reset the same when stopping might be cool

rough pulsar
#

not this happened

rough pulsar
#

i'll go to %temp%\HollowKnightDRPC and create a new file there that keeps the epoch time

#

the only data that will be stored there will just be a single int

#

so it will uh

#

it will take up 4 bytes as an int instead of storing a string which will be 12 bytes or 13

#

or i can just store the string instead

#

more memory cost but no one cares

floral blade
#

which file has the monarch wings "wing" animation ? is it Wings.png it seemed like it is more of a cutscene sheet at the first glance

rough pulsar
#

POGGERS

cedar hemlock
#

menus?

rough pulsar
#

m

#

in menu*

#

fuc

cedar hemlock
#

im in...

rough pulsar
#

oh pogger

cedar hemlock
#

can you guess where i am

rough pulsar
#

right below the city of tears well?

#

no?

cedar hemlock
#

thats a long term for waterways

rough pulsar
#

i might named something wrong

cedar hemlock
#

for me its normal

rough pulsar
#

ok good

#

i forgot to reset the assets pepogrub

#

because am too smart. obviosuly

cedar hemlock
#

yes ofcourse

#

very "obviosuly"

rough pulsar
#

funny discord bug!

cedar hemlock
#

you gonna add blue masks?

rough pulsar
#

oh yeah

#

i will

cedar hemlock
#

instead of 5/5 7/7

#

or seperate

rough pulsar
#

i'm gonna just

#

7/5

cedar hemlock
#

nice

rough pulsar
#

RPCLLOW (CHECKREADME)DISCORD

cedar hemlock
#

its at the right place at least

rough pulsar
#

oh

#

after you toggle the mod it just stops working

#

ain't that so funny

cedar hemlock
#

you mean when you turn it on, off and on again?

rough pulsar
#

this works i hope

#

now i'll go to the funny king's pass

#

and collect some blue hearts

#

lifeblooodd mm

#

what if lifeblood was in real life

cedar hemlock
#

it aint workin

rough pulsar
#

what isn't workng?

#

the lifeblood?

cedar hemlock
#

oh no

#

when the mods are loading it just displays normal

rough pulsar
#

what

cedar hemlock
#

you can try to increase load priority

cedar hemlock
#

the mod isn't loaded yet

#

so its just normal

rough pulsar
#

w

cedar hemlock
#

how

rough pulsar
#

ok so what is the default load priority?

cedar hemlock
#

did i die to flukenest

cedar hemlock
rough pulsar
#

you died to flukemarm

cedar hemlock
#

if you dont give one

cedar hemlock
rough pulsar
#

i'll just set the load priority to 10

rough pulsar
cedar hemlock
#

no

rough pulsar
#

it just loads before other mods

cedar hemlock
#

the funny looking bar are the mods loading

rough pulsar
#

based on priority

cedar hemlock
#

so it will be loading first or smth

rough pulsar
#

so this is the test i am making my mod go through

cedar hemlock
#

although if it loads before the dependency will it break 🤔

rough pulsar
#
  1. load a save that isn't normal game mode
  2. quit
  3. load any save that isn't the same game mode
  4. collect lifeblood
rough pulsar
cedar hemlock
#

the M

#

you can look at the source

#

if it has an custom load priority

rough pulsar
#

ok quitting to menu works

#

it said "quitting to menu" for a brief second

#

thats good

#

"Opening save..."

cedar hemlock
#

black egg

light zodiac
#

What's the (1 of 1) next to geo

rough pulsar
#

oh

#

i tried something

#

like

#

the "party" object

#

i thought it would display to the bottom of the "State"

#

it just displays it next to the state....

#

i'll get rid of it x)

#

F

cedar hemlock
#

quick edit lol

rough pulsar
#

it said Cinematic_Stag_travel

#

both of them correct now?

#

oh it works, awesome

#

12/8 masks

#

mmm

cedar hemlock
#

wow

#

now make it 18/0

jolly oriole
#

imagine not having 21/21 Masks

rough pulsar
#

sooo

#

what is joniBlueHealth or whatever is it called

#

fu

#

i rested on a bench

light zodiac
#

The health you get from jonis

rough pulsar
#

really?

cedar hemlock
#

makes sense

rough pulsar
#

so if i don't have joni's blessing equipped it just becomes 0?

cedar hemlock
#

ye

jolly oriole
rough pulsar
#

ok so that's poggers

#

also

#

i would like to set the "elapsed" time to be the save file's playtime but...

#

discord only displays maximum 24 hours

#

sooo

#

it would overflow

#

for some reason

cedar hemlock
#

what happens when it "overflows"

rough pulsar
#

it just becomes 00:00

jolly oriole
#

just print is as a string?

rough pulsar
#

i can't set the 4th line (timestamp) to be a custom string

#

if you are using english language it would display as "00:00 elapsed"

#

in turkish it would display "00:00 geçti"

#

oh and also

#

someone who tried my mod found something

cedar hemlock
#

what

rough pulsar
#

in city of tear's elevator, it says Resting Grounds instead of city of tears elevator

cedar hemlock
#

oh that was me :)

rough pulsar
#

as you can see, me being dumb just decided to set it to resting grounds

cedar hemlock
#

smort

#

Crossroads_49B

rough pulsar
#

yea. i fixed it

jolly oriole
#

i mean, you could've preloaded something nonexistent of every scene, then check with a scenemanager.start hook which scenename corresponds to which map area

rough pulsar
#

yeah i could have

#

i don't think joniHealthBlue works........

#

i'll just check if joni's blessing is equipped

#

i think they may have set ModCommon's load priority to int.MaxValue

light zodiac
rough pulsar
#

7 JONI MASKS

cedar hemlock
#

18?

rough pulsar
#

was 7 joni masks for a brief second

cedar hemlock
#

now 18 soulpensive

rough pulsar
#

WHAT

cedar hemlock
#

what

#

?

rough pulsar
#

anyways

#

hmmm

#

i will give the 1.1.1 beta dll here i guess

cedar hemlock
#

what if you have this mod twice?

#

what will hapen

rough pulsar
#

mmmmmm

#

idk

cedar hemlock
#

smth new to try

light zodiac
# rough pulsar

HoW dO I iNsTaLl ThIs MoD It GiVeS mE eRrOr WhEn I LoAd tHe GaMe

rough pulsar
#

i think

cedar hemlock
#

cHeCk ThE ReAdMe (x1000)

rough pulsar
#

this is the only mod in existence that requires extra steps to install

#

discord game sdk is to blame >:(

rough pulsar
#

and now...

#

i'm gonna create another funny pull request

rough pulsar
#

if i add it to...

#

the mods folder

#

modding API just says "nope" and none of the mods work

#

so that doesn't work!

#

the only way to install dependencies is uh

vocal spire
rough pulsar
#

yea

#

i tried adding discord game sdk to the mods folder

#

it doesn't simply work

vocal spire
#

Ik

#

I’m just stating your mod isn’t the only one with extra steps

#

If you don’t count dependencies, take player data tracker

rough pulsar
#

player data tracker also requires another dependency that isn't a mod?

cedar hemlock
#

Yeah

vocal spire
#

Website

rough pulsar
#

oh dang

#

though

jolly oriole
#

let your mod unpack the sdk into streaming assets folder

vocal spire
#

What if it unpacks after that folder is already loaded?

stone elm
#

I've gotten away with putting dependencies in the Managed folder, although all my dependencies have been managed code

jolly oriole
#

i mean, you can put dependencies like the sdk into the zip of your mod with the pathing, which 56 just doesn't like, but currently it still works afaik

vocal spire
#

I thought you could do that but wasn’t completely sure

rough pulsar
#

m mm m m m

#

sooooo

vocal spire
#

I thought you could do that but wasn’t completely sure

rough pulsar
#

i'll try checking if i can just

#

check if the dependencies exist.

#

before executing any discord-related code

#

i have proof that it will work, because in my mod

#

it logs that Discord SDK is initializing

#

right after that? discord related code

#

if you don't have dependencies installed it will say "discord sdk is initializing" then it will display an error right after that.

#

so installing dependencies is a great way

vocal spire
#

confusion

rough pulsar
#

i'll try to install dependencies right above the imaginary red line

#

the question is

#

the question is

#

how do i locate the dll again pepogrub

stone elm
#

The thought of a mod auto-downloading DLLs into my game makes me a little queasy tbh

rough pulsar
#

queasy?

vocal spire
#

It was always possible

stone elm
#

It sure is, but hasn't been done yet. All 'auto-downloads' have been SHA verified so far.

jolly oriole
#

sha verify your discord sdk download

vocal spire
#

Yeah

stone elm
#

Please do

vocal spire
#

If it updates, you update your mod

rough pulsar
#

i'll first try checking if the directories exist tho

#

but

jolly oriole
#

(or if available keep using the 'old' sdk so you don't have to push updates to make the newer sdks work)

vocal spire
#

time to add viruses to pale court

rough pulsar
#

but

#

i want to know how can i programmatically locate my own dll?

vocal spire
#

Might need to update if discord updates tho

rough pulsar
#

that's the first step i have to cross

vocal spire
#

You can just do ..\ to go out one folder

rough pulsar
#

OH

#

right

#

i'm stupid

vocal spire
#

So Assembly.GetExecutungAssembly().Location or something and then navigate the hk files(might be different for mac)

rough pulsar
#

so

#

the mod exists in hollowknightdata\Managed\Mods

#

i think

vocal spire
#

You can check rn

rough pulsar
#

if i go like ..\..\Plugins

cedar hemlock
#

But with _

rough pulsar
#

it will go to the right plugins

vocal spire
#

Yee

rough pulsar
#

alright so that's awesome

#

the real difficulty is

#

you know.

#

it's to download a zip then unzip it

#

right?

#

there are no official zip/unzip tools in .NET Framework 3.5

cedar hemlock
#

Just get a cmd to do it or smth

#

No idea

#

(Can you open an cmd with a .dll???)

rough pulsar
#

sadly this doesn't work in .NET Framework 3.5

#

oh yeah

#

you can open a cmd in dll

#

since a dll is, you know

#

attached to the

#

exe

#

wait

#

i will experiment something real quick

cedar hemlock
#

Then why dont say the cmd to unzip it

rough pulsar
#

wait

#

is there a program in Windows folder that allows us to unzip/zip files?

cedar hemlock
#

Cant explorer do it?

rough pulsar
#

i don't think so

cedar hemlock
#

Afaik it can

#

Lemme search rq

rough pulsar
#

ok you do that

#

i can just

rough pulsar
#

open notepad by doing Process.Start(@"C:\Windows\notepad.exe");

#

b

cedar hemlock
#

Add in the readme what it is gonna do

#

Otherwise people are gonna go crazy

#

b?

rough pulsar
#

hold on

#

can't i just use the command from the powershell?

#

you know powershell

cedar hemlock
#

Yes

rough pulsar
#

command prompt but better except no one uses it

cedar hemlock
#

Also yes

#

Bc its blue

#

Cmd is black

rough pulsar
#

it also can extract zip files within 1 command unlike command prompt which does it in like

#

13 lines

cedar hemlock
#

Nice

#

I never even touched it lol

rough pulsar
#

hold on

#

let me see if i can execute powershell with parameters

cedar hemlock
#

Expand-Archive lol

rough pulsar
#

hmm

#

OH YEAH

#

IT DOES

#

HECK YEA

cedar hemlock
#

Hope that windows defender isn't gonna go crazy

rough pulsar
#

I CAN JUST DO

#

Process.Start("powershell Expand-Archive -LiteralPath 'zip path here' -DestinationPath 'extract path here'");

cedar hemlock
#

Amazing

rough pulsar
#

Ohhh shit

#

It executes from the hollow_knight.exe file so

#

that makes sense

#

it's attached to the game

#

so I have to do hollowknight_Data\Plugins

cedar hemlock
#

Yep

#

Between hollow and knight needst to be _

#

And some caps

rough pulsar
#

oki

#

i'll try if this code works

#

oh wait

#

oh wait

#

i forgot to delete the thing after else

#

fixed i

cedar hemlock
#

Nice

rough pulsar
#

ok so

#

now i have to download the dependencies

#

it's simply easy to do tbh

cedar hemlock
#

Check how modinstaller does it

rough pulsar
#

modinstaller uses .NET Framework 4.7.2 though

#

which has ZipArchive and stuff

cedar hemlock
#

Or make modinstaller do it for you

rough pulsar
#

i would but

#

hhh

#

it takes me a long time to comprehend a project's source code i haven't even looked at

cedar hemlock
#

lol

#

Is prob all in modmanager.cs

#

But player data tracker does also download multiple files

#

Why dont you do that to

rough pulsar
#

wdym?

cedar hemlock
#

Make the modinstaller download the zip

#

Or am i being stupid again

rough pulsar
#

no you're not

#

every solution works in the programming land hollowwoke

#

but

cedar hemlock
#

Oh ok

rough pulsar
#

i don't think i can find the code where it actually checks the <File> section and such

#

am stupid and i almost never touched the System.Xml namespace

cedar hemlock
#

my phone died at 3% im back

cedar hemlock
#

just add it to the files it downloads?

rough pulsar
#

no

#

it will just download it to the Mods folder

#

which i don't want

#

at all

cedar hemlock
#

cant you make it move?

jolly oriole
#

btw about the zip thing

#

don't you need a specific command for each OS?

cedar hemlock
#

you mean just windows and mac or window 7 and 10?

rough pulsar
#

but uh i don't think i can uh

#

find a proper library that does it for me?

rough pulsar
jolly oriole
#

gimme a sec, i have something to differentiate OSes (can just set a temp string var that later just executes the command)

#
public static string UNZIP_COMMAND
{
    get
    {
        return SystemInfo.operatingSystemFamily switch
        {
            OperatingSystemFamily.Windows => "windows command",
            OperatingSystemFamily.Linux => "linux command",
            OperatingSystemFamily.MacOSX => "mac command",
            _ => null
        };
    }
}

you can have this somewhere in the class you're unzipping in

rough pulsar
#

hm thank

stone elm
#

You are likely best off using a library to enable zipfile interfacing rather than depending on what a user's system may have installed. (Not so bad on Windows but maybe Mac varies. Likely Linux varies widely.)

rough pulsar
#

dangit

#

I GUESS there is a library for that.

#

SharpZipLib

jolly oriole
#

DotNetZip apparently is also an option

rough pulsar
#

it's much older

#

:c

#

i think

#

oh looks like i already have it

#

the reason i'm using 0.86.0 is because

#

it's the only version i can install rn

jolly oriole
#

but you'd need to ship that in your mod (or at least in the mod's zip), y'know?

rough pulsar
#

oh yeah

#

you're right

#

i can do that

#

so i try doing this

jolly oriole
#

i think (i might be wrong), the paths are relative to the mod's dll

rough pulsar
#

No

#

not at all

light zodiac
rough pulsar
jolly oriole
#

well then, you'll need a special case for mac

rough pulsar
#

why

stone elm
#

Nothing about that screenshot seems 'windows only' to me.

rough pulsar
#

are the paths relative to the mod's dll in mac?

light zodiac
#

mac has contents instead of hollow_knight_Data

jolly oriole
#

because there the mod is under resources/hollow_knight_data/managed/mods

#

or contents

#

idk

stone elm
#

Ah, paths, I suppose that makes sense

rough pulsar
#

wait

#

?saves

finite forumBOT
#

Saves


Windows File Paths: (Assumes Default Steam Install Path, Adjust accordingly for DRM Free or Non-Standard Steam Path)

Game Files: C:\Program Files (x86)\Steam\steamapps\common\Hollow Knight\```
** **
Mac File Paths:
```Save Files: ~/Library/Application Support/unity.Team Cherry.Hollow Knight/
Game Files: ~/Library/Application Support/Steam/steamapps/common/Hollow Knight/hollow_knight.app/```
** **
Linux File Paths:
```Save Files: ~/.config/unity3d/Team Cherry/Hollow Knight/
Game Files: ~/.local/share/Steam/steamapps/common/Hollow Knight/```
light zodiac
#

mac mods => contents -> resources -> data -> managed -> mods

rough pulsar
#

what

light zodiac
#

but there's also contents -> managed -> mods that custom knight uses

stone elm
#

If you just need the SDK to be available then it should be placed anywhere the process would look for dependencies. .NET tries quite a few paths. Putting it in the same directory as the EXE probably works.

floral blade
#

switch (SystemInfo.operatingSystemFamily)
{
case OperatingSystemFamily.MacOSX:
DATA_DIR = Path.GetFullPath(Application.dataPath + "/Resources/Data/Managed/Mods/");
break;
default:
DATA_DIR = Path.GetFullPath(Application.dataPath + "/Managed/Mods/" );
break;
}
this seems to work for me

stone elm
#

Dependencies don't necessarily have to be in the mods folder. They just need to be in a directory where they can be found.

rough pulsar
floral blade
#

seems like win & linux have similar paths

rough pulsar
#

i'm looking at sharpziplib wiki

#

apparently this works

#

i can't even...

#

foreach-inception

#

oh wait i can just use

#

fastzip

#

code so far (windows)

#

oh wait i didn't add the sharpziplib dll

light zodiac
#

add the line at the endcs Directory.Delete(@"\hollow_knight_Data\Managed\Mods")

rough pulsar
#

you're funny person

#

discord hates me now.

floral blade
#

funny rate limited ?

rough pulsar
#

forbidden soulpensive

floral blade
#

this happened with me and google drive 😛

#

restart your internet connection if you dont have a static ip

rough pulsar
#

H M.

#

ok

#

i guess i'll die for a brief second

#

oh no

stone elm
#

It probably means your token or other auth method is invalid.

rough pulsar
#

w

#

the only server related code is this

floral blade
rough pulsar
#

yah i did

floral blade
rough pulsar
#

they have a shitty bandwidth if they forbid

#

it stilld oesn't work hollowblob

floral blade
#

did you restart your router / modem ?

rough pulsar
#

i did

#

and no i don't have a static ip

floral blade
#

hmm... it might be vpn time then

rough pulsar
#

also quick question

#

does the rate limit go after a day

floral blade
rough pulsar
#

a short while

#

like

#

only a few minutes?

floral blade
#

yeah but sometimes hours / sometimes days. depends on how they've set it up

#

best suggestion right now would be to download the file over vpn once and keep using it till you really need it again

rough pulsar
#

hmmm

#

i'll just

#

use a copy

#

i have rn

floral blade
light zodiac
#

send the dll i can test it if you want

rough pulsar
#

really

#

ok

#

oH and also

#

this too

#

you need both

light zodiac
rough pulsar
#

yes

#

uh

#

first if you have x86 and x86_64 folders in the plugins

#

delete them

#

bruh i can just download the zip just fine @floral blade

#

well

#

thats weird

floral blade
#

you can download it via browser but not via code ?

rough pulsar
#

yeah

floral blade
#

are they detecting UA 😮

#

see if you can download using curl ?

rough pulsar
#

wait

#

what's ua

light zodiac
#

i downloaded both mods and tried to open the game and got the DRPC failed to load

Modlog[INFO]:[HollowKnightDRPC] - Mod initializing [INFO]:[HollowKnightDRPC] - DLL Location: C:\Program Files (x86)\Steam\steamapps\common\Hollow Knight [INFO]:[HollowKnightDRPC] - Dependencies don't exist [ERROR]:[API] - Error: System.Net.WebException: The remote server returned an error: (403) Forbidden. [ERROR]:[API] - at System.Net.HttpWebRequest.CheckFinalStatus (System.Net.WebAsyncResult result) [0x00000] in <filename unknown>:0 [ERROR]:[API] - at System.Net.HttpWebRequest.SetResponseData (System.Net.WebConnectionData data) [0x00000] in <filename unknown>:0

light zodiac
#

it didn't unzip

floral blade
rough pulsar
#

the zip is 0kb it didn't even download

#

@floral blade

#

not only that, there's another entire problem with the zip thingy

[ERROR]:[API] - Error: System.NotSupportedException: CodePage 437 not supported
[ERROR]:[API] -   at System.Text.Encoding.GetEncoding (Int32 codepage) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at ICSharpCode.SharpZipLib.Zip.ZipConstants.ConvertToString (System.Byte[] data, Int32 count) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at ICSharpCode.SharpZipLib.Zip.ZipConstants.ConvertToStringExt (Int32 flags, System.Byte[] data, Int32 count) [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at ICSharpCode.SharpZipLib.Zip.ZipFile.ReadEntries () [0x00000] in <filename unknown>:0 
[ERROR]:[API] -   at ICSharpCode.SharpZipLib.Zip.ZipFile..ctor (System.IO.Stream stream) [0x00000] in <filename unknown>:0 
jolly oriole
#

crazy

stone elm
#

or was it 422, either way, discord wouldnt return 403 on rate limits most likely

#

i doubt even they are that bad 😐

rough pulsar
#

auto dependency download might be anything but a real thing soulpensive

#

in this mod

stone elm
#

What is the problem with bundling it with the mod again? Was it the fact that it would be in the Mods folder? Why not just write code to move it out gorbbrain

rough pulsar
#

move it out

#

w

light zodiac
#

a quick google shows 403 is a permissions error

rough pulsar
#

wdym

stone elm
#

From Mods folder to somewhere else where the modloader won't break on it

#

like to ../

#

I might've missed something, but this was all due to modloader breaking due to native dll in Mods folder, yes?

rough pulsar
#

OH SHIT i have a b...

#

nvm...

stone elm
#

And you want to download it because it's not easy/recommended to bundle the DLL so that it DOESN'T end up in Mods right?

rough pulsar
#

modloader completely dies when it sees a native dll

#

yes

#

question

light zodiac
#

could it be possible to create a new folder in mods

rough pulsar
#

a real quick question

light zodiac
#

to contain those files

rough pulsar
#

if i create a subfolder in my zip

#

then

#

e.g

#

the discord game sdk files will be located in "/x86/..." and "/x86/..." right

stone elm
#

Yeah, that'd probably work to put a sub-directory in Mods. IDK if the modloader loads from subdirs

rough pulsar
#

sooooooooo

#

i can make my mod move those folders to

#

uh

#

the plugins folder

stone elm
#

Yeah, probably

rough pulsar
#

we are a bunch of geniuses

#

dam

#

oki

#

let me try

floral blade
rough pulsar
#

damn

stone elm
#

google drive rude af not following standards

rough pulsar
#

bad company

#

smh

#

if this solution doesn't work idk what will work

stone elm
#

Embed the DLL as embedded resource then shit it out into a folder on runtime

#

There's plan D

rough pulsar
#

OH?

#

IT WORKS

#

IT WORKS

#

OH MY FUCKING GOD

#

!!!!!!!!!!!

light zodiac
#

lfg

rough pulsar
#

LFG!!!!!!!!!!!

#

now

stone elm
rough pulsar
#

should i just remove the "CHECK README" in the modlinks.xml lol

#

it's no longer necessary

#

except explaining what it does

floral blade
#

he's just a head now lmao

rough pulsar
#

i hope it doesn't break anything though.

rough pulsar
floral blade
#

how do i make a copy of a transform ?

floral blade
rough pulsar
#

what

#

copy of a transforM???

floral blade
#

yes i think i copied it by reference and modified it to send that other player under ground

#

i meant to only spawn another obj below them

#

i'll just try to make a new one

rough pulsar
#

ok so

#

if i remove the string "check readme" from mod name in modlinks.xml

#

would it break anything in modinstaller

floral blade
#

is it possible that 'Object.Destroy' wont destroy an object but simply freeze it in place ?

rough pulsar
#

i think it will just.......destroy

floral blade
#

hmm i must be messing something else up because these objects just freeze on screen

rough pulsar
#

should i just push another commit to my pull request before it gets pushed shroompog

#

i need to be quick

cedar hemlock
#

yes?

#

why not

rough pulsar
#

oh shi

#

hmmm

#

nvm

#

i'll do it

prime urchin
#

you should be able to convert pull requests to drafts so they won't be merged before they're ready

rough pulsar
#

ok

#

done

#

oh wait

#

i forgot to add support for mac too-

#

ok itssoulgood itssoulgood

cedar hemlock
#

amazing

rough pulsar
#

wheres the

light zodiac
#

instead of naming it x64 or something, name it hkdrpc

rough pulsar
#

itssoulpoggers emote

light zodiac
#

so people know what it is

rough pulsar
light zodiac
#

and if possible make 1 folder

cedar hemlock
#

ehh nobody gonna look in the plugins folder

light zodiac
#

its in the mods folder

rough pulsar
#

no

light zodiac
#

nvm

cedar hemlock
#

xD

rough pulsar
#

still gonna do it anyways tamershrug

cedar hemlock
#

fun

rough pulsar
#

it's 8.12 MB x)

cedar hemlock
#

ehh not that bad

rough pulsar
#

yeah we've seen far worse, right?

cedar hemlock
#

i know a dll thats 25 mb

#

idk what it was called tho

rough pulsar
#

i know a mod thats indie crossover

#

which is

#

more than 100 mb

cedar hemlock
#

nice

#

(my mod is more than 25 mb)

rough pulsar
#

oh your mod is player data tracker?

#

nice

cedar hemlock
#

but indie crossover and my mod being big makes sense

light zodiac
cedar hemlock
#

no

rough pulsar
#

oh

#

wait

cedar hemlock
#

its not released ye

#

t

rough pulsar
#

ok

cedar hemlock
#

theres a little sprinkle released

rough pulsar
#

you fixed someone else's sha1

cedar hemlock
#

i fixed hollow points SHA1

#

im the cleanup crew or smth

rough pulsar
#

you'll probably never have to fix my mod's sha1

cedar hemlock
#

eventually yes

rough pulsar
#

well

#

i might make a mistake

#

in sha1

jolly oriole
#

imagine only fixing sha1s

rough pulsar
#

who knows

cedar hemlock
#

gtg now

#

bye

rough pulsar
#

wait

#

question

#

do i have to add the rest of files in

#

nnnnn

#

the zip?

cedar hemlock
#

what "rest"

rough pulsar
#

the folders

cedar hemlock
#

just put all the files in 1 zip

#

including any other zips

#

cus thats always fun

#

beware that it will all be placed in mods

rough pulsar
#

do i have to add the <File> field for the rest of these files

cedar hemlock
#

if you put it in a zip then only the zip

#

if you want the folders seperate out of a zip then yes

#

but bye now

rough pulsar
#

ok

#

i'm still as confused

#

so

#

do the files get installed even if the files aren't included in modlinks.xml

#

so

#

if i don't add the files inside x86 and x86_64 those files to the modlinks.xml inside those folders will be installed or nah

#

ok

#

i think so

floral blade
#

mastersmirk anime split second sword clash

rough pulsar
#

anime

jolly oriole
#

downloads that aren't sha verified pog

vocal spire
#

🤔

#

Yeah

#

I’m not downloading a foreign dll to my device and loading it

rough pulsar
#

i'll only add 2files here even though there are 7 other files that i haven't added inside the zip shroompog

#

i probably should add them as well

stone elm
#

If you're downloading files through your mod then adding the shas to the modinstaller repo doesn't constitute verification

rough pulsar
#

no

#

i'm not downloading files through my mod

#

the files ARE inside the zip

#

my mod will be moving those files to the Plugins folder

stone elm
#

You aren't downloading the zip? Sorry, I didn't keep up in the last hour

rough pulsar
#

do i have to add those files as well

#

i guess i will do so. tamershrug

#

though

#

since my mod will be moving those files...

#

what will happen if the modinstaller doesn't see the files in place?

stone elm
#

If you are downloading any files through your mod then no, adding them does nothing.
If the files are packaged with your mod somehow, then yes add them.

#

Nothing, most likely

rough pulsar
#

the files are packaged in my mod

#

like

#

this is the files inside the zip

#

x86 has 2 files

#

x86_64 has 5 files

stone elm
#

Uhhh, I do not know if modinstaller does sha checks on files in subdirs... Let me look

rough pulsar
#

do i have to add cases for them

stone elm
#

I understand the question, I'm searching for the answer.

rough pulsar
#

OK thanks

stone elm
#

Yeah, looks like what you put up as an example should probably work.

rough pulsar
#

hope it works

jolly oriole
#

you don't need those, only things in the mods folder and the disabled folder are sha1 checked

#

but just to be sure i'd also add those

stone elm
#

It (seems to) check them by using the filename as a relative path, so putting a folder in there seems like it'll work

#

I only spent 5 minutes looking at the source tho

rough pulsar
jolly oriole
rough pulsar
#

i added shitton of lines in modlinks.xml

jolly oriole
#

and?

#

if it's necessary, so be it

rough pulsar
#

those files are necessary for auto dependency to work

#

since it will

#

yknow

#

move those files into the plugins folder

#

also it has been a few months since i signed up for this zote

#

offtopic but i thought i would mention it

jolly oriole
#

what's the easiest method to reset the ingame achievements of a machine? (don't worry, it's not AchievementHandler.ResetAllAchievements(), as that only resets the achievements of the steam/gog account)

floral blade
#

anyone know how to get the input on the right stick of a controller ?

copper nacelle
#

prob just use incontrol

#

I think there's a ref to the axis device somewhere in the input stuff

floral blade
#

i mean left axis is sortof mapped to vertical and horizontal , dash button seems to mess up horizontal tho so i'm not sure

floral blade
copper nacelle
#

I mean from what I remember there's a field

#

but I cba getting out of bed and actually finding it rn

floral blade
#

could you point me in the direction of how i could find it ?

vocal spire
#

google?

floral blade
#

just realised by running ILSpy on the dll that incontrol is already in the game

#

WAIT. you can basically see the entire code with ILSpy?

#

i thought it'll all be Assembly code

#

my world has just expanded i have world sense now

vocal spire
#

smh

#

lol

#

how did you mod before?

floral blade
#

and looking at existing mod's codes

#

to figure out what properties/methods exist

vocal spire
#

🤔

#

makes sense

#

somebody should update the api docs

#

my excuse for not doing it: bad at github

floral blade
#

now should this not work ?

#

i get 0 values for both of these

floral blade
vocal spire
floral blade
vocal spire
floral blade
vocal spire
#

Ok

#

nice

floral blade
#

thanks for the help hollowblob

vocal spire
#

np

rough pulsar
#

so

#

i think i should destroy the GameObject i created

#

that runs the Update() function

#

which is one of the two methods that have Discord related code

#

idrk

#

might try that

jolly oriole
#

if you want it toggleable, maybe just set the gameobject inactive in unload and active in initialize

rough pulsar
#

do the variables persist through toggled off states?

jolly oriole
#

yea

#

it's just that e.g. update doesn't run while the go is inactive

rough pulsar
#

does it run the Initialize() function when i toggle it back on?

light zodiac
#

your unload is empty zote

jolly oriole
#

yes, you'd need code to check for an existing instance

rough pulsar
#

modinstaller doesn't install things from subfolders inside zips!!!! oh no!!!!

#

what do i do now

cedar hemlock
#

what

#

why not

rough pulsar
#

i don't know

cedar hemlock
#

put a zip in a zip

rough pulsar
#

i added the <File> stuff for each file, inside subfolders too

cedar hemlock
#

problem fixed

rough pulsar
cedar hemlock
#

your mod has to do it afaik

#

sadly

jolly oriole
#

you could simply ask @copper nacelle if it should work like you did or if you have to do that yourself

cedar hemlock
#

(my solutions aren't great)

rough pulsar
#

you already pinged 56

cedar hemlock
#

yes

rough pulsar
#

i don't think they are online

cedar hemlock
#

he did

rough pulsar
#

they are DND but

#

not online

cedar hemlock
#

just wait

#

he'll see it

#

eventually

cedar hemlock
#

lol

jolly oriole
#

i can't remember the last time 56 wasn't dnd

jolly oriole
cedar hemlock
#

SF merge it

rough pulsar
#

wait isn't the pr merged

cedar hemlock
#

this is interesting

rough pulsar
#

sf can't you just

#

merge it

jolly oriole
#

i can't merge

cedar hemlock
rough pulsar
#

i know

cedar hemlock
rough pulsar
#

56 usually* merges in like

#

few or several hours after

cedar hemlock
#

5 days

rough pulsar
#

the PR

cedar hemlock
#

one more *

#

too much *

rough pulsar
#

what even is this mod

cedar hemlock
#

yes

jolly oriole
#

plando

cedar hemlock
#

it changes item based on xml

cedar hemlock
#

we need that pinned

jolly oriole
#

unsolicited links smh

cedar hemlock
#

random links are fun

light zodiac
cedar hemlock
light zodiac
#

if someone gave a bit.ly link i wouldnt click it

rough pulsar
#

56 wya

#

smh

cedar hemlock
#

how do i see who can merge

rough pulsar
#

collaborators?

cedar hemlock
#

SFG is there and he cant merge

#

i am there, you are there

#

we cant merge

#

(can people with merge powers merge their own thing?)

light zodiac
#

that's contributors

cedar hemlock
#

afaik the guys who can merge are:

#

56

#

gradow

#

homothetyhk

#

sry for typo's

rough pulsar
#

they can just...

#

commit

cedar hemlock
#

i saw homothety do it

#

he made a pr then merged it

#

idk why

#

(or am i stupid again)

rough pulsar
#

contributors are only contributors

#

the ones that have committed previously

#

they don't gain any power of some sort

#

afaik

cedar hemlock
#

nope

rough pulsar
#

except the cool contributor badge

cedar hemlock
#

yes

#

cool

#

is there a github page for modinstaller2?

#

or only the .exe's in the pins?

rough pulsar
#

yeet

#

the embed

cedar hemlock
#

why can you not yeet embeds in mobile

#

its just suffering

rough pulsar
#

just do

cedar hemlock
#

amazing

rough pulsar
#

do these two variables do anything?

rough pulsar
#

ok so i want to know

#

can you load into Godhome safely with LoadScene()

cedar hemlock
#

where would it place you

jolly oriole
#

no

copper nacelle
#

good morning

#

that's not going to work with installer1 no

#

I think it would with installer2

floral blade
copper nacelle
#

But the first one just iterates over the zip contents and puts the dll in mods with 0 regards for folder structure

#

nice

rough pulsar
#

also @copper nacelle would this work, in order to get whether broken vessel is defeated?

#

if not what should i do

copper nacelle
#

this ain't it

#

there's straight up a killed bool

rough pulsar
#

well

#

what string do i use

jolly oriole
#

GetVariable<idkwhattype>("whatever that statue thing is called").isUnlocked

rough pulsar
#

to check if broken vessel dead

jolly oriole
#

then getbool(killedbrokenvessel) probs

rough pulsar
#

i don't think i know what i'm doing

#

i completely lost my mind nvm a a a a a a

midnight canyon
#

PlayerData.instance.killedInfectedKnight?

rough pulsar
#

how do you manually save the game inside the mod

copper nacelle
#

I think you'd just call SaveGame on GameManager but haven't ever tried

jolly oriole
#

why would you need to manually save the game?

jolly oriole
rough pulsar
#

huh

#

ok

#

i NEVER realized GameManager exists

midnight canyon
floral blade
#

if i were to let the player spawn objects on the screen, but not infinitely does it make sense to have an array of go's that i just reuse by resetting them ?
do i have to initialise them all to new go's if i do :

private GameObject[] pool = new GameObject[25];

copper nacelle
#

yeah

#

to both

floral blade
#

so the new keyword here only makes a new array with null values , hmm

fair rampart
#

Just asking where do you make your mods?

copper nacelle
#

what does this mean