Categories
Blog posts

Scrolling tiles

As the game will feature levels that are larger than the screen, it now has a scrolling view on the current level. The player will be in the center of the view, except if the view is close to the edge of the level, at which stage the view stops scrolling. The level is made up of 16×16 tiles. Tiles can be walkable or closed. At a later stage the tiles, or what is depicted by them, such as walls, will be drawn in such a way that the player can disappear behind them or walk in front of them, corresponding with the side-on view of the player.

Demonstration of the scrolling tiles making up the viewport

The view upon a portion of the world is implemented as a fixed set of sprites. The image that is assigned to each sprite depends on its corresponding location in the world at that moment. To achieve the effect of a viewport moving to the right, to keep up with the player, all sprites are moved to the left. When the sprites have moved more than the width of a tile to the left, all horizontal sprite positions are reset and their images are reassigned. In this fashion the image of a piece of wall will ‘move’ across the sprites.

This approach is not my own idea, I actually read about it on the App Game Kit forum, for example in this post: ‘Tile Based Map Scrolling – The most efficient way?’ In the demonstration seen above, the viewport was intentionally made smaller than the screen, so that the effect of the tiles being reset is visible. In the final game this effect would fall outside of the screen. (Although in some games such a smaller viewport is of course deliberately used to limit the distance the player can see ahead. I am not sure if my game will do that, but in that case the edge effect would have to be hidden by other means.)

Categories
Blog posts

Animated player sprite

Over the past holiday period I have given some attention to my game, codenamed ‘Action Rogue’. It now has a player sprite, animated in four directions. The player can move in eight directions, so animations are re-used for the diagonals. It is also possible for the player to move their shield forward, and to strike with their sword. I imagine the player will walk through a tile-based dungeon system, encountering opponents with similar abilities. The attack animation starts with the character moving their sword back; this movement and the delay before the strike is carried out, will allow for opponents to respond. The shield animation is slightly quicker than the sword animation to make a blocking action possible. A small dot has been added to make it easier to see which way the character is looking.

Animations in four directions

I am applying a keep-it-simple programming approach to this game. For example, instead of writing complicated systems for carried items, allowing for the player hands to also be empty, the code currently knows nothing about items, and just uses a sprite that happens to include a shield and a sword. This allowed me to skip directly to block and attack animations. The complicated systems may still be added later as needed. In this manner I think I can more quickly create actual gameplay.

Categories
Blog posts

App Game Kit

Welcome to my new website. I decided to use WordPress so I can also write a blog post every once in a while. While setting up the list of my games on this new website, I also tested those games and it turned out many did not work properly anymore on my Windows 10 pc. For example, my Blitz Basic games from before 2007 had issues with audio playback or did not properly support alt-tabbing. So I have removed those games from the list.

Then I decided to try App Game Kit Classic (AGK) for a new game. This is a game programming engine by The Game Creators, who also made Dark Basic. Dark Basic of course was the big competitor of Blitz Basic! AGK is still used, maintained and receiving updates. It allows for games to be published for many platforms, including Windows and Android.

The game, codenamed ‘Action Rogue’ for now, is to be a 2d action ‘Roguelite’ game. Specifically, the player controls a character wielding weapons and shields, fighting opponents in a randomly generated dungeon. The plan is to keep the action relatively slow paced. I have not written a design document, instead I just started writing specific code for displaying and moving a character. This way I hope to be able to see results in the form of enjoyable gameplay sooner, and not lose interest before that point is reached.

The AGK interface, showing its functional (not object oriented) programming language and the simple beginnings of my game
Categories
Finished games

Robo House

December 2020 | Lua + Love2d | Windows | Download at itch.io

Robo House is a ‘game jam’ entry, written in Lua/Love2d over the course of about 10 days. The game jam was Redefine2021, themed ‘Future Tech’. The player has to stop robotic vacuum cleaners gone bad. The music is from PlayOnLoop.com and the sound effects were made using Bfxr. The color palette is the Pico 8 palette as found on Lospec. The game was rated 6th best out of 25 entries.

Categories
Finished games

Max Downforce

October 2019 | Lua + Love2d | Windows, Linux | Download at itch.io

Max Downforce is an arcade racing game and also the spiritual sequel to Grand Prix. The goal is to complete each of 10 laps before the timer reaches zero. You get fewer second for every next lap, but part of the remaining time is carried over. This game is written in LÖVE, a great framework for making 2d games in the Lua programming language. The music is by Filippo Vicarelli of PlayOnLoop.com. The cheering crowd sample is a fragment of a recording by Stephan Schütze during a World Cup Rugby match.

Categories
Finished games

Grand Prix

August 2013 | Blitz Max | Windows | Download at itch.io

Grand Prix is a racing game inspired by Pole Position and other racing games from the previous century. These games do not use a complete 3d system but rather a fixed view on a track that is accomplished with 2d game techniques, as explained and illustrated on Lou’s Pseudo 3d Page. In Grand Prix, the ultimate goal for the player is to try and complete 8 laps, winning the gold cup. This is quite a challenge, with the clock ticking down and opponent cars getting in the way. The car is controlled using the arrow keys. (Alternatively ‘A’ and ‘Z’ can be use for throttle/brake, and ‘<‘ and ‘>’ can be used for steering.) The music in this game is by coda (coda.s3m.us). Sound effects were made using SFXR, and the game was programmed in Blitz Max.

Categories
Finished games

Wizard Battle 2

August 2012 | Monkey | HTML5 | Play at itch.io

Deploy your army of warriors, archers and giant trolls in an attempt to beat the enemy wizard and reach the other side of the battle field! Launch fire balls and special wizard attacks to take out the enemy troops. As more of your units reach the other side, your army will grow bigger. If your wizard makes it across, you win! This game was programmed in Monkey and is the sequel to the original Wizard Battle (2004) which does not work properly on newer computers any more. The texts in Wizard Battle 2 are displayed in the very nice and freely available font Rapscallion by Ryan Splint.

Categories
Finished games

Battletrack

January 2012 | Monkey | HTML5 | Play at itch.io (keyboard required)

Cars with guns. Prepare for a battle all the way to the finish line. After the first lap, the guns are activated. Earn extra points by destroying your opponents, but make sure you finish high enough to continue to the next race! This game was programmed in Monkey. Other tools used: Graphics Gale and Paint.net for graphics, SFXR and Audacity for sound effects, Fruity Loops for music.

Categories
Finished games

Doggy Bounce

May 2011 | Monkey | HTML5 | Play at itch.io (keyboard required)

A fire has broken out at the local cat and dog shelter! Help two cats save the day by positioning the stretcher just right and bouncing the doggies into the ambulance. Use keys 1, 2 and 3 to move around. Doggy Bounce is a remake of Bouncing Babies by Dave Baskin (1984).

Categories
Finished games

Mano Trooper

September 2010 | Blitz Max | Windows, Mac OS X | Download at Indie DB

Mano Trooper is a remake of Greg Kuperberg’s “Paratrooper” (1982). Try to set a high score by shooting down enemy helicopters, paratroopers, jets and bombs. Every shot will cost you one point, so don’t waste too many bullets! The two dogs Noah and Merlin are helping out by attacking landed paratroopers, but after each attack they have to rest for a while. Once four paratroopers have landed on either side of the gun, they will take out your gun. Music in this game is by coda (coda.s3m.us). Sound effects were made using SFXR.