#1 - Genesis


Hey, in this initial devlog I will talk about Genesis and the main goals I want to achieve for the first public release of the game.

What Is Genesis?

Genesis started as an experiment, I wanted to test out a new framework which I had found, the Pixel Game Engine, which is created and maintained by Javidx9. I very much recommend his channel by the way. My experiments started with getting some basic rendering done and moved onto being able to project a point on the screen to a point in a 2 dimensional world, similar to how you would in OpenGL or something. I eventually grew comfortable with the engine (which is very simple to use and fantastic for beginners) and decided to set my sights a little higher, that is when Genesis was created.

I have no real plan for the game, other than a Trello board which you can find here. My main aim is to hack together features and continually figure out what works and what does not, however, some of the long term plans I do have in mind are listed below.

  • Dungeons
  • Levelling
  • Pets
  • Parties
  • Guilds

I want Genesis to be an easily accessible game, but also provide depth for novices of the genre, however, I will explore these ideas later on in development.

Where Is Genesis?

Genesis is incredible early in development, in fact, you would not be wrong if you still considered it an experiment. On top of that, at the time of writing this blog, the game does not even build successfully and I am in the process of rewriting the entire thing.

I'll share some gifs and pictures below and talk through them in some detail.


This is one of the first gifs I have of the project, I have an even earlier one but it's essentially the same but uses a red square instead of the sprite. This was my first pass of the animation system as well as the initial draft of the player sprite.

The animation is fairly straight forward, I simply use an array of regions which index into a spritesheet and I can use to draw the correct frame at any given time. In order to make the player look left/right I had to implement my own drawing method which would flip the sprite around the Y axis, the direction he is looking is dependent on his X velocity as well as which side of him the mouse was on.


Next I wanted to work out a weapon system, this gif shows my first idea. I liked the idea of having the weapon detached from the player and sort of "floating" around them.

However, I am not very happy with how it looks in this instance as I think that the sword is too large and obstructs the players sprite a little too much, I want to fix this by drawing smaller weapon sprites but I also want to keep the detail of the sprites as I aim to allow players to craft their own weapons from rare materials they find and each of these crafted weapons will have a unique look. 

My main fear is that by decreasing the size of the sprite even more, the detail in the sprite will become harder to see, especially when it is rotated and the artefacts start to show. Perhaps I should let go of the idea of placing such a large focus on weapon customisation? I'm not sure yet.

There is another option though, in my current rewrite of the engine I have two "layers" which I can render to; the world layer and the UI layer. The UI layer is a higher resolution than the world layer so that I can fit more text and stuff on the screen at the same time. So I could draw the weapon as part of the UI layer which would give me more resolution for the sprites. The major downside of this is that the UI layer is always drawn after the world layer which means the weapon will always appear on top of world elements.

 

Here you can see the first hair sprite I created, I also implemented a system which is going to be used a lot later on during character customisation. The system allows me to chose any RGB colour and have it multiplied by the sprites colour. The hair sprite is stored as a greyscale image where white is the "base" colour and darker colours produce darker tones in the final render. I really, really, really like how this turned out as it allows any colour to be used for the players features, as seen above.


Lastly I added a shadow, just for fun and because I thought that it would look nice.

Thanks!

That's all that I have for now. At the time of writing this I am waist deep in networking code which barely works but hopefully in my next post I will be able to show off some multiplayer stuff.

I am super excited for this project and hope to see you again next time!

Leave a comment

Log in with itch.io to leave a comment.