I had an idea a couple of days ago that seems to be working so if anyone is interested in creating 'algorithmic music' in Petitcom tied to gameplay elements, I'll offer a bit of what I did to get it working.
So most games have a tiny loop in which the main game runs. You'll have an arrangement like this pseudocode below:
This is a typical game program flow that most programmers will take. What I've found is that depending on this arrangement, you can add non MML music that works on a tempo/beat timer combination which sets flags on events happening in the game. Basically, the code above would include an additonal sub of @DOMUSICSTUFF. Inside …
Read more >
Back at work on Smilyde since the algorithm for clearing chains in my 'dream' game of making robots wasn't panning out no matter how many methods I tried. :( It's not forgotten, so I'll return when I have more mettle.
At any rate, I added destructible environments and 'column' type walls to the engine as well as fixed a save/load bug I wasn't aware of until I started touching on the reserved map variables. :) At any rate, I'm currently building the overall game world maps right now since I've not done a single bit of actual game design yet...
Fun times.Read more >
After just completing a game in 3 days on a whim, I had another whim...
I had a dream last night where I was playing a puzzle game with 3 simultaneous 'falling blocks' mini games I had to control at once. When I woke up, I quickly jotted down some ideas on how this could work and came up with a concept called ROBOT SWEAT SHOP, where you are a robot manufacturing plant manager and must oversee production of robots from converting raw materials into parts to assemble the robots to shipping robots to customers.
Indeed, this will be one brain twisting game, but I think because of the fact that each successive 'falling block' game is less and less complicated overall, that it's possible to take care of these 'side' games.
Here's a drawing with …
Read more >
So I'm working on a game where you can edit levels and such and the issue was always 'how do I save this stuff?'
In Petitcom, MEM$ is a string of 256 characters or less and you save by SAVE "MEM:MYFILE". It's good for high scores or for, say, progress in an RPG where you create a string of values such as what you're carrying and what not. For instance if there's 20 items in the game and I want to save location of the player and what bosses he's beaten and how much experience and gold he has, I could do this by converting the flags for what items have been collected into strings (either 1 or 0...where 1 is you have the item and 0 is you don't have the item). So that's 20 characters. So far so good. Then you have the location of the play…
Read more >
Lately, I've been getting into MS-DOS, loading up some old abandonware on my old DOS lappy and one of the games I rediscovered was ZZT, an ANSI based action game with level editor and simple scripting language. I always liked ANSI graphics and games using simple terminal colors and text characters and so on a whim (again) I sat down and started putting together an ANSI-ish realtime action game myself. However, all of the things I wanted to put in there were hard to test when making maps by hand, so I started working on a map editor that's nearly done.
Basically, if you go in and edit CHR:MEGA's text characters (BF0), you get a palette of 1 bit textures that, when mixed together with the 2 color options for displaying them, a lot of fle…
Read more >