#archived-modding-development
1 messages ยท Page 88 of 1
well if enemies have like doubnle or triple health
why up enemy HP if you're just gonna also up damage dealt?
it will be staggered
you still have to collect 6 pale ore lol
thats most of the game
i mean if you are not speed running it
i didnt hit level 4 on my nail until dan near end game
Nosk
nosk from mantis lords ez
that's actually when I first found him on my first playthrough, 56
nice
Fungal -> Deepnest
i just went to CoT after trying mantis lords once
I would love to see pale ore, mask shards, and vessel fragments worked into the item randomizer pool
Somehow
A newgame+ for HK would be nice
With harder difficulty.
Oh well..
Hopefully GoG have that
maybe a future update will have it
given how the first ending goes, it clearly indicates soe kind of cyclical arc
you turn into the hollow knight then another guy coes along, the process repeats
Hornet as a Dreamer DLC when
i want to see the ability to add in new environments, i wouldn't mind putting my limited artistic abilities to use
too bad my skills as a coder are -200
git gud
spend some ability points
ive tried, i find it too boring lol
i did like a week of python
granted, my whole experience was working on stuff i made, not stuff that was already established

i imagine coding for hollow knight doesnt require me beuilding a game engine from scratch ๐
i was stuck on trying to get images to display on the screen in python, got bored, move on
tkinter imo
a big problem for me is the length of time between doing something and seeing the result, its much greater than say, most of the arts i have done, or even level design in unreal and doom which i love doing
i can make changes and see them immediately in a very visual way
i didnt get that experience with coding
you can spend ten hours coding with 0 to show for it
because python is considered the EZ mode coding language
and everyone recommended it
i was following along a book i have about game creation in python
Just stuff like c/c++ with manual memory management is tricky
if you're making a game then use an engine imo
C# is honestly easier than python because of visual studio
unless you're in some class where you can't
lol, i was trying to do it from srcatch
i will admit it was a stupid way to start coding
if i ever get into it again i want to start with a game thats already there that i can make simple edits to, and build fro that
imo hk modding is fun
is there documentation on stuff? thats also typically a big thing that miffs me
ehhh
uhhhhhhhhh
what does this do, idk, what about that? idk, this? who knows
try it and find out
so comments die
so... There's no much to be had in terms of documentation
on the other hand
when you're entering your own code, then you have plenty of options
unity and msdn online
stackoverflow
yeah
its not exactly coding, but i did a bunch of scripting in zdoom, having a wiki was very helpful
but i also attempted stuff where nobody knew anything and that was a chore
Just ask in here about game stuff
Chances are someone knows or at least knows how to figure it out
aside from people saying "do this mod" and people asking how to install mods, that's what this channel is mostly about tbh
"hey, hey you people with green names, do this mod for me, do it now"
installing mods for hollow knight is super easy, you just drag and drop files
yupyup
isnt there even an installer thingy now?
Two of them
but... You should have seen the struggles we've had to deal with
there were a couple of occasions where multiple modders tried to help the same person for like an hour
It's not uncommon for people to download the source files from github and paste them into the game
sean surely remembers at least one of those times
How they even get there instead of the drive, no idea
eh, i was in the irc chanel when minecraft modloader was born, i also remember people asking how to install stuff before that was a thing
google op
ive seen the inanity
Minecraft modding has gotten so much easier, though
yes
Used to be you had to edit the jar manually and shit, now you just click a button in twitch/curse/whatever it is now
I remember when minecraft modding involved deleting stuff from the jar
yeah i remember droping files into the minecraft jar in a specific order
yeah
And deleting meta-inf
lol
"make sure you delete the meta-ing" was step #1 on every install page
is there any kind of code deobfiscation you have to do when hollow knight updates?
nope
just open it in dnspy

that is a pain for minecraft
so uhh any mods that adds a scorpion race i mean the out of all the bugs that one would be cool to see in game
it means mdoes are always multiple patches behind
see what I mean, Mecha?
The mod website is google drive
and most of the mods aren't really there anyways
but there's literally a description on the modding channel topic
wait wait..you want people to read the motd?
back in the IRC days...
But that description doesn't describe anything
Check the pins on how to what?
You expect me to click it to see the rest?
thats too much work
๐
man, I miss mIRC
the only issue i have with the mods for hollow knight is you have to download the mod to see whats its about
and read the readme
I have a readme in the mods page tbh
except for enemyhpbars, because that's pretty self descriptive
"so like, does it give enemies health bars? what about bosses?"
tbh the game is better without health bars, for bosses anyways
i dont want to know how clsoe i was before i died
Well then just don't die
new mod - remake the boop mod but instead of "boop" it's Hornet's "Git Gud" shout
if anyone, I'd guess Kerr or KDT would know
I'll just try it and if it breaks I can switch it to a class
This is pretty good
string text = Language.Get(this.priceConvo, "Prices");
try
{
this.cost = int.Parse(text);
}
catch
{
Debug.LogError("Input string \"" + text + "\"could not be parsed to int");
}```
"try" is a function?
Instead of just putting in a cost in editor, they put in a key for a language entry containing a price
try/catch/finally is error handling
hey Sean is there any way i can find out when randomizer updates come out besides lurking this channel
you can subscribe to his newsletter for $5 per week
When I actually release something I'll probably post in #races-discussion as well
Internet is dying, woo
But I can try to remember to @ you here as well, since you can't see that channel
That was odd, those messages I sent showed red like they failed then changed their mind
Seems like they actually went through from checking on my phone
Yeah
I mean...
Later they've got this
this.itemCost.GetComponent<TextMeshPro>().text = this.cost.ToString();
makes it easier for you to edit them tho, right?
So they have a string that they parse to an int and then back to a string
And they don't even store the string directly
They just have a key for it that potentially is valid
Also in ShopMenuStock
These are all GameObjects with ShopItemStats components
And that's all they need
Why they're referencing the object is beyond me
no these are GameObject[], which is even worse
I just don't get why they don't have ShopItemStats arrays
A dict, you say?
Same
y indeed
The key is the prefab, the value is the spawned object
what does it mean by spawnedStock?
Well the shop items are prefabs for some reason
So on scene load they spawn copies of them
For actual use
well, I'm not really one to speak, but wouldn't it be better for shop items to be simply sprites?
or maybe make each item a gameobject with a sprite component, price component etc. and have the canvas iterate over their sprites
Each item is a ShopItemStats component
But they're all on their own object
I also love that they have all this
No doubt only there so they can use CallMethodProper FSM action
I'm not even gonna try to decipher what that does
All I know is it's horrifying to look at
what the fuck
it does - something
wtf
that should be right
yup
modding HK seems easier now
yup
but this is hook hit
it species the right values in the add too
gameobject, hitinstance, int
?
On.HutongGames.PlayMaker.Actions.TakeDamage.OnEnter += TakeDamage_OnEnter;
o
public override void OnEnter()
{
HitInstance hitInstance = new HitInstance
{
Source = base.Owner,
AttackType = (AttackTypes)this.AttackType.Value,
CircleDirection = this.CircleDirection.Value,
DamageDealt = this.DamageDealt.Value,
Direction = this.Direction.Value,
IgnoreInvulnerable = this.IgnoreInvulnerable.Value,
MagnitudeMultiplier = this.MagnitudeMultiplier.Value,
MoveAngle = this.MoveAngle.Value,
MoveDirection = this.MoveDirection.Value,
Multiplier = ((!this.Multiplier.IsNone) ? this.Multiplier.Value : 1f),
SpecialType = (SpecialTypes)this.SpecialType.Value,
IsExtraDamage = false
};
hitInstance = ModHooks.Instance.OnHitInstanceBeforeHit(base.Fsm, hitInstance);
HitTaker.Hit(this.Target.Value, hitInstance, 3);
base.Finish();
}```
I need to get the Target... So I wanted to just hijack HitTaker.Hit
but this should work if I just do self.Target
cool
should i ping 0x0ade
wtf
it works on other static classes and methods
e.g FSMUtility
maybe there's something wrong with that class/method?
ok, first test of new mod
wtf
prolly breaking more stuff too
i could try switching to il-repack
i was using that and it wasn't working but that was because of weird naming shit
and 0x0ade said it should work because it uses mono.cecil
sharper.dll was merged too tho
it just didn't have playmaker
Is it possible to impliment action queues in HK? So for example you dash, then press jump before the dash finishes, and it automatically jumps when the dash is done.
Or other actions like queuing attacks.
yea
or at least
the hooks file had a working hook
yeah it definitely seems to work now
all those "that character" "that scene" etc. talk in the changes
what did they actually change lol
nice
I've gotta go now
I started working on a simple mod that drains HP if you do not hit enemies
hey @rain cedar i noticed the gate that normally takes the City Crest was removed in Randomizer; I understand why you took it out since only being able to open it once probably had lock potential but
is it ALWAYS gone
or only if you collect the crest?
basically just trying to figure out whether killing the False Knight is even that worth it
i figured it might be worth it for the geo but i'm still curious
Afaik the door is always gone
@solid wagon
It's gone only if you have the crest
{"sceneName":"Fungus2_26","objectName":"Shop Menu"}
System.NullReferenceException: Object reference not set to an instance of an object
at RandomizerMod.Actions.ChangeShopContents.Process () [0x00000] in <filename unknown>:0
at RandomizerMod.RandomizerMod.EditShinies (Scene from, Scene to) [0x00000] in <filename unknown>:0 ```
Unity serializer strikes again
The ShopItemDef array is just dropped completely for no reason
What mod is that?
I'm working on randomizer
Most of the base is there, I just need to figure out the randomization algorithm I want to use and I can have a decent working alpha out
It would still be missing a lot of items, though
Wings, crystal heart, isma's tear, dream nail, seer rewards, all spells, all nail arts
All of those have custom FSMs I will have to look into before I can randomize them
I think I will at the very least try to get wings/ch/isma/dn in before I release anything
Otherwise it would be very boring to play
I was going through the message history and for a second, I was worried that MonoMod was broken
great to hear that it was just an issue with ILMerge ๐

so has anyone tried adding gamemodes?
There's some really great level shapes, and could potentially do some interesting things. I adore ROR for instance, would be neat to see how well something like that would work within this engine. Or hasn't modding gotten that far yet?
also i'm on mac, suggestions for modding applications?
googles ROR
Nope
Not a chance
What do you mean by adding gamemodes, anyway?
Rando and boss rush are gamemodes
ror = risk of rain i think
also getting a sequel right, but its 3d
RoR also has a pretty neat modding community
damn, someone in teamcherry loves super meat boy
Well I mean it would be a standalone game mode as it would need to be wholly different from the core game. But Hollow Knight has enough enemy types. Might have to animate new frames for a few to make them work in that manner. but there's a bunch of items (in ROR) that could be changed to charms for a Vague Rogue-like game mode. Theres actually a few concepts I think would be neat, in place of clay men from Risk of Rain (would be a new creature for HK gamers) use a fungal altered bug (i've actually had this kind of thing in mind for a bit) There's a full tile set (I need to figure out a fast way to to do a mockup for each HK region)
the other idea (I play stickfight and it cracks me up. obviously HK lacks ranged weapons but something like a physics fighter would be a kick too.
so far though these may have to be standalone for which i'd need to peoples interest and Team Cherry's permissions. Since its their title.
good luck with that
I'll play around with mockups for a while. Just call it fan art or something would be a lot of open spaces for the Rogue-like
Computers are too fast these days.
wtf
that's how you impress tech illiterate people
Reminds me of this: https://thedailywtf.com/articles/The-Speedup-Loop
doesn't matter if it takes 3 ms to ping the database, if you make it do a 2 second pinging... animation they'll like it more
that's a good story
oh and props if you can guess without reverse google searching which hollow knight related program does this.
shitmodst 2
Now I'm tempted to check KDT's one to see if that has it too.
probably not because java takes 2 seconds to start anyway, no extra code needed

what server is that even from?
dang
feelspoorman
and here I thought you just had nitro or something
ouch
idk about scene file editing
but I just renamed the dir and didn't want to hit uninstall
scene editing would be the ultimate dream for me but it might not be possible.
imagine taking an existing scene X, modifying it in Y ways using the unity gui, and exporting a new scene Z.
That's what those bethesda modders can do.
It wouldn't be too hard to make a basic scene editor, honestly
Memory might be an issue
You'd probably have to store object names rather than actual objects
Preloading everything is way too much
Well IDK if I need a full editor for this, all I want to do is take an existing level, add an NPC that already exists in the game but isn't in that level to that level, and add custom dialog to the npc.
i think they're switching damage stuff in the beta
also there's a SpellFluke monobehaviour
and a consts file
diff if anyone wants it
neat
cool
Did you modify a unity scene directly to do this? or was hornet there all along? Or did you place Hornet there purely with code?
Seanpr#9281
It's really pretty easy to mess with NPCs on scene load
This is all I'm doing for hornet
GameObject hornet = GameObject.Find("Hornet Black Egg NPC");
hornet.SetActive(true);
FsmState activeCheck = FSMUtility.LocateFSM(hornet, "Conversation Control").GetState("Active?");
activeCheck.RemoveActionsOfType<IntCompare>();
activeCheck.RemoveActionsOfType<PlayerDataBoolTest>();```
hornet is there if you have void heart
oh thanks 56
But does that code make her there regardless of if you have void heart or not
like the: hornet.SetActive(true); part?
I'd assume so
i'm just saying in the base game, she does show there with that item. so either telling the game you have the item, or skipping that check would do the trick
that works for me.
then just change her text and bippity boppity boop
Removing the check actions makes her appear
Setting the object active is pointless since it already is
you can also modify the check actions to check for other stuff right?
Yeah
uh so
I downloaded 1221, modding api, randomizer and charm notch mod
and when I make a new save
black screen

i check the right version of modding API
gonna try now
didn't fix
I got the intro screen thing, where there's some writing, when I tried to skip that, black screen
just like before
which version you on?
why not 1.3.1.5?
rando works on 1315?
no
then here's why
did you merge the depot or just replace the folder w/ the depot
pretty sure it doesn't but i can double check
i got rid of everything from the original folder and moved it somewhere else
then I put the depot in place of my HK folder
is the folder structure still the same
wait if it's booting ofc it is nvm
try merging the depot and the original folder
also backup both copies because downloading takes forever
imo
sure
and did you test it running before installing mods?
so your download depot may be the problem, not the mods
oof

@copper nacelle should I try and install mods one by one and see if theres a specific one that causes an issue?
if so which one should I try first
just install the API first
ofc hard mode lol
who do you think I am
im banning you from my server cause that was a great insult to me

is the api update for 1.3.2.7 yet
why are you on the beta tho
because i am
bonfire doesnt wqork?
neat
@oblique shuttle are you using the latest version
it's the [API] one
and are you using an installer and if you're not, have you installed the api
bonfire is 1.3.1.5 compatible
it's broken in the sense that it's very easy to become op
tbf so is vanilla
i mean if you never get hit then everything is op
i wanted to try bonefire but i read somewhere none of it effects spells, and i want to use spells in my next play through
i want to do enemy randomizer, randomizer, and perhaps bonfire next
im just waiting on randomizer
it does affect spells tho
"Currently, the Vengeful Spirit and Shade Soul spells are unaffected by the Intelligence stat."
from the readme
well i guess the other spells work lol
google drive is doing that thing where all the files vanish again ๐ฆ
go into a folder and then the files dissappear one by one
incognito imo
i thought it was adblock before, but adblock is disabled for google drive now
so in the readme it says you can check out how each stat effects the game explicitly, and gives a link..but the link just goes to an XP table
wow im dumb, google sheets has tabs at the bottom
what is "delta X" for in some of the charts?
delta x is change in x
when playing with the mouse the mouse goes out of the game window
and you click rando shit
but then you can't change windows as quickly
maybe mouse capture when not paused
pausing is effort ree
or
if no mouse in game = mouse is captured to window
hmm hollow knight doesnt load with bonfire installed, just sits on a black screen
thats whats in the filename
1.2.1.4 is the old version
that number is for the game version not the mod version? oh boy
lets hope draging and dropping replaces the proper files
nope, i borked it
last time it asked me to replace an assembly .dll file


So if I'm adding a component at runtime is Awake called immediately like a constructor or can I set values on the component beforehand?
from my experience with healthbars (which are a component), awake gets called before anything else
Yeah it's before everything else, but I'm not sure if it's actually immediate
My assumption is no
I think it depends on of the object is active or not
Yeah, I figured
By "not immediate" I just mean I think it happens on the next frame
Which is basically immediate but not quite
That answer seems to dictate the behavior I was worried about
In my serialization stuff I'm working on I set objects to inactive first before adding components bc I was worried about that
This seems like the better behaviour, doesn't it?
If it was the other way around you wouldn't have the option of disabling them
Actually no this answer shows that awake is called before you have a chance to disable
^
Well that's no big deal for me, I just have to change something slightly
Thus my woes
can't you just disable on awake?
You can add to disabled
Modifying awake is not always an option
oh, gotcha
That's how my object serialization code is doing it
I thought you were setting up your own component
I make a new game object, disable ir
I am, but my component relies on other base components
yeah, kerr's solution seems the best then - check if it's enabled, disable if it is, then add component
Yeah, I will have to do that
Anyone willing to help with CanvasUtil? I don't really get this explanation https://github.com/seanpr96/HollowKnight.Modding/blob/master/Assembly-CSharp/CanvasUtil.cs#L60
Feels weird that there is no constructor taking a screenspace coordinate based off the canvas reference resolution
Well, literally nothing I do makes anything appear
Never any errors, though
Guess that's that, then
Fuck CanvasUtil, I give up
"What is the order of execution, when calling an instantiation meth..."
wow, chat was so far behind
chat didnt scroll down so i didnt know there was text after i read
I'm trying to do basically the same thing as here and it doesn't do anything https://github.com/Ayugradow/Enemy-HP-Bars/blob/adafdc06bb05b3af24087cfaaa5e3b4f51408386/src/ComponentHPBar.cs
Create canvas, add image panel, give image panel position based on viewport
I might just take the canvas shit from debug and use that
As far as I understand I implemented it "wrong" but it works and it is easy
Just give screen coordinates and a sprite and bam
Alright I'm able to get canvas to work pretty easily by bypassing CanvasUtil for image creation completely
GameObject imageObj = new GameObject();
imageObj.AddComponent<CanvasRenderer>();
RectTransform rect = imageObj.AddComponent<RectTransform>();
rect.sizeDelta = new Vector2(imagePrompt.texture.width, imagePrompt.texture.height);
imageObj.AddComponent<Image>().sprite = imagePrompt;
imageObj.transform.SetParent(gameObject.transform, false);
rect.anchorMin = rect.anchorMax = new Vector2((0 + imagePrompt.texture.width / 2f) / 1920f, (1080f - (0 + imagePrompt.texture.height / 2f)) / 1080f);```
Still no idea what that CanvasUtil.RectData nonsense is about
gameObject in this context being a canvas
Canvas coordinates is weird
I'm still not sure how they work
All I know is that the pos values are all relative, and not absolute
I had to take some time to make the bar follow not the enemies' actual pos, but their in-camera pos
So if it's not showing anything for you, Sean, maybe the pos is wrong?
Try setting it to 0,0 (which is the middle of the screen iirc)
Everything is fine when I use my own positioning code
sizeDelta is the difference between the size of the rect and the actual content
RectData(new Vector2(100,100), new Vector2(0,0), new Vector2(0,0), new Vector2(0,0))
makes a 100 pixel large rect at the top left of the screen (relative to the canvas size)
RectData(new Vector2(100,100), new Vector2(0,0), new Vector2(0.5,0.5), new Vector2(0.5,0.5))
makes a 100 pixel large rect at the center of the screen (although the top left of the box will be in the center)
can someone update NGG mod for Lifeblood?
no
u
im kidding it's kdt's mod
overall its pretty easy to understand
RectData(
new Vector2(extraWidth, extraHeight),
new Vector2(stuff, stuff),
new Vector2(leftEdgeAsPercent, topEdgeAsPercent),
new Vector2(rightEdgeAsPercent, bottomEdgeAsPercent)
)
not only that but its a 1:1 copy of unities rect, so you can just align shit in unity editor and c+p the values
and if you want screenspace offsets you can use the 2nd one
new CanvasUtil.RectData(new Vector2(58, 58), new Vector2(0, 90), new Vector2(0.5f, 0), new Vector2(0.5f, 0), new Vector2(0.5f, 0.5f))
I know for a fact this makes a 58x58 box, 90 pixels above the bottom of the center of the screen
have you tried just building it on lifeblood and seeing where the errors are? @flat forum
Alright I see the issue, the default canvas position seems to be centered at the bottom left
NKG's fight isn't changed at all
imo you fix it
but Grimm is still buffed
if it's not a big change
i think some of the gameobjects are now children too
#entitled
but that's not a big change either
the fireball/bullet hell attack was somewhat changed in how the fireballs are travelling, but I don't know if there's any change in how it functions
why not just play on the old patch where it works ๐ค
Ok changing the base canvas transform does nothing
It's still centered on the bottom left corner instead of the center
I'll do that later
canvas = CanvasUtil.createCanvas(RenderMode.ScreenSpaceOverlay, new Vector2(1920, 1080));
CanvasUtil.createTextPanel(canvas, "Centered", 24, TextAnchor.MiddleCenter, new CanvasUtil.RectData(new Vector2(0, 50), new Vector2(0, 0), new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f)), true);
try that
oh and run CreateFonts before making the textpanel
I think I get it
You said the origin is top left
But it must actually be bottom left for any of this to make sense
Otherwise that would render below the camera, but it works
/// <param name="min">Describes 1 corner of the rectangle
/// 0,0 = bottom left
/// 0,1 = top left
/// 1,0 = bottom right
/// 1,1 = top right
/// </param>
/// <param name="max">Describes 1 corner of the rectangle
/// 0,0 = bottom left
/// 0,1 = top left
/// 1,0 = bottom right
/// 1,1 = top right
pretty sure i say its bottom left aligned in canvasutil docs
normally x and y are backwards in coding
unity isn't even consistent tbh
If by that you mean the x axis is normal and the y is inverted then yes
fuck y,x
ncurses does y,x and I always forget
That's a pretty shit convention tbh
because it's so weird
I don't know anything that does that
unitys render is x, y top left in linux, and x, y bottom left in windows
wtf
reeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
Is it opengl related?
yes
i mean it says opengl-like and direct3d-like
linux uses opengl which is bottom then goes up
vulkan when tbh
windows uses directX which goes top to bottom
however unity auto fixes this for you except in your shaders
and doesn't tell you about it
This first argument to RectData is definitely just absolute size
Not an additive thing that changes size
shouldn't be, 0,0 0,0 0,0 1,1 should be fullscreen
Ok you say that, but putting 569,318 for the first one gets me a 569x318 image
with 0,0 and 1,1 anchors?
Ok I think I get what you're saying
The anchors define position/size and the sizeDelta adds to that
But I can just as well use anchors as just position and sizeDelta as absolute size
This should just make fullscreen black, right?
CanvasUtil.CreateImagePanel(gameObject, Sprite.Create(Texture2D.blackTexture, new Rect(0, 0, 1, 1), Vector2.zero), new CanvasUtil.RectData(Vector2.zero, Vector2.zero, Vector2.zero, Vector2.one));```
yes
It does nothing, which doesn't make sense to me unless Texture2D.blackTexture isn't a black texture
alpha is 0 too
so its trans
nullSprite takes a color iirc
in canvasUtil
yeah CanvasUtil.NullSprite(new byte[] {0x00, 0x00, 0x00, 0xFF});
should return a black sprite
420iq
wtf
generates a small invisible texture with all black pixels
woke
Schrรถdinger's pixels
I still can't get fullscreen black
It's just a bar down the middle
Every time I use canvas I'm just reminded that it's 300% not worth the effort
Then I do it anyway

does Lightbringer work in Lifeblood?
i wonder if preserveAspect messes with it
no
It's literally impossible to not preserve the aspect
It's 1x1
Actually nah that doesn't make sense
well image panel has preserveAspect set to true so, it should be equal width to height
but clearly not if its a single line in the middle
if it's fullscreen isn't it 16:9
This is clearly not equal width/height
looks close enough tbh
Maybe it is actually
It's basically centered
delete this
i snipping tooled the box
and then measured the image
which is inaccurate but close enough
it was a square
or basically one at least
410x408
Yeah idk it looks a lot more like a square after I posted it here
It looked way taller when it was fullscreen
Yeah, preserveAspect false does it
Cheaper >>>>>> Easier
Why do you think I still play hollow knight instead of other games?
2 phones is cheaper than a tablet
Ok but in this imaginary scenario the guy already had the tablet
Also perpetua is packed with the game, right?
Not just trajan?
i dunno might be
30 dollars of smartphones is way cheaper than 10 hours spent hacking together an app
But my time doesn't have value
2meirl4meirl
mine clearly must not either because I spend a lot of time in the discord
you gotta buy the glue too
i can't find perpetua
it has arial tho

nvm
found it
[INFO]:[MantisGods] - Perpetua (UnityEngine.Font)
yeah it has it
Yeah, I think that's what's used for the "Taken the" text in big item popups
Arial, TrajanPro(-Bold/-Regular), NotoSerifCJKsc-Regular
That last one looks like someone started typing a font name then stroked out halfway

I'm probably the oldest one around here, so I post elderbug
It's 10:30 and way past my bedtime
You can afford getting a puppy, so yeah probably
It's exhausting
I used to stay up late, now this thing has me in bed as soon as it sleeps around 9 or 10
Well, that's your life now for the next few years until it calms down very slightly
Well, having a baby in like 8 months. So.... will be a bit longer than that I think

Nah. I'm sneaking in time on lunch breaks rn. I'm sure I'll figure something out
My secret to getting time for modding is skipping classes
Too bad that can't be applied to work as well
It kinda can. Just gotta make sure the work is done for the deadline
Oh, sounds like a nice job
my secret is to procrastinate on my work by coding
Corporate culture doesn't really reward work being done early, so might as well fill that time with something better than reddit
Office space was more truth than satire in many ways
๐ค
Oh hell yeah
the secret to programming is implementing stacksort for all of your problems
that's why I'm wondering why I thought I was using 2018.3
i wondering why you're using unity for crossroads
I've been liking Unity a lot lately as well
insert less after lot and that describes me too
I haven't really experimented with IDEs or anything to execute my code so at the moment Unity is my best IDE lmao
it's version of .net is old and a lot of stuff on it is broken
Oh I was using 2018.2
not .3
i'd actually use unity for HKSM# but it needs a 2 second splash screen
But 2018 has the new parallel stuff with c# jobs
oh so it'd be just like the python save dumper that makes you wait 2 seconds
and in unity because why not right
because winforms sucks dick
I'm so hype to write procgen stuff that can run in c# jobs that would have been hell to try doing before
and gtk doesn't compile on windows
qt
does qt# even work
I'm gonna make kHKSM++ before y'all get any bad ideas
it's gonna be an official kde program in c++ 17 and by god it's just gonna work
the only reason to port it to another language other than java
is because I can use vanilla code in c#
but that doesn't matter
because the save code is the same across 3 versions of HK
and even if it weren't it's like 2 lines
what's it to do with then
the fact I can load the save into the playerdata class
in vanilla
with all its functions
Seriously tho, this feature right here
and edit that class
The C# Job System & Entity Component System (ECS)
Combined with a new programming model (Entity Component System), the new runtime system enables you to take full advantage of multicore processors without the programming headache. You can use that extra horsepower, for example, to add more effects and complexity to your games or to add AI that makes your creations richer and more immersive.
instead of editting json with java
That right there is gonna change everything
ok just don't use windows forms like kerr

Winforms is ok
windows forms is broken on windows in the unity version of mono
I used it to make a save manager for another game
it only works on windows
tbh to make it crossplatform and not have to require gtk which requires mono which requires contracting space aids from attempting to install it on windows
ill probably just write the entire gui in opengl
no winforms does not work on windows
choco install gtksharp
I tried to use winforms to do a file picker and it segfaulted with the error happening in unity mono on windows
imo
and on linux it works but never disappears until a new winforms window appears
gtk# is installed, it won't compile in vs though afaik
only works with mono
which wont install
like your solution won't install?
and gives no helpful errors
f
trying to build mono just says NameSpace not found for a bunch off stuff
and googling the error gives unity errors
"Co-founder and CTO Joachim Ante demonstrates our upcoming C# job system and component system that will improve the performance of your games, featuring a de...
can't you use a pre-built mono?
you can only get really old versions of mono from sourceforge
why use that gay shit when you can just code everying in playmakerfsm
I love the part in that demonstration when he talks about instantiating 10s of thousands of objects at runtime in the new system with zero performance impact
Wow that's perfect, hopefully TC starts using more FSMs now that it's ok

implying they'd update to newest build of unity ๐ค
Playmaker would need to be totally re written to handle the new architecture
The other part I love about the new stuff is you have to develop in an ECS architecture to reap the benefits
Basically rip singletons everywhere and other bad practices
Good thing HK has no singletons anywhere
Another bonus, doing things the new way will make stuff testable
People rightfully bitch about unity a lot, but they're gonna drag everyone kicking and screaming into the future
@leaden hedge Where's your sprite dump mod put shit?
should put it in the save folder
Alright cool
should be in /sprites
might have to
Lame
you need to press a key to start it
Oh ok
See, these are the kinds of things that should be in readmes
Not "Tends to crash a lot atm, core functionality works until it runs out of memory"
I forgive you, though
yeah well i didn't say the readme was good
you'll probably have to dnspy the keybind
its probably f12 or smth though
Seems to be F10
Well, you were right
It crashed
But I got the spritesheet I wanted first
yeah I actually don't know why it crashes, I assume it runs out of VRAM and gives up
but unity has no GC for vram so
Eh
Doesn't matter too much
DynamicHeapAllocator allocation probe 2 failed - Could not get memory for large allocation 89478488.
DynamicHeapAllocator allocation probe 3 failed - Could not get memory for large allocation 89478488.
DynamicHeapAllocator allocation probe 4 failed - Could not get memory for large allocation 89478488.
DynamicHeapAllocator out of memory - Could not get memory for large allocation 89478488!
Crash!!!```
oh
locally assigned textures aren't derefenced
and aren't garbage collected
lovely
But why?
apparently the engine keeps a reference so UnityEngine.Object.FindObjectsOfType<Texture2D>() will work
I guess that kinda makes sense
ill fix it in like 9hrs or smth should only be aline hopefully
Yeah maybe
Does anybody know if
yield return StartCoroutine(SomeOtherCoroutine());
stops yielding when the other coroutine is done or when it yields for the first time instead?
should be on yield break
Alright
So I can just insert one of those at the end and it'll continue the first one there?
I guess I will just have to test the behaviour because I can't modify the coroutine in question anyway
it should wait until its either finished or yield break;
Alright
other yields shouldn't make the upper level continue
That makes sense
It should behave that way, but Unity doesn't always behave how it should
well I went a looked and thats apparently the case
except if theres no other yields other than yield break
in which case it gets confused
It should be fine, then
I remade the big item popup fsm as a component today
The timings need to be adjusted now is all
Very easy to create one now
BigItemPopup.Show("Prompts.Dash.png", "GET_ITEM_INTRO1", "INV_NAME_DASH", "BUTTON_DESC_PRESS", "GET_DASH_1", "GET_DASH_2");```
@rain cedar
Nice
Nice ping at 2AM for him
Well, it has the nice side effect that idiots don't ping or PM me randomly anymore
Why would I be a modder just for writing the modding core anyway ๐
go figure
What?
go figure as in ๐
That's not what that means, but ok
close enough as there is no other emoji to represent it
Apologies for any 2AM pings, it's almost 7pm here in Aussieland.
I usually prefer being direct with messaging and stuff, but noted all the same.
Oh hey another aussie
and another right here
I know another one but he's not in this server



