Month: August 2019

Rekanoid Dairy #1

Rekanoid Dairy #1

Play 0.1 here

It has been a very busy few weeks and so my time has been limited. I unfortunately lost a distant family member, and then recently a closer colleague and friend my supervisor for 7 years Professor R. L. Johnston, I wish his family well during this terrible time of grief.

I also managed a short break in wales with the kids, as well as other various holiday activities. But all of this has left little time to actually do some game development. Which in all honestly is to be expected, 15 hours a week in my current situation is very optimistic and even then highly unlikely that every last minute of that time would be productive.

Firstly I set about making a list of task/features I thought was needed. This wasn’t an exhaustive list nor was it of great detail but enough to get started but more importantly help with productivity. I used a kanban board in a free to use as hobbyist web app called hacknplan its a nice Agile tool set developed specifically for game builders.

The list Consisted of things like:

  • Get Prototype Art for game ( I used kenny.nl sets )
  • Setup project
  • Implement a Base Level
  • Implement command ball
  • Implement command paddle
  • Implement keyboard Movement
  • etc..
Kanban board for this sprint

They weren’t explicit nor was the list complete, I’d would return to it cross off or adding more detail through out. I decided to set as my initial goal, my 0.1 Alpha I suppose of a basic implementation of breakout, from that I built the list.

The power this brought me was the ability to pickup and put down the project. I typically would just work from my head and either get lost, or distracted and when you reach the more banal aspects of the game such as gui work would be demotivating. Having the list really help keep you on track, just remember its not an immutable slab of commandments, it just a way to keep track and free some of your mental load.

At times however, I did get carried away I added a global EventBus to manage signals that connected deeply within a scene tree. But it was just overkill, a global list of signals would suffice and added benefit of auto completion of each signal from the editor.

I also tried to adhere to SRP principle by placing scripts for various game objects in different nodes of the object. This allowed me to do things like disable motion of the ball, by simply toggling the _physic_process of the node.

And also delegate aspect of the game scene to other nodes as such.

I would like to write more about using the Godot scene tree to aid in SRP to reduce the amount of game code in a single node.

Well, I move on to 0.2, which probably be adding more variation of blocks, and bonuses. Hopefully, I can write another post a bit sooner.

Posted by Ben Curley in Game Dev, 0 comments

Rekanoid: An Arkanoid clone

It’s been a while since I have had chance to work on any project, and with the demands of two toddlers, it going to be hard for me to do anything really interesting. With that in mind, I have decided to recreate some of my favourite 2D games as a means to keep my skills fresh and educate myself better with my too lset.

So for my first project I decided to make a clone of Arkanoid a game made by Tatio in 1986. The game extend Atari’s Breakout by adding power-ups, more varied levels and boss fights.

So hopefully with 10-15 hours with agreed “protected” time a week I hope to recreate the core mechanics of the game and then later add to or expand upon them. I also blog about some of my design choices and issues in the off chance someone might find it useful

Posted by Ben Curley in Game Dev, 0 comments