I have waited with releasing any code, because I want it to be as close to complete as possible when I do. That’s just the way I work, with anything. Today’s github hipsters want to release early and often, but I grew up in a time when games weren’t patched because they did what they were meant to from release. Because not everyone had The Internet, and those who did usually didn’t have the bandwidth or know-how.
Today’s very different. People actually pay to be alpha and beta testers (they call it early adopters) on Steam. That’s ideal for fast and agile development, but I’m more of a dictator when it comes to creating things. I have too much of an ego. So biamin will be released as version 1.
What remains to be done?
- There are 3 bugs that needs to be addressed before "shipping":
- To avoid a systematic bug, I have decided that items will be randomly scattered not just at boot, but also when an item is found. This wasn’t my intent, but there you go. If in doubt, make it random. Random is good.
- The ASCII graphics didn’t pass the UTF-8 test, and was botched. This just means I’ll have to hunt down the few symbols that aren’t from the first 127 characters of ASCII.
- If you hammer the keyboard like an idiot, when [R]oll is expecting 1 symbol, bash keeps that variable for the foreseeable future. But it also crashes. This is an easy fix, I just unset the key pressed once the procedure is in motion. I can’t fix BASH, but I should avoid crashing it.
- In order to get code out of the door, I have decided to skip the elaborate social media feature –announce, and instead just echo a message to the terminal which the user can share him or herself to the same effect.
- I want to adhere to good coding practices, which involves verbose commenting and coding style. Since my HTML days I enjoy writing everything in small case, but apparently that’s not considered good form. I will adhere to the BASH coding conventions of: variables in CAPS, functions in CamelCase and loop variables named likeTHIS.
The open question is, when will I have time to do ’em? The systematic bug is a bit hard, because it renders obsolete a different codebase (the diminishing item array). Thankfully, that can be ignored in version 1, because the code will work.
Biamin is playtested!
My brother Koew did some play-testing, and broke some of the loops by repeatedly hitting the key like an idiot. I think this comes from his upbringing using Windooze. In GNU/Linux (and thus, the terminal) you never hit the key repeatedly unless you want a broken system. You read what’s on the screen, and hit the desired key. Otherwise, you may end up uninstalling the kernel you’re currently running! Anyway, this is an easy fix, see the above ordered list.***
He also complained that my map interface used [N]orth [S]outh [E]ast and [W]est instead of the WASD keys that are prevalent in gaming. He’s got a good point there, but I’m not sure if fixing it to be [W]North, [A] East, [S] South, [D] West would put the rest of the game in peril stylewise. At the moment, I use the first letter of the command, which breaks convention but it looks good aesthetically and also reflects early console adventure games. I will probably release version 1 as is and change it if there’s a request (from anyone else).
Related to this he had some systematic issues, because he didn’t liked the forced ASCII banners when travelling that shows e.g. a forest road. I think they add atmosphere to the game, and I won’t change this because biamin wasn’t meant to be tic-tac-toe, but an interactive world. The ASCII banners add some colour to the world of MUSH/MUD and also gives you time to consider your next move. Koew just walked around fighting, but there are other important mechanics available.
Once the above is fixed, I will test it on Fedora, Slackware and Ubuntu.
In other news: I have started on a minigame for an as of yet unannounced sequel to Back in a minute! The sequel was planned this summer, when I was doing the remaining ASCII for biamin, and I look forward to coding it. The sequel will be just like Back in a minute, only better coded, and set in a completely different world.
*** EDIT Feb 24th: Sarcasm alert!
I realize I was a bit unclear about it in the text above with regards to uninstalling the kernel: I am joking!
There is no way biamin.sh will uninstall the kernel or do anything of the sort! The _only thing_ it tacitly removes are the temporary files and game files in $GAMEDIR that it created in the first place. The game isn’t meant to be run at root, but that shouldn’t pose a problem either.
In the text above, I was jokingly referring to an earlier GNU/Linux-related incident, where I was ssh’d into an ARM based embedded Linux in a screen session, where I managed to apt-get uninstall the kernel I was currently running. Luckily, I could still exit that screen session and re-install the kernel.. Which is amazing! But it was completely related to my not reading what was on the screen, and it is in NO WAY related to Back in a minute.