- Published on
Dimension Dissension - Week 2
- Authors
- Name
- Ryan Flores
- @_TrustyTea
Hello everyone and welcome to my second week of development on my game, Dimension Dissension. If you missed my first post, Dimension Dissension is an action rogue-like inspired by the game Risk of Rain, but with a fantasy twist. Players must complete quests in order to progress through the game.
As I mentioned in my last post, I have big dreams for this game. However, as I am working on this project solo, I have had to scale back my expectations a bit. Rather than working on Dimension Dissension for years, I am using this project as an opportunity to gain experience and add to my portfolio.
One lesson I have learned this week is the importance of prototyping and considering the amount of work that goes into features before getting too far into the design process. It's easy to get lost in the excitement of new ideas, but it's important to be realistic about what can be accomplished in the time and resources available.
Speaking of resources, I have decided to tackle the artwork for Dimension Dissension myself. While this may be a daunting task, I believe that learning pixel art and art in general will help me become a better game designer and developer. To help me focus on the gameplay and other elements of the game, I have decided to use a different art pack for the time being. I am using 16x16 sprites with no animations so that I can work on my skills in pixel art without getting too distracted.
This week, I made progress on the combat system and worked on building the foundation of a quest system using class inheritance and enums. While I am still in the early stages of development, I feel confident that I will have a prototype to share with friends soon.
In my research on how to design my code, I came across the concept of state machines and found them to be very interesting. While I do not plan to use state machines in this project, I am excited to make use of them in a future project. For now, I have found that using inheritance will suffice for my current needs.
This week I worked a LOT on the quest system, which is supposed to be the main attraction to this game. I created a base class Quest, and for now, just one class called KillingQuest that extends off the base quest class. At the moment I have to hand write each quest that the player chooses, which difficulty the quests will be and what the reward types are. As of this build, you cannot complete quests, but I am taking a break for now. I will get that working, and then move on to Items! I did a lot of work to make sure that going forward, creating classes of different types will be a lot easier. I also used enums to hold the constant types of Quests and Enemies. In my killingQuest class, I grab a reference to the singleton EnemySpawner class in which I tell the spawner how many enemies to spawn (based on the difficulty of the quest) and a random enemy to fight.
I have the build up on itch.io for those who are interested in seeing my progress on the game so far. Please leave a comment to give some feedback!
Overall, I feel much more energized about my progress on Dimension Dissension this week. I have been able to focus on getting big things done, rather than getting bogged down by small details, and I am excited to see my progress in the coming weeks.