#archived-modding-development

1 messages ยท Page 476 of 1

west ridge
#

๐Ÿ™‚

#

do you need to know what statics and serializables are?

floral furnace
#

serializables maybe not now?

#

but you are aware of how statics work?

west ridge
#

not yet

floral furnace
#

theyre basically keywords that says "For all of these object instances, they have same value all throughout"

west ridge
#

so global value for all instances of a gameobject?

floral furnace
#

yeahhh

#

a quick run down, if you have a Car object

static int totalCars
string carName
string carColor

etc etc, 2 Car objects can have unique carNames and carColor values but they all both use the same totalCars value

west ridge
#

thatg makes sence

#

can a static be updated?

floral furnace
#

its also good if you wanna call functions that you dont need to make an instance of an object of

#

oh yeah it can, you can change the value, but ofc this changes EVERY objects value that references it

west ridge
#

ofc

#

does hollow knight use unity 2d or 3d?

#

i might try to see if i can do stuff with the camera

floral furnace
#

its 3d

#

hence the parallax stuff is possible because those scene stuff are just in another z level

west ridge
#

i've seen parralax done in 2d

floral furnace
#

oh well im not a game dev lmao, so not too knowledgeable with these

west ridge
#

XD

floral furnace
#

but yeah HK does use 3d

west ridge
#

lmao imagine someone modding it in to a 3d persepective

nimble lake
#

they already added a gun mod

#

so now just turn it into a doom-like fps shooter

west ridge
#

you know doom origanlly used sprites and raycasting for collision and stuff right?

#

it's way more then doable

#

if not tendious and time consuming

#

super doom hollow galaxy

#

r/brandnewsentance

#

what are namespaces for i understand they stop the referances getting confused but how and why idk

floral furnace
#
Namespaces in C# are used to organize too many classes so that it can be easy to handle the application.

In a simple C# program, we use System.Console where System is the namespace and Console is the class. To access the class of a namespace, we need to use namespacename.classname. We can use using keyword so that we don't have to use complete name all the time.
#

ยฏ_(ใƒ„)_/ยฏ

west ridge
#

so an advanced way of grouping classes

#

neat

#

wait if the game is 3d why does it use 2d collider referances

fair rampart
#

neat
not neat, your classes will still be spread across 50 files and there will be no single reference point.

west ridge
#

you can make a manager using unity's manager function for c# scripts deriving from monobehavour (i'm uncertian if you can use it on more then monobehavour)

#

if you make a mod how do you export and use it?

floral furnace
#

you build it

west ridge
#

like how does the installize functio work and such

floral furnace
#

itll make dll

#

you drop the dll inside the Mods folder inside your Hollow Knight dir

#

the API assemblycsharp will basically read and run any dll files in the Mods directory

west ridge
#

it says on radiant host you need a public override void Initialize() in there how do you use it to make the mod load on play?

brave mauve
floral furnace
#

wtv your "main" starting initialize file is wtv, make sure you extend it with mod, then add this, wtv inside this Intialize method will get run the moment you start the game

#

ofc import Modding first

west ridge
#

so initialize everything i wish to use?

floral furnace
#

well, whatever you wanna do at that point

#

Check this example mod

#

theres 2 more examples but this 1 one is the simplest to start with

west ridge
#

i have it open already

#

that's what i'm anylizing to try and work out what is what

floral furnace
#

yeah yeah sorry if im kinda bad at understanding what you mean

west ridge
#

what are all the stuff i need to referance?

#

internal static god_mode Instance; public override void Initialize()
it definatly doesn't like this

floral furnace
#

probably Modding, UnityEngine, System.Reflection?

west ridge
#

i have them

floral furnace
#

did you extend your main class with Mod?

west ridge
#

?

floral furnace
#

MyClassName : Mod

west ridge
#

that fixed one error XD

floral furnace
#

but your Initialize should be working now

west ridge
#

yes

#

here's what i've done

floral furnace
#

internal static has the Class name not the namespace

#

OnAfterAttack is probably missing something, hover over it

west ridge
#

it just says it doesn't exist in this context

floral furnace
#

ohhh ok ok

#

because you dont have a method existing that has the name OnAfterAttack

west ridge
#

ohhh i thought it was the hook

floral furnace
#

Yeah

#

wtv OnAfterAttack is, its missing, so its throwing that error

west ridge
#

that makes sence

#

other then that should it work?

floral furnace
#

it should

#

but remember TakeDamage isnt gonan do anything, right now its just a method

#

you need to hook it to the actual TakeDamage hook

#

which would probably be

ModHooks.Instance.TakeDamage += TakeDamage;

#

afaik some of them may get errors due to stuff like incorrect return type

ornate rivet
#

ttacco you have now spent more time helping someone mod than any of the modding staff members soulpensive

floral furnace
#

wdym me? its your turn now ๐Ÿ˜ค

#

do it garmond please

west ridge
#

XD

ornate rivet
#

uuhhhhhh time to go make breakfast byeee

floral furnace
#

shadecry
also tbf outside the initial introduction im pretty much useless except maybe some GameObject/Monobehaviour spawning, since most of the new guys tends to make new bosses which you guys are way more suited at handling

#

also i recommend giving your methods different names if you prefer them

#

ModHooks.Instance.TakeDamage += TakeDamage_Hook;

public int TakeDamage_Hook(int amount){
blah blah
}

west ridge
#

i thought that just set the values referance as it is in instalize

floral furnace
#

wdym?

west ridge
#

i put the code here
public override void Initialize() { Instance = this; ModHooks.Instance.AttackHook += OnAttack; }
so i thought it would only run once and set the referance to the hook attack

floral furnace
#

it should run once

#

like everytime you start the game it should run it

#

oh yeah youre gonna need logs

#

hold on let me check how to enable them

#

i forgot

west ridge
#

debug.log?

floral furnace
#

like logs that show up on the corner of your screen

west ridge
#

or is that a unity thing

#

ahhh ok

floral furnace
#

makes debugging easier

west ridge
#

makes sence

floral furnace
#

ok so uhh, search for "Run"

#

and put in AppData

fair rampart
#

win+R

floral furnace
#

Navigate to AppData/LocalLow/Team Cherry, and you should see a
ModdingApi.GlobalSettings.json

#

yeah what troule said, not too familiar with the shortcuts lmao

fair rampart
#

you can also just put %appdata% in the explorer address bar, it also runs stuff

floral furnace
#

the more you know i didnt

west ridge
#

can also do %appdata%/LocalLow/Team Cherry

floral furnace
#

either way

#

open the ModdingApi Global Settings

#

then if you wanna log something, you can do
Modding.Logger.Log("Well its doing SOMETHING"); in your mod

west ridge
#

yeah

floral furnace
#

if you dont wanna write Modding.Logger everytime, you can statically import it with

using static Modding.Logger;

so all you need to type is Log(myString)

west ridge
#

will it autoupdate to add my built mod?

#

like here

floral furnace
#

oh yeah dont worry about that

#

I dont remember having to need to manually put my mod's name there

#

I think extending your class with IToggleableMod will automatically do it tho
same class thats extended with "Mod"

west ridge
#

how do i exend a class?

floral furnace
#

public class MyModName : Mod, ITogglableMod

west ridge
#

thank you

floral furnace
#

im probably getting the terms wrong lmao

west ridge
#

do i need a using?

floral furnace
#

for the static import?

west ridge
#

for IToggleableMod

floral furnace
#

that should already be derived from the Modding namespace

#

so no need

west ridge
#

it can't find it for me

floral furnace
#

well its not required atm

#

so you can ignore adding this

#

when the modinstaller "disables" a mod anyway it just drops it inside another subfolder called Disabled which prevents the API from reading it anyway

west ridge
#

ok ๐Ÿ™‚

brave mauve
floral furnace
#

sorry i dont know much about using this, youre gonna need the TWP people for it

brave mauve
#

Aight sorry

floral furnace
#

no need to appologize, just saying you might need to wait for one of them to see your issue

fair rampart
#

click Replace

#

It means that other animations in the collection reuse the same sprites and need to match

hasty fractal
#

@brave mauve
Click on the sprite that are modified and click on "Replace".
Clique sur le sprite que tu as modifier et ensuite clique sur "Replace".

west ridge
#

how do you use ITogglableMod ?

brave mauve
#

So i just keep replacing the sprites?

hasty fractal
#

Do you speak French?

brave mauve
#

No

hasty fractal
#

Ok.

brave mauve
#

FR isnt for french

hasty fractal
#

Oh ok.

brave mauve
#

Thx anyways i'll try it

hasty fractal
#

You're the welcome.

floral furnace
#

@west ridge shot at the dark but have you Referenced ModCommon?

west ridge
#

i have

floral furnace
#

Modding should be enough, thats really odd

west ridge
hasty fractal
#

@brave mauve
Close "Backup" and keep "Watch on", then you can replace them all.
It's more easier like that.

floral furnace
#

try building it

#

i feel like thats more of a VS problem than a reference one

west ridge
floral furnace
#

OHHH

#

you have to add a Unload method

#
public void Unload()
        {
            ModHooks.Instance.AfterSavegameLoadHook -= SaveGame;
            ModHooks.Instance.NewGameHook -= NewGame;
            Modding.Logger.Log("Unload on Init is called");
        }

heres mine

#

you might wanna unhook those 2 hooks, all you have to do is change + to a -

west ridge
#

would i set insstance to null?

floral furnace
#

i guess so?

vocal spire
#

Does anyone know how to fix boss levers? I have been trying and when the room reloads when the alt statue is active, everything, including the boss completion, except for the name and description of the boss is changed back to the original stuff. I made sure to do what other people did in their boss mods.

west ridge
#

i'm sorry i have no idea i'm new to this

#

ok my mod doesn't work XD

floral furnace
#

is the name showing up in the upper left corner?

west ridge
#

yes

#

class 1

floral furnace
#

try hitting again

#

also sorry red i have 0 boss knowledge so youll have to wait for someone who knows their shit

west ridge
#

i take damage and do the same damage as normal

floral furnace
#

compiled it as a DLL, then dropped it at mods right?

west ridge
#

yes

#

here's the code

floral furnace
#

the attack should work

#

but the reason you still take damage is because you didnt hook from take damage method

#

like i said, right now its just a method, you need to hook it

put in ModHooks.Instance.TakeDamage += TakeDamage

#

so basically everytime you take damage in game, itll call your method instead

west ridge
#

ohhhh

#

also isn't that ModHooks.Instance.TakeHealthHook += TakeDamage

floral furnace
#

yeah yeah that one

#

i dont memorize all their names

west ridge
#

fair

#

any idea why the dll doesn't work though?

floral furnace
#

its working, the name showing up on the left corner means its working

west ridge
#

well it doesn't do anything in the code

floral furnace
#

afaik PlayerData.instance.nailDamage is just finicky to work around

#

try adding

Log("IM ATTACKING") in OnAttack

#

and Log("Starting my God Mod")
in initialize

#

rebuild the file, drop the DLL again inside the Mods folder, then start the game

west ridge
#

ok

floral furnace
#

the logs are showing up now right?

#

you got the text in the corner?

west ridge
#

loading

#

yes it is there

floral furnace
#

aight, now load your game

west ridge
#

it works

#

thank you

#

is there a way to stop the stun when you are hit?

floral furnace
#

you mean the freeze?

#

at this point youll be trying to edit the game so youre gonna be using DNSpy/ILSpy most of the time

west ridge
#

gottcha i'm just trying to start simple and work towards p2p multiplayer

floral furnace
#

Back then youd edit the AssemblyCSharp directly and alter the code but since we dont (SHOULDNT) do that anymore, editing methods might require a bit different tricks to it

#

ohhhh

#

About that

#

Someones already making a Multiplayer mod

#

That someone is ofc Lord God Jngo which i have been paid to utter that title everytime i mention it, 2.99$ a sentence

west ridge
#

wasn't he struggling with animation a fre months back

floral furnace
#

lots of progress now

vocal spire
#

I also made a coop mod

floral furnace
#

yeah the dreamshield one

west ridge
#

if i remember correctly he's the reason i know the knight kills themself

floral furnace
#

custom knight now works actually to some extent

vocal spire
#

and I'm working on grimmchild coop

west ridge
#

nice

floral furnace
#

how about you two... help each other ๐Ÿ˜ณ

west ridge
#

i don't want to be a hinderance

floral furnace
#

but again theres already a multiplayer mode in progress unfortunately

west ridge
#

but i can certianly put in the time

floral furnace
#

hey its good practice for collaboratory work

west ridge
#

i know the hk community won't make machine learning a part of hk for a long time if ever

vocal spire
#

All I need help with is fixing a boss statue lever for a boss I made. I copied the code from other bosses and it still will be glitchy

floral furnace
#

i know the hk community won't make machine learning a part of hk for a long time if ever
lmao that was supposed to be my project, ML but with a single boss

west ridge
#

i could suggest stuff but i know nothing

#

do you need machine learning resources?

#

not tagging (though i could) i mean learning the code

floral furnace
#

nah not really, that was a very old project that i didnt pursue, it was an academic thingy anyway

west ridge
#

fair

#

what if pvp was in (no decending dank for the love of god it is brocken in pvp)

#

but like ai vs ai

floral furnace
#

sounds difficult

west ridge
#

the ai is easy enough

#

i say easy i mean do able

#

how do i rename class one and give a version number?

#

also how do i check on muliplayer progress?

floral furnace
#

ask jngo he does regular test runs on it

#
            FieldInfo field = typeof(Mod).GetField
                ("Name", BindingFlags.Instance | BindingFlags.Public);
            field?.SetValue(this, "My Mod Name");
west ridge
#

fair

floral furnace
#
FieldInfo field = typeof(Mod).GetField
("Name", BindingFlags.Instance | BindingFlags.Public);
            field?.SetValue(this, "My Mod Name");
#

goddamn formatting

copper nacelle
#

nooooooooooooooooooo

floral furnace
#

whattttt

#

oh god 56 dont kill me

#

unless you have a new way better method

#

which you probably do

west ridge
copper nacelle
#

just change it

floral furnace
#

oh wait you want to the change the name on the side right

west ridge
#

it isn't fussy like unity c# scripts?

#

yeah

copper nacelle
#

no

floral furnace
#

afaik c# is the least fussy with shit like that

copper nacelle
#

just rclick rename

floral furnace
#

small brain method
big brain method, change it, build it, check all the error references in the console, change each one individually

leaden hedge
#

big brain is getting yusuf to fix your code

floral furnace
#

also for version
public override string GetVersion() => Assembly.GetExecutingAssembly().GetName().Version.ToString(); should do it (unless you guys have another objection with it)

west ridge
#

they won't that is common in lots of example scripts XD

floral furnace
#

and taco you just do this
@copper nacelle you expect me to actually be smart about this smh

copper nacelle
west ridge
#

K N O W L E D G E

#

is there a way to set what vector the mothwing cloak sends you in there is exeloration in the radiant host website

floral furnace
#

if you wanna start changing movement stuff best bet is to start checking how it controls movement in the HeroController class

#

via IL/DNspy

west ridge
#

how do i use it?

floral furnace
#

Open wtvSpy, then just choose to open the AssemblyCSharp file

#

it should show you all the games code

#

as for FSMs... uhhhh, thats another story ๐Ÿ˜ฌ

nimble lake
#

what is even wtvSpy?

floral furnace
#

i got tired of dying IL/DN

#

typing not dying

#

ughh

vocal spire
#

<@&328354344313421825> Can I have some help with boss levers? I have done what other mods did with their boss levers, and mine is really glitchy.

leaden hedge
west ridge
copper nacelle
#

change it in the csproj

fair rampart
#

not sure how to fix that red

vocal spire
#

ok

west ridge
#

i did

floral furnace
#

try rebuilding

west ridge
copper nacelle
#

snake case in c# elderC

#

that ain't the csproj

floral furnace
#

camelCase gang

west ridge
#

i've tried it in both of these

copper nacelle
#

show csproj

floral furnace
#

yah need to change the contents bud

west ridge
fair rampart
#

god_mode.csproj my dude

copper nacelle
#

that is still not the csproj

west ridge
#

that was the result

copper nacelle
#

open it in like a text editor

west ridge
copper nacelle
#

scroll down

west ridge
copper nacelle
#

change Include="Class1.cs" to what you renamed the file to

#

and fwiw, if you rename using the rename button in VS it'll do this for you

west ridge
#

thank you

floral furnace
#

this is the part where sid pops in and says "np"

west ridge
#

XD

vocal spire
#

I haven't seen a np yet. Is everything ok?

ornate rivet
#

did sid finally go to sleep

unborn badger
#

impossible

vocal spire
#

Can I get this mod on the mod installer? It is a hive knight mod that adds new attacks and increases the difficulty a lot

ornate rivet
#

I'll add it for you

vocal spire
#

yay

#

I will make a readme

floral furnace
#

make sure its in MD

vocal spire
#

yeah, I wont make the same mistake twice

languid goblet
#

why MD specifically?

#

just curious

copper nacelle
#

doesn't really matter

#

people like md because it's an easy format w/ good formatting

languid goblet
#

oh

west ridge
#

can i use unity's crossplatform input to allow gyro controls?

unborn flicker
west ridge
#

looks cool

unborn flicker
#

Oh also, @fair rampart apparently the new custom knight menu overlaps with the benchwarp menu. If it isn't too much trouble, would you mind adding a button/setting for toggling the menu?

leaden hedge
#

arent all textures for hollow knight kinda big

#

i think actually doing all textures would be kinda ๐Ÿฅด

vocal spire
#

I think that if custom knight had that, it would take an hour to download a single skin

leaden hedge
#

you only download what you change

#

if you only change the knight, you only have to have the knight in the folder

vocal spire
#

well I mean something that changes everything

leaden hedge
#

how slow is your internet

vocal spire
#

can we not talk about it?

leaden hedge
#

i think i download a gig in like a minute maybe

vocal spire
#

Someone from my internet company came and "fixed" it and it got worse

west ridge
#

how do i make code run everyframe?

leaden hedge
#

on heroupdate or make an object with a monobehaviour and void update

copper nacelle
#

coroutine with while true and yield return null ๐Ÿง 

west ridge
#

what's a coroutine?

leaden hedge
#

a routine that runs co with the main one

west ridge
#

how do i use one?

copper nacelle
#

don't actually do that

west ridge
#

ok

copper nacelle
#

for every frame

#

it was a joke

west ridge
#

ah sorry i didn't know

copper nacelle
#

ModHooks.Instance.HeroUpdateHook is the least effort

pallid wren
west ridge
#

how would i make the starting amount of geo for a new save 5?

copper nacelle
#

new game hook

west ridge
#

does doing the new game hook with () instead of (int id) use the defult values?

copper nacelle
#

?

leaden hedge
#

it'll crash

west ridge
#

so how do you make it use the new save slot you select?

copper nacelle
#

new game doesn't take any params idk what you mean

leaden hedge
#

the only things that have an id, send the id of the current slot

vocal spire
leaden hedge
west ridge
#

@jolly oriole i can't see that hook in the radiant docs where do you get this info i'm currious

copper nacelle
#

when Katie

leaden hedge
copper nacelle
#

It does not iirc

#

Save load does

west ridge
leaden hedge
#

randomly when i change skins

west ridge
copper nacelle
#

I haven't had it happen but I don't use custom knight super often

vocal spire
#

are we talking about custom knight bugs?

leaden hedge
#

no

vocal spire
#

ok

leaden hedge
#

goodbye

vocal spire
#

good because I have none

west ridge
#

what's the name of the hook function?

#

it doesn't like it though

leaden hedge
#

any using on

west ridge
leaden hedge
#

any using on

copper nacelle
#

but why

leaden hedge
#

i mean you still didn't explain why it didnt work anyone

copper nacelle
#

you can just new game and player data instance

leaden hedge
#

its any using on

#

you can't do On.x unless you do using On

west ridge
#

so using playerdata?

leaden hedge
west ridge
#

what is on?

#

maybe using modding; encompasses that

leaden hedge
#

you actually don't need anything, but using On would probably tell you why you don't have it

#

and the reason is your assembly-csharp.dll is probably wrong

fair rampart
#

if there's very light logic I can call every second, is it overkill if I call it every frame ? or is there a cleaner way ?

unborn flicker
#

It is very rare that calling something every frame is appropriate

buoyant obsidian
#

Update can handle quite a bit tbh, if it's very light it shouldn't be an issue

unborn flicker
#

That is also true though

buoyant obsidian
#

Just make sure you're caching everything you can like GetComponent should be done in Awake or similar

unborn flicker
#

If you're trying to change savedata or something similar, there are specialized hooks that will make sure your mod is compatible with other mods

ornate rivet
#

@vocal spire sorry I forgot about your mod, added it just now and it's working

west ridge
#

put it in paste bin it filled a lot of chat

leaden hedge
#

return damage * 0; so 0

unborn flicker
#

Your heroupdate hook won't work the way you think it will, also

leaden hedge
#

also pretty sure you have to take atleast 1 damage for it to work

#

0 damage just gets ignored

unborn flicker
#

I don't think the game will accept health greater than max hp, or max hp greater than 11

leaden hedge
#

and it won't, anyway because you need to call actual functions to do it

west ridge
#

oh

unborn flicker
#

You should hook GetPlayerDataInt if you want to edit health

leaden hedge
#

also you can probably just do smth like geo -= damage * (5 ^ Mathf.floor(log5(geo)));

#

to the exact same thing as your if else block but also scale to any amount of geo

west ridge
#

yeah

#

that's far better

leaden hedge
#

i think csharp is Math.Log(geo, 5) for log5

west ridge
#

what does floor and log do?

leaden hedge
#

log returns the logarithm of a number

#

floor removes the decimal part

west ridge
#

does celing remove the decimal and add the place value?

leaden hedge
#

ceiling rounds up yes

#

but you don't want that

#

because log5(4) returns 0.something

#

and will be floored to 0

#

5^0 = 1

west ridge
#

ahhh makes sence

vocal spire
#

@ornate rivet thanks!

vocal spire
#

Also can I update my version of dreamshield coop?

#

wait nvm

#

I need to add more features

lavish chasm
#

What're you adding? ๐Ÿ‘€

vocal spire
#

grimm child coop

lavish chasm
#

Whaaaat that sounds awesome

vocal spire
#

you can make grimmchild rapidfire

#

here is a video of me using it

lavish chasm
#

That's really cool

#

Do you think you'd be able to make a knight coop mod?

west ridge
#

other people are working on that

vocal spire
#

nope! there is a online multiplayer mod in development

west ridge
#

is it peer to peer?

lavish chasm
#

pixel sprites look cool even without the background tbh homothety
@leaden hedge is there a way to obtain these sprites?

unborn flicker
lavish chasm
#

Thank you!

vocal spire
#

That looks cool

west ridge
#

what using lets you use math.floor and log?

unborn flicker
#

System

west ridge
#

ok and the syantax should be Maths.Floor(value)?

copper nacelle
#

Math.

west ridge
#

thank you

#

also i'm not sure why i have void here i thought it would referance geo

#

ohh right thank you

unborn flicker
#

Is there an easy way to check savesettings by save id?

leaden hedge
#

just log will not do what you want

#

it will do natural log

#

i realize you don't understand what that means because you don't know what a logarithm is

nimble lake
#

hey, it's ok.
i don't know what a logarithm is either.

safe hamlet
#

no it's not

#

ok

leaden hedge
#

failing maths FeelsOkayMan

nimble lake
#

hey, it's ok.
i'm a programmer as well and my math sucks.

safe hamlet
copper nacelle
nimble lake
#

idk if you gotta be good at maths to be a programmer

#

but i ain't

safe hamlet
#

depends on what kinda of programming you do

solemn rivet
safe hamlet
#

if you do want to call yourself a game dev programmer

#

then you better know some maths

leaden hedge
#

logs are used all over the place

fair rampart
#

web development pepogrub

leaden hedge
#

for a bunch of stuff

safe hamlet
#

and yea log is like 5th grade shit

solemn rivet
#

wtf is happening here

safe hamlet
#

everyone should know

nimble lake
#

well, they'll teach us web dev stuff in the future, so i'll have to see

leaden hedge
#

someone was doing

if(geo > 25) geo -= 25
else if(geo > 5) geo -= 5
else geo -= 1

and i told them to do 5^floor(log5(geo))

#

they said they didnt know what a floor or log was

#

and then they did 5^floor(log(geo))

#

so i was making a bit of a joke gradow

solemn rivet
#

bruh cringe

#

but yeah, katie gets it

#

also, you don't need to be maths expert to program

safe hamlet
#

yea just look at gradow

solemn rivet
#

just like you don't need to be a programming expert to be a maths

safe hamlet
#

he sucks at maths

#

:^)

nimble lake
#

i've heard of that term "flooring"

solemn rivet
#

^

#

~~ I'll floor u~~ no I won't

#

logarithms can just be thought of as an abstract inverse to powering

safe hamlet
#

but yea gradow we are not talking about being an expert

#

we are talking about having the basic knowledge

#

like wouldn't you agree that a programmer should know what a log is

unborn badger
#

I can add

#

And kind of multiply

solemn rivet
#

yeah, that's what I was gonna get at sid

nimble lake
#

idk if i've heard of log or not

solemn rivet
#

I'm not a programmer, but if I need to code anything I can just do it, or at least know what to look for to learn how to do it

#

same with maths, you don't need to know a lot, just enough to know where to look for or which terms to google in order to solve your query

vocal spire
#

Here is an update for Dream shield coop! it lets grimm child be controlled similar to the dreamshield, and changes some controls so you can make them rapid fire! this also means that it makes the game 3 player. it also removes a feature that no one liked, which saves on file space

west ridge
#

how do i multiple an int with a double and get an int output

fair rampart
#

typecasting

(int) 5.0
west ridge
#

how would i do it in something like thisPlayerData.instance.geo -= damage * (5 ^ Math.Floor(Math.Log (PlayerData.instance.geo)))

#

would it be PlayerData.instance.geo -= damage * (5 ^ (Math.Floor(Math.Log (PlayerData.instance.geo))))

copper nacelle
#

why are you xoring

fair rampart
#

c# doesn't have a power operator

west ridge
#

oh

safe hamlet
#

also Math.Log(geo, 5) please

#

you need the base 5

#

or else it ain't gonna work

#

and yea Math.Pow

west ridge
#

how do i make the base 5?

safe hamlet
#

i just told you

ornate rivet
#

@vocal spire updated dreamshield on installer

safe hamlet
#

np

west ridge
#

like PlayerData.instance.geo -= damage * Math.Pow Math.Floor(Math.Log (PlayerData.instance.geo, 5));?

safe hamlet
#

alright buddy you gotta learn how method signatures work

#

you are using vs, right?

#

when you do something like Math.Pow(, it tells you what you need as parameters

west ridge
#

cannot convert type doube to int

#

from this line

#

PlayerData.instance.geo -= damage * Math.Pow(Math.Floor(Math.Log (PlayerData.instance.geo)),5);

safe hamlet
#

it should be the reverse and cast like jngo said

west ridge
#

i'm not trying to take the micky but what do you mean the reverse?

#

this cast seems to work PlayerData.instance.geo -= damage * (int) Math.Pow(Math.Floor(Math.Log (PlayerData.instance.geo)),5);

safe hamlet
#

those need to be switched

ornate rivet
#

aka it's 5 to the power of the floored stuff not the floored stuff to the power of 5

vocal spire
#

@ornate rivet thanks again

west ridge
#

like PlayerData.instance.geo -= damage * (int) Math.Pow(5 ,Math.Floor(Math.Log (PlayerData.instance.geo)));?

ornate rivet
#

yea

west ridge
#

thank you

#

I know i ask a lot of questions and i appretiate the help

#

it seems to work but the masks and geo doesn't acuratly update until i pick up more money or die

#

fyi you CAN have less then and more then normal hp but having negative means one tap and your out

safe hamlet
#

you got rid of the Log 5 again

ornate rivet
#

lol

west ridge
#

oof

#

this is bazar though

safe hamlet
#

you gotta call orig

#

and update the geo ui

west ridge
#

i have no idea how orig works

#

litterally started modding today

#

how do i use it to update the geo and hp gui?

safe hamlet
#

are you using modhooks or on

west ridge
#

i am

#

using

#
using System;
using GlobalEnums;
using Modding;
using UnityEngine;
using ModCommon;
using On;```
fair rampart
#

How do i add infinite damage ๐Ÿ—ฟ

#

He is using on

west ridge
#

@fair rampart are you trying to make a mod or add a mod?

flat forum
#

infinite damage with debug

#

just press the +/= key

floral furnace
fair rampart
#

Alright thanks

west ridge
#

How do I update the geo and hp gui to accurately show the hp and geo?

unborn badger
#

last I heard the current version of custom knight is broken and doesnโ€™t update geo

fair rampart
#

Does anyone know the name of the full screen popup when you get your first charm?

rain cedar
#

Steal the rando popup it's better

fair rampart
#

does this mean if I want to change the charm sprite I have to do it for every single shiny item that's a charm?

#

Charm Equip Msg?

#

yeah I got that

#

I did set the spriteList of CharmIconList.instance so idk why when you get your first charm with a skin that changes charms it shows the default sprite

#

okay nvm it does indeed work, I just didn't change the sprite for the skin I was using

#

and the paisano who said it was a bug is getting a piece of my mind

dawn cargo
#

is there anyway to temporarily turn off achievements? I'm debugging a mod and don't want to accidently cheat any achievements in.

fallow wind
#

Ummm... Is there a complete documentation of modding api, for future reference

#

Oh nevermind

vocal spire
#

does anyone know how to cancel when the knight is using the dreamgate?

copper nacelle
#

@dawn cargo AchievementHandler.AwordAchievementTOPlayer

dawn cargo
#

thx

copper nacelle
#

i updated hell mod so it's like a decent example for basic global settings done right and some easy hooks for new modders now

fair rampart
#

wow new scenes are actually pretty easy to implement

#

all thanks to Saleh of course

safe hamlet
#

hard casting i sleep

#

change it rn >:(

copper nacelle
#

what

#

oh that

#

if the api feeds a malformed setting i'd prefer it to die than be null and break everything ngl

safe hamlet
#

understandable

nimble lake
#

i just realized something

#

it's possible to make a mod that adds online multiplayer to the game

#

but you can't add levers

ornate rivet
#

what

#

adding levers is very easy

vocal spire
#

Is there a hook for when the knight is using the dream gate?

floral furnace
#

Depends, do you wanna check it everyframe theyre using it or only once if they try using it?

vocal spire
#

Once

#

Either works for me though

nimble lake
#

boss levers

floral furnace
#

red frog just checking but im not sure if theres a dreamgate cState but theres probably an FSM you can hook on

#

literally Redfrog did nvm i cant fucking read

nimble lake
#

ah

#

i remember people having trouble implementing levers

vocal spire
#

Ok

#

Thanks

west ridge
#

is it possable to use using unityengine; so i can reuse code i've made in games i'm making say a scrolling texture that you can change the size of and offset of?

vocal spire
#

Ok

#

I am going to make something else happen when the player uses the dream gate

west ridge
#

if you can then here's a tool for y'all

floral furnace
#

nvm was gonna check, thanks grenade

#

SpellControl right?

#

the dnail fsms are located in spellcontrol, or is it another seperate fsm?

#

oh ok ok im remembering incorrectly then, i vaguely remember them being dumped in a single spell control fsm

vocal spire
#

I never knew how useful fsm viewer was until 3 days ago

floral furnace
#

youre gonna need to master it

#

lots of stuff in this game uses FSM, back then even the enemies health was all FSM

vocal spire
#

ok

floral furnace
#

thankfully they refactored it and made a HealthManager component instead

vocal spire
#

wow

floral furnace
#

too much

vocal spire
#

ok

#

Are you talking about tot?

#

It seems really cool

unborn flicker
#

probably not

#

A few things in playerdata are unused, like waterways key

vocal spire
#

can't you get both using debug?

#

ok

#

ok

vocal spire
fair rampart
#

greetings

#

is the modding of this game hard

vocal spire
#

It depends on what you are going to do in your mod

fair rampart
#

i see

#

must i own game to mod

vocal spire
#

yes

fair rampart
#

ok

vocal spire
#

some people make mods for other people though

fair rampart
#

i wished for a mod with radiance and platforming

#

could that be a possibility?

vocal spire
#

what do you mean by radiance and platforming

fair rampart
#

i heard cool idea in which radiance chase u in path of pain

#

and made me think what if radiance chased you in real boss fight

vocal spire
#

ok

#

It is a possibility

fair rampart
#

are there examples of such a thing that i could see

#

adding platforms and changing boss

vocal spire
#

Idk how to do as much of that, but if you wanted examples, check out the example mods, and look at other boss mods

fair rampart
#

what place

vocal spire
fair rampart
#

thank you

rain cedar
#

Disclaimer: those are not very good examples

vocal spire
#

look in the pins for other stuff

fair rampart
#

very well

#

is there a example of mod for radiance

rain cedar
#

The ultimatum radiance codebase is a huge mess

#

But it exists I guess

fair rampart
#

excellent

lavish chasm
#

I just got an rtx laptop can someone make a ray tracing mod for hollow knight

unborn badger
#

wow you wasted so much money

lavish chasm
#

Nah it was on the cheap

languid goblet
#

how would ray tracing work with hollow knight?

#

i don't really see any point to it, even if you could do it

unborn badger
#

plus raytracing isnโ€™t even exclusive to Nvidiaโ€™s shitty RTX lineup anyways

languid goblet
#

ray tracing is used mostly for tracing lines of light (in 3d i might add) in order to produce more realistic lighting and visual effects

#

it would literally be useless in hollow knight

#

well technically you can use it for 2d but it'd be kinda useless because the whole point of it is displaying lighting and stuff in 3d

copper nacelle
#

not even path tracing ๐Ÿ˜ฌ

#

no global illumination I snooze

fair rampart
vocal spire
#

Awesome!

#

TC should hire you

sick vessel
#

HIRE THIS PERSON

languid goblet
#

ok that's actually sick though

nimble lake
#

TC, HIRE THIS MAN

#

HE'S USING UNITY IN ANY WAY HE CAN

coarse lintel
#

basically dung defender but is more precise and doesn't fling poo everywhere dungo

jade willow
#

I would like to try and experiment with the UI a bit and make a copy of the SoulOrb but I am not exactly sure how I would make a copy of it and give it the same properties to add a value when something happens

safe hamlet
#

you just copy it and give it the same properties

west ridge
#

How do you use unity for modding like that

jade willow
#

thing is I don't know what's its name

#

like how to access it properly to make a copy

ornate rivet
#

jngo add tiso as a boss to that mod

#

mebi made all those tiso sprites for you ๐Ÿ˜ 

jade willow
#

I think I found the class associated with the health UI. I think it is called SoulOrb

#

So even if I know what it is, I can't seem to find the canvas using HKEdit I've looked into some of the first scenes to try and look for the structure used for the health ui canvas but I coyldn't find anything

jade willow
#

can't seem to find an object that contains the type SoulOrb so maybe that's not it

nimble lake
#

I was removing the cooldown for shadow dash on a mod, but for some reason it causes the game to lag every time i dash after playing for some time.

#

anyone knows what might be causing it?

jade willow
#

maybe the lack of cooldown results in the dash functions and other dash-affiliated checks to be called multiple times

#

It could also be starting a ton of coroutines

#

Those are just my theories, I can barely get anything done myself so I wouldn't take what I say as fact

leaden hedge
#

i magically know the issue despite you not posting any code

#

due to my insane galaxy brain, i know exactly what you've coded and why its memory leaking

nimble lake
#

What is it?

jade willow
#

I think you're supposed to post your code now haha

nimble lake
#

Ah, it's just the one line

#

HeroController.instance.SHADOW_DASH_COOLDOWN = 0f;

jade willow
#

does it also create lag if you set it to like 0.05f? or something similar

nimble lake
#

i'll have to check in the future

leaden hedge
#

my assumption is the function that resets it checks to see if the cooldown is greater than 0, subtracts the delta time, then runs some function that probably disables something

#

that your code never runs

jade willow
#

ah yeah that would make a lot of sense

nimble lake
#

I see.

#

I'll have to check sometime what's the lowest I can set it without triggering it. Thanks guys.

jade willow
#

How would I get access to elements from the canvas? I am trying to duplicate the soul orb ui and use the same methods to add and remove souls from its meter as a secondary bar, but I can't seem to find the object I need to duplicate

nimble lake
#

If the cooldown starts as soon as I'm pressing the button and ends before the animation is finished, then it wouldn't be a problem hopefully

#

Yea. Thanks again

#

||Sid this is your cue||

still locust
patent zealot
#

Nicee

atomic mulch
#

THAT IS SO ADORABLE

hasty fractal
fair rampart
#

iTween kinda fun ngl

fair rampart
#

basically an easy way to make things move and rotate

safe hamlet
#

less chad way you mean

jade willow
#

Does anyone have an input on what I'm trying to do? I can't find the step 1 I'm supposed to go through as I don't know exactly what I'm looking for nor how to look for it.
If I had a way to have some form of access to the gameObject I'm looking to duplicate it would be much easier to get things started but I don't know its name nor its components.

What I'm trying to do: Get ahold of the soul orb UI element and make my own copy of it
(would probably have them show up one on top of another and be able to modify the values of the new one when specific things happen in my code) the modifying its value might be simple of I can simply use the addMP func on it. The hard part to me is that I can't seem to figure out what's the object I am trying to get access to.

#

I've looked through the PhysLayer's UI/UGUI and looked through the _UIManager and UICanvas which I managed to find through the previous checks but to no avail

jovial ledge
copper nacelle
#

@jade willow GameManager.instance.soulOrb_fsm.gameObject

flat forum
#

oh my god yes that Hornet is the best

jovial ledge
jade willow
#

Ah! It's in game manager and not hero controller where I instinctively checked, alright makes sense! Thanks!

copper nacelle
#

np

jade willow
#

Is there a more complete version of the radiance.host modding api guides? I always feel like most of my issues stem from not being used to the workflow or not really understanding how to get started on a feature which sends me spiraling through weird hoops only to be told there's already a line for that somewhere

#

I guess downloading source code of other mods doing similar things is always available which is really nice, but I'd love to read up on common implementation methods for various features and stuff to know how to get started properly

jade willow
#

All good, gotta learn by doing! Thank you all so much for the continuous support in the chat, you guys are making it much more accessible to mod this game :D

ornate rivet
#

have you done work with journal entries?

leaden hedge
#

i mean you should try to figure out how all the features work yourself, because figuring out how x works, will help you program something thats x but more complicated better than a snippet will

#

obviously theres a place for utilities though FeelsOkayMan

ornate rivet
#

I assume it's easy because tc wouldn't want to make adding 200 journal entries hard for themselves, right?

upbeat saddle
#

i hate you for making this

flat forum
#

@jolly oriole no

#

bad

#

go to the corner

#

I don't have an passive-agressive enough think emote for this

#

they are?

#

huh

fair rampart
#

I usually assign it to a Coroutine, then perform a null check on that and if it isn't null, StopCoroutine

copper nacelle
#

i mean if you can just drop from the wall it's not hard

flat forum
#

do you at least provide access to infinite soul there

leaden hedge
#

yes

#

public override int LoadPriority() => 9999;

#

i assume loadpriority works

#

if not ๐Ÿ˜ 

jovial ledge
#

is there an easier method to do these sprites or do I continue editing them one by one

#

damn

#

guess I have lots of work to do

patent zealot
#

Amazint

jovial ledge
#

?

jovial ledge
safe hamlet
#

is this from celeste 6c or whatever

#

looks like it and i hate it

jovial ledge
#

what?

ornate rivet
#

he was talking about grenade's video

safe hamlet
#

yea

jovial ledge
#

ok

velvet marsh
#

Hi! I don't know whether anyone had that idea before, but as my first work for my own CustomKnight skins contributions, I got the authorization from Timefixer (DeviantArt) to use their Vessel Maker choices in order to make similarly a "CustomKnight" Vessel Maker. Obviously it'll be even more work than if it were just one skin at a time, but hey, I've always enjoyed challenges, and now that the tutorial on how to use SpritePacker is out, my motivation to do this has been renewed. I hope I'll be able to give some news sooner rather than later!

jade willow
#

After making a copy of the soul orb ui, the original stopped updating its visual when gaining souls and only changes when filled

#

I am guessing there must be some weird stuff going on with the way I instantiated it where it might mess with it

jovial ledge
#

as much as I want to finish my custom knight, I don't think I can do it until I have a better method of drawing it, using my mouse sucks

jade willow
#
//Try to duplicate the health meter
_custSoulOrb = GameObject.Instantiate(GameManager.instance.soulOrb_fsm.gameObject, GameManager.instance.soulOrb_fsm.gameObject.transform.position, Quaternion.identity);
_custSoulOrb.transform.position = _custSoulOrb.transform.position - new Vector3(0, +1.5f, 0);
UnityEngine.Object.DontDestroyOnLoad(_custSoulOrb);
#

I guess i'd need to make it a new instance? But I might be looking at the issue the wrong way

#

I also tried to store it in a PlayMakerFSM variable and use the "Spawn" method, the only difference seems to be that the orb now appears in the center of the screen instead of right below other one's position

#

with the same behaviour seen in-game

knotty monolith
#

custom knight question: you know how goddump breaks the sprites out into folders which contain single animations? are there any duplicate sprites used for multiple animations and if so is there a way to tell which ones they are

fair rampart
#

SpritePacker will tell you

knotty monolith
#

great, thanks

jade willow
#

any idea why the current soul in the soul orb does not appear when the fsm is duplicated, it still updates when it is full and returns to empty-looking when it is not full, it's just the soul inside that is not appearing anymore

#

Oh I just realized, that I might be missing the actual soul content gameobject

jade willow
#

yeah that doesn't make much sense, it shouldn't affect the original since its just a copy so my guess is that the method used to update the soul meter looks for a specific name or component and since there's now two of it it can't function properly

jade willow
#

yup I give up for tonight

west ridge
#

How do I change the vector/speed the shade cloak sends you in radiance host shows you can do acceleration and such but as for direction I think I need to know how to use dnspy to mod hk and can't see anything pinned as an aside is it possable to use unity's Slerp function in a mod?

copper nacelle
#

there's a dash vector hook

#

and you can lerp and such with mathf

fair rampart
#

@fair rampart Does textureHashes on Player even get modified anywhere? I can't find anything that indicates that it does

#

as a result I'm getting an nre whenever another player tries to connect and the server tries to spawn the player

ornate rivet
#

Fennel is finally a boss in hk, Katie

leaden hedge
#

damn

#

ngg2 being worked on really does be like that

#

its probably set by tk2d for internal stuff

#

unless you mean some hash you've made

#

in which case thats your own pepega code

fair rampart
#

troule wrote this tho pepogrub

leaden hedge
#

then troule is pepega

fair rampart
#

this version caches the image bytes so now people can just steal skins by turning them into a png but I no longer care about security

copper nacelle
#

you could already do that

fair rampart
#

this one caches them to a file so now it's extra easy

copper nacelle
safe hamlet
#

now i don't even need to modify the dll to steal the sekiro skin

fair rampart
#

I fixed the issue but now it's crashing from memory usage again pepogrub

safe hamlet
copper nacelle
safe hamlet
#

just get more memory tbh

tawny onyx
#

u shouldn't pay attention on the security, whatever you encrypt the img file in complex way, it will finally decrypt in game and people can dump the data from memory.besides, the code in mod can easily tell programmer how it works

leaden hedge
#

are you 100% sure about that FeelsOkayMan

#

skullgirls would like to disagree FeelsOkayMan

tawny onyx
#

skins protection are not mainly problem for this mod, fixing bugs is

fair rampart
#

anyone want to test some multiplayer?

leaden hedge
#

no

fair rampart
#

ok

tawny onyx
#

maybe i can have a test with my friends to tonight

halcyon condor
#

Are there any mods that aren't included in mod installer?

#

I wanna mess around with other stuff

copper nacelle
#

there are some but they don't work anymore

fair rampart
#

Thought I fixed that, guess I'm pepega.
Skin stealers are going to have a hard time, they have to rename every file and remake the packs by themselves.

copper nacelle
#

what

fair rampart
tawny onyx
#

The lastest MultiplayerMod does work in my machine. here are the modlogs in the server and the client( Host is the server client2 ,and vmware is client1) . clinet's modlog has throw KeyNotFoundException,maybe it is the reason that the game can't respawn the gameobject of other knights while player in the same scene

fair rampart
#

huh, I hadn't considered using a vm to test

#

I should try that out and see if I can't get 3 players active at once, bc that's what I want to test

#

It works by making multiple windows users, but it's suuper glitchy

#

Too lazy to make a vm

tawny onyx
#

auctually i ask my friends to test the mod and unfortunally gain the same result

#

btw, the code 'On.GameManager.PauseGameToggle += OnGamePause' is not work when I pause the game

fair rampart
#

that's not the most up to date version

tawny onyx
#

Mmmm

#

let me have a check

#

oh sorry, I just use 'git pull' and idk why it haven't pull the newly versionmilliS

#

i have never used sandboxโ€ฆโ€ฆ

fair rampart
#

idt sandbox is available on education edition

tawny onyx
fair rampart
#

Windows sandbox you mean hyperv ? Not available on home

still locust
remote zealot
#

Looks cute babyhornet

still locust
#

Heads at different angles are really hard to draw!

Sometimes it looks like a radish๏ผ‰

nimble lake
#

this gif almost hypnotizes me

#

so cute

patent zealot
#

Niice

#

Still looks good

hasty fractal
#

@still locust
I can understand this. T-T
I use Paint Tool Sai 2.

nimble lake
#

there's paint tool sai 2?

fair rampart
#

Tried to run hk on my VM through hyper v and on my desktop at the same time and my computer BSoD GWczoneHotdog

ornate rivet
#

sounds hot

safe hamlet
#

nice

still locust
#

@hasty fractal Sai2 don't support the animation, so I use csp

jade willow
still locust
jade willow
#

My take is that the orb is used as a mask and the white square just keeps going up to fill up the orb, but for some reason now that there are two orbs the mask only functions on the first orb

still locust
#

And I made a comparison

west ridge
#

wait is this multiplayer mod you're working on?

hasty fractal
#

@still locust Ok.

still locust
#

I had just finished like, 25 folders

#

God there are so many actions

hasty fractal
copper nacelle
#

@fair rampart bro receive texture literally gets an atlas don't pepogrub me

jade willow
#

now that I have both UI elements it seems like the new one is the only one affected by the mask making the other orb appear as though it is not filling up, would I simply need to change its sorting layer or am I missing something more?

fair rampart
#

I'm pepogrub ing myself here

copper nacelle
#

ah ok

jade willow
#

Okay by setting some stuff to inactive I now managed to get the original UI to work as expected

#

how does one find the list of available broadcast events? The only one I am aware of is "UPDATE NAIL DAMAGE" but I can't seem to find any mention of that anywhere using dnspy

unborn flicker
#

use the fsm viewer

#

anything can be broadcast

#

whether it does something depends on what fsm you are trying to manipulate

jade willow
#

oh didn't know about that, I'll give it a shot

#

is it the ling under "knight go/fsm dump"?

#

I might just give up on trying to duplicate the UI, I thought I could just update the liquid content to an int value for visualisation, but apparently I should probably just start with creating my own UI elements instead of messing around with that

#

like as a second instance of it and just mention something like _myOrb.addMPCharge(5) or something but I can't seem to make it not a headache

jade willow
#

by trying to make my own canvas I'm getting the following error:

  _canvasContainer = new GameObject("_MyCanvas", typeof(RectTransform));
  _canvasContainer.AddComponent<Canvas>();

"The type name canvas could not be found in the namespace UnityEngine. This type has been forwarded to assembly 'UnityEngine.UIModule'"

Every example I could find online shows me this method but for some reason it doesn't seem to work, maybe the examples I found were outdated. I also added
using UnityEngine.UI

copper nacelle
#

you need a ref to UnityEngine.UIModule.dll

leaden hedge
#

i was snail

#

also CanvasUtil

jade willow
#

Oh! I guess UnityEngine.UI has been deprecated for a while

#

Is CanvasUtils also a dll to reference or is it implemented differently?

#

Also thank you :D

leaden hedge
#

its in the api

#

besides one function that returns the wrong thing, it works ok Kappa

#

and i don't know which degenerate programmed that bug

restive ledge
#

Excuse me @still locust, I had an idea that is up to you if you want to add it or not. Itโ€™s a small suggestion on the hornet skin. The โ€œThorns of Agonyโ€ charm could use Hornets silk area attack instead of the normal thorns. If this is too much effort I understand.

#

It was just a thought

#

Also the skin looks really nice so far! Good job! hollowknice

fair rampart
#

anyone want to test multiplayer

tawny onyx
#

I am free now.have you set up your server ?

fair rampart
#

we're gonna be using hamachi today

tawny onyx
#

shoul i install hamachi too?

fair rampart
#

yes

copper nacelle
#

Real shit

#

Do you not have port forwarding?

fair rampart
#

I'm dumb so idk how to do that yet

copper nacelle
#

bro

tawny onyx
#

you can use frp

copper nacelle
#

go to your router's home page

#

it's really easy

tawny onyx
#

it's very easy

#

you just need a machine with public IP address ,and run frp (or other Reverse Proxy) in that machine and your computer. When people requests the machine, it will auctually requests your own computer

#

here is the guide

copper nacelle
#

i gotta say the router is less effort

tawny onyx
#

new knowledge get! thanks for 56

#

Mmmm, a little hard to search relevant information, would you mind to give me some?

copper nacelle
#

assuming 192.168.1.1 is your router ip you just go there, login, and there's usually some sort of port forwarding tab

#

for me it's under firewall settings

ornate rivet
#

Get your router ip by typing "ipconfig" in cmd prompt and finding the Default Gateway

copper nacelle
#

wow assuming windows smh my head

ornate rivet
#

I assume people who use linux know better

tawny onyx
#

it seems that it will forword all port to 4567

#

so how can people visit your router in public network?

#

linux command is 'ifconfig' as I recall

safe hamlet
#

you just connect to the ip:port

copper nacelle
#

that's just forwarding 4567 yeah

#

But you can do whatever

#

Beneath that I have stuff like a -> a

tawny onyx
#

in our country,the ISP use NAT to modify the ip address, so other people can access my computer with ip address.zote

fair rampart
#

so my brother is hogging the only cable long enough to reach my desktop's ethernet port for his xbox

leaden hedge
#

beat him up

#

and tell him fortnite sucks

copper nacelle
#

i mean you can port forward on wifi

vocal spire
#

The only solution is war

safe hamlet
#

destroy the xbox

floral furnace
#

upload it on youtube with a clickbait title and thumbnail

vocal spire
#

uสopวpฤฑฬฃsdn plษนoส วษฅส‡ uษนnส‡

fair rampart
#

well until I get that ethernet cable I don't feel like trying to learn how to port forward over wifi

#

does anyone want to try hamachi

vocal spire
#

so, hamachi?

fair rampart
#

if you want to test today

vocal spire
#

yeah, I just finished the mod I was working on

#

I'm on a different computer, so I'm going to download it again

fair rampart
vocal spire
#

Thanks

#

Malwarebytes is blocking the sites

#

I don't remember which one I used to download it before

#

Ok, it's downloading

#

now I forgot my password

#

now I made a new account? while using my original email?

west ridge
#

I'm pretty sure port mapping has the same effect with less consiquenses because when you stop running the program it wont leave a port open

#

Though I cant see I know much about it past that

#

.
How do I use dnspy for modding properties like the mothwing cloaks projectory?

leaden hedge
#

you don't use dnspy to mod anything

buoyant obsidian
#

๐Ÿ˜Ž

leaden hedge
#

who is this 753 person

#

and how have they hacked a green name

buoyant obsidian
#

I didn't hack it I modded it... With dnSpy ๐Ÿ˜Ž

west ridge
#

What do you need dnspy for?

unborn badger
#

just to look at the code

#

trying to modify code with dnspy is fucking painful

west ridge
#

So how do you hook an event that you can see with dnspy?

leaden hedge
#

any modding api

west ridge
#

?

#

I don't understand

leaden hedge
#

which part would you like clarifying

west ridge
#

Would you see the event and go say event += function

leaden hedge
#

so which part of any modding api didn't you understand

fair rampart
#

the one that isn't documented

leaden hedge
#

docs are open source

#

feel free to write them

fair rampart
#

yeah I don't know shit about the API either

leaden hedge
#

the docs are fine anyway

#

should be able to build a mod that loads with it

#

and it has references for every hook

#

anything beyond that is your own problem

fair rampart
#

so fine that every newcomer asks if there is any documentation and when answered with radiance.host/apidocs/ they never talk again

west ridge
#

The bit I didn't understand is how you would use dnspy to create a hook to that bit of code I understand you use the mod common api but how you hook this code I'm uncertain is it event += functionyouwishtorun ?

leaden hedge
#

you wouldn't use dnspy

#

you load a mod with modding api

west ridge
#

So how would I find undocumented code ie the mothwing's projectory?

leaden hedge
#

and when you load your c# in an actual IDE it autocompletes

#

what do you mean undocumented

#

its literally there

copper nacelle
#

there's a dash vector hook

leaden hedge
#
        bool flag = this.playerData.equippedCharm_16 && this.cState.shadowDashing;
        float num;
        if (flag)
        {
            num = this.DASH_SPEED_SHARP;
        }
        else
        {
            num = this.DASH_SPEED;
        }
west ridge
#

I've not seen some stuff referenced on radiance host ie how gravity is handled

copper nacelle
#

unity

leaden hedge
#

because its unity

#

i can't possibly

#

in any way

#

write down how literally everything in the game works

#
private void Dash()
{
    this.AffectedByGravity(false);
    this.ResetHardLandingTimer();
    bool flag = this.dash_timer > this.DASH_TIME;
    if (flag)
    {
        this.FinishedDashing();
    }
    else
    {
        Vector2 vector = this.OrigDashVector();
        vector = ModHooks.Instance.DashVelocityChange(vector);
        this.rb2d.velocity = vector;
        this.dash_timer += Time.deltaTime;
    }
}
#

heres the dash code

#

takes like 2 seconds to find

copper nacelle
#

and seeing dash code and stuff like that is what you use dnSpy for

west ridge
#

How do I find it though is what I'm asking

copper nacelle
#

you go to dnspy

safe hamlet
#

dnSpy

copper nacelle
#

open asssmbly-csharp

#

and search for dash

#

I'd highly recommend dnspying a vanilla assembly

#

The modded one is kinda ugly after prepatching

#

But it's not a huge deal either way

#

Same code

west ridge
#

Thank you

leaden hedge
#

most of the complaints i've heard about the docs are

copper nacelle
#

If there isn't an API hook for what you want

#

You can use an On hook

leaden hedge
#

"it doesn't explain how to do X"

#

as if i should just code every single thing you might want to do

fair rampart
#

takes like 2 seconds to find
can you be less of an asshole ffs

floral furnace
#

thats the part you bug 56 to do the work for you

safe hamlet
#

i mean the real complaints prolly would be like docs on the modding api itself