#archived-modding-development
1 messages ยท Page 444 of 1
in rando 3 you can change that
where can I get rando 3? It's not in the drive
pins of #randomizer
Thanks
and make sure to click no when you open the installer when it says to update randomizer 2
@jovial vault
I know I'm supposed to be working on Pale Champion...but
https://youtu.be/XfdVHP4EjBA
Purchase a map of the area? Pale Champion Release Date: Early 2018
literally art
oh heck @solemn rivet ignore this ghost ping I thought you updated the installer but I was looking at really old messages
wut?
oh it's fine
I have decided to rewrite the saving code for the editor and the level loader mod since its so trash but hopefully it will actually work when I do it this time
@ornate rivet i saw that and i love it
lmfao moment
That is amazing saleh
Hi!
I want to create may own modes
I am a programmer
I've already created a few nice ones by modifying the assembly-csharp.dll file
*my own
but you know, this way doesn't give you the ability to do whatever you want
what do you want to do
yep, sorry for that
what do you want to make
try checking the api docs
^
for example, adding more enemies
stuff like adding enemies are doable but takes, a bit more extra work tho
afaik the doc doesnt cover those unfortunately
So there is API...
I thought that they use the source code of the game
to create modes
thanks I'll check it
way easier with the api yeah
@floral furnace I'll do my best

yep, it should be
but does that mean that the source code is not available anywhere?
what papers said
new modder here ye
any new cool knight reskins?
Knightmere
where can i find that?
shrug
I know it exists, not where it is
also I should probably, like
actually do Pure Knight
properly
@kindred sedge i made shade grub but its early access
can i see it ๐
dont worry im not a huge critic
Does winged nosk have a phase transition?
I swear it donโt fly into ceiling until you damage it a bit
it don't[sic]
[sic] yourself
Fine Iโll test it a bit more by waiting and doing nothing to see if it flies into the ceiling or not
thanks babe
is it the same with normal nosk?
normal nosk seems to starting the ceiling attack before it reaches half hmm
oh ok so it is just over half
at least in godhome
is this a consistent value not a percentage?
Do you know Nosk's scene name?
mimic_spider i think
no that's his name
deepnest 4x
thank you
iirc
kk thanks!
Hey guys, I'm looking for a project to take on at the moment, and I was thinking about some Hollow Knight related things.
Can anyone tell me what's the state of modding at the moment? Is it possible to inject any code ? If not what are the limitations? Thanks!
yes you can inject code
the state of modding is probably somewhere on the east coast
East coast of what
U.S.
O ok
Didn't know if you were gonna say like Australia or Mars or something ๐ค
@ornate rivet Thanks, is there any sort of documentation for that somewhere please?
๐
Thanks!
I'll look into all that, mostly needed a starting point, and that's a good one
Anyone has already looked into coop (online and local) mods?
a bit
Thank you!
Way easier to get it up and running that I expected, that's great
multiplayer mod when 
indeed
Hornet is hongry tho
JjajaiJjansnnslLllamamMnanamamMmmam
are you ok
np
why are you like this
I ask myself this every single day
I ask myself that, like, once a week. I keep forgetting. I should set an alarm on my phone.
i keep on waking before my alarm and then freaking out while cooking
Component.GetComponent is the same as Component.gameObject.GetComponent right
Yes
ok good
i have gotten rid of like 20 of those

is the parent of the transform of a component attached to a go the same as the parent of the transform of the gameobject of a component
Yes
perfect i also got rid of 20 of those
Component.transform is the same as Component.gameObject.transform
It took me all day but I managed to finally convert monobehaviour type data from assemblies to a typetree
Hello everybody! I've been working on getting the tracker mod working with dreamers, and got it working! I plan on trying to get more items added to it in the future, like nail level and the love key. I'm kind of a programming noob, so please be patient with me! The dll will need to be moved into the mods folder (commonly found in "C:\Program Files (x86)\Steam\steamapps\common\Hollow Knight\hollow_knight_Data\Managed\Mods" on Windows). The updated playerdatadump.dll can be download from https://drive.google.com/open?id=1BBQzGg9t5DIrKAQ6y5Dn-sMMgnoBedT5
congrats
Well.... Now I feel like an idiot. I've been doing a randomizer run, I can't find the Tram Pass or Lantern anywhere, so I avoid Deepnest thinking the Lantern is needed everywhere, and search for the lantern everywhere I can look (including, ironically enough, Joni's Blessing after doing that room in darkness, and the Stag Nest doing that skip for the first time) Then I realize I can do 4 items in Deepnest (Tram Pass, Nosk Ore, pogo-Vessel Fragment, Sharp Shadow), find the last dreamer at Sharp Shadow, and sure enough, the Tram Pass is at World Sense, and the Lantern is at Hiveblood....
Ok buddy
hello does anyone know how to get the randomizer mod?
ok buddy
Sure, pal
modding being used for modding? wild
radical ๐
hello
i play on 1.3.1.5 and i tried to install ModdingAPI (beta) . It works, but it wont load HPBar mod
Buy the game
yeah, i'am ashamed for pirating it. I've played for about 5 hours now and it's amazing. I'll definately buy it
dang guys unity is a pain in the butt - it crashes without telling you whats wrong if you mess up one thing
the component thing is really hard to fix... I could push out a fix to the repo that would disable component checking but any gameobject copied could only be moved which I guess is fine for now
haha
As a guy who plays games for money
ok buddy
as a guy who plays games for self fulfilment
"no dude I pirated the game to test to see if I liked it or not, that's why I spent so long downloading mods"
well
go get like Visual Studio or smth
add refs for the things that get mods to work
how do i even mod the game? im new to modding and dont know what to do
like, Modcommon and the API, mainly, I think
and then just
code

can you be more specific if you want better answers
anything specific you wanna make?
do you wanna make one or do you wanna put existing mods to your game
well not make i was hopping to install or am i in the wrong chat for that?
so install mods?
yes
...pick your words more carefully
sorry i wasn't thinking straight ill make sure to next time
no, no problem
though if you simply wanna install mods, modding-help is the right channel
I thought you wanted to modify the game
anyways, uh
here you go
this installs the mods you need
for you
thank you so much
ok

how to install custom skin mod ?
๐
ty
yw
Hello modding pros
Does anyone know
if it's possible to setup a minecraft server on linux?

well you see mine is a bit of a special case
which makes things quite hard
56 knows about this
ftb ๐
@ornate rivet what was the terminal command that could be used to install stuff
it seems like I don't have apt-get
that can be easily googled
Y
You don't have any package manager?
no
Imagine having to go into the browser to install something
Oh I see rhel is red hat
So yum is the package manager
@dark wigeon yes but the problem is that I lack root perms to do anything nice
like sudo stuff
And you tried this?
hey that actually sounds good
I'll try that
@dark wigeon is it this perhaps
what I should download
How about you don't install things on servers you don't own and don't know anything about
Whichever one the server needs
@simple python I own this specific part of the server which I can access
64 bit Linux tar gz
the thing is that I can't access root, just this one dir
Assuming it's 64 bit
Then do 32
I don't see that option
x86 processors are 32 bit
oh right my bad
my pain
wtf you actually have to have an oracle account to download
@dark wigeon do you know if this could be done with openjdk?
I mean I can try to use yum to install openjdk
but yeah I'm not sure if I want to mess with this
trying the command without sudo gives an error
Nah just do openjdk or download a newer java
Do you have to have java 8?
I know they only make you login if it's an "unsupported java version"
It really shouldn't require anything more than sudo yum install java-1.8.0-openjdk-devel.
What's the error message saying, Hal?
Apparently doesn't have root
You only need to add your own account to the sudo group in order to use it.
If you can't get that working apparently yum has a download only plugin
hey, @dark wigeon
did you understand what the Unity problem was?
sorry for constantly bothering yo
u
No it's fine
Sadly no but I'm gonna go on a comparing run
Two files that are seemingly the same create two different results, one that crashes the game and one that doesn't
Have no idea why yet
oh?
It's unity so these things aren't unexpected. I have to see whether things like the filename or the order that components are have something to do with it
It would probably be easier for me to open up a debugger and breakpoint the assembly tho
I'm traveling right now but I have hk on my laptop
Missouri
Wow nice
Also big rip I thought I copied the new editor code to my laptop but instead I somehow copied unil2cpp
I got it narrowed down to an error in SerializedHeader. Not sure why it would be crashing as I copied the headers from the fixed one to the broken one and it's still doing this
hey, if I buy the game on GOG will the modinstaller work as it's DRM free?
because I've had some issues with mods on the GOG version
versions of other games*
Yes. If you use it correctly
So no difference between installing mods on steam and gog version?
does anyone know how to make my own mods? I have programing background so you don't need to worry about that
There's some resources on it, but they're pretty outdated
The basic idea of it is you need a Mod class with an Initialize method, where you can hook onto various events in the game
Something like
public class MyMod : Mod
{
public override void Initialize()
{
ModHooks.Instance.HeroUpdateHook += Update;
}
private void Update()
{
Log("Mod running");
}
}
dnSpy is a pretty invaluable tool for looking at the game code https://github.com/0xd4d/dnSpy/releases
As well as the FSM viewer here https://github.com/nesrak1/HollowKnightFSMView/releases
Since most of the game logic is done using Playmaker (Visual FSM tool) rather than actual code
The main assembly is at Hollow Knight\hollow_knight_Data\Managed\Assembly-CSharp.dll
You shouldn't make edits directly in there, though
We use an API that loads any assemblies in the Managed\Mods folder
Idk how up to date that is
ยฏ_(ใ)_/ยฏ
But it's better than nothing, I guess
incredible
I guess I could fix this but that's a lot of work
thx
ok.. so i opened up Assembly-CSharp in dnSpy but it doesn't let me type anything
While you can make edits in there, you shouldn't
Any mods you make that way will be incompatible with every other mod
It's still good to have to see how things work
There is an API you can download here which replaces the Assembly-CSharp.dll https://drive.google.com/drive/u/1/folders/0B_b9PFqx_PR9X1ZrWGFxUGdydTg
From there, you'll want to make a new .NET Framework 3.5 class library project in your IDE of choice (Visual Studio/Rider)
Add a reference to that API and probably Playmaker + Unity
Then make a class similar to the example I put above
Build it and place it in Hollow Knight\hollow_knight_Data\Managed\Mods
so is play maker another thing i need to download?
No, it's part of the game
In the Managed folder there are tons of .dll files
Playmaker is one of those
ah, i see
It sure was fun watching your morale steadily decrease as this conversation went on Sean
so when i'm referencing things, where would i find the .dll file for unity
or is it just unityEngine.dll
There's a ton of them that you might need, depending on the mod
They're all in the Managed folder
A good start is UnityEngine.dll and UnityEngine.CoreModule.dll
Or something similar to that, I'm not sure exactly on the name of the core one
alright thanks alot
what exactly does the override keyword do?
wat would happen if i simply put public void Initialize
Override means that the method exists in the base class, and you want to replace it
This can only be done on methods marked as virtual or abstract
public void Initialize wouldn't compile
I think it would
But there would be a warning telling you to use new
The point of overrides is that you can call code in the super class without having to know what the super class is
So the API just knows that everything is a "Mod", but it can still call code in whatever the exact Mod class is
yeet skeet
yeah that one is a warning too
In any case that's not a thing people should do
yeah
so it appears that initialize is not a method in the base class for me. was i suppose to inherit some stuff from a different class?
Modding.Mod
If you left off override, the API wouldn't call your version of Initialize and would just call the original virt method but if you were to do this.Initialize() it would call your method, and if you did ((Mod) this).Initialize() it would call the original I think
but don't do that
I don't think I've ever had a good use case for the new keyword on fields/methods
yeah same
what am i doing wrong?
@copper nacelle How far did you get on the mod settings menus?
Not very
Unfortunate
I was making the class actually readable first
Like code cleanup?
yeah
Which class?
ModManager
like replacing the FindSelectableOnDown stuff with a loop
this is the same thing but w/ two vars changed
Lmao the 100 line try/catch in the current one
oh yeah and that
This class is bad
Yeah
I think I added that nested one a while ago
Because it made no sense for the entire thing to die if a mod threw
yeah
The try catch at the top is also unneeded now because I fixed UIManager.instance
I should probably move the obsolete Mod<> stuff to a separate file
that would be nice
I want to get rid of all the giant commented blocks
that's what version control is for
I kinda want to do a weird attribute thing but idk how useful it would even be
Something like
[SubscribeEvent("HeroUpdate")]
private void Whatever() { }
Not as a replacement to the current thing, just another way to do it
Maybe two versions of it
Where one specifies an IToggleableMod type
And it toggles it
Can't just search for a toggleable mod in the assembly because of QoL
I was kinda worried it wouldn't like this
Because it wants compile time constants and maybe it wouldn't recognize nameof as constant
But it works 
attribute type restrictions 
would it be possible to make a randomizer for just the coliseum of fools?
I don't see why not
cause i think a ton of people would love that
then do it
I have this working now
I have no idea what the behaviour will be for a non-static method because the subscription method doesn't take an instance

my game died
it appears to have been qol
Oh it's cause I have implemented the settings thing there
can't you make Mod abstract?
yea then you can make it (Initialize) not virtual so it must be overridden
Yeah
yea not a good idea then
In other news I'm home again so I'm about to test this attribute on an instance method
I don't think it'll work
It's dead and I don't even know how
There's no errors anywhere
Nevermind I've solved the mystery
I am stupid
It gets a method argument length mismatch
I assume this is because instance methods have a hidden 'this' parameter
yes
Terrible
protected 
this is true
I'll try it
Nevermind I don't think it's worth trying
There's a ton of IntPtr stuff in Delegate
That gets assigned from extern code
unfortunate
Idk what it's meant to be to make it work
0 0000 nop
1 0001 ldarg.0
2 0002 ldftn instance void goodbye.goodbye::SceneChanged(valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene, valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene)
3 0008 newobj instance void class [UnityEngine.CoreModule]UnityEngine.Events.UnityAction`2<valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene, valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene>::.ctor(object, native int)
4 000D call void [UnityEngine.CoreModule]UnityEngine.SceneManagement.SceneManager::add_activeSceneChanged(class [UnityEngine.CoreModule]UnityEngine.Events.UnityAction`2<valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene, valuetype [UnityEngine.CoreModule]UnityEngine.SceneManagement.Scene>)
5 0012 nop
object native int
ok
yes
Oh
There's 10 of them
I guess I need to find the right one
You mean the ones with
object firstArgument
```?
Amber says hi
hello
It's a mismatch even with that
aww
understandable
HI AMBER
Ok my two test files are almost identical, the only difference is the order of the assets... Sadly I left the program to easily change the order of assets but I swear if unity is crashing because of the order of assets...

Yeet Bois it's the "preload table" whatever that is
Apparently if you don't put monoscripts in the preload table the game crash
Kids these days
Because we made a server smh
what server
man, i wish the enemy randomizer was more serious
dont let khan in
i cant code sadly
this is knightmere
Someone dm khan i am on mobile
maybe a really stupid question, is there a way to mod the switch version without homebrew? probably not.
no
just so you guys know, it took three days to produce this bit of code
it do be like that sometimes 
can relate
imagine coding ever
This tbh
imagine being adrain
Why would you be a drain
On the economy
mood
also, who mentioned this channel not going offtopic?
@solar jacinth you feel better now?
yessss
can you not
its already over but okay
@copper nacelle I pushed the attributes but they're very minimally tested
Only tested the happy paths
So don't update it on the drive
alright
Oh yeah
What do you think of checking if the MonoMod hooks have already been generated and then not recreating them if they're already there
It'd speed up build time
The only thing I'm unsure about is checking if the hooks are up to date but it's not like hk is getting updated anymore anyways

Terrible
Should I enforce readonly for the subscribers?
The only thing about that is then you can't assign them in Initialize
readonly makes sense but not being able to assign them in Initialize is non-optimal
Yeah it's not great
Because right now I'm sure you can break it by changing the instance
Wouldn't unhook properly
Also realized I don't null check the instance
That is a bad thing
You could maybe add an event for the OtherClass which fires after Initialize on the mod gets called so you can keep stuff in order
That's not a bad idea
Something like ISubscriptionEventReceiver with Subscribe and Unsubscribe
Optional to put on your thing
How does GC work with events, even?
Like if the method in some instance get hooked, then you lose all references to that instance
Do the hooks keep it alive?
yes
I've had it happen with a mod
It was on a behaviour and then the go got destroyed
That is a very bad thing to allow to happen
Incredible
Well I'm not gonna try to do anything about that
If you change the instance of a subscriber, not my problem
understandable
It should be fixable though by caching the delegates used and unhooking if the instance changes
But that's a lot of work to prevent people from being stupid
yeah
No null check on the instance should actually be mostly fine
2/3 uses of this are in LoadMod/UnloadMod which already have try/catch
This one is a problem though https://github.com/seanpr96/HollowKnight.Modding/blob/master/Assembly-CSharp/ModLoader.cs#L444
And if one event in there breaks none of the other ones happen, even if I try/catch the whole thing
Which means one mod can break another one, which is not ok
So I need to make the method actually safe 
yhtsi

Do you guys know how to use mono cecil
I mean like more than just add two lines of assembly

Any easy way to convert typereference to a c# like string
Like an assembly qualified name?
For example List<T> is called List`1 in the assembly so I'm stripping the last two characters and looping through generic parameters
It's List`1 with the c# string too though
What you mean
System.Collections.Generic.List`1, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Well yeah it's called List`1 but when written with code that type is List<x>
o
ie List<string> stringList;
string[] parts = tr.Name.Split('`');
return parts[0] + "<" + ','.Join(parts.GenericParameters.Select(x => x.Name)) + ">";
i guess
wait
Boi

` just tells you how many not the actual type inside
Yeah that's exactly what I'm doing right now
I don't like it but I guess it works
I don't think there's a less cancer way to do it
Trying to generate cs files unity can read to parse monobehaviours
what does the omnes deorum mod do? the mod manager has a ton of mods but doesnt explain what any of them do lol
Mod summaries
why
It's the same variable and I don't assign to it anywhere
Other than initially, I mean
is it complaining about it being null
Yes
So, say if i wanted to summon some Hatchlings (Thingy that comes out of the glowing womb charm). How would i go about doing that. Is there a class or something that just handles all the game objects?.
There's a child gameObject on the knight called "Charm Effects"
that has a PlaymakerFSM called "Hatchling Spawn"
which has a state, "Hatch"
which has a SpawnObjectFromGlobalPool action
which you can take the hatchling object from
something like
UnityEngine.Object.Instantiate(((SpawnObjectFromGlobalPool) HeroController.instance.gameObject.Transform.Find("Charm Effects").LocateMyFSM("Hatchling Spawn").States.Single(x => x.Name == "Hatch").Actions[2]).gameObject.Value)```
Note that there are extension methods (static methods which are invoked similarly to instance methods) in a library called ModCommon which makes dealing with FSMs a lot easier
Which would just make it
UnityEngine.Object.Instantiate(HeroController.instance.gameObject.Transform.Find("Charm Effects").LocateMyFSM("Hatchling Spawn").GetAction<SpawnObjectFromGlobalPool>("Hatch"))
thanks man
will bonfire mod work with item randomzier?
Probably
but you want your geo in item randomizer though
wait i thought randomizer changed vengeful spirit location
it was in the shamon nest as usual
all i did was the normal route, but i installed it via the mod installer
the one that says randomizer 2
did you get fury
and i picked up the fury charm in the beginning, then went straight to gruz mother and fallen knight
and did you get the screen with all the options
then it wasn't randomized
hmmm
i think there's a thing rn where you have to go into the menu and then go out again for it to show up
all i have activated with it are custom knight and fragile strength for nail arts
okay
start new save
i started a new file
and i got a menu
what does restrictions mean?
like if i activate all bosses will it not let me win till i kill them all?
awesome
what does all the stuff on the left mean?
i clicked the readme in the mod installer but it says one doesnt exist
spike tunnels?
salubra notches?
the stuff on the left is skips that are in logic
and salubra notches is you get salubra notches as soon as you have enough charms to buy it
use the easy preset
tbh i just want the items randomized nothing else changed
okay
so should i turn lemm sell all off first?
lemm sell all just makes selling relics less tedious
no
oh
salubra and lemm QOL options are just nice to have
keep all the qol stuff on
thats a nice QoL
the skips on the left are just HOW items are randomized
if you know speedrun shit or if you don't
so just use the easy preset
i turned all bosses all items all skills on cause i wanna 112%
okay i will use easy
salubra notches makes it so that you dont need to run back to crossroads whenever you get enough charms for a new notch
so its just nice to have on
is the room randomizer on the mod installer? (not gonna have both on just wondering lol)
it's not
room rando doesn't exist
theres only area rando
Whoops
I fixed the navigation though
So you can actually use the menu without mouse
Oh the things in the mods menu have to be clicked
Unfortunate
But there a room rando in the pins
no, that's a spreadsheet
Hello peeps! I've updated the tracker to include love key and nail progression. I've had to make a new webpage since this is adding things to the UI. It can be setup from https://kingkiller39.github.io/HollowKnightRandomizerTracker2.8/Index.html . https://drive.google.com/open?id=1BBQzGg9t5DIrKAQ6y5Dn-sMMgnoBedT5 Has the new playerdatadump.dll. You'll also need to update your streaming program to point it to the new url. Please let me know if you have any questions!
The debug mod is causing my game to crash, what's up with this?
i dunno man
It causes a loading bar to appear on start, and crashes when its full
Does it crash with the dialog pop up or no?
Nope, just loads the bar and closes the game
I occasionally get a second or two of the intro music, but thats it
dont tell him hell steal the controller
Debug mod doesn't use the preload system so it won't cause a loading bar
The bar only appears when that mod is enabled, and doesn't when its disabled. I do have other mods active but none of them are causing the bar
Yeah
Oh yeah I never actually told you Sean. The problem I was having with area rando was precisely that: having the controller plugged in
If I loaded the game with it out would crash, and without it it would load fine, and I could just plug it afterwards and play normally
Weird
Yeah
I mean, it used to happen before, but only in save and quit
But with the new api it happens while loading the title screen for the first time too
That's it then
But I don't think it merits a fix tbh
Afaik I'm the only one who's had this issue
And I don't even play hk anymore
I do have a controller in and I am also using the two Randos. But only enabling debug causes the bar.
Probably means item and enemy
It works for some people
Randomly
but those people still cant enter rooms with collector from bottom
Enemy tends to work for me, only some problems in the arena.
I will soon
โข
So the bar appears, but it works, not crashing
But now something weird is happening
What
Okay, so it seems randomizer 2 for items is causing the loading bar. What's weird is
Wait
What's weird is it wasn't doing it before
What purpose does it serve?
That's fair
Randomizer requests objects from the game at game start
The load bar happens while the API is finding those objects
What a pain, but I think soft-placing isolated transitions works now
Here it decides to force Queen's Station connected to King's Pass. However, it previously had assigned Queen's Station to the blocked off Kingdom's Edge entrance which usually leads to Hive, so to make sure that remains accessible, it reassigns it to the top left Kingdom's Edge entrance, which was unused up to that point
No ui mod?
any debug
thx
How come it can't recognize ".LocaateMyFSM" and and "SpawnObjectFromGlobalPool". Is there something i forgot to import or reference?
Umm, Transform.find finds a transform not a gameobject
gameobjects have fsms not transforms
@glad basin
@glad basin yeah it'd be .Find("Charm Effects").gameObject
and you import SpawnObjectFromGlobalPool
that's why it's underlined unlike LocateMyFSM
Unfortunate
The problem has been resolved
I was missing a ref keyword
All these randomizer bugs are 1-2 line fixes
nice
So I've fixed the shop prices changing on quit, the lag when you hit spikes, and the additive items disappearing
I don't think there was anything else
56 do you know what the version number on the drive is? I never remember if I've already incremented git past it

Is ModCommon hardcoded somewhere in the installer or is there actually a system for specifying arbitrary dependencies?
Gradow you are ruining my life
Yeah you're right
ModCommon is hardcoded for some reason but there is a system for other dependencies
Are you guys ready for data? 
I have computed the distribution of 200 starting entrances (connected to King's Pass) for area rando
Easy mode:
Hard mode:
That corresponds to:
Town - Dirtmouth
Fungus2 - Queen's Station
Deepnest_01 - Fungal Wastes, Moss Prophet entrance
Deepnest_East - Kingdom's Edge, Tower of Love entrance
Abyss_05 - Palace Grounds
Ruins2_04 - CoT, Basin shaft entrance
Ruins1_23 - Soul Sanctum, upper entrance
Ruins1_09 - Soul Sanctum, lower entrance
Crossroads_50 - Resting Grounds, Blue Lake entrance
Mines_02 - Crystal Peak, Dark room entrance
crystal peak dark room out of kp 
oh, by "dark room" I meant the right side of the Crossroads dark room
ah
though obviously that start always forces the CP dark room, I suppose
wtf
I tear up everything to make more starts possible, and I end up with this distribution 
cursed

By quadrupling the randomization time, I have performed a miracle and taught the randomizer that Isma's Tear exists
Reference:
Tomorrow I will return and perform my next miracle when I reveal that Desolate Dive also exists 
i got isma's tear on my first one
nevermind, I figured out how to fix it just now. I'm pretty sure this should be all possible starts now, excluding anything too absurd
Ruins1_01 
what is the most absurd start you could have
Is there a preferred version of hollow knight to run the randomizer on? As in steam vs drm free
Nice, thanks. I own it on switch which is probably less than moddable
Isnโt someone making a level creator mod?
other than pirated versions
Eyepatch&grogg% speedruns on 1.0.0.5
Are there any mods for the game on Xbox one?
i dont think so
Oh :/ thanks
sorry about the wait on the level editor stuff
lots of stuff going on plus unity isn't being the most helpful
components still broke I guess, this time it's the evil type tree 
dont worry man you dont need to apologize
i have installed mods before on hollow knight
Ohh man , they really make it crazy fast , good thing is they get rid of ghost . Health bar mod is also used because after losing a lot of time I was like Mo...

I just didn't know you released an updated version
wow is that the GOD GAMIN YouTube rebrand
lmao god gamin , i know that channel , he spammed "u fat" to the hollow knight boss, kinda weird and hes indian btw
kthx
electric art
u
Thatโs a pity there are no mods for hollow knight on Xbox one, there are some boss fights that you freak out to finish, mostly the ones in the dream world
Itโs cool to keep trying again and I believe thatโs the purpose of the game but I get so frustrated after a thousand unsuccessful attempts
man i wish there were mods on 'x console'
i wish there were mods on switch so all the switch people could come here :)
just get a computer. it's a console, but better!!!
And with it, you can do stuff that a console can't!
Incredible
anyone know why GetAction can't be resolved
Why do you have a dot after getaction?
it should follow the format
gameobject.GetAction<Action_Name>("State Name", index)
@copper nacelle
I just did my bi-eternally checkup of
and uh
new Hook's target instance is optional and only to be used for instance methods when needed
otherwise it's used when passing delegates
and regarding delegates,
I'd stay away from ldftn on mono unless it's needed
given that the result of ldftn can vary depending on whether the method has been jited or not
which is not the case for .NET Framework / Core btw :/
oh fuck
it ade
i think so
is tolo masculine or feminine
yes
ask saleh
i think he said hes porting ss stuff
dont take my word for it
hey look saleh
Uh I said I would give hornet boss fight SS abilities
maybe if i become competent enough ill port a boss over idk
in fact i thought of maybe porting knight into ss and vice versa but sounds like it would be another pain in my lower back so no
ะกะพัะท ะฝะตัััะธะผัะน ัะตัะฟัะฑะปะธะบ ัะฒะพะฑะพะดะฝัั ะกะฟะปะพัะธะปะฐ ะฝะฐะฒะตะบะธ ะะตะปะธะบะฐั ะ ััั! ะะฐ ะทะดัะฐะฒััะฒัะตั ัะพะทะดะฐะฝะฝัะน ะฒะพะปะตะน ะฝะฐัะพะดะพะฒ ะะดะธะฝัะน, ะผะพะณััะธะน ะกะพะฒะตััะบะธะน ะกะพัะท! Music: National Anthe...
sigh
;help
is there a way to store a reference to the position of an object and not just the position's value in c#?
I think transform.position is a property so idts
You could try storing a pointer to the Vector3
I don't think a ref local would work but you could try that
ok
You could store a lambda pointing to its position @ornate rivet
Where should I ask randomizer help questions? Like actual gameplay related? Is wanting help enough to assign myself the speedrunner role and ask in randomizer races or Can I ask here?
You need the racer role not the speedrunner role
Oh
Which is fine, anyone can have it
You might get periodic pings unless you leave the role after
Also it's taking like 5 minutes for me to upload randomizer to the drive
Not very related but somewhat
๐
yusuf you are ruining my life
yusuf continues to ruin all of our lives
I have a modding idea
However, I am too lazy too make it
Unfortunate
F
At least I can go to sleep with confidence that I will wake up and understand dessins d'enfants
The fact that I have basically no Galois Theory and barely know what a Riemann surface is should really only be a minor obstacle after a good night's sleep ๐
homothety i have no idea what most of these words mean, but i wish you luck
@bronze temple I knew about it being optional; I was just using it as an example because MonoMod does things well so it's a good place to look at how to do things.
I asked this at #archived-modding-help But I was told to ask it here
I'm trying to make it so Fury of the fallen would always be activated even at full hp
I tried using cheat engine but that turned out to be pretty hard
cheat engine 
There's an FSM on a child go of the knight
the child go is Charm Effects and the fsm is Fury
this is true
; what do you mean by that even
Also changing your nail damage is not the same
You don't get that red glow when you attack
do you want the thing on the edges or the nail color or both
uh
the way it looks like in the game
when fury of the fallen is actually activated
@copper nacelle I think he just wants to change the rule when the charm is activated
like <10 hp instead of =1hp
Yeah I know
But if he didn't want the actual overlay, implementing the actual effect of fury is way easier
@nimble lake So there's a field on HeroController called instance, containing the instance as it is a singleton
There's a field on that which all MonoBehaviours have (which a HeroController is) called transform
It's the same as the transform of the gameObject
I havenโt modded HK in a while so itโll take me some time to remember how to do it
On the transform is a method Find, which locates child transforms (non-recursively)
You can find the transform called Charm Effects
then get its gameObject using .gameObject
use .LocateMyFsm("Fury") to get the fury fsm
and then change that
the state you want to change is Check HP
You'll want to change less than and greater than to null on the last IntCompare
then add your own IntCompare for the player's max hp
You'll want to get it using GetPlayerDataBool like the one in the pic




