link to the game - https://kva64.itch.io/advance-demo-adventures-of-the-math-logic-club

welp, i've just made and released my first video game [prototype]. technically, not first, since i previously used to
develop games that were never posted on the web, but this one is the first to be released publicly on itch.
prior to this i've been making a gameboy game, but it never got past test builds mainly due to gb studio limitations
that prompted me to find some time and make my own engine from scratch (or use an already released isometric engine
i found once on github). there is a blog dedicated to my dev notes on this game which you can read here -
kva64.dreamwidth.org

we're not talking about this one today, though. we're talking about my crappy entry for the gba jam 2021, promptly
titled "advance! [early demo] adventures of the math & logic club", or advance_demo for short. it takes about 10
minutes to complete, so consider giving it a go if you like visual novels and playing games for gameboy advance.

originally, i planned to make a picross dating sim under a working title "aicross". in this game you would solve
various picross puzzles to impress its characters, plus have the ability to interact with them via a pseudo-3d
"overworld", similar to, say, 13 sentinels, but with the added ability to rotate the camera view of the 3d space.
the initial plans proved too unrealistic to fit into my studying schedule and the three-month submission entry
period of the jam, plus i spent most of my free time in june doing absolutely nothing but thinking about the game
i wanted to make, which left me with about three weeks until the end of the jam to actually work on my entry. whew.

the first week of three i spent basically reworking my initial game's plot (joining a picross club and dating its
members) and mechanics into a visual novel with some bits of said interaction ability. unfortunately, i was already
burnt out from all the work i had to do for uni assignments, which is why i made the decision of not implementing
the interaction menu in the submitted prototype. i also wasted a lot of time trying to make the free trial of mid2xm
program work on different windows virtual machines before finding out that midi to xm conversion can be easily
done in openmpt that was already installed on my old win7 laptop. sigh.

the second week was dedicated to drawing character art, writing, editing premade graphic assets, getting to know the
butano engine and coding a set of interfaces for graphic output. i had to hard code asset initialization into the
interfaces since i don't have a substantial knowledge of python to make an utility for automating this process.
a lot of time was wasted on the method that fits long strings on screen by breaking them into several smaller ones.
this could probably be the only smart piece of code i've written... if it worked properly. when the algorithm meets
a string that has a space near the last allowed symbol index followed by a lengthy symbol sequence, it just omits
the rest of the string for some strange reason. it would've been cool if someone could help me out in fixing this
phantom bug.

the first half of the last week was spent on programming scenario output (i tried to rush it by copypasting a lot
of similar code for text output) and putting finishing touches. i wanted to spend more time on the fade effects and
the aforementioned interaction menu, but i was already tired of working on the game, and i also had (and still have)
a lot of uni assignemts to attend to, and so, on the 9th of june, i decided to release what i already had at that time.
it may seem like an extremely low-effort game, but i don't care about that. i made a thing, i released a thing, i
then spent several hours walking around the house thinking about how i released a game earlier that anticipated,
and i already consider that as a personal win. now i'm just waiting for my moment of shame once someone decides
to review it.

have you checked the game's source code already? aside from the crapfest that is the c++ code, there is also some
additional info about the game and some bonus artwork. and oh my fluffing god was it a pain to maintain the repo.
it occured to me that copying the game files into a separate folder that would then be used as the repo was a good
idea. it wasn't. especially since i'm used to working with git via terminal. after making this decision, i
proceeded to burn my precious time on cp -r'ing every folder and every changed file separately to later commit -a and
push them. and every time i did that i had to input my gitlab login credentials only because i didn't know how to
save them. the process overall was extremely chaotic, and i'm still not sure whether the repo folder can be used to
compile the same rom file the original project folder can output through qt creator. i've previously only used git
two times for various team projects for uni, i never use it for personal projects. don't get me wrong, git is a cool
version control software, it's just me who's yet to grow as a developer in order to use it. oh and also the idea
of sharing my code online intimidates me a lot. self-awareness sucks, am i right?

and speaking of intimidating, this is the same feeling i had when i joined the jam. and the gbadev discord. i wanted
to ask people there to test out my game for misspellings or weird word choices (english is not my first language), but
i couldn't bring myself to do that in the end. i'm not much of a social person, especially online, and every kind of
social interaction i have with strangers stresses me out more than it should. i guess i really need to get therapy asap.

at the moment of writing this, the jam is still accepting entries, and my game has already been downloaded 8 times.
should i do something cool once the download counter hits 10? lol
anyways, thanks for reading this entire plaintext until the end and thank you in advance (pun not intended) for checking
out my game. mistakes were made, life lessons were learned, but most importantly i now have experience of making and
publishing an entire game prototype, and that is a big W in my book. now if only i could achieve the same with my
research project on interrupt delays in qnx rtos...