Small Dungeon 2D Game #1

Small Dungeon 2D Game #1

This story follows me as a developer who learns new things while creating a game. I specialize in full-stack backend web development, meaning backend work is my forte and where I excel the most. While I can handle other aspects of development, the code might not always be perfectly optimized. So, why am I doing this?

Simple. I've always had a passion for software and game development, especially because you get to work with lower-level languages, which I've always found appealing! That's why I've chosen odinlang. It's based on C, but it's more modern and comes with all the fancy libraries you need to get started, like raylib, SDL, Vulkan, DirectX, and more. That's pretty sweet in my book! It means I don't have to spend as much time setting things up, I can just dive right into coding.

I began by tackling the fundamentals: how to display an image on the screen, add text, or create a button with functionality. While many dive straight into building the game itself, I wanted to grasp the essentials first. I focused on tasks like displaying text on the screen and loading PNG images into memory to use them as textures. There was a steep learning curve, I spent quite a bit of time figuring out how to use image atlases as sprites. This involved loading, splitting, and accessing different sections of the image. I also had to understand concepts like draw frames and much more along the way!

I've made significant progress! Now, the game includes character customization, settings where you can adjust the audio levels for both game sounds and music, and you can even switch between eight different character presets from the atlas. It's pretty awesome! Currently, I'm focusing on implementing random world generation because the game is designed to be a dungeon-crawling, wave-based 2D adventure. The goal is to loot, defeat enemies, and advance through the levels.

That's all for now. Stay tuned for more updates! Thanks for reading!

Pssst!... It will be released on steam :)

Published on: 4/21/2024 Game Development