I just published a #blog post. It's about a #csharp #data system I wrote for my #Asteroidians game, which I call the Edict Rules system.

It uses generics, polymorphism & enums to answer the problem of:
How do you systematically store many hardcoded types of user-defined data, while keeping aspects of the code maintainable?

Read the post: https://bamboy360.com/blog/edict-rules/

(Video is a raw string output of this system)

#gamedev #indiedev #programming

While I want to stress that this is NOT a fair repo file size comparison because my port from #Unity to #Monogame is not done, I think it's very interesting how bloated the Unity repository is.

Most notably I have not ported most of my game assets yet. (inc 135mb audio 😰) The rest of that is mostly Unity+Plugin bloat!

#Asteroidians #indiedev #gamedev

Did I ever publicly mention I've been (slowly) working on porting my #Asteroidians codebase from #Unity to #Monogame ?

Apparently that started June. 🙄

I spent today working on my replacement Coroutine sys, which has gotten some 👀❓from the Monogame discord.

I have specific needs for Coroutines though, for running game-simulation code over-time with my "deterministic lockstep sync" based #multiplayer architecture.
And it keeps code tidy!

#selftaught #gamedev #indiedev #programming #csharp

I've tried to make #freelance work for income, and managed to barely sustain myself for several years doing so, but routine #SocialMedia (namely #marketing) is one of those #softskills I am godawful at keeping up with

It's the same reason I couldn't generate enough interest in #Asteroidians as a game. (tbh the community management aspects of #gamedev kinda scare me)

Unfortunately when everyone has less money, freelancers are hit first
#ActuallyAutistic #SelfTaught

#Thread
Often I forget just how amazing some of the #programming systems I have made for #Asteroidians are. Absolutely something that could be turned into a viable career, even outside #gamedev

Being #ActuallyAutistic I seem to struggle with the #softskills necessary to turn the #SelfTaught skills I've developed into something I can live off of

Its very invalidating, internally I seem to blame society or #capitalism which is not constructive

#shadowwork #indiedev

Just discovered #JetBrainsRider feature of making code diagrams!
Got inspired to use it to document my game's asset loading pipeline.

I think this reflection method for loading content could be used for modding as well. (I wrote this system probably over a year ago >_<)

#Asteroidians #gamedev #indiedev #csharp #dotnet #programming

Finally making a second pass at #Asteroidians Grapple rope-wrapping logic.

I've switched to generating a convex hull from the set of contour-traced solid pixels.
This results in an array of positions that are significant geometrical corners we need to check as valid "anchor" positions.

Keep in mind, *everything* I'm doing here is based on a custom binary-pixel collision system! No polygons in this here #gamelogic !

#wip #solodev #gamedev #indiedev #gameprogramming #devtools

3/4
Honestly if it wasn't for #OdinInspector by Sirenix, moving away from #Unity wouldn't be so hard for me.

In fact, #Asteroidians wouldn't be possible in Unity (or at least very challenging), because I use custom fixed-point numbers for determinism. At the same time, I absolutely HATE having to use unity without Odin (eg when I #freelance)

If unity the company wasn't going senile, they would learn from their own community general engine improvements and QoL

#gamedev #indiedev #rant

1/4
The only #Unity specific thing I needed to do today for #Asteroidians was to serialize a Guid in a ScriptableObject (The rest was all raw C#)

Unity refused to do this for me, which is really dumb because internally unity uses and serializes Guids for tracking project files. (It's what they're for! Unique identifiers!)

I managed a workaround (string) but it's the little engine frustrations that make me want to leave even more, on top of my mistrust of them as a company.

#gamedev #indiedev

I finally got back on the horse and am working on #Asteroidians again. (Haven't since #Unity 's nonsense in Sept)

Sometime I should toot in-depth about the data system I have been building that allows players in my multiplayer game to customize game rules to a high degree, while also keeping it manageable and maintainable for me as a developer as the project grows

This customization feature has been on my list since I started this project in 2016

#gamedev #indiedev #csharp #screenshotsaturday