DEV Community

Christian Duarte
Christian Duarte

Posted on

Release 0.4 // The Plan

Intro...

For the next few weeks, I have been tasked with a 0.4 release for open source class. This release requires me to think outside the box and contribute something meaningful and something that will be a challenge for me.

My Plan...

For this release, I am creating a game! I have chosen to work on the LiteCanvas game engine created by Luiz Bills, that can be found here. LiteCanvas is a game engine created with JavaScript and is designed to be used for small web based game and animation creation.

Image description

I noticed there were some samples and also a repo for presenting different games made with the engine and I decided that I would take on the task of creating a game for that repo. If I am successful with the first game in a short amount of time, I have the possibility to create more games, and also provide testing to the repo as I have told the maintainer Luiz that I may be able to assist with that as well and he confirmed this would be okay.

Samples

Image description

Official Games (1 so far)

Image description

Why LiteCanvas...

For this release I chose LiteCanvas because I went with the option of "Contribute to a project or community that has some special meaning to you."

Over this past summer, I really enjoyed making games for my portfolio with PyGame and learning how to use it as I went. So far my games have only been able to run as executables when downloading my games from itch.io, and I had no success with getting them to run in the browser. I have made a connect four game in the past, but that was with Python and PyGame where I was much more comfortable. Using LiteCanvas, I can have a small prototype alternative to my game in the browser this time, and can even help promote LiteCanvas to others by publishing my game (My games are not monetized). Even if I am trying to convert my code, JavaScript is different for me and will present me with many challenges. I think this is an issue that I will really enjoy working on as well as debugging along the way to make sure user inputs and animations are properly executed. It has meaning to me because having my game showcased on the official repo of the game engine is pretty cool to me.

My Goals...

My goals for this release are as follows.

Main Goals

  • Create a successful Connect Four game using the LiteCanvas engine.
  • Study the LiteCanvas documents and use cases to understand how the engine works.
  • Have a feature of dropping a chip into place with a falling animation.
  • Have a simple but user friendly setup with simple assets.
  • Have the game be a 2 player back and forth game.

Extra Goals (If game is completed early)

  • Provide testing for functions of the game engine itself.
  • Implement an AI opponent for the Connect Four game similar to but not as large as my PyGame.
  • Possibly create a new game, and draft some ideas beforehand.
  • Create more of these extra goals along the way if I think of more.

Top comments (0)