#archived-modding-development

1 messages Β· Page 41 of 1

fair rampart
#

or im downloading pirate stuff

#

like windows activators

#

Don't expect me to buy windows btw

rain cedar
fair rampart
#

that never happens to me tho

rain cedar
#

It never happens to me either

#

Until just now

fair rampart
#

hmm

#

weird

rain cedar
#

And now I don't have the API installed anymore because Steam updated everything to fix the missing executable

#

Thanks, avg

fair rampart
#

lol

#

delet avg

#

use window's defender

#

wait

#

is that really avast?

#

it doesnt look like avast at all

rain cedar
#

Technically no, I suppose

fair rampart
#

i think that's a different antivirus

rain cedar
#

Avg is a subsidiary of avast

fair rampart
#

ah

#

okay

daring snow
#

I haven't used an antivirus in over a decade

#

I also haven't gotten a virus in over a decade

fair rampart
#

also haven't been to shady websites in over a decade

buoyant wasp
#

shady websites get gone to in a linux VM on another machine

#

when the need arises

fair rampart
#

Don't vms like take more space?

daring snow
#

they totally like do

buoyant wasp
#

why do i care about space?

daring snow
#

so much space kdubCSB

young walrus
#

b/c we live in space

#

on earth

fair rampart
#

lol

buoyant wasp
#

my file server has 15Tb of space and 32Gb of memory

fair rampart
#

bcuz anti viruses are bloat ware that takes more space

young walrus
fair rampart
#

so in turn

daring snow
#

lol

fair rampart
#

VMs take up more space?

rain cedar
fair rampart
#

lol

#

WOW

#

u used a TERRABYTE

#

what did u fill it with?

rain cedar
#

Games

#

Mostly

fair rampart
#

ah

young walrus
#

a TB is easy to fill

rain cedar
#

And recordings

fair rampart
#

i always delet things i dont need

#

i only have 500GB

young walrus
rain cedar
#

Yeah but what if I need everything?

fair rampart
#

hmm

#

ya that's a problem

young walrus
#

why drop items when you can simply increase the size of your back pack?

buoyant wasp
#

i have 2x1TB SSDs in my main rig, 1x2TB HDD. then the file server is 15TB and it's about half full

fair rampart
#

but that rarely ever happens

#

you always have alot of garbage you need to clean from your PC

#

unless u clean 24/7

buoyant wasp
#

and alot of it would be exceptionally time consuming to put back

fair rampart
#

i have 7-zip and i still use winrar smh

buoyant wasp
#

@rain cedar - so how do you feel about resharper?

rain cedar
#

I disagree with like half the defaults, need to configure it some more

buoyant wasp
#

haha

rain cedar
#

Seems cool, though

buoyant wasp
#

which defaults?

#

the one I always change is it's default of using "var"

#

i hate var

rain cedar
#

That and uppercase field names

buoyant wasp
#

oh, yeah, that's industry standard

#

public fields are Upper case, private fields are _lowerCase

rain cedar
#

I usually only put uppercase on methods

buoyant wasp
#

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

rain cedar
#

Yeah I've always hated stuff like that and auto in c++

buoyant wasp
#

though, sometimes what i'll do, for something like a dictionary is do this

rain cedar
#

Oh yeah speaking of dictionaries resharper keeps telling me to make them readonly

#

Which is really dumb

buoyant wasp
#
var something = myMethod.GetDictionary();
rain cedar
#

Since that doesn't actually do anything

buoyant wasp
#

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

rain cedar
#

I guess that makes sense

buoyant wasp
#

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

rain cedar
#

I could still break it by calling clear for no reason and that seems just as likely as randomly reassigning it

buoyant wasp
#

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

ornate rivet
#

I see you are advertising on reddit now @buoyant obsidian

fair rampart
#

oMg

#

PLAY LIGHTBRINGER

buoyant wasp
#

heh, reddit, i wish i had time for reddit

west wave
#

What is this lightbringer

#

Also i dont even see how to get to the steam workshop for hollow knight

buoyant obsidian
#

There's no workshop for Hollow Knight

west wave
#

Yeah thats what i thought

buoyant obsidian
#

You can find mods in the pinned Google Drive folder

west wave
#

Neato

#

Sorry, casual reporting in. No clue what anything is or how PC stuff works

#

So thanks for the info

buoyant obsidian
#

It should be easy to install if you read the readme.txt

buoyant wasp
#

there's also a video talking about installing bossrush, but it basically applies to half the mods or more that are out there

west wave
#

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

buoyant wasp
#

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

west wave
#

Neato

noble trout
buoyant wasp
#

well

#

the text replacement would be pretty easy

#

right to left, that'd take some investigation

fair rampart
#

as i said, it's a looooot of text tho

buoyant wasp
#

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

fair rampart
#

i'm pretty interested in that as well

buoyant wasp
#

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

buoyant obsidian
#

Object pools are evil

#

I want to spawn lances but every 7th lance doesn't exist

buoyant wasp
#

welcome to our lives

#

it's because 1 or 2 of every lance isn't in the pool

buoyant obsidian
#

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));
buoyant wasp
#

where are you calling that code?

buoyant obsidian
#

HeroController Attack()

buoyant wasp
#

you may need to fiddle with it in ObjectPool.Spawn

buoyant wasp
#

i had better luck with that and fireball, though not perfect luck

#

it was still squirely

distant vale
#

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?

buoyant wasp
#

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)

distant vale
#

I've done that yes, but unfortunately the mod doesn't seem installed. I do get this message in the top left though:

buoyant wasp
#

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

distant vale
#

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

buoyant wasp
#

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

distant vale
#

Ah, that was the problem. Thanks so much for your help! I don't know how I missed that, I must be quite tired.

buoyant wasp
#

no problem

distant vale
#

Much appreciated!

buoyant wasp
#

what you should see is that both the randomizer and the xml have a version # next to them in the main menu

distant vale
#

Yep, and I'm getting the Randomizer text as well. Everything seems to be in working order!

buoyant wasp
#

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

leaden hedge
#

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

buoyant wasp
#

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

leaden hedge
#

maybe

buoyant wasp
#

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

empty stratus
#

So wait. The .xml is all the text to the game that me and @noble trout need to translate?

thorn comet
#

Guys theres a bug with the Randomiser

#

Its spelt Randomiser

#

not Randomizer

noble trout
#

Major bug

leaden hedge
#

yeah pretty sure thats all the text, there is

noble trout
#

is there a program to edit xml you know of

#

and yes a ichecked its all the text

leaden hedge
#

its just text

thorn comet
#

With the Randomiser, how do you have it so the bottom left UI with all your items/abilities shows?

leaden hedge
#

playerdatatracker

noble trout
#

you cant just write in it

leaden hedge
noble trout
#

i doesnt work by just writing on it

leaden hedge
#

it should just work you can open the xml in any text editor

#

its not a special file format

noble trout
#

also stuff like "<entry name="DUNG_DEFENDER_TITLE">" i do not change right

leaden hedge
#

yeah that stays as is

noble trout
#

ok just checked

leaden hedge
#

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

noble trout
thorn comet
#

With the Player Data Tracker, just drag the hollow_knight_Data in the Hollow Knight folder?

noble trout
leaden hedge
#

yeah you'd just changed the Honour part

noble trout
#

ok thanks

leaden hedge
#

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 hollowface

empty stratus
#

Thanks a lot !@KDT#7539

thorn comet
#

Got it working I think, thanks

#

will play shortly haha

noble trout
#

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)

leaden hedge
#

latter for hollow knight

#

most others like watcher knights is what it is

noble trout
noble trout
#

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?

spice niche
#

Protected is getting 4 mask shards

noble trout
#

oh

fair rampart
#

Thanks @buoyant wasp!

leaden hedge
#

@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

fair rampart
#

yeah if I wanna translate this i'm probably gonna have to grab a team together because shieet it's a lot

rain cedar
#

@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

empty stratus
#

it makes sense that all the text is 3500 lines?

fair rampart
#

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

empty stratus
#

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

toxic valley
#

how to download boss rush?

fair rampart
#

u go to the google drive

#

(in pinnd messages)

#

and u download it

toxic valley
#

ok

fair rampart
#

but first

toxic valley
#

thx

fair rampart
#

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

toxic valley
#

API?

fair rampart
#

there's a vid in pinned messages i think

toxic valley
#

ok

#

cant find the api

buoyant wasp
#

watch the video

toxic valley
#

its not in the google drive for me

rain cedar
toxic valley
#

found it

buoyant wasp
#

@rain cedar - is it a field or a property?

#

it has to be a field

#

and if it is a field try adding [SerializeField]

toxic valley
#

1221 is the newest version right?

rain cedar
#

Nah Wyza I looked in the dll with dnspy

#

You're using a SetSettings function that just explicitly sets those 4 dicts

buoyant wasp
#

@toxic valley - you want the one that matches your game version

toxic valley
#

i have the newest one i think

#

i havent changed it

buoyant wasp
#

then yes, 1.2.2.1

toxic valley
#

ok thanks

buoyant wasp
#

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);
}
rain cedar
#

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

toxic valley
#

boss rush mod is only 1214 should i change my version?

dapper folio
#

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?

buoyant wasp
#

@toxic valley nope it'll work

toxic valley
#

ok

buoyant wasp
#

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

dapper folio
#

he doesn't post to the drive, but that answers my question with bossrush

toxic valley
#

my save file started like normal 😦

buoyant wasp
#

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

toxic valley
#

nothing there

buoyant wasp
#

then you didn't install right πŸ˜ƒ

toxic valley
#

i did exactly as in teh video

#

wot

buoyant wasp
#

I'd stay to help, but i gotta run so i can get back in time for the race.

toxic valley
#

im trying again

buoyant wasp
#

hopefully one of the other kind souls can help out

toxic valley
#

ok

#

now i cant even start the game

#

rip

timber gale
#

@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

rain cedar
#

Not my problem
-KDT 2017

buoyant wasp
#

the latest version makes you invincible after you kill the bosses

#

unless you found a bug

#

@toxic valley - any luck?

jade lotus
#

is Unity Studio constantly crashing a normal occurance, or do I need to uptade some libraries?

rain cedar
#

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

toxic valley
#

i had to go but steam wouldnt start so i think that was the problem

#

not the mod, steam

#

PERFECT

toxic valley
#

this time i am 100% sure i did as in the video

#

but i only got modding api

#

wtf is wrong with my game

rain cedar
#

Send the file ModLog.txt from your save directory here

toxic valley
#

in discord?

rain cedar
#

Yes

toxic valley
#

where is it?

#

there is almost 1000 files

rain cedar
#

Saves are at appdata/locallow/team cherry/hollow knight

buoyant wasp
#

%appdata%\LocalLow\Team Cherry\Hollow Knight

toxic valley
#

oh that directory

#

i was in the steam directory

#

i dont have a locallow ;_;

#

;-;

rain cedar
#

%appdata% brings you to appdata/roaming

#

Go up a directory

buoyant wasp
#

oh, didn't realize it went to roaming

#

my bad

toxic valley
#

ok thx

rain cedar
#

What the heck is Modding.Loggable?

buoyant wasp
#

abstract class you can stick on any class you want that gives you access to the logger like Mod does

toxic valley
#

dont ask me

buoyant wasp
#

i guess kdt used the most recent API

#

hah

rain cedar
#

Alright

buoyant wasp
#

i didn't know he was already using that

toxic valley
#

i downloaded the newest version that wasnt there last time

buoyant wasp
#

yeah, sec

rain cedar
#

You can't use the API from the drive, then

toxic valley
#

for the right version

#

1221

#

should i try the other one?

buoyant wasp
toxic valley
#

but the api worked

buoyant wasp
#

yes, but bossrush is using a newer version of the api

toxic valley
#

it was boss rush that wasnt showing up

#

ok

#

done

buoyant wasp
#

now load it up, you should be good

toxic valley
#

it wokrs

#

and hollow knight isnt tabbing out in that annoying way anymore hollowwow

buoyant wasp
#

yes

toxic valley
#

but my save file is gone

buoyant wasp
#

not really

#

it's still there

toxic valley
#

ok

#

puh

buoyant wasp
#

but boss rush isn't designed to save

#

so it hides all saves

toxic valley
#

puh

buoyant wasp
#

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

toxic valley
#

good

buoyant wasp
#

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.

cedar raven
#

any major update from -22?

buoyant wasp
#

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)

rain cedar
#

No I'm using the names from the XML

#

Shade Soul, Mothwing Cloak, etc

buoyant wasp
#

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

rain cedar
#

I can't really make it use the internal names without changing how a lot of stuff works

buoyant wasp
#

yeah

rain cedar
#

You'll probably just have to build a dictionary of item name->playerdata var

#

Shouldn't be too hard

toxic valley
#

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?

rain cedar
#

If you picked up something that gives more health the extra is invisible

#

And for damage you probably just got lucky

toxic valley
#

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

rain cedar
#

Yeah, quick slash is good

buoyant wasp
#

there can be harder seeds, i had one where i had no nail upgrades, no quickslash, no spells for the first like 10 bosses

distant vale
#

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?

buoyant wasp
#

amusing thing, someone else just found that same thing like, an hour ago

rain cedar
#

I didn't even know there was a bench there

distant vale
#

I see! Have they figured out a way to cheese an exit, or is it in fact a hardlock?

buoyant wasp
#

no, you're stuck i'm pretty sure

rain cedar
#

With Isma's you might be able to get out

#

Probably not

buoyant wasp
#

probably just remove that bench in the next version πŸ˜ƒ

distant vale
#

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!

rain cedar
#

Just be careful where you sit at benches

#

Feels like half the benches in the game can get you stuck

buoyant wasp
#

there's the unn one, and also the nail master one

#

unless you removed that

#

(if you don't have CH

rain cedar
#

Nah not yet

#

Pretty low priority as far as I'm concerned

#

No reason to even go to great slash

buoyant wasp
#

not yet πŸ˜ƒ

distant vale
#

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

rain cedar
#

The log is in the save folder

#

But it gets reset every game launch

buoyant wasp
#

is the most recent version the 11:40AM one?

rain cedar
#

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

distant vale
#

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!

buoyant obsidian
#

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

rain cedar
#

It's too abusable

#

That would be an OP button

buoyant wasp
#

^

#

and honestly, we're slowly killing the bad benches anyway

buoyant obsidian
#

inb4 benchless

slate owl
#

In Randomizer, can you get Shade Soul without Vengeful Spirit?

young walrus
#

No. It's an integer

#

In base game it's not, but in rando it is

slate owl
#

Wondering because .xml file always list requirements like ("Vengeful Spirit" | "Shade Soul")

#

And ("Mothwing Cloak" | "Shade Cloak") etc.

young walrus
#

Because when you get one of those, it gives you lvl 1

buoyant wasp
#

because if you have shade cloak, you don't have mothwing cloak

young walrus
#

But picking up either counts

#

The game can put either at a location

buoyant wasp
#

^

young walrus
#

So.... Cloak1 could be super unavailable

slate owl
#

Ya, but for the .xml file it doesnt really matter.

young walrus
#

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

slate owl
#

Yes, they are 2 distinct entries.

#

But as a requirement, they are the same.

young walrus
#

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

slate owl
#

You would have both.

young walrus
#

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

slate owl
#

The only thing it changes is the readability of the .xml file.

young walrus
#

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

slate owl
#

What Im suggesting in a way is adding a basic variable/substitute system in the xml.

rain cedar
#

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

slate owl
#

Ex: CharmAttack = "Grubberfly's Elegy" | "Glowing Womb" | "Spore Shroom" | "Weaversong"

#

And in the case I was talking about, BallSpell = "Vengeful Spirit" | "Shade Soul"

young walrus
#

I see what you're saying now.

slate owl
#

But tbh, considering the xml wont really change over time, its probably useless..

#

I guess everything with CLASSIC means it require shade skip?

rain cedar
#

Oh

#

I completely forgot to parse that in the code

#

But yes

#

That's what it's supposed to be

buoyant wasp
#

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

rain cedar
#

Cool

buoyant wasp
#

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

rain cedar
#

Sounds good

slate owl
#

What does the tracker do?

buoyant wasp
#

it's the overlay for streamers

#

it's in the pins

slate owl
#

Ah ok.

#

Ive been thinking about creating a randomizer helper.

buoyant wasp
#

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

slate owl
#

Well, my helper would work all the time XD

buoyant wasp
#

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?

slate owl
#

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.

rain cedar
#

How are you gonna make something that tells you where to go without that?

slate owl
#

You say what you got, it says what items are accessible.

buoyant wasp
#

hmmm, need to implement a way to do mod ordering

buoyant wasp
#

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 πŸ˜ƒ

buoyant wasp
#

@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.

compact sorrel
#

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 wasp
#

@buoyant obsidian can probably help

buoyant obsidian
#

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

compact sorrel
#

@buoyant obsidian ❀

buoyant obsidian
#

If only I had Discord Nitro

compact sorrel
#

Wow, UnityStudio is like a WAY better then UAE

buoyant obsidian
#

It crashes a lot though

#

but yeah it's infinitely better for exporting

#

Everything you want is probably named Atlas0

compact sorrel
#

Yea, i've already found it, thanks!

buoyant obsidian
#

@compact sorrel there's a .zip of Grimm textures, just in case you missed anything. It can be hard to find everything sometimes.

compact sorrel
#

Appreciated

buoyant wasp
#

if i understand correctly, the sprite sheets just randomly change each build right?

buoyant obsidian
#

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

noble trout
#

guys how the fuck do i translate the archives

#

what kind of code is that

cedar raven
#

@leaden hedge no rewards option appeared after THK for boss rush, but apparently i can skip it

rotund surge
#

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

leaden hedge
#

just start a new save

rotund surge
#

ah thanks it just worked now

fair rampart
#

if you're worried about saves

#

C:\Users\[Username]\AppData\LocalLow\Team Cherry\Hollow Knight

rotund surge
#

thanks guys, but is it supposed to be different from the one used in this video?

leaden hedge
#

yes

toxic valley
#

rip cant complete radiance cuz i had no monarch wings πŸ˜₯

#

pls send hlep

leaden hedge
#

pickup monarch wings

slate owl
#

@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.

rain cedar
#

Oh I'm surprised that even runs

#

There were a couple others I caught because it broke completely

slate owl
#

There are 15 upgrade/items that affects what is accessible.

slate owl
#

What does <requirements>KEYITEMS</requirements> means?

rain cedar
#

Top of the xml

slate owl
#

?

rain cedar
#

There's a keyitems tag

#

It's that

slate owl
#

<name>Quick Focus</name> has <requirements>KEYITEMS</requirements>

rain cedar
#
    <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>```
slate owl
#

So it requires owning everything?

rain cedar
#

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

slate owl
#

Ah

surreal helm
#

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

dapper folio
#

yep, you'll find the same thing with HK if you had all the upgrades when you fought him before

rain cedar
#

@buoyant wasp Not seeing the Randomizer 1.5 code changes on github

buoyant wasp
#

haven't pushed them yet

#

wanted to see if it broke stuff

rain cedar
#

Alright

buoyant wasp
#

was hoping someone last night would have time for a rando run and do that hollowface

rain cedar
#

What all did you change? I want to be sure we don't end up with conflicting branches

buoyant wasp
#

sec, i'll do a PR now so you can see

#

there

rain cedar
#

Thanks

tranquil glen
#

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?

rain cedar
#

No, that would be terrible

#

The 3rd and 4th nail upgrade are too time consuming to get

tranquil glen
#

makes sense

bold edge
#

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?

rain cedar
#

Not sure that's up to date for 1.2.2.1

bold edge
#

i've seen people play it with 1.2.2.1

young walrus
#

Did you install the correct API version?

#

I think it was done being ported to API

rain cedar
#

Idk haven't seen gradow in here in a while

young walrus
#

Me neither

#

He said he was taking a break for something I think

bold edge
#

well nvm, the video i saw was 1.2.1.4

fair rampart
#

having trouble with installing randomizer

#

hollow knight will not boot up.

young walrus
#

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

fair rampart
#

I did install the modding api

#

I merged the randomiser hollow knight data folder with the modding api one

young walrus
#

What version of the game do you have

#

And what API version did you download

fair rampart
#

the latest patch

young walrus
#

Steam? GOG? Mac?

fair rampart
#

Steam

#

fedora linux

young walrus
#

I don't think it works on Linux

fair rampart
#

oh, that would explain it.

#

uh thanks, i guess.

young walrus
#

Would need one of the modders to confirm

fair rampart
#

I think its worth trying it out on windows.

slate owl
#

@rain cedar I just got Shade Cloak on Randomizer and it did a hard save there.

rain cedar
#

You've got the one from #races-discussion, right? I haven't updated the drive because there's a couple problems with it

slate owl
#

Ah, you updated it

rain cedar
#

Not super recently

#

I just mean the one from before the race

slate owl
#

Is the link pinned?

rain cedar
#

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

slate owl
#

Not sure which one is it

#

Ill use the one you posted.

buoyant wasp
#

@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.

fair rampart
#

@wyza thansk

#

i got it to work anyway

#

just loaded up good old buggy windows 7

buoyant wasp
#

@rain cedar is there a way to respawn a grub?

rain cedar
#

Not any easy way, no

buoyant wasp
#

k

swift python
#

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.

buoyant wasp
#

what does the upper left hand corner say?

#

in game

fair rampart
#

grimm

#

do you have the randomiser folder next to hollow knight data in the hollow knight folder?

swift python
#

Nothing. And no, I don't. I figured it had to go in the mods folder of the API.

buoyant wasp
#

if there is nothing, then the api isn't installed

fair rampart
#

I think wyza should handle this.

swift python
#

I unloaded all of the files of the api. I'm also not seeing an install executable.

buoyant wasp
#

there is no install

#

go watch the video on how to install bossrush

#

it's the same steps

fair rampart
#

yeah

#

just put the randomiser folder near hollow knight data

#

and your fine

swift python
#

Thanks, dudes.

red thicket
#

anyone here know how i can get the boss rush mod to work?

#

not really sure how to set it up, thanks!

royal ridge
#

There's a guide in the pinned messages @red thicket πŸ˜„

red thicket
#

Perfect, thanks!

royal ridge
#

No problem! omggrub

#

Have fun!

noble trout
#

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?

rain cedar
#

For translation?

#

It's kinda late now but tomorrow I can make a simple mod for changing language strings

royal ridge
#

Did teamcherry end up getting back to you Fuzzy? Just curious

noble trout
#

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

fair rampart
#

you are the pot

#

kek

noble trout
#

you see what i mean

#

it just doesnt feel right

fair rampart
#

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

noble trout
#

do someone know a program that lets you and your friend work on a file from the same time without overwriting each other?

fair rampart
#

mostly because context is heavily the main problem

#

uhh

royal ridge
#

I take your word for it Fuzzy no need to screencap it πŸ˜„

fair rampart
#

you could try an SVN

royal ridge
#

Was just curious

fair rampart
#

but, well, maybe a Google Docs is better

#

because you can write that in real time

noble trout
#

can we work on google docs in the same time?

fair rampart
#

yep!

noble trout
#

oh

fair rampart
#

it's pretty great

noble trout
#

but i dont think google docs support the translation program me and my friends are using

royal ridge
#

Yeah itis

fair rampart
#

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

empty stratus
#

We are working with .ass and .txt files.

fair rampart
#

wut, both?

empty stratus
#

We are translating in .ass files and then convert it to .txt files to convert it to .xml file for the game.

fair rampart
#

uh

#

i thought you could also translate in .txt

#

after all the .xml file is just text

empty stratus
#

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

swift python
#

Yo, what's the randomizer mod actually do?

leaden hedge
#

randomize

swift python
#

randomize what?

leaden hedge
#

charms, spells, skills

swift python
#

after you collect them, or where you collect them?

leaden hedge
#

where they are collected

swift python
#

ok, thanks.

leaden hedge
humble sinew
#

You could try and get Shade cloak and get Deep Focus

young walrus
#

Dunno if you've been told yet either, but Hard mode is.... hard. speedrunning skips/tech most likely required

buoyant wasp
#

wow, yes, that'd be amazing

leaden hedge
#

could also probably use this for randomizer, so you don't have to click

buoyant wasp
#

yeah, i had that thought too

leaden hedge
#

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

buoyant wasp
#

neat

#

it's a start anyway

swift python
#

In the randomizer mod, do the fireball and dash stay in the same place? Or did I mess something up again?

leaden hedge
#

did you enable it?

young walrus
#

^

leaden hedge
#

should have been a button below normal / steel soul on save mode select

young walrus
#

^^

#

There's a big "Randomizer: OFF" thing

#

you have to click it

swift python
#

I don't see that.

young walrus
#

then the mod isn't installed correctly

swift python
#

shit.

buoyant wasp
#

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

swift python
#

I see the upper left stuff

buoyant wasp
#

and the new game screen should have a big randomizer button that when clicked says "off/easy/hard"

swift python
#

Wait, no. It says Randomizer is version 1.3.1

leaden hedge
#

have you beat the game?

swift python
#

103%

buoyant wasp
#

well, 1.3.1 is fine too

swift python
#

It just says the thing in the upper left. No randomizer button. Classic or Steel Soul modes are the only ones available

buoyant wasp
#

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)

swift python
#

I did that, and it replaced the thingy.

buoyant wasp
#

what does your game's root folder look like

#

screenshot

swift python
#

that's the C-Sharp folder, right?

buoyant wasp
#

nope

#

the one 2 levels above that

#

where "hollow knight.exe" is at

swift python
#

The bit under the highlighted one?

buoyant wasp
#

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"

swift python
#

Like that?

buoyant wasp
#

yup

swift python
#

Cool. Attempt number two!

#

It worked!! Thank you.

buoyant wasp
#

np

noble trout
#

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?

buoyant wasp
#

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/

noble trout
#

Yeah that is what i thought

winter basin
#

how do i install the scale mod?

buoyant wasp
#

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

winter basin
#

is in the Managed Folder?

#

it says that i need to replace file

buoyant wasp
#

basically you need to overwrite Assembly-Csharp.dll

winter basin
#

ok

#

thank you

buoyant wasp
#

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

winter basin
#

ok

#

oh wait

#

my hollow knight is not 1.2.2.1

buoyant wasp
#

won't work then

winter basin
#

its 1.2.1.0

buoyant wasp
#

1.2.2.1 windows only

winter basin
#

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

buoyant obsidian
#

...what?

young walrus
#

modding a pirated copy...... kek.

#

nice meme

winter basin
#

it may work

#

xD

young walrus
#

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%

buoyant wasp
#

Yeah, we're not going to help you with modding a non-owned version of the game

young walrus
#

^

leaden hedge
#

if you give me $20 ill help you

young walrus
#

kek

buoyant wasp
#

which basically amounts to "i'll go buy the game for 10$, send the key to you and pocket the 10$ as S&H" ? hollowlenny

buoyant obsidian
#

I'll help for $15

leaden hedge
#

$14.50

exotic venture
#

$14.25

winter basin
#

it worked

#

: )

#

thanks for the help

empty stratus
#

Just from curiosity. In what programming language is the game built?

hazy sentinel
#

fsm intenseface

#

C# iirc

copper nacelle
#

yea, it's c#

buoyant wasp
#

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

leaden hedge
#

the fsm is c# πŸ€”

buoyant wasp
#

really?

copper nacelle
#

FSM is pain

empty stratus
#

Oh cool.

leaden hedge
#

yes, its serialized methods + parameters

empty stratus
#

Today I started to read my c# book

buoyant obsidian
#

C# is so vast

copper nacelle
#

it's built entirely out of pure pain

hazy sentinel
#

programming books πŸ€”

buoyant wasp
#

FSM is definitely pain

copper nacelle
#

the fsms

empty stratus
#

@hazy sentinel yeah like the old fashioned way.

copper nacelle
#

I tried to look at ngg for the basis for my first mod and then I saw the fsm stuff and died

buoyant wasp
#

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

leaden hedge
#

its because its serialized in a retarded way

buoyant wasp
#

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

rain cedar
#

I didn't mean to do that

#

I'll fix it when I'm out of bed

tranquil glen
#

in randomizer can mantis claw spawn after the lost kin fight?

hazy sentinel
#

yes

#

if you mean broken vessel

tranquil glen
#

yes

#

thats what i meant

hazy sentinel
#

on my only randomizer playthrough claw was at monarch wings

#

fun times

tranquil glen
#

i got grubsong 😦

#

you need mantis claw to beat the game right?

hazy sentinel
#

yeah

tranquil glen
#

guess ill keep looking

hollow pier
#

no you just need to play lightbringer to beat the game

tranquil glen
#

wait, how do i leave ancient basin without walljump?

exotic venture
#

uhm

#

good point

#

pogo?

rain cedar
#

You quit

hollow pier
#

no

#

you need sprintmaster

tranquil glen
#

oh right

#

is that why the bench was removed?

rain cedar
#

Yep

exotic venture
#

good thinking actually

buoyant wasp
#

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 πŸ˜ƒ

rain cedar
#

Even with tram pass don't tbh

#

Such a pain in the ass to get out of there

young walrus
#

oh cmon. that skip is fun

rain cedar
#

It's literally just random chance

#

Most of the time the sibling decides to become dumb

young walrus
#

you can kite them in a way they don't suicide

#

....usually

buoyant wasp
#

unless it loses it's brain

rain cedar
#

No not suicide

#

Their AI just breaks

buoyant wasp
#

and has to be punched up

rain cedar
#

Yeah

buoyant wasp
#

forever

young walrus
#

oh right. that dumb 1.2.2.1 bug

#

was fine before that

buoyant wasp
#

it was fireborn who did that right? spent like 20 minutes trying to get out

#

only to find out he was still stuck

young walrus
#

yeah

#

that was during the rando that i actually won

buoyant wasp
#

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

young walrus
#

that's the only way out pre 1.4

buoyant wasp
#

correct

young walrus
#

or do you mean to check all 3

buoyant wasp
#

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

young walrus
#

no thanks

#

lol

#

is that skip even in the logic?

buoyant wasp
#

don't think so

young walrus
#

didn't think so

buoyant wasp
#

cause man that's a time sink

young walrus
#

thought it was claw or shade cloak only

buoyant wasp
#

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

rain cedar
#

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

buoyant wasp
#

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

rain cedar
#

Yeah not gonna bother with that in the logic

#

Too patch specific

buoyant wasp
#

yeah

rain cedar
#

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

copper nacelle
#

in randomizer

#

are the MoP doors part of the logic

rain cedar
#

Literally just talked about that with wyza

copper nacelle
#

thought that was just dash slash

#

Β―_(ツ)_/Β―

#

alright

rain cedar
#

It's the same glitch

copper nacelle
#

ohh

#

alright

buoyant wasp
#

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

rain cedar
#

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

dapper folio
#

volume somewhere? another switch?

rain cedar
#

Probably just a position trigger somewhere or another switch

#

Didn't look into it too much

buoyant wasp
#

@rain cedar - you have the latest rando with the xml fixes, figure might try giving it a run through

rain cedar
buoyant wasp
#

ah

#

k

rain cedar
#

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

buoyant wasp
#

ok

rain cedar
#

Have you tried the randomizer with your changes for the tracker yet?

buoyant wasp
#

not a full run

#

just picked up the first item

rain cedar
#

Alright, for now I'm not gonna merge that then

buoyant wasp
#

one of the reasons i want to run it otnight πŸ˜ƒ

rain cedar
#

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

buoyant wasp
#

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

rain cedar
#

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");
buoyant wasp
#

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);
        }
rain cedar
#

Yeah, right there

buoyant wasp
#

cool, i'll give it a spin

rain cedar
#

@buoyant wasp Planning to stream it?

buoyant wasp
#

will probably here in about 20 when the wife goes to bed πŸ˜ƒ

rain cedar
#

Gotcha

rose osprey
#

What's the nightmare god grimm mod?

rain cedar
rose osprey
#

damn that looks brutal

young walrus
#

Nobody has beaten it single segment yet

rose osprey
buoyant wasp
#

so, not really sure what to do about the spells

young walrus
#

How did the new rando patch work out

buoyant wasp
#

mostly ok. the overlay is broken for spells atm

#

and i had a weird crash before HK

#

otherwise, seemed fine

#

trolly seed

rain cedar
#

That crash happened to a couple people a while ago

buoyant wasp
#

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

young walrus
#

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

buoyant wasp
#

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"

young walrus
#

Was that the new beta overlay you were testing Wyza?

buoyant wasp
#

updated overlay to match the updated randomizer

#

so, yeah

young walrus
#

The old one won't work with new version?

buoyant wasp
#

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

young walrus
#

I mean yeah. I agree. But as of right now, it's stable. Just thinking about the races coming up

buoyant wasp
#

yeah, unless it turns out to be really stable between now and the 16th, i won't push the new one until after

young walrus
#

Yaya

#

Redundant message

#

Lol

buoyant wasp
#

πŸ˜ƒ

#

@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.

rain cedar
#

Should be fine, yeah

rain cedar
#

There is no sheet titles in the xml, only keys

#

Title is probably just the file name

buoyant wasp
#

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
rain cedar
#

Could you send me these?

#

That's a lot of files so don't do it here

buoyant wasp
#

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

rain cedar
#

That's fine, I can figure it out

buoyant wasp
#

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

rain cedar
#

Make Zote's speech audio play constantly as well for full Zote immersion

buoyant wasp
#

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

rain cedar
#

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

buoyant wasp
#

i looked at that briefly

#

the RTL thing

#

the text rendering library they use has a RTL flag

rain cedar
#

That's convenient

buoyant wasp
#

protected bool TMP_Text.m_isRightToLeft;

#

oh, and i guess you manage it with this: public bool isRightToLeftText

rain cedar
#

Thanks

buoyant wasp
#

outside of that, idk, the code for the text handling is huge.....

#

hopefully it'll "just work"

#

which seems unlikely

rain cedar
#

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

buoyant wasp
#

yeah, i figured you'd make it at least partially configurable, "oh, you want czech? no problem."

rain cedar
#

Probably gonna have to hook just about everything in Language honestly

buoyant wasp
#

probably

rain cedar
#

I don't have to hook LanguageNameToCode at least, so that's one

#

Since it's already got a ton of languages in it other than the supported ones