#archived-modding-development

1 messages · Page 284 of 1

copper nacelle
#

so i didn't see it end

ornate rivet
#

ok

copper nacelle
#

and then died

fair rampart
#

I'm confused as to how I do the printscenehierarchytree thing

#

do I just change the printComponents bool in modcommon with dnspy?

#

to true

copper nacelle
#

gameObject.PrintSceneHierarchyTree("eeeeeeee")

#

It has a PolygonCollider so TinkEffect won't work on it

ornate rivet
#

so then what do I do

copper nacelle
#

gimme a min

#

might've got it

ornate rivet
copper nacelle
#

yeah it works

fair rampart
#

do I need to put anything in the quotes?

ornate rivet
#

!!!!!!!!!!!!!!

copper nacelle
#

yeah the filename

ornate rivet
#

you don't have to use a file name though right? Doesn't it just drop it in the Mod folder by default?

copper nacelle
#

¯_(ツ)_/¯

#

i always use a filename

#

like

#

eeeeeeeeeeeeee

#

which is the needle

ornate rivet
#

ok

fair rampart
#

Isn't it just going to print everything?

copper nacelle
#

no it'll print the go

#

@ornate rivet

                        this.needle.GetComponent<Rigidbody2D>().velocity = new Vector2(0f, 0f);
                        this.needle.AddComponent<TinkEffect>();
                        Kin.Log("Error was here right?");
                        UnityEngine.Object.Destroy(this.needle.GetComponent<NonBouncer>());
                        var tink = UnityEngine.Object.Instantiate(GameObject.Find("Needle Tink")).AddComponent<ModCommon.NeedleTink>();
                        tink.SetParent(needle.transform);
fair rampart
#
        {
            gameObject.PrintSceneHierarchyTree("gameObjects");
        }``` this will work?
copper nacelle
#

Yeah

ornate rivet
#

THANK YOU

copper nacelle
#

yw

ornate rivet
#

might as well call this mod: Daughter of Hallownest made by 56

copper nacelle
#

excited to play it when it's finished

#

looks fun

ornate rivet
#

thanks

vapid cape
#

Same!

ornate rivet
#

what's ModCommon.NeedleTink

fair rampart
#

didn't seem to do anything?

#

oh it's because I'm not calling it when the mod initializes

hollow pier
copper nacelle
#

@ornate rivet it's needle tink but not fsm

#

Kerr rewrote Hornet without fsms

ornate rivet
hollow pier
#

wait i forgot to build ax2ums pumpkin

#

and like the 6 other things i was gonna do

#

too lazy tbh

copper nacelle
#

Does anyone know why methodof exists in dnspy but not VS

#

can't mistype fields or anything cause it won't let you build

compact sedge
#

nice

copper nacelle
#

Fody has il manip stuff

#

I need to ask 0x0ade if it'll break monomod stuff

#

or just test it

ember bloom
#

I thought it's Terraria channel

copper nacelle
#

u

#

this also seems neat

#

but it's also the same as doing it yourself or using _Data

#

so meh

copper nacelle
#

If you destroy an object with the hooks still enabled, can you check if this == null to see if it's been destroyed?

#

The answer is apparently yes

hazy sentinel
hollow pier
#

imagine how much faster building that would be on multiplayer

hazy sentinel
#

like 50% faster

copper nacelle
#

nice modded hk pic

hazy sentinel
copper nacelle
#

wtf

#

consider

#

aslkdfasdf

hollow pier
#

what is that i can't tell

hazy sentinel
#

can't even get all souls rn because supersonic soul recipe doesn't work

#

it's smooth coal

copper nacelle
#

I'm using the ObjectPoolSpawnHook

#

It's logging old/new name

#

and then it's just all new name

#

which is blank

#

By the end of the fight it keeps that change and it starts affecting Broken Vessel

#

which is annoying

hollow pier
#

oh smooth coal is pretty homo

hazy sentinel
#

yeah i started autotrashing it then didn't have enough to craft anything

hollow pier
#

it's actually decently rare

copper nacelle
#
            if (this == null)
            {
                var sre = go.GetComponentInChildren<SpriteRenderer>(true);

                if (!string.IsNullOrEmpty(sre.sprite.name))
                {
                    ModHooks.Instance.ObjectPoolSpawnHook -= Projectile;
                }

                // Broken Vessel Fix
                RevertProjectile(go);
                
                return go;
            }
#

why

#

this gives me depression

#

but it works

#

@compact sedge You said it was 5 frames for godmaster bosses, right?

#

Or am i horribly misremembering

compact sedge
#

I have 4 frames

#

idk I thought it was 2

copper nacelle
compact sedge
#

but I put 4 to be safe

copper nacelle
#

understandable

#

I'm killing the stupid find on update stuff

#

worked with one frame for lost kin

compact sedge
#

understandable

#

I can't read code I just like safety

copper nacelle
#

lightbringer has like 3 cause of that

#

@vapid cape you can do modded pantheon now i guess

#

fixed broken vessel meme

#

should i do that randoed pantheon thing

#

i'm bored

vapid cape
#

Sure! I mean, seems to be something of a market for it.

copper nacelle
hazy sentinel
#

really makes u wonder if army ants drop hive minds in hardmode

copper nacelle
#

.

warped sinew
#

Random panth wut dis

copper nacelle
#

someone had the idea of rando'd pan5

#

except abs rad is still at the end

#

¯_(ツ)_/¯

warped sinew
#

Thats a cool idea.

#

Also IG style where it gets faster and faster each boss could be good

#

Maybe random + the speed at the same time, would get chaotic

#

Lose your run to 5x gruzz mother mfw sadgrub

copper nacelle
#
  • .5/20 timescale for the first 20 bosses then just 1.5x?
#

5x maggot

#

idk

warped sinew
#

Yeah just throwing out ideas, you'd have to tweak and test it a bit to make it good

#

Or maybe each boss gets faster and faster in each fight

#

That could work

copper nacelle
#

that'd be cool

warped sinew
#

You could have settings like IG to set the speed increases and Max speed

#

Then go crazy on the panth

copper nacelle
#

yea

warped sinew
#

2x Markoth... Oh god

weak lodge
#

help what is the IL index for right before SetupBossScene, asking for a friend

copper nacelle
#

hmmmmmmmmmmmmmmmmmmmmmmmmmmm

weak lodge
#

hmmmmmmmmmmmmmmmmmmmmmmmmmmm

hazy sentinel
weak lodge
#

4 crimson keys tho

#

?

copper nacelle
weak lodge
copper nacelle
#

no

weak lodge
#

u

copper nacelle
#

u

#

seriously it's been like 99% modding discussion

#

and the 1% is veru posting terraria pics

weak lodge
#

It is veru he’s literally meme mann

copper nacelle
#

thinking

weak lodge
#

Also I recall having many general discussions here

copper nacelle
#

post 7:11 am it's been all modding discussion

weak lodge
#

Ic

copper nacelle
#

do speedruns

weak lodge
#

y I’m not a good player hollowdab

copper nacelle
#

do modding

weak lodge
#

Trying but procrastinating

#

I have both discussion and general muted because I can never go back after staying in this channel, the only alternative is your server that you hold 56butbot on because the emotes are actually good

copper nacelle
#

can you take from the end of a list using LINQ

weak lodge
#

uwot

copper nacelle
#

apparently it's collection.Skip(collection.Count() - N)

#

huh

weak lodge
#

56 u don’t get I am rarted

#

ur god but 56

copper nacelle
#

think

#

you ever kill the game

weak lodge
#

Multiple times

vapid cape
#

a speeding up random pantheon is an... interesting idea, but I'm not sure if it's a good one. Sounds like a good way to bug a lot of crap out.

copper nacelle
#

it's just a timescale change

vapid cape
#

I imagine there'd be more than a few unintended side effects? Or is it better than that?

copper nacelle
#

it's fine

vapid cape
#

I see. If it works, why not? I doubt too many bosses will get straight up BS

#

only one I can think of would be absrad lasers, actually

copper nacelle
#
[INFO]:IL_006d: ldnull
[INFO]:IL_006e: stfld BossSequenceController/BossSequenceData PlayerData::currentBossSequence
[INFO]:IL_0000: ldc.i4 0
[INFO]:IL_0000: call System.Object MonoMod.RuntimeDetour.HookGen.HookILCursor::GetReference(System.Int32)
[INFO]:IL_0000: callvirt System.Void System.Action::Invoke()
[INFO]:IL_0073: call System.Void BossSequenceController::SetupBossScene()
[INFO]:IL_0078: ret
#

am i dumb

rain cedar
#

What are you trying to do?

#

PlayerData.currentBossSequence = null

#

BossSequenceController.SetupBossScene()

#

That's what that il looks like to me

copper nacelle
#

yes

#

that's what it is in the method

#
    public static void SetupNewSequence(BossSequence sequence, BossSequenceController.ChallengeBindings bindings, string playerData)
    {
        BossSequenceController.currentSequence = sequence;
        StaticVariableList.SetValue<string>("currentBossDoorPD", playerData);
        BossSequenceController.bossIndex = 0;
        BossSequenceController.currentData = new BossSequenceController.BossSequenceData
        {
            bindings = bindings,
            timer = 0f,
            playerData = playerData,
            bossSequenceName = BossSequenceController.currentSequence.name,
            previousCompletion = GameManager.instance.GetPlayerDataVariable<BossSequenceDoor.Completion>(playerData)
        };
        BossSequenceController.WasCompleted = false;
        GameManager.instance.playerData.currentBossSequence = null;
        BossSequenceController.SetupBossScene();
    }
#

I'm inserting a delegate which shuffles the bosses list before setup boss scene

#
            while (c.TryFindNext(out HookILCursor[] cursors,
                instr => instr.MatchCall(typeof(BossSequenceController), "SetupBossScene")
            ))
            {
                cursors[0].EmitDelegate(() =>
                {
                    object seq = SEQUENCE_FIELD.GetValue(null);

                    BossScene[] bossScenes = (BossScene[]) BOSS_SCENES_FI.GetValue(seq);

                    Shuffle(bossScenes);

                    BOSS_SCENES_FI.SetValue(bossScenes, seq);
                });
            }
rain cedar
#

What's happening that's wrong?

copper nacelle
#

i stare at the wall dramatically

#

and softlock

rain cedar
#

When you try to enter the pantheon?

copper nacelle
#

Yeah

rain cedar
#

That's fucked

copper nacelle
#

yes

#

oh

#
[INFO]:Argument is out of range.
Parameter name: index
#

i added a try catch to the delegate

#

noot

rain cedar
#

But if cursors is empty can you even do anything?

copper nacelle
#

that's on delegate run

#

cursors is fine

#

apparently

rain cedar
#

Ok then idk where your error is because that's the only array access I see

#

I guess you haven't posted it

copper nacelle
#

i had this

#
        private static void Shuffle<T>(IList<T> list)
        {
            for (int n = list.Count; n > 1; n--)
            {
                int k = RNG.Next(n + 1);
                T value = list[k];
                list[k] = list[n];
                list[n] = value;
            }
        }
rain cedar
#

Wtf

#

Starting at end of list and skipping 0

#

Skipping 1 too

copper nacelle
#

i took it off stackoverflow

#

easy

rain cedar
#

Stackoverflow sucks

#

That's a guaranteed instant out of bounds exception

copper nacelle
#

wow nice

#

wait what the fuck

#

god tier code

rain cedar
copper nacelle
#

weary

#
                        BossScene[] bossScenes = (BossScene[]) BOSS_SCENES_FI.GetValue(seq);

                        bossScenes = bossScenes.OrderBy(i => RNG.Next()).ToArray();

                        BOSS_SCENES_FI.SetValue(bossScenes, seq);
#

am i dumb

#

it threw an exception

rain cedar
#

What's the error?

compact sedge
#

smhmyhead is that compact theme

copper nacelle
#

says the person who uses compact GWchadMEGATHINK

rain cedar
#

Yeah I like being able to read more than 3 messages at a time

compact sedge
#

only I'm allowed to use that

#

well as long as your ide is in darkmode I think we're good

copper nacelle
#

bossScenes doesn't exist

#

apparently

rain cedar
#

I prefer a gradient background going from dark to light

copper nacelle
#

oh

#

i swapped args

#

wow it didn't error this time

#

and still started at vengefly king

#

wow ok my luck was just god

#

the next boss was dung defender

rain cedar
#

I had the same shit with initial testing of rando 2

#

I steal the fury pickup so something being fury usually meant it broke

#

Except for when it didn't mean that

copper nacelle
#

There's not a bench right after vengefly and gruz for the first pantheon right?

rain cedar
#

I don't think so

vapid cape
#

Nope, the first bench is after O&M

copper nacelle
#

easy

rain cedar
#

That would be dumb

copper nacelle
#

apparently benches are boss scenes

vapid cape
#

there is a Godseeker dialogue room after Hornet though

rain cedar
#

Remove the godseeker scenes from the rotation tbh

#

Pointless lore rooms

copper nacelle
#

yeah

#

I'll log the array real fast and then kill them

rain cedar
#

Can't wait to do p5 and get every bench in a row at the start

#

Then die

copper nacelle
#

yes

rain cedar
#

Maybe keep the benches in the same spots

copper nacelle
#

yeah

vapid cape
#

The benches being randomized could be fun, I think

#

fucks with binding runs, gives them big boons or starves them of their lifeblood crutch

#

makes it more rng, but can make the moment to moment progression more exciting

copper nacelle
#

I could make it an option

#

¯_(ツ)_/¯

#

the fuck

#

I got vengefly at the beginning again

delicate ether
#

room connection randomizer would be cool, and stupid to balance to ensure no softlocks.

copper nacelle
#

if you don't want it balanced

delicate ether
#

oh, thats a thing already

rain cedar
#

There's an extremely wip mapping thing pinned

copper nacelle
#

yeah it has crossroads mapped

rain cedar
#

Never gonna be finished because it's horrible tedious work

#

That nobody wants to do

delicate ether
#

lol

#

what is the current possibility of making new rooms?

copper nacelle
#

kdt said it would be easy iirc

delicate ether
#

so we can get things similar to super metroid hacks

rain cedar
#

Making new rooms is just tedious

#

Not hard in any way

delicate ether
#

that would really boost this game imho

rain cedar
#

The payoff isn't worth the effort unless somebody makes an actual editor

copper nacelle
#

why don't lore rooms have any connection at all

#

tc please

#

it's just GG_Unn

delicate ether
#

bleh to me and my non existent coding skills!

young walrus
#

Map every room

#

Then the room rando is ez

rain cedar
#

I mean yeah but nobody will do that

young walrus
#

Don't need code skill for that

rain cedar
#

Only you ever put any work into it

delicate ether
#

what does "mapping a room" entail?

young walrus
#

I kno

#

And Crossroads took me 3 hrs

rain cedar
#

Determining requirements for getting from any exit to any other exit for every room

delicate ether
#

oh

#

logic map

rain cedar
#

Yeah so we can make an actual connection randomizer

young walrus
#

Under conditions for skips and no skips

rain cedar
#

That doesn't just soft lock you instantly

delicate ether
#

ffff

young walrus
#

How many rooms are there?

#

Like 1000?

#

Lol

delicate ether
#

so you have to iterate every room with every room in the game

rain cedar
#

400ish?

copper nacelle
#

498

#

but not actually 498 cause those are just scenes

young walrus
#

So 400 times 4ish is time 2

rain cedar
#

Like 100 of those are just GG

young walrus
#

That's how many lines of logic you need to write

copper nacelle
#

yeah

rain cedar
#

Also menu, credits, unused scenes

copper nacelle
#

Knight_Pickup

young walrus
#

So 3200 cells of logic to map all rooms

delicate ether
#

i would think writing it is the easy part

young walrus
#

Have fun

rain cedar
#

It is easy

delicate ether
#

figuring it out is the hard part

rain cedar
#

Just incredibly tedious

young walrus
#

The mapping is the hard part

#

So have at it

copper nacelle
#

Are the GG_engine rooms the guy talking to you

rain cedar
#

Real talk though if someone finished that I would 100% steal it for item randomizer

#

Idk probably

young walrus
#

The mapping?

rain cedar
#

Yes

delicate ether
#

i dont think im smart enough to figure that logic out

#

lol

young walrus
#

Could just throw it all in one mod, yeah

#

Well youd have to have a vast knowledge of speedrun skips

delicate ether
#

which i dont have

rain cedar
#

Nah I just mean I would make something to parse the tree into item requirements

#

Assuming default arrangement

#

See if there's any glaring differences in what I already have

young walrus
#

Well you could also combine the two options. Randomize rooms and items

#

So the logic still works

delicate ether
#

so a list of rooms that require x requirements would have to be placed in places located after said requirement was attainable

young walrus
#

Not even rooms.

#

Paths

delicate ether
#

true rooms have multiple paths

young walrus
#

Transition to transition

rain cedar
#

The good thing about something like this being done is any time there's a new skip it would be super easy to add in

#

Just one spot to change

delicate ether
#

you could maybe reduce the work and just have zone randomizers, that only randomize rooms in that zone, but thats more limiting and less interesting

young walrus
#

And still full of softlocks

rain cedar
#

Most zones if you can get in them you can get everywhere in them

copper nacelle
#

It's unn, pk, and uhhhhh whitelady right

#

for p5 lore shit

rain cedar
#

Wtf is pk?

copper nacelle
#

pale king

rain cedar
#

Oh ok

young walrus
#

Plus there's a bunch of buildings and one entrance rooms too

rain cedar
#

Yeah those can be ignored

young walrus
#

Mapping is just super complicated

rain cedar
#

Put anywhere after the fact

young walrus
#

Except items

#

Which are in those rooms

#

Like shape of unn

rain cedar
#

Makes sense

young walrus
#

So even within one transition rooms, there's requirements to reach items

rain cedar
#

For the most part nah

young walrus
#

And in other more complex rooms, there's still requirements to reach items too

rain cedar
#

Unn/thorns/sharp shadow

#

I can't think of others right now

young walrus
#

It's a huge web of complexity

delicate ether
#

also, have fun having the map be updated to reflect the changed layout

young walrus
#

And to be anything other than exhaustive isn't good enough

rain cedar
#

I don't really give a shit if the map is accurate

young walrus
#

^

rain cedar
#

Like that's not even possible

delicate ether
#

:joy:

rain cedar
#

The new layout would 100% overlap

#

In almost every case

delicate ether
#

id wanna see it looking fugly just for giggles

young walrus
#

Could maybe eventually do like.... A small snippet that changes as you move

#

Like it only shows the room ur in plus adjacent rooms

delicate ether
#

"why is white palace and the hive overlapped above dirtmouth?"

young walrus
#

But that's still fucking complicated

rain cedar
#

Also still prone to overlaps

young walrus
#

Yup

rain cedar
#

I mean even the actual game layout overlaps

delicate ether
#

where?

rain cedar
#

A ton of places

#

They just make the map lie

delicate ether
#

i see

young walrus
#

Would you make it so left can only go to right transitions?

delicate ether
#

i dont mind a lying map

young walrus
#

And etc

delicate ether
#

id want all teansitions to work with each other

#

go left and you enter from the ceiling

#

etc

#

lol

rain cedar
#

Probably do a setting

young walrus
#

Might not even work out to fit all sides

copper nacelle
#

the dll i sent tries to do l => r and stuff

young walrus
#

Tries

copper nacelle
#

it's fucked tho

#

yeah

#

WorldNavigation is a good class

rain cedar
#

The problem is that L/R transition count isn't gonna be the same

young walrus
#

A room and item randomizer is still my ultimate dream. I just need to sit down and put the hours in

rain cedar
#

Because of doors

young walrus
#

That's what I mean, sean

#

It just won't work

delicate ether
#

room, item, enemy, boss randomizer

rain cedar
#

2 of those exist already

delicate ether
#

the enemy randomizer needs work, and i guess the item rabomizer is decent, ive been using it, fun times

#

first item i got was dreamnail

rain cedar
#

Decent

#

Thanks

#

Love you too

delicate ether
#

lol

young walrus
#

Well ur playing on ez

#

It's not meant to be played on easy

delicate ether
#

i mean i dont know whats good or bad in hollow knight modding

copper nacelle
#

If you're playing on easy you can't really complain about it being easy

rain cedar
#

I mean easy should still try to make the dream nail deep in the item tree

copper nacelle
#

Yeah

rain cedar
#

But "first" probably means fury

#

Which is a bit of a special case

delicate ether
#

i liked getting it firat so i could dream nail stuff i otherwise wouldnt be able to

young walrus
#

BTW.... Rando 2 would be great of gate was randomized

#

So 2 DN pickups

#

It's just too scarce right now

#

3 was too much

delicate ether
#

i wish gathering swarm was a little closer to the start

vapid cape
#

IMO item randomizer really needs to mix up some relic locations into it all. The "problem" with it is there's not too much surprise in where you can find stuff, and the majority of it is open as soon as you get access to the 2 shops.

rain cedar
#

Yeah my plan was to make a shop component and place one of those on the seer

#

But I got like halfway through making that and got bored

vapid cape
#

if something important is in said shops, game's over, pretty much

young walrus
#

Play on hard

rain cedar
#

Shops are treated as a single location for progression items

young walrus
#

Stuff is rarely in shops

copper nacelle
#

^

young walrus
#

On hard

delicate ether
#

i got crystal dash and descending dive like in the first five minutes lol

young walrus
#

Yeah. Cuz easy

delicate ether
#

1 hour in and i still dont have normal dash or wall climb

vapid cape
#

I got Isma's out of Salubra's shop, I think Mantis Claw was in Sly's, and the rest of my stuff was just scattered around waiting to be picked up. I was also on hard.

young walrus
#

Easy assumes you know zero skips so it has to give you a ton

rain cedar
#

Once you get claw it's incredibly easy

delicate ether
#

claw is ezmode

rain cedar
#

I actually want to make a no claw mode

#

Where it just doesn't exist

#

But it's work so idk when

#

Soon ™

young walrus
#

Lol

vapid cape
#

I never played again after that just because I didn't really find it as stimulating as some other randomizers, Hollow Knight's not really got THAT much gating in it.

copper nacelle
vapid cape
#

You can pretty much reach about anything once you have 2 or so main pickups

delicate ether
#

make a mod that adds colored doors and colored keys

copper nacelle
#

play the seed mys gave races

#

it'll change your perspective rapidly

rain cedar
#

Keys for specific doors is actually a neat idea

young walrus
#

Or play more than just 1 or 2 seeds

rain cedar
#

So you can't just get into waterways free with the sly key

delicate ether
#

can you make chests in hk require a key?

vapid cape
#

I could play more seeds but I got too distracted with a bunch of boss mods

rain cedar
#

Yeah you could

#

You can do basically anything

delicate ether
#

put items in chests with random key requirements

rain cedar
#

The nice thing about unity is almost everything is possible

#

It's just hard

young walrus
#

Just hard cohhMy

delicate ether
#

another option is make crystal dash drain soul

young walrus
#

Why

copper nacelle
#

Should I keep PV and stuff at the end of pan4 and pan1 and stuff

#

or no

delicate ether
#

such that some places rrquire multiple filled soul vessela

#

to reach

vapid cape
#

I do think the randomizer could do with some more mixing up, though. I'd be happy if it was just relic locations randomized along with everything, but these other weird ideas sound neat too

copper nacelle
#

try another seed

#

please

young walrus
#

No you wont

delicate ether
#

so you put access to a thing behind soul vessel shards

young walrus
#

There's too many relics

#

You'd hate it

rain cedar
#

Crystal dash is barely even a progression item

#

It matters in like 1-2 spots

delicate ether
#

make claw require soul per jump lol

#

that could get annoying

young walrus
#

CH just makes things faster.

supple sigil
#

is this room rando

young walrus
#

Adding a restriction to that is just silly

copper nacelle
#

item rando

rain cedar
#

Add a soul requirement to jumping

copper nacelle
young walrus
#

Room rando DNE

copper nacelle
#

i didn't add the speed stuff

supple sigil
#

is there a room rando in progress?

copper nacelle
#

unless someone maps out every room no

young walrus
#

Map all rooms

#

Kthx

supple sigil
#

a pantheon rando at least would be cool no joke

copper nacelle
#

that's what i just posted

vapid cape
#

I'll check that out here in a moment, 56

delicate ether
#

or go really brutal and add super metroid walljump mechanics. when you hit a wall, you gotta wait for a frame to trigger, then hit the opposite direction, then hit jump again

vapid cape
#

are bench rooms mixed up or are they still in the usual spots?

copper nacelle
#

mixed

supple sigil
#

i didnt click on what you just posted cause context

vapid cape
#

Sweet.

young walrus
#

3 benches in a row

#

Kthx

supple sigil
#

(there wasnt any)

rain cedar
#

Should make a brute force room mapper

copper nacelle
#

does order by random always leave the first one in place

#

or do i have god tier luck

rain cedar
#

Try every set of inputs that takes < 1 minute

copper nacelle
#

i've had vengefly all 4 times

rain cedar
#

Would only take a few years to run

young walrus
#

Lol

rain cedar
#

Every set of inputs for every set of items for every transition in the game

#

Maybe a few years is too optimistic

young walrus
#

Mapping all the rooms would probably take me like..... 60 hours

#

I'd rather just run rando bingos thx very much

delicate ether
#

but imagine how cool the mod would be

#

totally worth

copper nacelle
#

u

trim totem
#

56 what are you doing

copper nacelle
#

i made pantheon rando

#

as requested

#

milky can you tell me if you get vengefly king as the first guy

young walrus
#

Imagine the 15 people who would take advantage of all that work

#

Oh boy

vapid cape
#

Sure. I'm about to go in

delicate ether
#

Randomly replace relics and grubs would be neat

#

eith eachother

vapid cape
#

after I update Lost Lord

rain cedar
#

The room mapping could be done so fast if more people knew shit about the game

trim totem
#

y e s

rain cedar
#

Right now there's probably only 3-4 people who know enough about randomizer skips to do it

young walrus
#

^

delicate ether
#

sorry im too pleb to do it

copper nacelle
#

i apparently just had god luck

#

4 vengeflies in a row

delicate ether
#

lol

copper nacelle
#

and then sheo

young walrus
#

Mod likes its creator

copper nacelle
#

bench as second room

#

is this loss

trim totem
#

remove benches noob

copper nacelle
#

that could be an option

young walrus
#

More benches

copper nacelle
#

no

young walrus
#

And make them checkpoints

rain cedar
#

I think whenever hornet comes out I'm gonna try to make a mod to play as hornet in the main campaign

#

Assuming she has a different one, which she probably will

young walrus
#

Should be easy

#

Probs

#

Maybe

rain cedar
#

It really depends on how she moves

young walrus
#

It'll be broken af

rain cedar
#

For what changes you need to make it work

vapid cape
#

I got Vengefly as well

rain cedar
#

Like 90% chance she'll be more fun to play than the knight

#

Hold right and periodically press dash

#

Fun gameplay

young walrus
#

She likely will have way more mobility than reginald

delicate ether
#

who is reginald?

rain cedar
#

The knight, I guess

young walrus
#

Who you think

delicate ether
#

lmao

#

really

#

i figured his name was nigel or something

rain cedar
#

Smashing

vapid cape
#

Then Gruze Mother, then Oblobbles. For a moment I thought something went wrong, lol

rain cedar
#

Gruze

copper nacelle
#

nice

young walrus
#

Excuse u

#

It's empress muzznik to you

trim totem
#

56 you did something weird

rain cedar
#

Remove muzznik

trim totem
#

there's no way that happened randomly

rain cedar
#

Make lightbringer great again

delicate ether
#

give hollow knight the hitbox of a pixel and the ability to fly, but make every enemy shoot bullethell levels of bullets

#

cruz mother would be hard mode then

rain cedar
#

cruz

young walrus
#

Tom

rain cedar
#

santa

delicate ether
#

yeah cuz you'll be cruzin for a bruzin

copper nacelle
#
                    List<BossScene> scenes = bossScenes.Where(x => x.sceneName != RAD && !LORE_GARBAGE.Contains(x.sceneName)).OrderBy(i => RNG.Next()).ToList();
#

is this not random

delicate ether
#

TouHou Knight

copper nacelle
#

should i be using cryptography random or something

rain cedar
#

LORE_GARBAGE

vapid cape
#

First fight this time was Flukemarm

#

I'm going to go all the way on this one and see what happens

copper nacelle
#

hopefully it works

rain cedar
#

That should be random idk what RNG is

copper nacelle
#

new System.Random

rain cedar
#

Hopefully System.Random

#

Ok

#

Build an lfsr for randomness

copper nacelle
#

I'm trying unity engine random

rain cedar
#

New levels of desperation

copper nacelle
#

it's still vengefly

#

why

vapid cape
#

lmfao

#

Flukemarm, bench, enraged guardian, bench

copper nacelle
#

cg2 is very difficult

#

i have no idea why this isn't random

rain cedar
#

Oh I see the stackoverflow code you tried to steal

#

You translated it to a for loop

#

But wrongly

#

Good job

copper nacelle
#

oh it does n-- at the beginning

rain cedar
#

Idk try

list.Sort((l, r) => RNG.Next(3) - 1);
trim totem
#

what does that mean

rain cedar
#

It means sort it

#

But randomly

compact sedge
#

why do things do things starting from the last element and going down?

rain cedar
#

Idk

#

Sometimes that has use

#

I don't see the purpose here

vapid cape
#

This is kinda bonkers. I'm liking it.

copper nacelle
#

it's still vengefly

rain cedar
#

Did you try what I put?

copper nacelle
#

yes

rain cedar
#

Oh no

#

That doesn't make sense

copper nacelle
#

It's not hard coded either

#

It's in the list

rain cedar
#

Do it again

copper nacelle
#

alright

compact sedge
#

and if you wanna tell me that it's 2% faster to count down than count up my counterpoint is it's about 3 times faster to use fully optimized c instead of c#

rain cedar
#

Why stop at C?

copper nacelle
#

Not even writing machine code smh

rain cedar
#

Just make perfectly optimized asm

compact sedge
#

honestly, gcc is better at optimizing code than humans are at this point.

#

it could probably become sentient

vapid cape
#

My order so far is Fluke > bench > Enraged Guardian > bench > sly > SoB > Grimm > DD

rain cedar
#

SoB

#

Son of Bitch

copper nacelle
#

did you know vengeflies are nsfw

#

also it's still vengefly

rain cedar
#

Honestly Clyde should just be disabled

#

It doesn't stop explicit images

#

It stops things randomly

copper nacelle
#

yeah

vapid cape
#

I think the vengeflies might be the first fight on the first run always?

copper nacelle
#

Yeah but why

rain cedar
#

Look into the fsm for the menu that starts it

#

Probably hardcoded transition to vengefly

copper nacelle
#

but if you die and use the menu again it works

rain cedar
#

Idk

copper nacelle
#

the 1st one should be cg

#

but it's not

vapid cape
#

Yeah, I dreamgated out and went back in, Flukemarm was then first

rain cedar
#
if (!died) Vengefly();
else CheckList();```
copper nacelle
#

depression

rain cedar
#

Why did discord make one of those functions blue and another not blue?

vapid cape
#

and here's vengeflies in this one, which is good. For a sec I was worried that quitting out may not reset progress

copper nacelle
#

discord's code highlighting has ascended

vapid cape
#

as in, the reason vengeflies weren't first the second time was because I'd already encountered them

rain cedar
#

I made a huge mistake btw I feel like I'm gonna die

copper nacelle
#

what

rain cedar
#

I chugged two large baja blasts at taco bell before leaving and filled it up then drank another at home

#

Because free refills

#

Too much soda

trim totem
#

diabetes

rain cedar
#

Not yet

#

Soon maybe

copper nacelle
#

sean why are you right

#

it does rando

#

it just shits on the first one

vapid cape
#

Uh oh

#

Here's Flukemarm again.

copper nacelle
#

it doesn't even make sense wtf

#

It doesn't go through them in order either

rain cedar
#

The secret to making mods is to not try to understand fsm

#

Just remove it

copper nacelle
#

Soul tyrant should be first but it's dd

rain cedar
#

And remake their shit

copper nacelle
#

but this is code

#

or i thought it was

#

at least

rain cedar
#

But don't worry lethal league blaze is still fucked up

#

I made a little thing to visualize the inheritance of their player classes

#

Hang on

copper nacelle
#

wait what

rain cedar
copper nacelle
#

is this god

#

I might've figured out the rando shit

#

it uses the boss scene set before the one i randoed every time i start a new one

#

idk how

#

soul tyrant was supposed to be first last time and now he's first

rain cedar
#

Ok

#

I have an idea

#

Of how it works

#

Probably starts the scene transition THEN calls the setup

#

For some fucking reason

copper nacelle
#

It starts hide sequence

#

does bindings stuff

#

fsm event

#

StaticVariableList.SetValue<string>("currentBossDoorPD", playerData);

#

maybe this?

rain cedar
#

Idk

#

Doesn't look like it

vapid cape
#

Bug found. Apparently, the game REALLY doesn't like it when absrad isn't after Pure Vessel

#

My hud is gone

copper nacelle
#

nice

trim totem
#

oof

copper nacelle
#

I could do this without the IL hook and maybe it'd work

trim totem
#

remove boss intros

copper nacelle
#

u

vapid cape
#

NKG restored it, what a hero

copper nacelle
#

i either got 4 benches in a row or starting with a bench is weird

rain cedar
#

Idk one of the characters

#

DoomBox probably

copper nacelle
#

i quit out after it logged grimm

#

started another pantheon

#

and it was grimm

#

why

#

this is definitely the bug

trim totem
#

just remake the Pantheon system from scratch

copper nacelle
#

same

rain cedar
#

Wtf

#

Guys look at UnityEngine.floatf

#

It has a 205k element hardcode sine table

#

Wait two of them

#

Why is this a thing?

compact sedge
#

205k

#

wtf

rain cedar
#

No I'm stupid this isn't a unity thing

#

It's a lethal league thing

#

I guess that makes it slightly better

#

Tfw array so big dnspy gives up

#

I'm not even sure what this class is supposed to be

#

floatf -> floatfloat GWlulurdWaitWhat

copper nacelle
#

wtf

compact sedge
#

wtf lethal league

#

why does every game you try modding look worse and worse

#

you started with HK, and then S&S, and now this

rain cedar
#

I still don't understand this class

#

I think they're trying to reimplement double but with a long as the backing instead of something sane

copper nacelle
#

why

#

wtf

rain cedar
#

m

#

I don't even know what m means

tidal cedar
#

meters

rain cedar
copper nacelle
#

decimal

#

apparently

rain cedar
#

Yeah I just tested it too

tidal cedar
#

1.0

copper nacelle
#

You must use decimals because they are more accurate than floating point numbers (double).

tidal cedar
#

haha I know so much python zote

copper nacelle
#

128 bit data type

#

more precision smaller range

rain cedar
#

128 bits wtf

#

You don't need 128 bits for an accurate number

trim totem
#

yeah you need 256

copper nacelle
#

28-29 sig figs

rain cedar
#

This reminds me of BigInteger

#

Like yeah it's neat

#

But wtf is the use case?

copper nacelle
#

3000th fibonacci number

tidal cedar
#

precision

rain cedar
#

Can we get a BigDecimal class?

#

Infinite range mega precision

rain cedar
#

But that's not C#

copper nacelle
rain cedar
vapid cape
#

alright so, I finished. The only problems were, Pure Vessel hiding hud until another cutscene brings it back (absrad, NKG) and the first fight being real fucky. I'm 95% every single boss appeared and I also had 7 benches, but I fought Flukemarm twice. As both the opener, and a midway battle.

#

After the credits I'm gonna walk through HoG and see if anyone was missing.

rain cedar
#

Tfw BigDecimal doesn't use IEquatable

vapid cape
#

Oh, music's weird too, but that I imagine can't really be helped.

#

I fought Elder Hu with the break room music playing, but upon his death the battle theme kicked back up. Same deal with Crystal Guardian, it was silent because nothing told the silence after Sheo to go away, until CG died.

#

Ah! Brooding Mawlek wasn't in my run.

#

So I'm guessing he wasn meant to be my starter, but Flukemarm overwrote him from last go

copper nacelle
#

It has IEquatable

vapid cape
#

I'm betting that's what happened. Everyone else was in my run but Mawlek, and I had a duplicate flukemarm

#

the starter flukemarm was no doubt supposed to be Brooding Mawlek

copper nacelle
#

ffs

#

clyde can die

rain cedar
#

Two benches in a row

#

Nice

copper nacelle
#

oh those were "hidden"

#

or something

rain cedar
#

Why do they have that check?

copper nacelle
#

no idea

rain cedar
#

The real trick is using a uint16 and transforming it to the range -9999 - 9999

copper nacelle
#

ascended

rain cedar
#

Actually

#

Bool array representing bits

#

Good number format

copper nacelle
#

perfect

#

easy big integer

vapid cape
#

That's exactly what's happening. I just did p2, fight 1, Xero. Fight 2, also Xero. Then randomizes like normal, and Flukemarm didn't appear.

copper nacelle
#

pain

vapid cape
#

these first fights are "overwriting" what is randomizing into them.

copper nacelle
#

i can just leave whatever's first first i guess

#

cause i have no idea why that's happening

vapid cape
#

Maybe. It's certainly the easiest solution.

copper nacelle
#

did p2 work

#

like did it end

rain cedar
#

I'll do more on that later I have to do homework now

copper nacelle
#

what the fuck

vapid cape
#

It did! I'm gonna do a little testing with something else real fast

copper nacelle
#

pog

vapid cape
#

I have a suspicion that the cutscene after p4 pure vessel may fuck with things if he's fought early

copper nacelle
#

I'll add a fix where it skips the first one only on your first go so that you can actually have a nice first one

vapid cape
#

so I'm gonna go see what happens/premptively tell you it may be a good idea to make sure the p1-p4 finales are also static like absrad

copper nacelle
#

alright

rain cedar
copper nacelle
#

nice

rain cedar
#

It'll be a good class

vapid cape
#

WELP

#

Yeah, make the usual finales guaranteed, I already found a pretty bad bug

copper nacelle
#

what is it

vapid cape
#

Bench was my final room of p2 on this new file

copper nacelle
#

infinite bench?

vapid cape
#

the exit doesn't work. I can walk out into a black void and then hit a wall. I'm trapped here.

copper nacelle
#

wow nice

vapid cape
#

I still wanna see what happens upon an early PV kill in p4 to trigger the cutscene, but yeah, probably ought to do that

copper nacelle
#

fuck it'll still have 1 repeat for non-first if you get unlucky

#

i'll fix that later

vapid cape
#

Alright. I'll switch to testing that, since p4 surprisingly worked as it should have

rain cedar
copper nacelle
#

is this god himself

rain cedar
#

Kinda lazy tbh I should make my own ToString

copper nacelle
#

print the bool array

rain cedar
#

Nah too easy

#

I still have to do homework I just procrastinated a bit with this

copper nacelle
#

have calling to string call writeline and return empty

#

@young walrus here you go

#

3 in a row

#

@vapid cape p4 worked fine then?

#

if it did then i'll just exclude spas cause i got that black thing when it was at the start after quitting out to avoid 3 spa softlock but maybe not a softlock noot

vapid cape
#

p4 worked, yeah. Cutscene didn't even play. It was just acting as if it was a normal clear

copper nacelle
#

nice

#

this should work then

#

pog

#

i'll just do a quick test and then release

#

i fixed dupes and such

vapid cape
#

also on this run I got 2 PV fights. But, oddly, nobody was replaced. It simply added an extra PV fight in.

#

oh, lol

copper nacelle
#

oh if it wasn't replaced idk

#

should just be reordering them

#

maybe this'll fix it™

vapid cape
#

You about to release that thing? I'll retest it there a couple times

copper nacelle
#

yeah

#

just need to die like twice

#

to make sure it doesn't violently lock

#

ok cool working spa

#

oh did you get the dupe on p4?

vapid cape
#

I did.

copper nacelle
#

yeah i know why

#

forgot to remove the last one even tho i added it

vapid cape
#

Sounds like this might be a wrap, soon, assuming I don't find anything blazing through all these pantheons again

copper nacelle
#

yea

#

I want to add the speed thing but that's later

#

2am and homework exists

vapid cape
#

righto

copper nacelle
#

except the hud thing

#

which isn't major so i'll fix it later

#

If you have debug mod it has a bind to show the hud again

vapid cape
#

Gotcha.

#

...Hm. Not gonna like hearing this, but something happened

#

Gorb was missing from p1, Oro was fight 2, and the pantheon ended after Dung Defender

copper nacelle
#

wtf

#

I'll look at it tomorrow

vapid cape
#

Same deal with p2. Broken Vessel wasn't here, and Sheo was found early

#

so it's consistent

#

Mantis Lords was the ending fight

cunning lagoon
#

56 c GWmemetownOMEGALUL de

copper nacelle
#

dlkurGWjiangoOmegaLULsh cdash

cunning lagoon
copper nacelle
#

@vapid cape non-first ones miss the original first guy but other than that this works i think

#

i sleep

#

i tested it like thrice

rough seal
#

hi

cunning lagoon
#

hello

rough seal
#

you can say to me how to find save file in non steam version?

copper nacelle
#

it's the same spot

rough seal
#

ok

#

and i beat nightmare king grimm

cunning lagoon
#

damn nice

#

im still stuck at tmg

#

the bats get me every time

copper nacelle
cunning lagoon
#

literally woke up an hour ago

copper nacelle
#

wtf kurosh having a sane sleep schedule

#

loss

cunning lagoon
#

no it just shifts a few hours every day

#

now im in the "waking up early" cycle

copper nacelle
#

hmmmmmm

#

bye

rain cedar
#

Holy shit this is so much work to do manually I need to write a script to automate it

cunning lagoon
#

hire someone to do it for you

#

you could pay me in hkmemes categories

rain cedar
#

Ok if you actually generate boolean logic for each number 0-9 for the second/third digit of a byte I'll add backwards pop

cunning lagoon
#

same

rain cedar
#

1-9 actually, you can ignore 0

cunning lagoon
#

so what you are saying

#

is boolean logics start at 1

rain cedar
#

You're useless, time to make a python script

#

Good thing python won't expect me to add backwards pop

vapid cape
#

Initial test was good, @copper nacelle

#

I think that was everyone with no repeats in p1

copper nacelle
#

p2 was missing first guy from original

#

so like

#

vengefly

#

i mean second test

#

for me

cunning lagoon
vapid cape
#

Ah, and something's gone wrong. Double Xero in p2

#

Oh well. Get sleep

cunning lagoon
#

@ Xero#4555 @ Xero#4555

copper nacelle
floral furnace
#

yeah you better run

cunning lagoon
#

ttacco acq me a stream

#

i am the big bored

floral furnace
#

stream yourself and watch that from another monitor

cunning lagoon
#

sorry i only watch inferior people

vapid cape
#

wtf

cunning lagoon
#

not gods

floral furnace
#

u

vapid cape
#

THREE Xero fights

cunning lagoon
#

milky you forgot to capitalize a word there

floral furnace
#

i dont see the problem then hollowface

rain cedar
#

Wait I just thought of a """""better""""" way to handle ToString

vapid cape
#

Well, that was weird as hell. Everyone was there, but I had 2 extra Xero's mixed in

#

I'll try p5 later and see how that works

#

because let's be honest nobody's gonna install this and do p1-4

cunning lagoon
#

inb4 69420 absradssdsd xD

#

what is this mod

vapid cape
#

A pantheon randomizer. Scrambles up the order you fight bosses, benches included.

cunning lagoon
vapid cape
#

Been having some issues with duplicate bosses and fights being missing.

#

Now it seems that's all fixed but the dupes are still around.

cunning lagoon
#

i wouldn't expect less from a 56 mod

#

if it doesn't hardlock your game he didn't make it

vapid cape
#

lmfao, funny you mention that

#

before he changed them (if he did) bench rooms being the finale of a pantheon was a lock and you had no choice but to dream nail out.

#

He said that can't happen anymore, but it was kind of hilarious to see a problem like that STILL come up

cunning lagoon
#

nice

trim totem
#

does it work properly now

rain cedar
floral furnace
#

jesus christ

rain cedar
#

I know it's pretty beautiful

cunning lagoon
#

what a gamer

vapid cape
#

Annnd done with p5

#

Once more, everyone was there... but there were 2 duplicate Vengefly Kings, and an extra absrad.

#

something's going on to dupe the first fight of the pantheon, and for some reason a copy of absrad is randomized into the middle

#

Duping the first fight twice, at that.

rain cedar
trim totem
#

extra absrad maggot

cunning lagoon
#

extra absrad GWfroggyPoggers

azure vessel
#

hmmm

vapid cape
#

It was kinda surreal to do the big climactic finishing move, then just... spawn in next to Flukemarm to keep on truckin

rain cedar
#

Nobody seems to care about UBoolInt8 but here's another thing anyway

azure vessel
#

ok

warped sinew
#

Remove the benches from random panth plz

#

Or have a setting to, thx bby

#

@copper nacelle

delicate ether
#

That's basically an alien language to me.

warped sinew
#

Well you see, there are 8 bits in a byte you dope

delicate ether
#

i actually knew that part 😛

azure vessel
#

@cunning lagoon nice vid

cunning lagoon
#

thanks dad

azure vessel
#

jk great vid

cunning lagoon
#

well radiant timed is the name of the gamemode regardless of what i die to

#

also just having a timer there even if you don't die to it changes your playstyle completely because you have to maximize your dps while not getting hit

azure vessel
#

yeah yeah ik

tranquil star
#

Well, Hello, where i can read about mods?

solemn rivet
#

wdym

azure vessel
tranquil star
#

Thx 😃

copper nacelle
#

did you know that if you rando pantheons it passes it in again as the param

#

really makes u

#

want to die

copper nacelle
#
        private static BossScene First
        {
            get => string.IsNullOrEmpty(_name) ? null : _firstLast[_name].Key;
            set => _firstLast[_name] = new KeyValuePair<BossScene, BossScene>(_firstLast.ContainsKey(_name) ? Last : null, value);
        }
        
        private static BossScene Last
        {
            get => string.IsNullOrEmpty(_name) ? null : _firstLast[_name].Value;
            set => _firstLast[_name] = new KeyValuePair<BossScene, BossScene>(value, _firstLast.ContainsKey(_name) ? First : null);
        }

        // ReSharper disable once InconsistentNaming
        private static readonly Dictionary<string, KeyValuePair<BossScene, BossScene>> _firstLast = new Dictionary<string, KeyValuePair<BossScene, BossScene>>();
#

how do i die

solemn rivet
#

press F

copper nacelle
#

i have to use dicts