#archived-modding-development
1 messages Β· Page 41 of 1
Yep
that never happens to me tho
And now I don't have the API installed anymore because Steam updated everything to fix the missing executable
Thanks, avg
lol
delet avg
use window's defender
wait
is that really avast?
it doesnt look like avast at all
Technically no, I suppose
i think that's a different antivirus
Avg is a subsidiary of avast
I haven't used an antivirus in over a decade
I also haven't gotten a virus in over a decade

also haven't been to shady websites in over a decade
Don't vms like take more space?
why do i care about space?
so much space 
lol
my file server has 15Tb of space and 32Gb of memory
bcuz anti viruses are bloat ware that takes more space

so in turn
lol
VMs take up more space?
I need to buy more storage
ah
a TB is easy to fill
And recordings

Yeah but what if I need everything?
why drop items when you can simply increase the size of your back pack?
i have 2x1TB SSDs in my main rig, 1x2TB HDD. then the file server is 15TB and it's about half full
but that rarely ever happens
you always have alot of garbage you need to clean from your PC
unless u clean 24/7
and alot of it would be exceptionally time consuming to put back
i have 7-zip and i still use winrar smh
@rain cedar - so how do you feel about resharper?
I disagree with like half the defaults, need to configure it some more
haha
Seems cool, though
which defaults?
the one I always change is it's default of using "var"
i hate var
That and uppercase field names
oh, yeah, that's industry standard
public fields are Upper case, private fields are _lowerCase
I usually only put uppercase on methods
yeah, just saying, if you look at pretty much any large OS project, that's the way they are done. which is why it's the default. at some point someone decided that's how it was Β―_(γ)_/Β―
but yeah, var is annoying. I think it leads to ambiguity as to what it is you're creating
i used to love it when i was a baby programmer, but then found it made for really hard to maintain code
Yeah I've always hated stuff like that and auto in c++
though, sometimes what i'll do, for something like a dictionary is do this
Oh yeah speaking of dictionaries resharper keeps telling me to make them readonly
Which is really dumb
var something = myMethod.GetDictionary();
Since that doesn't actually do anything
then do alt+enter on the var and have it switch it to the full declaration
eh, it kind of does
dictionaries are immutable
so if it says it can be readonly, it means that it was only created in the constructor or only used in that method. making it readonly means you can't accidentally overwrite it
it will always suggest readonly on anything where it finds it was only ever created in the constructor or changed so that you don't accidentally re-assign it later
I guess that makes sense
so, if you were already using the dictionary correctly, then yes, it does nothing
it's mostly there so that you don't accidentally break it down the road
i can't remember if VS vanilla does it, but on public methods/fields/classes, if you do /// above the method/field/class it'll automatically stub out xml docs for you
I could still break it by calling clear for no reason and that seems just as likely as randomly reassigning it
that is true π
also, it has a built in decompiler. though dnspy's is vastly better, it is convenient if you don't have dnspy up at the time
I see you are advertising on reddit now @buoyant obsidian
heh, reddit, i wish i had time for reddit
What is this lightbringer
Also i dont even see how to get to the steam workshop for hollow knight
There's no workshop for Hollow Knight
Yeah thats what i thought
You can find mods in the pinned Google Drive folder
or you can find my mods here: http://www.moddb.com/members/753-mods/mods
Neato
Sorry, casual reporting in. No clue what anything is or how PC stuff works
So thanks for the info
It should be easy to install if you read the readme.txt
there's also a video talking about installing bossrush, but it basically applies to half the mods or more that are out there
As ashamed as i am to admit it, if its anything like Minecraft mods i know what im doing. Just put a file in a folder
basically, yes
though we go the extra effort
and put it all in a folder structure so it's just drag folder into game folder->win
Neato
Guys i need your help?
well
the text replacement would be pretty easy
right to left, that'd take some investigation
as i said, it's a looooot of text tho
yeah, we're not talking about a small amount of translation here.
i'll see if i can dump the english strings out to a file
to give you an idea
i'm pretty interested in that as well
English Language Assets
took a bit
since it's all carved up into like 35 files
but here's a single unified XML
there are 3504 different entries
so
have fun
@fair rampart @noble trout
still don't know how to do right to left text, and honestly unless someone actually starts translating in earnest, I'm not really going to look into it
huh, neat, we could change the text speed if we wanted
wouldn't be hard to put in a method to let you just skip the entire conversation...lol
yeah just kill me now
there's a bug with recoloring them that newly instantiated lances don't get recolored for whatever reason
and if they are recolored they cease to exist
if (this.lance1 == null || this.lance2 == null)
{
this.lance1 = UnityEngine.Object.Instantiate<GameObject>(this.grubberFlyBeamPrefabL);
this.lance1.GetComponent<tk2dSprite>().color = new Color(0f, 0f, 1f, 1f);
this.lance2 = UnityEngine.Object.Instantiate<GameObject>(this.grubberFlyBeamPrefabL);
this.lance2.GetComponent<tk2dSprite>().color = new Color(0f, 1f, 0f, 1f);
}
this.lance1.Spawn(this.transform.position);
this.lance2.Spawn(this.transform.position + new Vector3(0f, 3f, 0f));
where are you calling that code?
HeroController Attack()
you may need to fiddle with it in ObjectPool.Spawn
i had better luck with that and fireball, though not perfect luck
it was still squirely
Hey folks, I'm new here and to modding in general - quick question; I've been trying to install the Randomizer API, but it just isn't working. I started by moving the 1.2.2.1 Modding API zip into the local files, and then the Randomizer API, yet the game isn't updating. Any ideas what's going on?
you watch the video on installing boss rush?
(it's the exact same thing to do randomizer as boss rush so the video directions apply)
I've done that yes, but unfortunately the mod doesn't seem installed. I do get this message in the top left though:
i don't think you installed randomizer correctly
the XML shouldn't show as unknown
my guess is you didn't copy all the files but only the dll, which won't work
Hmm alright, I just replaced the data folder with the API and then the Randomizer ones like the video showed, but I must have done something wrong. Currently verifying integrity of game files and will retry
you really didn't need to verify
(now you have to reinstall both)
so my guess is you just copied hollow_knight_data
but didn't copy Randomizer
Ah, that was the problem. Thanks so much for your help! I don't know how I missed that, I must be quite tired.
no problem
Much appreciated!
what you should see is that both the randomizer and the xml have a version # next to them in the main menu
Yep, and I'm getting the Randomizer text as well. Everything seems to be in working order!
great π
a word to the wise, if you're not a veteran, start with easy. the skill gap between easy and hard is rather large
@rain cedar - when you redo the stuff in randomizer, probably do the same thing with the embedded resources that you did with the updated debug mod
RtL text isn't officially supported but theres scripts to fix it iirc
font isn't a real problem can just import another
afaik theres no easy way to add additional pages to conversations
if i read this correctly
pages are dynamic
there is a massive function in TextMeshPro called GenerateTextMesh
and it seems to overflow text for pages
maybe
maybe
TMP apparently supports RTL
protected bool m_isRightToLeft;
so, theoretically possible
if someone goes through the pain of working through those 3400 entries
though some of them are repeats and blanks
I think we'd just need to hook into TextMeshPro's constructor
or possible the awake function
at some point when you're done with bossrush and more saves, I'd like a little help with adding a something to the main menu that we can enable/disable mods with that works with controller/kb/mouse
So wait. The .xml is all the text to the game that me and @noble trout need to translate?
Major bug
yeah pretty sure thats all the text, there is
its just text
With the Randomiser, how do you have it so the bottom left UI with all your items/abilities shows?
playerdatatracker
you cant just write in it
i doesnt work by just writing on it
it should just work you can open the xml in any text editor
its not a special file format
also stuff like "<entry name="DUNG_DEFENDER_TITLE">" i do not change right
yeah that stays as is
ok just checked
just the stuff between <entry name ="whatever"> and </entry>
also I'm not sure how well it works for hebrew, but for every other language major characters are just translated phonetically afaik
so i dont change that marked part
With the Player Data Tracker, just drag the hollow_knight_Data in the Hollow Knight folder?
but i do change this
yeah you'd just changed the Honour part
ok thanks
entry name="HOLLOW_KNIGHT_MAIN">γγΌγγΌγγ€γ</entry>
is what it looks like for japanese for instance
theres detailed instructions on the github I linked @thorn comet 
Thanks a lot !@KDT#7539
guys i need sugestions do i call the hollow knight by the object name (refer to it as an empty knight) or by a name (write it how its heard)
do i change those stuff
there is an achievement named protected wtf is it?
i mean i translated it but im still dont know
wait never mind
its the collector's right?
Protected is getting 4 mask shards
oh
Thanks @buoyant wasp!
@buoyant wasp I'm going be out today, but tomorrow I can probably do most of it, if you do a mockup later today for what you want
yeah if I wanna translate this i'm probably gonna have to grab a team together because shieet it's a lot
@buoyant wasp Save specific settings does not work with anything but the 4 dicts already in it by default
I can just use the string dict instead for this but still would be cool to be able to add my own like with global settings
Also minor nitpick: I feel like IsCurrent should default to true if it's not implemented
it makes sense that all the text is 3500 lines?
yeah but it's still a ton
because those are just the lines
not to mention all the friggin' sentences and words you gotta translate while keeping the context
yeah i know. but i dont worry a lot im a translator for 4 years now so it will be fun to try translating a game for once
how to download boss rush?
ok
but first
thx
u download the API for whichever version u r using
you put that in the game first
then u put the bossrush mode in teh area recommended
API?
there's a vid in pinned messages i think
watch the video
its not in the google drive for me
found it
@rain cedar - is it a field or a property?
it has to be a field
and if it is a field try adding [SerializeField]
1221 is the newest version right?
Nah Wyza I looked in the dll with dnspy
You're using a SetSettings function that just explicitly sets those 4 dicts
@toxic valley - you want the one that matches your game version
then yes, 1.2.2.1
ok thanks
oooh, right, forgot that that gets called after the saves are loaded
so assuming you havent already figured it out, you could do:
public new SetSettings(MyModSettings incomming) {
MyCustomDictionary = incomming.MyCustomDiciontary;
base.SetSettings(incomming);
}
Alright
Don't care enough to switch from just using the string dictionary already there right now
Maybe later when that ends up not working
boss rush mod is only 1214 should i change my version?
Charm Notch Mod, last updated oct 26
Randomizer, oct 28
Nightmare God Grimm, oct 31
Blackmoth, nov 10
Player Data Tracker, nov 11
Glass Soul, nov 14
Scale Mod, nov 17
More Saves, nov 17
Bonfire, nov 22
Lightbringer, nov 23
Debug, nov 28
Modding API, nov 28
Boss Rush, dec 12
what needs updating?
@toxic valley nope it'll work
ok
though really use the most recent one from KDT here
click on search
and do From: kdt has:file
dunno that he posted that to the drive yet
he doesn't post to the drive, but that answers my question with bossrush
my save file started like normal π¦
look in the upper right corner in the main menu
or in the pause menu
should show version information on the mods if you installed right
nothing there
then you didn't install right π
I'd stay to help, but i gotta run so i can get back in time for the race.
im trying again
hopefully one of the other kind souls can help out
@leaden hedge Flukes don't despawn in boss rush after flukemum is killed, can kill you after she's killed and break the whole game if you don't select item quickly enough
Not my problem
-KDT 2017
the latest version makes you invincible after you kill the bosses
unless you found a bug
@toxic valley - any luck?
is Unity Studio constantly crashing a normal occurance, or do I need to uptade some libraries?
Nah that's normal
It dies when looking at certain assets
@buoyant wasp Just remembering this now but I noticed a while back that Constants.GAME_VERSION is a thing
So you could grab that automatically for the api
i had to go but steam wouldnt start so i think that was the problem
not the mod, steam
PERFECT
this time i am 100% sure i did as in the video
but i only got modding api
wtf is wrong with my game
Send the file ModLog.txt from your save directory here
in discord?
Yes
Saves are at appdata/locallow/team cherry/hollow knight
%appdata%\LocalLow\Team Cherry\Hollow Knight
What the heck is Modding.Loggable?
abstract class you can stick on any class you want that gives you access to the logger like Mod does
dont ask me
Alright
i didn't know he was already using that
i downloaded the newest version that wasnt there last time
yeah, sec
You can't use the API from the drive, then
Try this
but the api worked
yes, but bossrush is using a newer version of the api
now load it up, you should be good
yes
but my save file is gone
if you were to go and remove the boss rush mod (or stick it in a folder called "disabled" in the mods folder) your saves would return
good
guess i'm gonna update the drive since BR is using the new stuff
oh, hmm,
there, drive updated with 1.2.2.1-23.
any major update from -22?
the only change is that mods won't show as "New Version Available" for mods that aren't doing automatic version checking. Before if the mod didn't implement that functionality, it'd perpetually say a new version was available even when it wasn't
@rain cedar - are you still using all the same names in the string dictionary? (gotCharm_#, fireballLevel#, hasDreamNail, etc)
ah, k
right now we're sending it over via the SetPlayerBoolHook, which I believe, the value at that point is the "vanilla" item, and then translating that into whatever the actual one is
I can't really make it use the internal names without changing how a lot of stuff works
yeah
You'll probably just have to build a dictionary of item name->playerdata var
Shouldn't be too hard
boss rush is so ez
when i take damage i only actually lose a mask like 1/3 of the time
and i deal increbible amount of damage
is it glitched or is it supposed to be this easy?
If you picked up something that gives more health the extra is invisible
And for damage you probably just got lucky
i think i got one
and fragile hearts maybe
i dont even have to try
just go as close as possible and spam if i have quick slash
and then i win in like 30 sec
Yeah, quick slash is good
there can be harder seeds, i had one where i had no nail upgrades, no quickslash, no spells for the first like 10 bosses
Hey all, I was running the randomizer mod and I think I may have hardlocked myself? Looking to either report this for future debugging or get some advice on how to leave the area. I'm currently located at the Lake of Unn bench, with only Isma's Tear and Crystal Heart in terms of movement abilities. I am unable to proceed to Unn due to a lack of Mantis Claw and I cannot exit the Hornet 1 boss room without Mothwing Cloak or Mantis Claw. This would likely be doable with the reverse Vengeful Spirit skip (I've very close!) but the randomizer gave me Desolate Dive instead of Vengeful Spirit from Snail Shaman, leaving me somewhat without mobility. Any ideas?
amusing thing, someone else just found that same thing like, an hour ago
I didn't even know there was a bench there
I see! Have they figured out a way to cheese an exit, or is it in fact a hardlock?
no, you're stuck i'm pretty sure
probably just remove that bench in the next version π
Without Isma's Tear I'd be able to Shade Pogo out of the pit, but since I have it and the room has no enemies I'm effectively stuck @rain cedar
Well, that certainly was a hilarious run (I've managed to get to every area sans Deepnest through absolutely convoluted manners, even by speedrunning standards) without Vengeful Spirit or any real mobility, but I'm looking forward to my next run!
Just be careful where you sit at benches
Feels like half the benches in the game can get you stuck
there's the unn one, and also the nail master one
unless you removed that
(if you don't have CH
Nah not yet
Pretty low priority as far as I'm concerned
No reason to even go to great slash
not yet π
By the way, is there a file that lists all the random locations? When I started the run it asked me if I wanted to document it (which I agreed to) but I haven't been able to find any log.
I'd be interested to see how close I was to opening up a lot of the unlocks
is the most recent version the 11:40AM one?
Assuming you mean the 9:40 one yes
Ciplax is playing it now and he's got some weird bug with doubled audio
But I have no idea what could possibly cause that
Seems unlikely it's a vanilla bug since nobody has had it before
Ahh! Vengeful Spirit was in the place of Grubsong! This hardlock is clearly karma for not being helpful enough for the cute little grubs! That would have prevented my lock!
If there's such a huge issue with stuck benches, why not have a return-to-dirtmouth shortcut?
or would that be too anti-speedrunner
inb4 benchless
In Randomizer, can you get Shade Soul without Vengeful Spirit?
Wondering because .xml file always list requirements like ("Vengeful Spirit" | "Shade Soul")
And ("Mothwing Cloak" | "Shade Cloak") etc.
Because when you get one of those, it gives you lvl 1
because if you have shade cloak, you don't have mothwing cloak
^
So.... Cloak1 could be super unavailable
Ya, but for the .xml file it doesnt really matter.
But cloak2 could be put somewhere available
Since they're different pick ups, you have to account for both
Even though they both give cloak 1 when picked up
If you only have cloak 1 in the rando XML, then cloak 2 won't be included in the logic, limiting the locations cloak 1 could be
You would have both.
Does it matter in the end? Probably not, but this way, it requires one of the two to be placed in a location that couldn't softlock you
The only thing it changes is the readability of the .xml file.
It'll change the randomization
Bc like I said, you have to change how the pickups work in rando, since they are now integers instead of discreet pickups. In vanilla, if you could get to shade cloak before cloak, it'd give shade cloak but in rando you'd get cloak. The vanilla game items don't know that though, so you account for that by including both levels in the base requirement
What Im suggesting in a way is adding a basic variable/substitute system in the xml.
It already kinda has that with the keyitems thing, you just can't have arbitrarily named sets
I'd like to do that at some point
Ex: CharmAttack = "Grubberfly's Elegy" | "Glowing Womb" | "Spore Shroom" | "Weaversong"
And in the case I was talking about, BallSpell = "Vengeful Spirit" | "Shade Soul"
I see what you're saying now.
But tbh, considering the xml wont really change over time, its probably useless..
I guess everything with CLASSIC means it require shade skip?
Oh
I completely forgot to parse that in the code
But yes
That's what it's supposed to be
btw, i'm gonna have a pull request for the rando mod
came up with a vastly better approach to dealing with the values...in the tracker...i think
Cool
basically, for the 2 Set functions, I added what are basically copies of SetPlayerBoolHook and SetPlayerIntHook in Randomizer.cs. Then the tracker can subscribe to those instead of the ones in ModHooks.Instance. and then instead of having to translate everything, the tracker should just get whatever is actually set by the randomizer and we don't have to reverse the randomization to figure out what was set. From the tracker's point of view, it won't care if it's a rando seed or not.
basically adds like 20 lines of code in rando mod and removes 150-200 lines of code in the tracker
Sounds good
What does the tracker do?
it's on the list of things to add π
though as far as i know, we were only going to add it in easy mode
Well, my helper would work all the time XD
yeah....and that kind of makes half of the randomizer pointless
i mean, if you can just plugin what you have, and it spit out where you should go....why bother playing?
When youre stuck.
Or for beginners.
For learning too. Im sure not everyone knows about all the shade skip needed.
The tool wont use the seed. Thatd be cheating.
How are you gonna make something that tells you where to go without that?
You say what you got, it says what items are accessible.
hmmm, need to implement a way to do mod ordering
If someone wants to do a test run of this who uses the overlay and randomizer, that'd be great. Install wise, normal procedures (this is API 1.2.2.1-24, Randomizer 1.5.0, PlayerDataTracker 2.4.0). Install Randomizer 1.4.0 first to get the latest XML.
you can put TrackerOverlay wherever you want, but then change your tracker url in OBS from https://iamwyza.github.io/HollowKnightRandomizerTracker/Index.html?profile=1 to file:///c:/wherever/you/stuck/TrackerOverlay/Index.html?profile=1
for modders, there's now a method you can override called LoadPriority which is an int return. so you can weight when a mod gets the Initialize method called compared to other mods. By default the mods all have the same priority (1). Useful when, like me, I needed to make sure that Randomizer was loaded before the PlayerDataDumper π
@leaden hedge , as far as mockup goes, was just thinking something on the first menu, on the right that lists the mods, with an icon that is, say, infection orange, when the mod is enabled, and grey when it's disabled. if the mod doesn't support disabling it needs to be unclickable or something that shows that you can't turn it off.
Reposting from #hk-discussion
Is there anyone who knows how to export spritesheet using Unity Asset Extractor?
I need Grimm Troupe NPC's animation spritesheets for Lazy Moonkin's next track
Because i can't find any spritesheets with "texture" file type.
Also, It would be awesome if someone had the spritesheets themselves (i need the grimm troupe inside-tent texture too)
@buoyant obsidian can probably help
I like your work, I'll help out
If you want to learn how to do it yourself, download Unity Studio:
I'll PM you the sprites in a sec tho
@buoyant obsidian β€
If only I had Discord Nitro
Wow, UnityStudio is like a WAY better then UAE
It crashes a lot though
but yeah it's infinitely better for exporting
Everything you want is probably named Atlas0
Yea, i've already found it, thanks!
@compact sorrel there's a .zip of Grimm textures, just in case you missed anything. It can be hard to find everything sometimes.
Appreciated
if i understand correctly, the sprite sheets just randomly change each build right?
They have a tendency to at times
Some have remained constant but the big ones that keep changing are charms and art assets for like rocks / walls / etc
@leaden hedge no rewards option appeared after THK for boss rush, but apparently i can skip it
hello?
so i installed the bosh rush mod but dont know how to start the boss rush
also all my saves are gone
can anyone help me out lol
just start a new save
ah thanks it just worked now
if you're worried about saves
C:\Users\[Username]\AppData\LocalLow\Team Cherry\Hollow Knight
thanks guys, but is it supposed to be different from the one used in this video?
12:08 actual boss fighting time from adding up the times in the credits. Credit to KeinZantezuken for making this awesome mod. No public download link for it...
yes
pickup monarch wings
@rain cedar There's a typo in the randomizer.xml. Line 330 <requirements>"Mothwing Cloak" | "Shade Cloak" | ("Mantis Claw + "Crystal Heart")</requirements>
"Mantis Claw + "Crystal Heart"
Missing double quote.
Oh I'm surprised that even runs
There were a couple others I caught because it broke completely
There are 15 upgrade/items that affects what is accessible.
What does <requirements>KEYITEMS</requirements> means?
Top of the xml
?
<name>Quick Focus</name> has <requirements>KEYITEMS</requirements>
<item>"Mothwing Cloak"</item>
<item>"Shade Cloak"</item>
<item>"Mantis Claw"</item>
<item>"Monarch Wings"</item>
<item>"Isma's Tear"</item>
<item>"Crystal Heart"</item>
<item>"Dream Nail" | "Awoken Dream Nail" | "Dream Gate"</item>
<item>"Howling Wraiths" | "Abyss Shriek"</item>
<item>"Desolate Dive" | "Descending Dark"</item>
<item>"Vengeful Spirit" | "Shade Soul"</item>
</keyitems>```
So it requires owning everything?
Yeah basically
It's because quick focus is a shitty item to have to buy early on
So I'm just making it never be necessary
Ah
god damn in my hollow knight game i fought the collector as the last boss to 100% the game so i had everything upgraded and it was so easy
in boss rush he is a lot scarier
same for nosk
yep, you'll find the same thing with HK if you had all the upgrades when you fought him before
@buoyant wasp Not seeing the Randomizer 1.5 code changes on github
Alright
was hoping someone last night would have time for a rando run and do that 
What all did you change? I want to be sure we don't end up with conflicting branches
Thanks
does randomizer include weapon upgrades? like you could get a nail upgrade instead of mothwing cloak or if you went to upgrade your nail you could get a charm?
No, that would be terrible
The 3rd and 4th nail upgrade are too time consuming to get
makes sense
Hey i'm having trouble installing the bonfire mod, I did everything the read me told me to do, i replaced everything i needed to, i even deleted my save files, and my game still crashes, anyone got any tips?
Not sure that's up to date for 1.2.2.1
i've seen people play it with 1.2.2.1
Idk haven't seen gradow in here in a while
well nvm, the video i saw was 1.2.1.4
Did you install the API?
There's a video in pinned messages that goes over MOD installing for API mods too. Just exchange rando for boss rush
I did install the modding api
I merged the randomiser hollow knight data folder with the modding api one
the latest patch
Steam? GOG? Mac?
I don't think it works on Linux
Would need one of the modders to confirm
I think its worth trying it out on windows.
@rain cedar I just got Shade Cloak on Randomizer and it did a hard save there.
You've got the one from #races-discussion, right? I haven't updated the drive because there's a couple problems with it
Ah, you updated it
Is the link pinned?
No
Wyza did his own update of the randomizer for compatibility with the tracker, though
That should be not too far up in this channel
Or just search from:wyza has:file
@fair rampart - The linux game is compiled with different stuff than what the windows dlls have, so pretty much no mods work with it as far as we know.
@rain cedar is there a way to respawn a grub?
Not any easy way, no
k
Yo, I can't seem to get the rando mod to work. I put it in the mods folder of the API, but it doesn't seem to want to work.
grimm
do you have the randomiser folder next to hollow knight data in the hollow knight folder?
Nothing. And no, I don't. I figured it had to go in the mods folder of the API.
if there is nothing, then the api isn't installed
I think wyza should handle this.
I unloaded all of the files of the api. I'm also not seeing an install executable.
there is no install
go watch the video on how to install bossrush
it's the same steps
Thanks, dudes.
anyone here know how i can get the boss rush mod to work?
not really sure how to set it up, thanks!
There's a guide in the pinned messages @red thicket π
Perfect, thanks!
guys i have done most of the main menu is there a way i can send you the file and you will make it so i can see how it looks like?
For translation?
It's kinda late now but tomorrow I can make a simple mod for changing language strings
Did
end up getting back to you Fuzzy? Just curious
yes they did they told as they are very busy and cant get into helping fan translation and to message the modding channel for the language script
i can screen cap if you want
you know what i hate? the fact that i dont have a cool word for vessel in hebrew
the only translation means pot
like a flower pot
you are the pot
you are the hollow knight
i attempted at translating it in dutch, so i know your struggle
if i do wanna continue, i'll need the help of some friends
like, at least 4
do someone know a program that lets you and your friend work on a file from the same time without overwriting each other?
I take your word for it Fuzzy no need to screencap it π
you could try an SVN
Was just curious
can we work on google docs in the same time?
yep!
oh
it's pretty great
but i dont think google docs support the translation program me and my friends are using
Yeah itis
i've got a doc with classmates where we make notes at the same time
oh you're using a translation program? yeah that makes things harder
then again. you work with a .xml file right
you can just convert it to .txt
smash it in a google doc
and copy-paste-done it back in if you're done
but yeah, it's a ton of work, i highly underestimated it
then again. translating is a work of love
We are working with .ass and .txt files.
wut, both?
We are translating in .ass files and then convert it to .txt files to convert it to .xml file for the game.
uh
i thought you could also translate in .txt
after all the .xml file is just text
I can but the program I'm using is in .ass files.
I translated for 4 years in it so I am not going to change it lol
Yo, what's the randomizer mod actually do?
randomize
randomize what?
charms, spells, skills
after you collect them, or where you collect them?
where they are collected
ok, thanks.
@buoyant wasp would something like https://gfycat.com/OddballUntidyAnemone this be fine 
You could try and get Shade cloak and get Deep Focus
Dunno if you've been told yet either, but Hard mode is.... hard. speedrunning skips/tech most likely required
wow, yes, that'd be amazing
could also probably use this for randomizer, so you don't have to click
yeah, i had that thought too
you can see what I've already got working here https://github.com/KayDeeTee/hk-modloader/blob/master/src/ModLoader.cs
although if you wanted something that you could press left / right on, you'd need to make a copy of a MenuOptionHorizontal instead of MenuButton
In the randomizer mod, do the fireball and dash stay in the same place? Or did I mess something up again?
did you enable it?
^
should have been a button below normal / steel soul on save mode select
I don't see that.
then the mod isn't installed correctly
shit.
upper left hand corner should say modding-api 1.2.2.1-##, and randomizermod 1.4.0 (xml version 1.#.#)
the main menu should have a giant "randomizer" logo on it
I see the upper left stuff
and the new game screen should have a big randomizer button that when clicked says "off/easy/hard"
Wait, no. It says Randomizer is version 1.3.1
have you beat the game?
103%
well, 1.3.1 is fine too
It just says the thing in the upper left. No randomizer button. Classic or Steel Soul modes are the only ones available
you probably didn't put the Randomizer folder next to Hollow_knight_data
(which i have no idea how that is possible since the zip file contains the entire structure to just drag/drop)
I did that, and it replaced the thingy.
that's the C-Sharp folder, right?
yeah, you didn't install right. inside the randomizer zip there are 2 folders. you should have copied them both into the directory you're currently in
one is hollow_knight_data, and one is called "Randomizer"
yup
np
i think main menu is done
also is there a modder that will want to help me privatly instead of me messaging the whole channel again and again?
sean already said he'd help with a mod to do that, though usually this is still the best place as far as general stuff about this, since it's going to help others potentially
really what it's going to end up being probably is a mod that will read from an XML file, and you can just update the XML file at will and you won't have to do alot of back and forth
as far as collaborative editing, there is stuff like this that might work better for the XML files: https://codeshare.io/
Yeah that is what i thought
how do i install the scale mod?
just download the zip, and extract it into the root folder for the game
(assuming he put the folders right)
note that the scale mod only works with 1.2.2.1 and won't work with any other mod
@buoyant obsidian can say more
basically you need to overwrite Assembly-Csharp.dll
np
to uninstall you'll just need to go into steam and tell it to verify the game files
and it'll restore the game back to vanilla
won't work then
its 1.2.1.0
1.2.2.1 windows only
do you thinking making a copy of Assembly-Csharp can work?because my hollow knight is not original,i gonna save a vanilla Assembly-Csharp and when i want to go back to vanilla,i can just overwrite the modded one
...what?
more addressing the pirated part of that....
it's $10
on sale, all the time
just get a legit version
if money is that tight, do a favor for someone, or mow a lawn, or something. the devs of this masterpiece deserve the money 1000%
Yeah, we're not going to help you with modding a non-owned version of the game
^
if you give me $20 ill help you
kek
which basically amounts to "i'll go buy the game for 10$, send the key to you and pocket the 10$ as S&H" ? 
I'll help for $15
$14.50
$14.25
Just from curiosity. In what programming language is the game built?
yea, it's c#
mostly c#
but not all of it
the FSM stuff is....something else
and actually "mostly" might not even be the right way to look at it
there is alot of c#, but the FSM stuff controls a crapton of things too
the fsm is c# π€
really?
FSM is pain
Oh cool.
yes, its serialized methods + parameters
Today I started to read my c# book
C# is so vast
it's built entirely out of pure pain
programming books π€
FSM is definitely pain
the fsms
@hazy sentinel yeah like the old fashioned way.
I tried to look at ngg for the basis for my first mod and then I saw the fsm stuff and died
so if the FSMs are c#, why can't we just change them then? (or is it because it's serialized instead of compiled?)
lol
its because its serialized in a retarded way
there are 3 example mods out there now on the modding github repo btw, they don't do much
but they do have all the basics
ah
yeah i just assumed because of the arcane methods we got to them that they were in some other language
bad to assume
in randomizer can mantis claw spawn after the lost kin fight?
yeah
guess ill keep looking
no you just need to play lightbringer to beat the game
wait, how do i leave ancient basin without walljump?
You quit
Yep
good thinking actually
unless you're running 1.4.0, don't go get shade cloak without claw or dreamnail (set outside of basin) or tram pass
cause shade cloak had a hard save in it π
oh cmon. that skip is fun
It's literally just random chance
Most of the time the sibling decides to become dumb
unless it loses it's brain
and has to be punched up
Yeah
forever
it was fireborn who did that right? spent like 20 minutes trying to get out
only to find out he was still stuck
actually with tram pass
it wouldn't be hard
cause there is a save inside the tram
so post 1.4, when there is no more hard saves down there
it wouldn't be bad
that's the only way out pre 1.4
correct
or do you mean to check all 3
after 1.4 checking all 3 would be fairly safe, other than the time involved into getting into cloak if you don't have cloak
since you'd need to shade pogo
don't think so
didn't think so
cause man that's a time sink
thought it was claw or shade cloak only
found a bug with debug mod
don't go down into the hatch here with no clip
coming back up freezes the interface
can hazard respawn out of it though
That's technically not a bug with the mod because it happens in vanilla too if you manage to hit loads that are meant to be blocked off
Just a bit harder to do without noclip
ah
hmm, so, lets say we finally get nail arts randomized. would the dash slash doors be part of the logic or would we assume those are sequence breaks because they've already said that in the beta patch notes they are explicitly fixing that
i'd assume the latter
yeah
But anyway for debug mod I could probably fix that
Right now I'm only applying the noclip when you character is no longer entering the level
Because it does weird shit otherwise
But I could probably set all the stuff for the character state manually instead
Literally just talked about that with wyza
It's the same glitch
basically, hitting things through walls is not used anywere logic wise because what is and isn't hitable through walls changes
from patch to patch
It's actually pretty funny how they fixed this in white palace
Some levers you can noclip directly on top of and you still can't hit them
They're just not hittable until some other condition is met
volume somewhere? another switch?
Probably just a position trigger somewhere or another switch
Didn't look into it too much
@rain cedar - you have the latest rando with the xml fixes, figure might try giving it a run through
All that's changed in there is I fixed a missing quote
Right now the CLASSIC keyword isn't being parsed
I can probably fix that in like 5 minutes if you want to wait for that
ok
Have you tried the randomizer with your changes for the tracker yet?
Alright, for now I'm not gonna merge that then
one of the reasons i want to run it otnight π
Is there any way I can pull that into my local repository without merging it?
Otherwise any changed dll I send won't have that
hmm, you could probably pull mine as a separate branch, or if you want, you can just send me the changes to make it parse classic and i'll merge it manually
Alright
Well it should be as simple as adding this after line 40 in RandomizerEntry.cs
logic = logic.Replace("CLASSIC", PlayerData.instance.permadeathMode > 0 ? "true" : "false");
so basically this:
public bool IsReachable(List<RandomizerEntry> obtained)
{
//RandomizerMod.instance.Log("Checking if " + this.name + " is reachable");
List<string> names = new List<string>();
foreach (RandomizerEntry entry in obtained)
{
names.Add(entry.name);
//RandomizerMod.instance.Log("Have " + entry.name);
}
string logic = string.Copy(reqString).Replace("HARD", RandomizerMod.instance.Settings.hardMode ? "true" : "false").Replace("KEYITEMS", Randomizer.keyItems);
logic = logic.Replace("CLASSIC", PlayerData.instance.permadeathMode > 0 ? "true" : "false");
string logic2 = string.Copy(logic);
List<int> quoteIndices = logic.AllIndexesOf("\"");
for (int i = 0; i < quoteIndices.Count - 1; i += 2)
{
string itemName = logic2.Substring(quoteIndices[i] + 1, quoteIndices[i + 1] - quoteIndices[i] - 1);
logic = logic.Replace("\"" + itemName + "\"", names.Contains(itemName) ? "true" : "false");
}
return ParseLogicString(logic);
}
Yeah, right there
cool, i'll give it a spin
@buoyant wasp Planning to stream it?
will probably here in about 20 when the wife goes to bed π
Gotcha
What's the nightmare god grimm mod?
This is a segmented fight of KDT's mod Nightmare God Grimm (NGG 0.2.1), why segmented you ask? Because the final phase in this version is nonsense and pretty...
damn that looks brutal
Nobody has beaten it single segment yet
also ive got a problem with boss rush where i cant upgrade anything / pick up items between fights. Any fixes?
so, not really sure what to do about the spells
How did the new rando patch work out
mostly ok. the overlay is broken for spells atm
and i had a weird crash before HK
otherwise, seemed fine
trolly seed
That crash happened to a couple people a while ago
and for some reason fragile greed didn't show up as gotten on the overlay until i S&Q, everything else seems to work though
Almost as good as the in game bug I had
Lol
Where it showed charm locations I had checked in my inventory, but the charms I actually got were there, just invisible
Lol
the spells thing, idk how to fix because what i use to signal that i got a spell is via the int hook looking for a value that ends with "Level"
Was that the new beta overlay you were testing Wyza?
The old one won't work with new version?
eh, the old way we did it was really hackish, writing out a file to the save directory so that the overlay could read it
the new way lets the randomizer tell the overlay what you got instead of having to do the translation
basically
I mean yeah. I agree. But as of right now, it's stable. Just thinking about the races coming up
yeah, unless it turns out to be really stable between now and the 16th, i won't push the new one until after
π
@rain cedar - in "vanilla" is the spell value being set via the SetInt normally? Wondering if we can't still use your existing approach for setting spells, but just call the randomizer's SetPlayerIntHook so that from a Mod's perspective who subscribe's to RandomizerMod.Instance.SetPlayerIntHook, they will behave as normal..... yeah, i think that should work.
Should be fine, yeah
@buoyant wasp What were the original file names for the split ones?
There is no sheet titles in the xml, only keys
Title is probably just the file name
hmm
that looks bad
EN-Achievements_TextAsset_0_1945.txt
EN-Backer Messages_TextAsset_0_1877.txt
EN-Banker_TextAsset_0_2275.txt
EN-Charm Slug_TextAsset_0_1809.txt
EN-Cornifer_TextAsset_0_1933.txt
EN-CP2_TextAsset_0_1883.txt
EN-Credits List_TextAsset_0_2022.txt
EN-Dream Witch_TextAsset_0_2059.txt
EN-Dreamers_TextAsset_0_2100.txt
EN-Elderbug_TextAsset_0_1869.txt
EN-Enemy Dreams_TextAsset_0_2173.txt
EN-General_TextAsset_0_1946.txt
EN-Ghosts_TextAsset_0_2139.txt
EN-Hornet_TextAsset_0_2193.txt
EN-Hunter_TextAsset_0_1861.txt
EN-Iselda_TextAsset_0_1908.txt
EN-Jiji_TextAsset_0_2181.txt
EN-Journal_TextAsset_0_2019.txt
EN-Lore Tablets_TextAsset_0_2038.txt
EN-MainMenu_TextAsset_0_2264.txt
EN-Map Zones_TextAsset_0_2098.txt
EN-Minor NPC_TextAsset_0_1994.txt
EN-Nailmasters_TextAsset_0_1831.txt
EN-Nailsmith_TextAsset_0_1955.txt
EN-Prices_TextAsset_0_2242.txt
EN-Prompts_TextAsset_0_2316.txt
EN-Quirrel_TextAsset_0_1899.txt
EN-Relic Dealer_TextAsset_0_2196.txt
EN-Shaman_TextAsset_0_2141.txt
EN-Sly_TextAsset_0_2048.txt
EN-StagMenu_TextAsset_0_2005.txt
EN-Stag_TextAsset_0_2317.txt
EN-Titles_TextAsset_0_1934.txt
EN-UI_TextAsset_0_2228.txt
EN-Zote_TextAsset_0_1927.txt
yup
note that they aren't quite the raw extracted versions anymore. I did some regex to convert them from the psuedo XML that the extracted versions came out as into viable xml
That's fine, I can figure it out
i have this amusing thing where i want to replace the text for all the conversations in the randomizer with zote's words of wisdom
Make Zote's speech audio play constantly as well for full Zote immersion
lol, well it's more an emulation of the zelda randomizer. they took several of the conversations and rewrote them with various things. like what you find in the master sword location is stuff like "Couch Cash" (for 20 rupees).
but having the zote voice mumbling in the background every time you talk to someone would definitely be amusing
but the language mod (which is what i'm assuming you wanted these assets for), should make that kind of thing fairly trivial
Yeah, there's a couple problems in making this language mod, though. First being no sheet titles, but I can fix that easily with some work. Second being the default font doesn't support hebrew, should be easy to fix since the game already has support for swapping dialog fonts due to chinese. The only actually hard problem is that hebrew is right aligned
Not sure how to handle that one
i looked at that briefly
the RTL thing
the text rendering library they use has a RTL flag
That's convenient
protected bool TMP_Text.m_isRightToLeft;
oh, and i guess you manage it with this: public bool isRightToLeftText
Thanks
outside of that, idk, the code for the text handling is huge.....
hopefully it'll "just work"
which seems unlikely
Yeah
For now I'm just hooking LanguageGet but I want to add a hook to Language.DoSwitch and probably some other places to have proper support for adding arbitrary fan languages
yeah, i figured you'd make it at least partially configurable, "oh, you want czech? no problem."
Probably gonna have to hook just about everything in Language honestly
probably




