INTRODUCTION
Hello there! Welcome to my devlog, where I will walk you through the development of 8-bit Ice Hockey. It is still a story without an ending, but I hope you will join me in this adventure to create a fun game, and hopefully learn something in the process. (I know I will.)
PURPOSE
The goal of this project is to make a fun, arcade style hockey game. I.e. focus is more on gameplay than realism.
TOOLS
The game is coded in C++ / SDL2. Wasm will be used for browser play.
THE CURRENT PROGRESS
The code for displaying graphics and animations is pretty much completed. There is a camera that can pan around the rink, and the players can move.
The relationship of everything on the screen is as follows:
- The match has a rink and a camera.
- The rink has two teams and a background.
- Each team has five players.
- Each player has a controller interface and an animation.
- Each animation has a spritesheet (texture).
Currently the controller interface is only connected to user input. All textures are loaded through a very simple assets manager.
TODO
I've divided this project into several parts. These are the things I plan to implement.
- The puck - collision detection with the boards, interaction with the players and goals, and some physics.
- Players - collision detection with the boards and other players, tackling, shooting, passing.
- Referee - implement icing and offside.
- Face offs
- Computer AI - finite state machines probably written in Lua during development, but hard-coded upon completion.
- Goalies - I haven't quite decided yet how to implement them, always computer controlled or user controlled? What do you think?
I might have forgotten some things, and if I did, I will add them to the list later. At the moment, sound effects and music are not prioritized, but they will probably be added some time later. Furthermore, I'm currently only focusing on gameplay. Once basic gameplay is completed, I will start thinking about options, such as team selection, tournament play, etc.
Thank you for reading, and see you in the next post!