This is my first time coding a 7DRL. In fact, it’s my first time coding a game! I have a background in programming microcontrollers and DSP (nerdy engineer stuff), but I never attempted to make a game, so this is a fun, new challenge for me.
I started working on my 7DRL yesterday and I have achieved far more than I thought possible in this short amount of time. Here’s a preview of what I have so far:
The main idea of this game is as follows: It is an “asynchronous” turn-based game that revolves around Abilities and Time.
- Gameplay is based on the concept of abilities. At any time, you can either move or use an ability.
- The game is paused in between every action, which makes it turn-based by definition. When you are carrying out your action, time flows freely, and enemies can move or act.
- Abilities take a certain amount of time, and you must stand still while performing the ability. So, an ability that takes 3 seconds to perform means that you have to stand still for 3 seconds while your enemies can move and attack.
- Since different actions require a different amount of time, the duration of turns is variable.
- Enemies all run on their own timers and have their own abilities and actions which take different durations.
- Therefore, the result is a kind of asynchronous turn-based game.
- There are no experience points, stats, or character levels. You progress by completing a level, at which point you can choose a new ability.
- There are no hit points. When you are injured by an enemy attack, you lose one of your abilities for the remainder of the level.
In any event, there’s still a LOT to do:
- Procedural level generation
- More enemies
- More abilities
- Multiple levels
- New ability selection
- Difficulty progression
- Visibility limitation (LOS or FOV)
So, I have plenty of work ahead of me, but the basic framework is now in place! Exciting!
I am most concerned about level generation. No idea how I’m going to do that… I’m considering my options!
I am developing the game using GameMaker, which has proven to be quite easy to pick up. I’m getting the necessary information by reading the GameMaker reference manual and reading tutorials or watching videos online. Everything is being coded from scratch, and no external libraries are being used. The graphics are mostly from the Oryx Sci-Fi pack, although I have made some tweaks.
I hope you enjoy my game! I’ll keep posting updates as I progress.