#archived-modding-development

1 messages · Page 480 of 1

coarse lintel
#

hopefully eventually we have some better tools to do this

#

or, even tutorials on how to mod enemies and bosses

safe hamlet
#

what better tools

copper nacelle
#

my favorite fsm editor: enslaved Sid 3.000

floral furnace
#

np

safe hamlet
#

shut up taco

floral furnace
#

you started it

safe hamlet
#

i told you to not come out

floral furnace
#

ok dad

jade willow
#

anyone knows where I could look for the moment transitions occur if it's FSM or "On."

#

just trying to make my UI fade too when I transition, so far managed to get it on pause menu inventory menu, quick map, but still missing transition, lore tablets, and other little tips screen

copper nacelle
#

Scene transitions?

copper nacelle
#

I'm going to assume scene transitions

#

and say UnityEngine.SceneManagement.SceneManager.activeSceneChanged

west ridge
#

what if using dream nail on a knight did something

#

if you do do speach you could just make it appear above the player and use a 3d text to it shows through everything

leaden hedge
#

what

#

just steal another entities dream dialogue

summer tapir
#

@rain cedar yea, that also how the ALTTP coop is doing it. You basically connect to an IRC-Server which takes all the information when a player is doing certain actions, like opening a chest or killing a boss etc by having a LUA-Script running in the background. And then those messages get read by your co-op partners LUA-Script which is then altering the memory addresses to sync the game states of both players

jade willow
#

For the scene transition I just mean the moment the scene fades to black and then fades back in when on the next scene

#

The HUD disappears when that occurs and I'd like to make my own Hud Element disappear too

copper nacelle
#

On.GameManager.BeginSceneTransition or UnityEngine.SceneManager.SceneMangement.activeSceneChanged

jade willow
#

Oh it's a "On". Thought it was an fsm state somewhere

#

Thanks I'll look into that

jade willow
#

ah... I see where the problem is

#

I'm using CancelAll from the Knight Map Control FSM to make the UI appear

#

but CancelAll is also called when transitioning

coarse lintel
#

AOE animation for Watcher Knights is done 😄 woo

languid goblet
#

that's sick

#

get it infection -> sick

#

haha funny

#

but seriously that's pretty cool

vocal spire
#

Wow

#

I wish I was good at art

unborn badger
#

that's hella nice

#

i always wondered what a gank boss with each boss having an AoE would look like

patent zealot
#

whats AOE mean again?

knotty monolith
#

area of effect

ornate rivet
#

@weak lodge

weak lodge
#

there can be more than 1 boss

#

plus i already have mine fully charted out

#

give me like a month dableft

ornate rivet
#

sounds good

copper nacelle
#

start doing it idiot

weak lodge
#

i need to get into c# first

copper nacelle
#

excuses

weak lodge
#

im almost done with pascal i think

#

im getting there i should begin by the end of the month

fair rampart
#

just realized I've been trying to implement shared enemies only for players who're in the same scene as the server host when other clients may be together separately

vocal spire
#

oof

warped sinew
#

Could you make like a lobby in the main menu that players join then it loads the same instance of the entire game?

vocal spire
#

That would be cool but it might be hard to add

jade willow
#

In the Knight - Map Control FSM where's the state where the player takes damage while holding the map, I thought it would be the same as leaving the ground since the knight jumps up a bit when hit, but I can't seem to pinpoint it

#

the only one I've found that did what I wanted was "Cancel All" which unfortunately also triggers when transitioning from one area to another

dark wigeon
unborn badger
#

it's like a spiderweb

coarse lintel
#

which boss is that lurkersweat

dark wigeon
#

idk what does the tab say

gilded lotus
#

top left

coarse lintel
#

oh jeez cant read

weak lodge
#

thk fsm is woke

dark wigeon
#

I promise tk2d and editing coming soon

coarse lintel
#

god speed good sir

dark wigeon
#

also you can resize the tab sidebar

coarse lintel
#

do you edit in c# nes?

dark wigeon
#

no I edit in perl thonk

#

yes I write code in c#

weak lodge
#

perl 😒

dark wigeon
#

what do you use ruby

weak lodge
#

pascal 🤓

weak lodge
#

cool

dark wigeon
#

but can you do x86 assembly

weak lodge
#

what does that imply

dark wigeon
#

can you do x86 assembly
is what that implies

weak lodge
#

then no

dark wigeon
#

what are you gonna do with pascal

weak lodge
#

understanding fundamentals so i can ditch it for c# eventually

#

ive had an easier time getting into it than getting into c or c#

dark wigeon
#

try python yet?

weak lodge
#

nope i considered it but i wanted to start with something simpler

#

i genuinely want to try to make my mod after 2 years of bitching so

#

easiest approach then get more advanced as i go along

coarse lintel
#

how big is the mod tho Knightmere?

weak lodge
#

about same as pale prince

coarse lintel
#

but good thing you waited two years, you would have had to rewrite code for Godmaster

west ridge
#

[Insert python interpreter here]

dark wigeon
#
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 22:39:24) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
safe hamlet
#

modding with python real shit

dark wigeon
#

Ironpython

#

Who wants to make it happen

fair rampart
#

what's ironpython ? idgi

copper nacelle
#

It would work

#

You can mod fine in F#

#

It's a .NET CLR python interpreter

safe hamlet
#

i can try tomorrow

fair rampart
#

what's the point though

safe hamlet
#

why does there need to be a point

fair rampart
#

you can export to a dll with ironpython

west ridge
#

There are multiple interpreters but having a hollow knight based one would be cool to be honest though I haven't seem a python interpreter just a iron python one

fair rampart
#

there has to be when you use c#

limber walrus
#

I don't get how people like python thinkgrub

patent zealot
#

Its not hard to learn

twilit radish
#

I want to start modding hollow knight but I have no idea where to start

floral furnace
#

making mods right?

twilit radish
#

ye

#

i was thinking of using utiny ripper but i'm not sure if that is a good idea

floral furnace
#

well youll need a IDE that can compile C#, most commonly recommended is either Visual Studio (not code btw) or Rider (rider is preferable but from what i remember you might need to pay for it, but its free if you have an edu account)

then .Net framework 3.5, ILSpy for checking and decompiling the games code for references, and the FSM viewer to check the games FSM

Youll also need the API and ModCommon, but these automatically installs themselves to your HK installation path when you execute the ModInstaller

#

Unity isnt really required, but other modders use it to test stuff much more easily, otherwise most of it is done by coding, then building it as a DLL

twilit radish
#

thanks

floral furnace
#

just to shorten it

  1. IDE (Visual Studio or Rider)
  2. .NET Framework 3.5
  3. ILSpy (For decompiling the game)
  4. [Optional until you want to start messing with FSMs, and you eventually will] an FSM viewer
  5. API and ModCommon from the ModInstaller
still fractal
#

Which .assets file contains the Knight's spritesheet?

flat forum
#

what do you need it for?

still fractal
#

To replace the Knight's sprites, but I don't wanna deal with ModInstaller.

copper nacelle
#

resources

leaden hedge
copper nacelle
#

I gotta say custom knight would be much easier but you do you

still fractal
#

Thanks

leaden hedge
#

cursor

#

not the thanks but the good message

vocal spire
#

Why not use custom knight?

ornate rivet
#

that's literally the worst way to replace the knight's sprites

still fractal
#

Yeah, I realised that just now.

#

Soooo... Custom Knight comes with Mod installer, right?

ornate rivet
#

yea

still fractal
#

Good then

tawny onyx
#

Why some states in FSM Viewer with different color? Does them have any extra meanings?

fair rampart
#

Playmaker allows you to color states, TC just made only some of them colored

copper nacelle
#

because tc decided to color them

#

I think hive knight and nkg are the only ones which actually use it

#

Besides that one line in pv

tawny onyx
#

oh i see, maybe tc is too lazyzote

#

and silksong still have no message

fair rampart
#

sly too

fair rampart
#

I don't get how people like python thinkgrub
@limber walrus it's a very productive language, as long as the project stays small

limber walrus
#

I get why people praise it and such, but working with it myself I never found it that "impressive", even though I only used it for web work projects with Django and Flask.

#

And don't let me start on its annoying syntax, especially from the perspective of someone who uses c-style languages on a daily basis.

fair rampart
#

I was a c-style fan and hated the python style at first too, but now I find it clean and with an autoformatter it makes you save time on syntax bullshit

floral furnace
#

knowing the exact datatype your vars are when youre reading your shit at a glance is just that good

leaden hedge
#

not being slow and having {} is pretty nice FeelsOkayMan

languid goblet
#

i like java because i know more java lol

floral furnace
#

i like java because i know more java lol
eat it 56, theres 2 of us now

leaden hedge
#

python does suck because oop sucks in python

fair rampart
#

not being slow is nice

#

oop sucks in every language

leaden hedge
#

thats a pretty hot take

#

ngl

limber walrus
#

Hold my C++

fair rampart
#

ok maybe too hot, but in every major language

leaden hedge
#

oop is cool in c#

fair rampart
#

like in c++, oop is so bad you can't even use inheritance

leaden hedge
#

and c++

unborn badger
#

and i oop

leaden hedge
#

i dont need any inheritance FeelsOkayMan

fair rampart
#

oop should just be interfaces and that's it

leaden hedge
#

we have function pointers FeelsOkayMan

fair rampart
#

vtables are slow and overcomplicated

limber walrus
#

C# is great in a lot of things, but it's not great at not being oop.

fair rampart
#

I'll try to avoid shitting on C# in a channel full of C# devs

leaden hedge
#

upside down composition

fair rampart
#

and that's not a good thing

limber walrus
#

Oh god.

leaden hedge
#

let me do whatever

#

its cool in c++, asm, c# FeelsOkayMan

#

python i can't edit my own code to make my program do something else FeelsOkayMan

fair rampart
#

sounds like a "you" problem

safe hamlet
#

why are you all like this

limber walrus
#

Technically it's good if you understand what you're doing, not just using it because multiple inheritance is easier than making a well structured code.

fair rampart
#

Sorry sid, it's just that after wasting so many hours navigating and trying to understand shitty oop structures, I don't want more people to do oop

safe hamlet
#

c# has a decent one i believe

limber walrus
#

Oh god I've seen some shit code using the multiple inheritance.

leaden hedge
#

the only time i don't use oop is when im trying make something overly efficient

safe hamlet
#

by decent i mean the best i have seen

limber walrus
#

Yeah, C# has really good oop.

fair rampart
#

So far out of all the languages I used, and that's including java, c# is the most confusing for me as for "in what class/file is that method located". And no, intellisense is not a fix to this problem.

limber walrus
#

The only time I don't use oop is when I'm working with C, for electronics and stuff.

leaden hedge
#

cant you do the exact same thing

#

with java

#

pretty sure you can name a file this.java, and have a bunch of random classes in there

safe hamlet
#

you are prolly not used to the language then

fair rampart
#

java heavily uses interfaces, so unless your codebase is "enterprise" it doesn't get so bad

safe hamlet
#

or you are working with shit libraries that make caveman structure

leaden hedge
#

i mean you should just make a cs file for each main class

safe hamlet
#

it does

leaden hedge
#

and only have that class in there, with maybe minor supporting classes included

fair rampart
#

c# has everything

leaden hedge
#

which is why its nice FeelsOkayMan

safe hamlet
#

^

limber walrus
#

c# has everything
And more.

fair rampart
#

I disagree, this is exactly the problem. You can never hope to fully master it. You're always looking at the documentation, and microsoft's is famous for how shit it is.

safe hamlet
#

bruh

leaden hedge
#

you cant master any language

safe hamlet
#

you are just bad then

leaden hedge
#

and to think you could is naive

safe hamlet
#

look at any language

fair rampart
#

Like brainfuck ? Not hard to master

safe hamlet
#

you can’t possibly know every bit of it

#

esoteric doesn’t count

leaden hedge
#

i use docs when programming in asm

#

despite it having nothing extra

safe hamlet
#

just because it’s turing complete doesn’t make it a fully fledged language

fair rampart
#

Lua, then ? It's easy enough to fully grasp.

leaden hedge
#

how did they overcomplicate asm

#

i mean is it

limber walrus
#

Master? I mostly code with the documentation tab open somewhere, it's about the mindset and understanding the concepts not "mastering the language".

leaden hedge
#

if i asked you how to do a random task in lua could you 100% solve it without google?

safe hamlet
#

^

#

and without intellisense for that matter

fair rampart
#

oh no, not without intellisense

limber walrus
#

A new foe has appeared

fair rampart
#

You don't even need to be decent at c# like me if you have resharper feelspkman

safe hamlet
#

having more features is never a bad thing unless those features interfere

#

c# is very versatile because of this

fair rampart
#

having more features is bad, because it lenghtens the learning curve, and a new developer joining an existing project will have issues understanding the code

safe hamlet
#

what

limber walrus
#

And C# has really good implementation of most of its features.

leaden hedge
#

who needs to understand the code

#

if i have a class that says what it does

safe hamlet
#

that doesn’t make the language bad

leaden hedge
#

you don't even need to know what it does or how

fair rampart
#

@safe hamlet simple example, the := operator in python 3.8. It was very controversial exactly because of this

#

When you land on it, you have to learn it, when a simple if would be enough

safe hamlet
#

why, people couldn’t be bothered to look of how it works?

limber walrus
#

Like, look at LINQ in C# and Java, and see the difference.

safe hamlet
#

yea that’s their problem then

leaden hedge
#

remove ternaries tbh

fair rampart
#

What you're saying is more complexity is a good thing somehow ?

leaden hedge
#

sure

#

i use ++ all the time

#

and --

#

they aren't needed you can just do x = x + 1 x += 1

limber walrus
#

If it's well implemented and not affecting the performance, why not?

#

LINQ or nested for loops with multiple if statements?

fair rampart
#

It's stuff you have to learn when you can learn other, useful stuff instead

leaden hedge
#

why does python have lambdas

fair rampart
#

and it ruins the readability of the code

leaden hedge
#

they aren't useful

#

they are more complicated than not having them

fair rampart
#

they are for functional programming

leaden hedge
#

i mean you can just have an enum and a switch

#

why not just do that

fair rampart
#

yeah no in python you have dicts

leaden hedge
#

i mean an enum is an idea

fair rampart
#

(hashmap in any other language)

safe hamlet
#

you can just have 01 why not just use that

leaden hedge
#

u know what a dict/hashmap is

#

its like saying use an array

#

and being sorry python only uses lists

fair rampart
#

[] -> list
{} -> dict

leaden hedge
#

its not a list

#

if i said use an array

fair rampart
#

yes, "lists" are arrays in every other language

leaden hedge
#

no

fair rampart
#

python has some terrible design decisions

leaden hedge
#

they are different

#

you can not append to an array

fair rampart
#

depends on the language

safe hamlet
#

not really

leaden hedge
#

uh any array you can append to is a list

safe hamlet
#

^

leaden hedge
#

so its either a list or extremely slow

tawny onyx
#

would somebody tell me what mistake i do? When I try to add a FloatCompare Action to a State, and if fsm in this state will throw NullReferenceException, and the game crash...feelsgrubman

fair rampart
#

or it's something more complex hidden behind a runtime. and it probably is

leaden hedge
#

i mean you don't really get better than a simple list

#

unless it needs to be a hashtable underneath for some reason

fair rampart
#

rng remover mod shroompog

ornate rivet
#

it seems you're not setting something that FloatComp needs I think?

unborn flicker
#

in particular, the fsmfloat it compares to

safe hamlet
tawny onyx
#

it seems you're not setting something that FloatComp needs I think?
@ornate rivet What I really want to do is compare two float,and sent difference Event

safe hamlet
unborn flicker
#

you can set tolerance as float.Epsilon in that case

#

or 0 ig

tawny onyx
#

Mmmmm

#

auctually I dont know how to do

safe hamlet
#

you figured out how to assign the events, you can assign the tolerance as well

tawny onyx
#

ohhh,maybe i know what u mean

#

thanks

safe hamlet
#

don't set it to 10 tho GWmythiMonkaT

#

epsilon or 0 like homothety said

fair rampart
#

snake case

safe hamlet
#

grubU

tawny onyx
#

It works happygrub

dark wigeon
#

Are you guys saying you prefer java over c#

fair rampart
#

yes

#

luckily it's been years since I last used java

ornate rivet
#

wtf

safe hamlet
#

he has lost it seriously

dark wigeon
#

So far out of all the languages I used, and that's including java, c# is the most confusing for me as for "in what class/file is that method located". And no, intellisense is not a fix to this problem.
Example?

west ridge
#

making a graphics interpriter for a bizhawk pluggin

dark wigeon
#

to me it seemed like he was talking about the standard library

copper nacelle
#

Does anybody know where the camera position gets changed when getting damaged?

#

Yeah

#

It changes the z

west ridge
#

i thought they just used time.timescale = lowervalue and shake the camera via unity asset so probably the defult shaking asset from the unity docs

turbid scaffold
#

Bruh

#

Can someone tell me what is this?

#

Wtf is that fire

ornate rivet
#

redwing

turbid scaffold
#

Redwing assets

#

Yeah

#

Thanks

#

The best knight skins?

gilded lotus
turbid scaffold
#

Srry, I didnt see that

cedar panther
#

how much are all these things(mods, dll-decompilers etc) are compatible with linux? Cause i know that Unity works on linux quite well, but idk about other things

copper nacelle
#

they all work fine

#

avalonia ilspy instead of dnSpy

#

Rest of it is just the same as windows

#

IDE wise you would use Rider instead probably

#

And the fsm viewer doesn't run on Linux is the only bigish difference

#

the new one that is

leaden hedge
#

Kt code optimal FeelsOkayMan

#

Works on linux

copper nacelle
#

I think it wouldn't even be too hard to get the new stuff on the old one

#

Just a matter of effort

cedar panther
#

I haven't heard about nor Kt neither Rider

copper nacelle
#

It's just deserialization stuff

cedar panther
#

are they something specialized for c#, like codeblocks for c++ or WingIDE for python?

copper nacelle
#

"Kt code" refers to the code written by Katie

#

which is referring to an fsm viewer they wrote

#

Which works on Linux

#

Rider is the jetbrains c# ide

leaden hedge
#

Works on anything that supports a modernish web browser

#

actually wouldn't surprise me if it ran on old versions of ie tbh

cedar panther
#

also, can you advise me anything to learn to start modding(cause i haven't done anything like this before)?

copper nacelle
#

Look at some examples and just play around with it tbh

cedar panther
#

ok, thanks, will try something tomorrow

ornate rivet
#

someone send hell mod github

cedar panther
#

nearly forgot, how do i install my mods into a game?

ornate rivet
#

download the modinstaller from #archived-modding-help and open it. This creates a mods folder in your game directory, just drop your mod's dll file there.

cedar panther
#

thaks a lot!

jade willow
#

which state must I attach a method to in the Knight Map Control to check when the player is hurt while holding the map, my UI just remains darkened

#

managed to get it to update just fine in other cases such as falling, but getting hit doesn't seem to be linked to any state other than CancelAll which unfortunately also gets triggered on transitions

#

found a way around it, just made it so that the UI would return to being fully visible whenever the hero is hurt

copper nacelle
#

@jade willow knight - map control - inactive => cancel all

jade willow
#

but cancel all also triggers when transitioning,right? unless I'm not understanding what you meant with that message

copper nacelle
#

Create a new state then

#

There's a transition (HERO DAMAGED) from inactive to cancel all

#

Is what I'm saying

jade willow
#

Ah okay, I saw Hero Damaged but I had no clue how to access that in any way shape or form

#

In the end I just made it so that it would transition to fully visible whenever the knight was hit, which doesn't seem to cause any apparent issue so far since it transitions from the current value to the same value

#

I guess it takes care of other edge cases such as getting hit when you're reading a lore tablet (this is my next step, fading the UI when text, tablet or UI hints show up)

fair rampart
#

alright so how am I being pepega here

_uiCharms.InsertMethod("Set", 0, () =>
{
    int charmNum = _uiCharms.Fsm.GetFsmInt("Current Item Number").Value;
    _equippedCharms[charmNum]++;
});
NullReferenceException: Object reference not set to an instance of an object
HutongGames.PlayMaker.FsmStateAction.Init (HutongGames.PlayMaker.FsmState state)
ModCommon.Util.FsmUtil.InsertAction (.PlayMakerFSM fsm, System.String stateName, HutongGames.PlayMaker.FsmStateAction action, Int32 index)
ModCommon.Util.FsmUtil.InsertMethod (.PlayMakerFSM fsm, System.String stateName, Int32 index, System.Action method)
ModCommon.Util.FsmutilExt.InsertMethod (.PlayMakerFSM fsm, System.String stateName, Int32 index, System.Action method)
copper nacelle
#

state or fsm is null

fair rampart
#

shouldn't be
[INFO]:[Charms] Set State null? False

copper nacelle
#

ok but what's the log statement

fair rampart
#
Log("Set State null? " + (_uiCharms.GetState("Set") == null));
copper nacelle
#

huh

#

I think action.fsm is null

#

Because that never gets set anywhere

#

But it should've exploded on every other InsertMethod then

#

Nope I'm an idiot

dark wigeon
#

Fsmview doesn't work on linux

copper nacelle
#

@fair rampart Log("Set State fsm null? + (_uiCharms.GetState("Set").Fsm == null))

#

yeah

#

that is what was said

#

The old js based one does though

dark wigeon
#

Wow I'm blind

fair rampart
#

ok so the fsm is indeed null

#

a weird WaitWhile did the trick

tawny onyx
rain cedar
#

I would assume the coroutine is being started twice

tawny onyx
#

are there any ways to make 'remove()' just call once ?

rain cedar
#

Yeah definitely

#

I can't say what the bug in your code is with just this screenshot though

tawny onyx
#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Modding;
using ModCommon;
using UnityEngine;
using HutongGames.PlayMaker.Actions;
using ModCommon.Util;
using System.Collections;
using UnityEngine.SceneManagement;
using HutongGames.PlayMaker;

namespace FsmLearn
{
public class FsmLearn : Mod
{
public static PlayMakerFSM fsm;
public override void Initialize()
{

        UnityEngine.SceneManagement.SceneManager.activeSceneChanged += GameObjectFinder;
    }

    private void GameObjectFinder(Scene arg0, Scene arg1)
    {
        if (HeroController.instance == null)
            return;
        HeroController.instance.StartCoroutine(PVFinder(arg1));
        HeroController.instance.StartCoroutine(PVSetup());
    }
    private IEnumerator PVFinder(Scene arg1)
    {
        if (arg1.name != "GG_Hollow_Knight") yield break;

        yield return null;

        GameObject pv = GameObject.Find("HK Prime");
        fsm = pv.LocateMyFSM("Control");
    }
    private IEnumerator PVSetup()
    {
        while (fsm == null)
            yield return null;

        //modify();
        yield return null;
        remove();
        yield return null;
        //add();
    }
    private void modify()
    {
        fsm.GetAction<SendRandomEvent>("Dstab Tele?", 3).weights[1] = 0.1f;
        fsm.GetAction<FloatCompare>("Dash Distance Check", 2).float2 = 1f;
    }
    
    private int remove_called_counter = 0;
    private void remove()
    {
        remove_called_counter++;
        LogDebug($"[FsmLearn](remove) time:{remove_called_counter} fsm is null? { fsm == null}" );
        fsm.RemoveAnim("Tele In", 2);
        fsm.RemoveAction("Slash1 Antic", 0);
    }
    

}

}

#

here's the code

languid goblet
#

i think that's a screenshot

rain cedar
#

activeSceneChanged is probably being raised twice

#

It's not a screenshot

languid goblet
#

oh

rain cedar
#

```csharp
code here
```

tawny onyx
#

activeSceneChanged is probably being raised twice
@rain cedar Oh I see, thanks for you helpomggrub

#
private int tmp_counter = 0;
private void GameObjectFinder(Scene arg0, Scene arg1)
{
  tmp_counter++;
  LogDebug($"[FsmLearn](GameObjectFinder) Counter:{tmp_counter}");
}
``` Just a Test
#

btw,is there a hook after a scene loaded instead of UnityEngine.SceneManagement.SceneManager.activeSceneChanged?

#

Maybe I found it, it's 'UnityEngine.SceneManagement.SceneManager.sceneLoaded'

sand holly
#

im considering making a skin for hollow knight. how would i go about doing that? would i just take images from default knight and edit them?

patent zealot
sand holly
#

👍

tawny onyx
vocal spire
#

Cool I’ll try it soon

sage holly
#

I heard someone was doing a wyrm mod

#

who is it?

ornate rivet
#

@jolly oriole maybe?

vocal spire
#

Tot looks really cool. Good luck on it

lime wigeon
#

so here's a question

#

is it possible with the current modding tools to add a boss somewhere else then in the godhome ?

vocal spire
#

Yes

lime wigeon
#

awesome news, thanks

#

i'll start to look into this whole modding thing then

#

i suppose i can find all the documentation in pins

vocal spire
#

As an example you should look at the indie crossover or pale champion

lime wigeon
#

thanks

limber walrus
#

You ever wanna work, but then your device says Unable to boot windows, System files corrupted or not found?

unborn flicker
leaden hedge
#

lmao

#

randomod is on there

#

LUL

unborn flicker
#

not quite sure what the point of that is versus just using the constructor

#

maybe it's about global targeting?

west ridge
#

you lost me at constructer

unborn flicker
#

new FsmEvent(string eventName) as opposed to FsmEvent.FindEvent(string eventName)

copper nacelle
#

When you want an event that already exists you want the latter

#

Otherwise it compares wrong

unborn flicker
#

ah, I thought it just checked against the string

copper nacelle
#

Idk exactly about normal events but I know the constructor doesn't work for FINISHED

#

there's a member on FsmEvent you have to use instead

#

bit me in a mod

unborn flicker
#

Huh. I guess the safest thing is to just always use this then
FsmEvent.FindEvent(string eventName) ?? new FsmEvent(string eventName)

copper nacelle
ornate rivet
#

Does hitting two different parryable objects freeze the game?

copper nacelle
#

if you do it on consecutive frames probably

ornate rivet
#

unfortunate

copper nacelle
#

pause unpause fixes it

ornate rivet
#

yea but I think that's going to happen a lot with zemer so I'll have to do something about it

copper nacelle
#

I have a bunch of stuff you can parry and I haven't had it happen fwiw

ornate rivet
#

alright then

copper nacelle
#

GameManager::FreezeMoment

#

I know it's a thing for enemy kills

#

Because it happens during wk sometimes

still locust
ornate rivet
#

awesome

still locust
merry vine
#

Well the work certainly paid off, she's amazing 🤩

still locust
#

Believe it or not, it took me over 100 hours, just to change the character
And there are still spells, charm, not to mention I wanted to add some stories

#

Hope I can release this skin in, about a week)
No, it should be soon

merry vine
#

I hope so too, I need this skin in my game and my life

#

don't push yourself too much though, you've done a lot of work already

sick vessel
#

I love it it looks beautiful

coarse lintel
#

amazing work with the HUD! I love it 😄

still locust
#

Thank you! I'm just wondering how can Lazycat finish JOJO skin in 4 days

#

When I'm drawing the mystery deepens

coarse lintel
#

I'm just wondering how some of you mod this game so quickly lurkersweat

still locust
#

amazing work with the HUD! I love it 😄
@o.7.0.7#9516 Thank you! I will tell the member who made it. I love it too

knotty monolith
#

4 days... Absolutely wild

sick vessel
#

I'm wondering how some of you mod notlikequirrel

still locust
#

He finished JOJO in 4 days and all version of Sekiro knight in 2 week

languid goblet
#

wow that's insane

still locust
#

He is not a human being

coarse lintel
#

jesus it took me over a month to get cought up with JOJO notlikequirrel

sick vessel
#

I haven't watched jojo yet

coarse lintel
#

go to off-topic if you want more info, I hear they talk about that a lot shroompog

languid goblet
#

i could do like maybe 10ish animations in 4 days, but just the knight atlas is like 214 animations

#

well 10ish if i had enough time, my current rate is like 1 a day lol

sick vessel
#

go to off-topic if you want more info, I hear they talk about that a lot shroompog
Nah I'm good, see enough stuff just by hovering art-discussion

still locust
#

He told me he finished 80 animations each day, so 4 days are enough including polish

languid goblet
#

holy sh-

coarse lintel
#

he also may be a clean artist, which I'd be profoundly jealous of

still locust
#

And it's true, Because he just started to learn Spritepacker before making these skins

blissful burrow
#

80 animations per day sounds so difficult

coarse lintel
#

also daunting like phew. Thats some great dedication... lurkersweat

sick vessel
#

Damn I need to take notes for when I try to make a lifeblood skin vesselsip

coarse lintel
#

good luck with that 👍

still locust
#

Ah, a member of us has also started a lifeblood skin

#

Let me see

sick vessel
#

Oooh that sounds cool

languid goblet
#

this guy making 80 animations a day while i don't know how color adjustment masks work

still locust
sick vessel
#

Ooh cool

#

Yea my idea is a bit different cause I plan to base it more around the lifeblood seeds things

#

If im brave enough I might attempt to just make the head a lifeblood seed vesselsip

coarse lintel
#

what you could do is just make the knight legs and a head, and draw the lifeblood seed on top zote

still locust
#

Yeah there are always skins with the same theme

sick vessel
#

Omg the grimm child

#

I'm probably gonna work on concept for my own lifeblood skin in a bit cause iv been holding off on that

hasty fractal
rain finch
#

probably wont finish it because i suck at drawing and sprite packer doesnt agree with me but i always thought it would be interesting to have a mother character skin so i tried my hand at a single frame of lucas

ornate rivet
#

AHHH

copper nacelle
#

he's finally lost it

gilded lotus
#

he lost it a while ago

ornate rivet
#

it looks good smh

safe hamlet
#

he really did lose it

#

yhtsi

knotty monolith
#

Oh that's a neat lifeblood skin! Very splashy

#

And hornet looks classy in gold

#

That Lucas is integrated surprisingly well into the HK atmosphere... It would be impressive if you managed to make him as a whole new set of animations

rain finch
#

ill keep working on it i suppose lol i am just struggling with the sprite packer it gives me some error everytime i press check but i would like to make his sword slashes look more like his psi powers to really sell the difference

jovial ledge
#

I GOT SPRITEPACKER TO WORK

#

feels so good man

west ridge
#

What's this about sprit editing is there a way to do it without opening up a duplicate Sprite sheet and editing by hand or am I missing something?

still locust
#

I'm working on the unn animation, the skin makers do need a assistive tool to change all kinds of heads in different angles

#

These are all mechanical jobs

sick vessel
#

I wonder what Unn little Hornet's gonna look like

knotty monolith
#

@west ridge yeah, you use GODump and Spritepacker, check discussion pins

west ridge
#

Thank you that should of been the first place I checked

vocal spire
ornate rivet
#

sure

vocal spire
#

I’m probably going to update it some time with deglorification

candid blaze
hasty fractal
#

Thank you for telling me.

#

@candid blaze
You can click on the link now.

storm granite
#

Hi everyone! I'm new to the server and I'm nervous breaking any rules or disrespect anyone by accident. so if i make any mistakes please let me know so i can improve.

coarse lintel
#

might wanna go to offtopic to announce that but welcome anyways 😄

vocal spire
#

Welcome

fair rampart
#

first message already a mistake. you have been warned.

#

jk

vocal spire
#

Lol

storm granite
#

Thanks for the welcomemylajoy . That beeing said, i came to the server because i was intrested in the skin modding stuff. i have a few ideas and I was wondering which one i should go on with(my art skills are quite poor so i can only do one at a time without losing my sanity). care to listen?(i'm asking here because, well, here seem to be the most interested people about this topic)

vocal spire
#

I think modding discussion might be better, but idk

coarse lintel
#

yeah, modding discussion is more for ideas, this rooms for developing mods

fair rampart
#

second rule breaking, that's a ban

vocal spire
#

I think people will listen to what your idea for a skin is

#

If you need help with getting the sprites, check the pins for spritepacker and godump

storm granite
#

thank you

fair rampart
#

GG_Grimm_Nightmare doesn't have a _SceneManager

coarse lintel
#

anyone, would it also be possible to just replace the actual music file with a new one, and keep the same name? Or am I being a brainlet

fair rampart
#

it indeed does, didn't show up in fsm viewer for me for whatever reason

vocal spire
#

Oh, thanks

#

I’ll just make changes to the scene manager every time a gg scene is loaded that’s not Grimm or anything that’s not a boss scene

#

Then I’ll make an separate thing for Grimm

#

PV and radiance have their own music in the pantheons right?

coarse lintel
#

yes

vocal spire
#

Ok I don’t need them

#

Ok, there are some exceptions where FSM is not the correct fsm

#

I think I can just check if the “gg_music_control” fsm isn’t null

#

would this work?

#

try
{
GameObject.find("_SceneManager").LocateMyFSM("gg_music_control").ChangeTransition("Boss Sequence", "Finished", "Statue Level")
}
catch (NullReferenceException e)
{
GameObject.find("_SceneManager").LocateMyFSM("FSM").ChangeTransition("Boss Sequence", "Finished", "Statue Level")
}

rain finch
#

i keep getting an error in the sprite packer when i check the knight atlas that says "Repeated sprites below in this collection are modified differently. Please try again after replace the rest of them with the one you need." and i dont really get what is the problem. i press replace and all it does is replace the sprites i edited it with the default one

#

i must have missed it the first time through, thank you.

coarse lintel
#

where do you find the boss files to edit them btw? I know you gotta use dnSpy to edit, but can't find the files themselves thinkgrub

vocal spire
#

they are fsms

#

use fsm viewer(it cant edit them, edit them in a mod)

coarse lintel
#

how were mods like Lifeblood master developed? they code him up based on the Hive Knight's FSM?

vocal spire
#

I made that mod!

#

yes

#

I'm also working on Uuwuu

#

upside down extra chaotic Uumuu

coarse lintel
#

ahh I see, it's not as simple as just taking code from a boss, and using it as a template for another boss...makes a whole lot more sense

dark wigeon
#

I'm planning on adding c# generation but I'm not touching the wpf fsm viewer because it's coded like trash and not x plat

safe hamlet
#

you could make a webapp

dark wigeon
#

or I could just not

safe hamlet
dark wigeon
#

I already had avalonia's version mostly working

#

also maui

#

not sure about it tho

vocal spire
#

@jolly oriole I can't find GGArena_Prefab, where is it?

rain finch
vocal spire
#

Cool

dark wigeon
#

are you sure that prefab exists

vocal spire
#

They said it does

vocal spire
#

Yes

#

I’m probably not thinking of something

dark wigeon
#

it's GG_Arena_Prefab

#

it's on level 437 whatever that is

vocal spire
#

Well I am slowly dying

#

*quickly

dark wigeon
#

wdym

vocal spire
#

I should have been searching for that

dark wigeon
#

also might be on level490 as well

vocal spire
#

I decided to give up for the night so a family member could use my computer

dark wigeon
#

GG_Ghost_No_Eyes.unity and GG_Ghost_No_Eyes_V.unity

vocal spire
#

Why there specially team Cherry?

dark wigeon
#

idk they just did

#

also it's not a prefab, else it would be in sharedassets

#

so they just copied the gameobject to the _V scene

vocal spire
#

Interesting

#

Guess I’ll preload it and edit it?

unborn flicker
#

How does ModHooks.Instance.LanguageGetHook work with multiple mods? Is only the first mod's hook called?

#

ick

#

Would be nice if the API had a dictionary of sheetTitle/key/values so that multiple mods could make language edits

#

or something along that line

#

ah interesting

#

but if the first one calls GetInternal it goes to the second?

#

that's good then

copper nacelle
#

Whatever one is first in the invocation list and returns a non-vanilla result gets to go first

#

If you want to win you just load priority

#

Or do it in the constructor if you hate cross-compat

unborn flicker
#

Yeah, I thought I had that fail in something yesterday, but now I'm pretty sure I was just targeting the wrong key

copper nacelle
#

That's how almost all of the modhooks are fwiw

#

First non-vanilla wins

unborn flicker
#

yeah, makes sense

copper nacelle
#

If it's something you use for modification instead of overriding then it usually just goes through all

rain cedar
#

nay

vocal spire
#

yaynay

ornate rivet
#

yay

vocal spire
#

nayyay

ornate rivet
#

put pv

vocal spire
#

Put pale prince

#

There needs to be at least 3

limber walrus
#

yay

ornate rivet
#

can we access another mod's globalssettings?

#

if so, how

#

PlayerData.instance.GetBool("other mod var")

#

does this work?

leaden hedge
#

access their settings i assume

#

i think pdt does it for rando

leaden hedge
#

RandomizerMod.RandomizerMod.Instance.Settings; i think

#

but thats save settings

#

theres probably something similar for global settings

ornate rivet
#

where does it get RandomizerMod from?

leaden hedge
#

i think its just a reference

ornate rivet
#

ah

#

ez pz then me hopes

copper nacelle
#

you just ref it

#

If you want to fail gracefully when a dependency isn't installed you just check for the mod via reflection before calling a method which uses the ref

leaden hedge
#

nah

#

try catch

copper nacelle
#

ig

#

i think i did a try-catch in lightbringer feelspkman

unborn flicker
#

tfw pdt crashes plando because it couldn't find rando feelspkman

leaden hedge
#

not my problem

dark wigeon
#

no dumps needed

fair rampart
#

pog

vocal spire
#

cool

languid goblet
#

is that an alt version of sprite packer?

#

if so please make it work with wine

dark wigeon
#

Want me to test with mono?

languid goblet
#

even better, make an actual app for mac/linux

#

well the problem with spritepacker is that it looks in a windows specific file path, so wine/mono won't work on mac/linux

vocal spire
#

would be cool if we could change the directory

languid goblet
#

if you literally just make it let you choose an atlas/direct it to where your sprites are located, and have it pack the sprites, then i wouldn't have to find someone i trust on windows to pack sprites for me

dark wigeon
languid goblet
#

can it pack sprites dumped from godump?

dark wigeon
#

No it doesn't use the same mappings

#

I guess I could add a comparability for them

languid goblet
#

oh ok

#

does it have a different method of extracting sprites or something?

dark wigeon
#

Godump depends on the size of all frames in an animation to get image size, mine uses untrimmedboundsdata which doesn't rely on an animation

#

Do you have mono?

languid goblet
#

should have it installed because of modinstaller

dark wigeon
#

there's no interface for exporting yet and right now it's hardcoded

#

but see if you can at least run it

#

open -> one file -> pick file for now

safe hamlet
#

why is it super tho

languid goblet
#

ok maybe i'm doing something wrong

#

i mean should be correct

#

i just navigated to the folder and then "mono sseadv.exe", enter and then it says mono quit unexpectedly

#

do you want the json or something?

dark wigeon
#

what json

#

also I'm surprised mono crashed

languid goblet
#

the mono bug report i think

dark wigeon
languid goblet
#

or crash report or whatever it's called

dark wigeon
#

I don't have hk on my linux so I'm downloading it now

#

I also don't have mono wine installed so can't test with wine

#

@languid goblet can you show the details section

languid goblet
#

uh there's a lot of text

dark wigeon
#

ok but can you screenshot or copy it

languid goblet
#

i can't really screenshot or copy the whole thing

dark wigeon
#

ok what does the top say

#

does it say like assetexternal or something

languid goblet
dark wigeon
#

and what happens if you run with mono?

languid goblet
#

mono crashes

dark wigeon
#

can you show a screenshot of the log

#

if any

languid goblet
#

uh i can try to make a txt

#

pasted it into docs it's like 21 pages

dark wigeon
#

you can just paste here and discord will make a txt file

languid goblet
#

i'll dm

dark wigeon
west ridge
#

I have ubuntu if you want to test that version

dark wigeon
#

It artifacts on Linux mono, works fine on Linux wine. Mac mono starts tearing and mac wine can't use openfiledialog for some reason

#

Mono's fault, not mine

half laurel
#

when using Wine, was that with wine-mono or .NET Framework?

#

if it's wine-mono I'd personally be interested in a bug report

copper nacelle
safe hamlet
#

:monkaU:

#

:grubU:

#

ruined

#

i hate this server

leaden hedge
copper nacelle
#

simo add something with a U

dark wigeon
#

Regular mono broke, wine with net45 from winetricks (original .net I'm guessing) works 100% fine

#

I basically confirmed drawimage is broke in mono now

half laurel
#

but what about wine without dotnet45?

upper niche
#

May I ask how the co-op mod is doing? I saw that they released a trailer for it on youtube

dark wigeon
#

Do you have wine mono? I just did winetricks so I didn't have to look up anything.

dark wigeon
#

shoot I just tried sixlabors and it's about 100x slower

blissful burrow
#

Does anyone know how the aggro range colliders work? I tried disabling both LineOfSight Update() and the StillInColliders()/OnTriggerEnter2D() from AlertRange by using the On. hook and it didn't work

#

Any one scene since I'm trying to delete them all pretty much

#

I can't find anything resembling alert range in hierarchies

#

This is the Lake of Unn one for reference

#

Unfortunate

#

I currently have a hack which is just changing the hero's layer because that's what TC seems to do on death

#

But that obviously breaks other things

copper nacelle
#

Moss Knight\Attack Range just has an alert range and a playmaker proxy

#

could prob just destroy the proxy on anything with an alert range and the alert range

dark wigeon
#

according to someone else it works fine in wine mono, probably a libgdiplus problem

coarse lintel
#

have fun building the code for Crystal Guardian, its a bit hellish if you don't have much experience with C# like I do feelspkman

vocal spire
#

boss modding is fun

#

oof

coarse lintel
#

I did the same thing haah

vocal spire
#

I did the opposite

coarse lintel
#

just a warning before you start though: you can't just copy the Crystal Guardian code. I made that mistake already hurhur noot

vocal spire
#

yep

#

I actually find it fun to mess with fsms

#

no

#

you edit the pre existing stuff

#

copy, paste, remove, add

coarse lintel
#

you more or less look at the FSM and base it off that too

vocal spire
#

yeah

#

I suddenly have the urge to make a super fast crystal guardian.......

coarse lintel
#

crystal guardian attacks as fast as absrad's lasers oh lord notlikequirrel

vocal spire
#

maybe you should add phases too? I am working on a uumuu mod and it indicates that it is in a new phase by roaring

#

and changing color

coarse lintel
#

oh it changes color, pog pog shroompog

vocal spire
#

I actually added 2 completely new attacks

coarse lintel
#

Davey do me a favor and have Crystal Guardian Shoot those crystals that explode into crystal shard balls

vocal spire
#

cool

#

nah those 2 attacks were for Uuwuu, upside down Uumuu

#

I have an Idea for an attack for crystal guardian that I could add though

#

he launches off the ground and shoots a beam in a way that you need the shade cloak

#

yeah

#

If you want I could help code new attacks since I am nearly done with my Uumuu mod

#

I am terrible at making animations

#

I think I am slightly good at making new moves

#

first I need to move the collision on Uumuu to finally work upside down

#

Yeah

#

I think I know how to fix uumuu’s hitbox now

#

k

#

I will just do practice

#

since it is fun

#

thx

coarse lintel
#

I can't offer a whole lot but I can give you some animation tips/help if you want some when you do start working on animating CG's new moves. Might also be helpful to see the development, so I can work on my own mod

vocal spire
#

hello

vocal spire
ornate rivet
#

ooooo nice

#

should I put it on the modinstaller?

safe hamlet
#

what is this

ornate rivet
#

modded Uumuu I think?

fair rampart
#

well lifeblood master wasn't a modded soul master so this could be any boss

safe hamlet
#

^

ornate rivet
#

lmao

safe hamlet
#

is it uumuu but fast?

#

why is it 43 mb

ornate rivet
#

music?

safe hamlet
#

why is the music so large

ornate rivet
#

it's a virus

safe hamlet
ornate rivet
#

if you want me to put it on the modinstaller, give me a readme.

safe hamlet
#

monkau

ornate rivet
#

I think you forgot the "don't" zote

vocal spire
#

K

#

I was too lazy

#

I was too lazy to do normal things

#

I’m making a readme

#

now I think that it sounds better when there is only one audio track.....

unborn flicker
#

Actually, would be nice to see a mod load .wav from resources and convert it to an AudioClip

#

I tried to do it once and couldn't get anywhere, so I just preloaded an object with the clip I needed zote

#

I remember trying to pass the byte array to some Unity method, but it only ever gave static noise in game

#

But maybe I missed something

safe hamlet
#

why are you doing s.Dispose()?

#

if you have it wrapped in using already

vocal spire
unborn flicker
#

thanks!

fair rampart
#

copying pale champion code :monkaU:

vocal spire
#

I just wanted to add custom music

leaden hedge
#

@fair rampart alexxa's cagney is invis, any idea why?

fair rampart
#

I actually don't

leaden hedge
#

it also has fucked hitboxes

fair rampart
#

that's just me being lazy

leaden hedge
#

no

#

they like don't give iframes

#

so you instant die

fair rampart
#

oh I see

#

that's weird

leaden hedge
#

you saw the stream right?

fair rampart
#

watching it rn

ornate rivet
#

i thought you fixed that bug

fair rampart
#

maybe the ab is fucked?

#

one other person who had that issue had it fixed by reinstalling the mod

#

though I tested in a vm and had the same problem and reinstalling didn't fix anything

#

maybe the shader?

leaden hedge
#

why is only the boss fucked then

fair rampart
#

I used Shader.Find("Sprites/Default-ColorFlash")

#

so the issue was fixed for Alexxa by either disabling benchwarp or seanprcore

#

idr having either of those in my broken vm but ig this is a solution

ornate rivet
#

it's off because it doesnt feel like he is preparing to punch

#

it looks like he is raising his gand

#

hand

#

ah that's not so bad

coarse lintel
#

so as far as animation for HK goes they like to animate in a flash sort of manner

#

look at the heads of many enemies and you'll notice Ari rarely redraws them

#

what I'd suggest doing is using Crystal Guardian's body sprite, and just draw over parts where limbs are

#

You'll have to edit it yourself, I am also willing to help

#

yeah I know what you mean, I'm making sprites for the Moss Mother atm

vocal spire
#

If you need spritesheets, look in the art discussion pins

#

K

coarse lintel
#

Alright, give me a few minutes and I'll get the body done so you can use it

vocal spire
#

I’m going to start making the attacks

#

I’ll start with jab

coarse lintel
#

Alright here is the body, I included a crystal hand. I noticed both of these were used a lot

#

just let me know if you need anything else

languid goblet
#

if you want the telegraph frame to feel more dynamic, i suggest moving the arm kind of like it's preparing to throw something and raising the left leg (our right)

#

cause right now it doesn't look like it's doing much besides raise its hand

coarse lintel
#

In the end it would also be wise to reduce the amount of preparation frames it has, make it a bit more challenging

coarse lintel
#

ooooh it already looks great I love the animation

#

okay so if I may put some of my thoughts here, I'm thinking instead of redrawing eyes we make another crystal guardian body template with eyes. I can do those tonight and you can (if you want to that is) put them in the animation tomorrow.

#

this is your project, so I think its fair to have the eyes widen if you want them to

#

you're in charge

west ridge
#

How does asset bundling work once I've make everything do I press a button and it turns it in to a set off assets? And could I make a level this way?

#

.
Nvm it's in the pin

oblique shuttle
#

Any updates with the multiplayer mod since fireborn

#

since fireborns video*

elfin dew
#

If I wanted to make a small change to an existing mod, what sort of development environment would I need?

vocal spire
#

Dnspy for editing

#

If you are going to make a mod use something like visual studio

wheat grotto
#

Which is a good editing program to make a custom knight

vocal spire
#

You should probably start with godump and sprite packer. For the actual editing, I just use anything

wheat grotto
#

Yeah that’s what I meant

#

I got spritepacker to work

#

So I need a recommendation of a good (free) editing software

vocal spire
#

I just use paint 3D since idk good editing software

nimble lake
#

Hey, any ideas for “easy” mods I could try to make to practice?

elfin dew
#

@vocal spire thank you for the pointer!
now my ModLog.txt is no longer exploding at 0.5GB/hour
this beats hex-editing by a long shot :D

dark wigeon
#

In the future if you ever need to search big unity logs, get glogg and search by "exception"

languid goblet
#

damn that jab animation looks really good

floral furnace
#

homing projectiles /s

vocal spire
#

pale prince

wheat grotto
#

modded cannons that fire rad beams

languid goblet
#

what is it though? is it part of white palace or something?

#

cause of the buzzsaws?

wheat grotto
#

i assume so

#

some platform mod maybe?

languid goblet
#

i mean more platforming i guess

gilded lotus
fair rampart
#

Any news on the pale court mod?

gilded lotus
#

still WIP

fair rampart
#

Thanks

vocal spire
vocal spire
#

Looks good except I don’t see pure vessel

ornate rivet
#

ur mum is cringe

vocal spire
#

Ok

wheat grotto
#

where is the modded rad cannon i ordered 😤

#

understandable

#

have a nice day

safe hamlet
#

what does that meme

still locust
merry vine
#

For the Hornet skin?

#

o.o

vocal spire
#

Looks good

merry vine
#

That's neat

#

Herrah might be dreaming, but she still gonna kick some ass

still locust
#

Yeah for baby Hornet skin

merry vine
#

that is awesome

still locust
#

But I still can't handle the other two)

#

Trying to unify the styles

merry vine
#

That does sound like a tough one

tribal sundial
#

anyone like celeste?

vocal spire
#

yes

copper nacelle
#

nope everyone here hates Celeste

tribal sundial
#

not only is there aesthetic (wip, friend is helping me with tilesets) but the gameplay fully resembles path of pain

vocal spire
#

ok

#

cool

brazen mortar
#

only hollow knight club

#

celeste members get out

vocal spire
#

ok I don't like it anymore

brazen mortar
#

good

vocal spire
#

I hate it because of all the hours of rage

languid goblet
#

oh that's cool, path of pain but celeste art style

mystic stirrup
#

The abundant dream monsters makes me very uncomfortable

rapid spear
#

Is there anything better and more useable to work with assembly directly than dnSpy? I can extract code with ILSpy and compile it as aclass lib with dotnet but it wont work properly, all data serialization for classes will fail altho it is virtually the same structure. Just curious if there is something more useable for raw modding (I dont use modloader or whatever)

copper nacelle
#

no

#

dnSpy is the best afaik if you want to actually straight modify it

#

If you're ok with some extra steps then you can use MonoMod and that's really nice and you can use whatever decompiler you want

#

I'd just use the API though

#

Makes your mods actually cross compatible and there's been a lot of work done to make it easier to do things for you

#

But you do you I guess

rapid spear
#

monomod?

copper nacelle
#

It's what the API uses to patch itself into the assembly in the first place

#

For the patch-time part

#

There's also the runtime part which can hook any method and modify IL

#

it's a very good framework

rapid spear
#

ah, is it like harmony?

copper nacelle
#

the runtime part is similar yeah

#

imho much better api

#

Monomod actually backs harmony now

#

so harmony uses monomod.common

ornate rivet
#

Sorry for taking so long but I finally got to add in your Uuwuu mod. Ngl I like this more than lifeblood master zote

#

@vocal spire

vocal spire
#

Ok

#

Thanks

#

I’m probably going to update it some time next week

safe hamlet
#

bitch stfu dyno

remote zealot
#

Not having mod privileges zote

safe hamlet
unborn flicker
#

does the hook just not save the instance I'm using

safe hamlet
#

wdym by "fail"

unborn flicker
#

On.GameManager.StartNewGame += start.OverrideStartNewGame receives start with default values

#

so in my case it was throwing because start.sceneName was null

#

I guess that isn't too surprising as expected behavior, though

copper nacelle
#

that should be the same thing

#

As long as you're not capturing any params or anything

unborn flicker
#

start is a struct

#

so I guess the lambda is needed to actually capture it

copper nacelle
#

That should work

#

😠

safe hamlet
#

show us your non-lambda implementation

unborn flicker
copper nacelle
#

and that works with the lambda but not without?

unborn flicker
#

yeah

#

the exception occurs when GameManager retrieves the respawnScene

#

yeah, I solved the problem by just making the start location static

#

but it surprised me at first

copper nacelle
#

It works for me just with a general struct and event

#

after decomp

unborn flicker
#

hmmm, I wonder if it matters though that test is still in scope as a local variable when you invoke the event

vocal spire
#

Idk much about making custom bosses, but could I make one in playmaker and then put it in a mod?

copper nacelle
#

test isn't though

#

that's why CallEvent is a method

fair rampart
#

yes

vocal spire
#

Ok

sage holly
#

can I ask for help getting the specific sprites of the knight striking the nail? the spritesheet is too messy

languid goblet
sage holly
#

are the sprites separate in there? because I already have the night spritesheet (that is a clusterfuck)

knotty monolith
#

yeah

#

and you use spritepacker to turn them back into that crazy spritesheet

sage holly
#

thanks

#

ok bye

still locust
nimble lake
#

hoh?

still locust
#

Skin part finished

#

I really want to change the shade, anyone can add it into customknight? I will send this skin to him/her

vocal spire
#

Well, that is a good enough reason to try to add it

knotty monolith
#

beautiful spells omggrub omggrub

dire glen
#

is top howling wraiths or abyss shriek?

still locust
#

abyss shriek

languid goblet
#

woah cool

still locust
ornate rivet
#

this is REALLY GOOD

#

will this be free or only obtainable with a challenge?

still locust
#

We will release the whole mod after we finish it

ornate rivet
#

ayyy

languid goblet
#

is the beasts den the story part of the skin you were talking about?

still locust
#

Because you know the whole mod will be lots of work, and it may come very later)

#

Yeah I want to change the way getting spells

languid goblet
#

ooh cool

still locust
#

As you can see all the spells are about silk

vocal spire
#

Seems

#

Cool

dire glen
#

this seems to be sort of a Silksong lite

#

cool

languid goblet
#

woah i just noticed that hornet has spider legs during shriek, that's a really cool touch

still locust
#

what a way of saying "never"
@jolly oriole No I really want it to come out before SilkSong

nimble lake
#

those are really cool

#

imo, shade soul could be the silk attack she has in silksong, and abyss shriek could be gossamer storm pointed upwards

glacial panther
#

that would be one thick ass needle to throw

nimble lake
merry vine
#

Is the skin available? I'd really like to try it out

nimble lake
#

iirc Poppy said it'll be available once it's finished

merry vine
#

only just looked back at the chat, sry

nimble lake
#

no worries

merry vine
#

the sprite videos look amazing, Poppy did an amazing job ^^

still locust
#

imo, shade soul could be the silk attack she has in silksong, and abyss shriek could be gossamer storm pointed upwards
@nimble lake I can't remember that, do you have any screenshot?

nimble lake
#

man, you deliver

#

also, its in the video i linked above, it has a timestamp

vague venture
#

i love that skin. great work poppy

glacial panther
#

@nimble lake that skill is a needle throw

nimble lake
#

yea

glacial panther
#

I don't think that would transfer very well into a VS reskin because she needs to get her needle back

nimble lake
#

not to be confused with hornet's fight in HK, when she uses the "needle throw"

glacial panther
#

uh, yes to be confused with that

#

it's the same attack but sped up

nimble lake
#

i thought it was a shockwave

glacial panther
#

what

#

no, she throws the needle and pulls it back in both games

#

in silksong it only takes half a second though

nimble lake
#

the needle throw in SS i mean

glacial panther
#

take it frame by frame

#

it even pushes her back a little bit when she catches it

#

I think the ball of silk is better just in terms of dimensions

#

it should match up visually with the hitbox

vocal spire
#

I have tried to add shades to custom knight, and I probably have failed