Design How to Design a Game so I Finish It?

Hello, I am currently working on a Zelda-inspired Adventure RPG game, called "The Last Librarian". The struggle of actually finishing a game has always been difficult to me (especially because it's always been a hobby for me, and finding the time or motivation among my otherwise busy schedule is hard.) However, that's sort of an excuse. At this point, I am entering college to go into Computer Science, with the specific intention of becoming a game designer/programmer. As such, I would very much like to actually finish, and publish this current game, including all of the art, sound and music that goes with it.

Technically, it would be best to finish this by the end of the summer, as I'm very skeptical about whether I'll convince myself to work on it during my freshman year in college. Seems unlikely. This is a very complicated project, I admit that it may be too much, but it's the kind of game I love to play and the kind I'm going to make, whether I finish it or not.

However, I have some plans for hopefully increasing the chance that I do finish it. (Some my own ideas, a lot incorporating advice from article or videos I used for research). I want to share them here, and then ask for advice, either on my ideas for my design process, or for additional ideas that I could use to ensure that my project ends up a real game.

Design Methods and Project Workflow:
  • Minimum Viable Project: I am developing this game starting with the core mechanics, and the final boss. Then I have the beginning, the mechanics, and the end of the project, and I just have to do level design and put all of the items (which are already done being programmed) into their proper places. This has an extra benefit of allowing me to test the core mechanics right at the beginning.
  • Programmer Art: Often, I was held back by trying to incorporate the art. No more, I hate art. I'm going to just throw in programmer art everywhere I can conceive of the need (including every animation), so I can just program in peace. I will keep a careful list, so that when I have a complete produce, I can hire an artist, or set up a rev-share (since I have a product already, I just need the art, it's a way better investment). The art can be done while I'm in college, since that's not my part of it.
  • Individual Areas: This game is open world (to an extent). However, each area is a separate section, with few, specific entries. That way, I can finish one area at a time completely, and extra places will just be left un-used unless I have time for them. I was also considering building all of the over-arching terrain (separating boundaries like mountains) first, then I can go through and just fill it in with content. That way, I could perhaps get some content in every area, and add content density as I have time. I'm not sure about this though.
Programming Techniques:
  • Flexible Code: In a way, this is just good coding practice (to the best of my ability). As much as possible, I'm trying to organize the code in my project as neatly and efficiently as possible. Allowing for myself to quickly add new types of enemies, add items, create dialogue, etc. I'm building systems that will easily scale for adding new content.
Any other ideas or tips? Although I'm looking for specific tips for me to use, it could be nice to open a conversation about this in general.

EDIT: Add to that a Nintendo Switch release. Though upon research of this, the process for getting a Switch game approved is insane, and without a previous portfolio, it might not even be possible.
 
Last edited:
If you want to get it done, start smaller. Make 1 dungeon, then make a small overworld with a single path and some branching places to explore. Make a boss, make an item. Call it done, get feedback. See how you feel about it from there, then expand.

Think of it like Final Fantasy 1. The first mission has a dungeon, a boss, a small overworld and a simple story. Then bam you get the credits at the end... after that they continued the game, just as the player continues the game.

GameMaker games have never worked on Nintendo consoles for whatever reason.
 
Last edited:

Toque

Member
I agree. Scale it back to something you can actually finish. “There is no team in I”. I see indi devs plan games that they like to play but those games are made by teams of people with budgets. I have even made games bigger than I should. Start with small and simple and expand if you have time.
 
Alright, I see a consistency here. That's sort of what I meant by Minimum Viable Product. I'm finishing a game with as little as possible (well, plus two or three things), and then I'm going to expand. The only question is whether I'll be satisfied with that, but I'll have to overcome that hurdle when I'm out of time.
GameMaker games have never worked on Nintendo consoles for whatever reason.
Apparently, you missed the Hullabaloo. https://forum.yoyogames.com/index.p...soon-to-gamemaker-studio-2.44003/#post-271082 Only officially announced after you said that, but it was leaked a few hours earlier. (That's when I edited my post).
 

Toque

Member
Alright, I see a consistency here. That's sort of what I meant by Minimum Viable Product. I'm finishing a game with as little as possible (well, plus two or three things), and then I'm going to expand. The only question is whether I'll be satisfied with that, but I'll have to overcome that hurdle when I'm out of time.


Apparently, you missed the Hullabaloo. https://forum.yoyogames.com/index.p...soon-to-gamemaker-studio-2.44003/#post-271082 Only officially announced after you said that, but it was leaked a few hours earlier. (That's when I edited my post).
I don't think anyone can answer that for you but how would you feel if you never finish any game?? What would be worse? I'm guessing that finishing a stripped down game will be much more rewarding than half finishing a big game. It always takes longer than you think..... Finishing even a stripped down game could be more of a challenge to finish than you think.
 

sylvain_l

Member
That's sort of what I meant by Minimum Viable Product.
Yes and no. (not sure what the others meant but for me : )
There is a big difference between using a MVP as a step in building a bigger thing or making it the goal. By goal I mean, just polish it (that part can still take a lot of time, with animation, particles, sounds, tweaking the formulas, etc...), called it finished and being satisfied with it and proud of it. (and depending of your character, if like me, that last part can be the most difficult )
 
Alright, I see a consistency here. That's sort of what I meant by Minimum Viable Product. I'm finishing a game with as little as possible (well, plus two or three things), and then I'm going to expand. The only question is whether I'll be satisfied with that, but I'll have to overcome that hurdle when I'm out of time.


Apparently, you missed the Hullabaloo. https://forum.yoyogames.com/index.p...soon-to-gamemaker-studio-2.44003/#post-271082 Only officially announced after you said that, but it was leaked a few hours earlier. (That's when I edited my post).
Yeah I saw it afterward. Always say stuff to get proven wrong, no matter how much history has proven the statement correct.
 

Yal

🐧 *penguin noises*
GMC Elder
I love the "make the final boss and core mechanics first" idea, since it lets you more or less stop making the game and release it at any time during the project. Most people will remember the beginning and end and forget about the middle, so the middle is the perfect place for disappointing filler. (just don't overdo it).

Some tips from a pathologic project abandoner:
  • Automate as much stuff as possible. Automatic decoration tile placement, random dungeon generation, etc. Most of the work in game development is producing content, and it easily gets boring if you need to do lots of boilerplate stuff in between all the interesting ideas.
  • Break down stuff into smaller and smaller tasks until each one of them is trivial to do (or you realize it's too much work to implement them), you want to always have a good idea of how you're progressing.
  • Put tasks on to-do lists on paper, then cross them out with green marker when you're done with them. It feels super addicting to track your progress in a visible way and it's good to look away from the screen every now and then, both for eye strain and concentration reasons.
 
@Yal Those are all great ideas. I've found the list crossing to be very helpful in the past. I'll definitely do it for this project. The code automation I'm already doing, for the reasons you mentioned, and also because I personally prefer programming systems over individual parts every time. Plus, some of them can become assets if they're flexible enough to work on any project.
 

Rayek

Member
Crossing items off a list only works for smaller projects - nowadays I use Taiga (https://taiga.io/): its Kanban board is super helpful in keeping on track. And dragging a task to the finished column is quite satisfying (even more so than crossing an item off a static list).

Even the free version allows for one private project. More than enough when you are working on one singular game project.
 
S

Smarty

Guest
If the goal of the exercise is to have a portfolio of some sorts, I would not place bets on your current game project. You intended it to be large or extendable, but making an MVP just cuts that short in ways that you may not have intended for your story line. Instead, I would suggest that for this major project you start a blog on your development challenges, and how you solve them. Even if the project will not be finished for a long time, you will still be documenting its progress for anyone to follow.

As a portfolio project instead, I'd suggest you create a mini-games project. A single front-end to multiple detached mini-games, which all have a matching minimalist art style you feel comfortable working with. You should time-box your creation of the mini-games (e.g. no longer than 3 days of development per idea, and make that challenge the premise of the project) and you can allow yourself to easily pile on a new mini-game whenever you feel like without serious repercussions for the overall end product (after all, there's no reason why two mini-games have to be related in any way). At the same time, having many different games allows you to showcase your programming abilities in a very diverse range of game mechanics.
 
Hm, so that is another question. Is it worth the time to maintain a development blog? I suppose it's good for building a following (so that when the game releases, or I do a kick-starter for the art, I have a base already), as well as for demonstrating my design skills by having a living document of the challenges I faced and overcame. I'm thinking what I may do is start a development blog once I graduate from High-school for the summer. Then I'll have so much time.

In terms of the portfolio, I am continually doing game jams, and I'm hoping to use that as challenges and building a diversity of programming evidence.
 

Posh Indie

That Guy
Hm, so that is another question. Is it worth the time to maintain a development blog? I suppose it's good for building a following (so that when the game releases, or I do a kick-starter for the art, I have a base already), as well as for demonstrating my design skills by having a living document of the challenges I faced and overcame. I'm thinking what I may do is start a development blog once I graduate from High-school for the summer. Then I'll have so much time.

In terms of the portfolio, I am continually doing game jams, and I'm hoping to use that as challenges and building a diversity of programming evidence.
I will side with everyone and recommend that you start small. If you are going to college for Computer Science, the important thing is finishing and actually releasing a project. Your future in your major should obviously be your primary focus here.

Trust me when I say that a released project will be the most important part of your resume in the future (I hold a Computer Science degree, and having a released project is what got me interviews with Google and Facebook while a friend from college in the same major without a project ended up in factory work). It is what sets you apart from the others who took the same classes and did the same projects as you did. No matter how simple your project may seem at first, just having one released is better than most applicants.

I had made a small game project in 6 hours (Yes, a simple 6 hour project) using GameMaker and released it on Google Play. Every interview I walked into the interviewers were playing my game before I walked into the room. It was pretty cool, actually (And hilarious when you realize your game is frustratingly hard and insanely aggravating).

In case anyone is curious, I had received offers from both mentioned companies, but life happened and I had to turn them both down (Moving such a great distance became "out of the question"). I was upset to have to do so, but life has a funny way of telling you, "You are probably way better off where you ended up anyway". I doubt either company offers work-life balance and benefits that you can find in many other places!

Edit: Sorry for going off on a tangent!

My advice? Start small (do not overwhelm yourself), know what you want the final product to be (prevent feature creep, know what "complete" is for the project, and prevent yourself from aimlessly/endlessly developing until you burn out), track progress (visualizing progress is motivational), and make it playable as soon as possible (playing with the game, even in a very simple state, is gratifying).

Until you get in the swing of finishing things, rather than development blogging, tell your friends about your projects and let them know about features incrementally (not all at once) to give yourself accountability. Tell them about your next feature right before you start working on it. Let your friends tell you that you failed to complete something rather than letting the internet tell you (Ask Phil Fish about how demotivating the internet can be when you miss milestones).
 
Last edited:
S

Smarty

Guest
Hm, so that is another question. Is it worth the time to maintain a development blog? I suppose it's good for building a following (so that when the game releases, or I do a kick-starter for the art, I have a base already), as well as for demonstrating my design skills by having a living document of the challenges I faced and overcame.
My suggestion was behind building a portfolio, not building a player base. Twitter and Facebook lend themselves better to building such a following. Blogs are used extensively by developers to learn from, but not so much by subscribing - but by searching for a topic they need to learn something about and then stumbling upon them. At my work we're developing against emerging and specialized platforms, and architecture, documentation and example sources are scarce and we end up googling a lot.

Writing blogs is good for more than just generating interest: it also helps you hone your communication, explanation and pitching skills. Here's the point - in today's Agile development teams, programming skills alone are not the only deal breaker for getting a job in the business. There's a heavy emphasis on the ability to pitch your ideas, explain your motivation for technical choices, communicating and substantiating your suggestions for improvements, educating your team members, and provide clear texts for instructions, spikes and design documents. In fact, from my own experience more time goes into written and verbal communication of many sorts (planning, demoing, designing, sprint reviewing, retrospectives, story pokering, pairing, change request reviews, stand-up meetings) than into actual development. A number of starting devs in our company did not have their contract extended because they failed in the communication department, in some cases despite the fact that they may have been better programmers than those who stayed.
 
That's an excellent point also. I've done robotics competitions for many years now, and one of the biggest things that teaches, which was initially surprising, was communication skills. Working with a team of people, and trying to sell a product, requires a certain level of language and writing skills that take time to develop.
 
I don't know what advice to give you without knowing exactly why you're currently making your game...

You said you want to finish your game, but you also said you feel like you'll lose motivation to finish it. Those are two conflicting statements to me. If I were you, I'd ask myself "why do I want to finish this?" and "if I want to finish this, why does it feel like I won't?"

And then tell me, and I'll try to give you some good advice. =)

From your first post, it seems like you want a completed portfolio piece for school and for Nintendo, but working on games is a huge pain in the ass, and to you this game is just a stepping stone to bigger, greater things. Is that the gist of it?
 
Hm... you ask a good question. Let's see if I can shed some light on my situation. I did some thinking about this the last few days, based on the suggestions, trying to find my real purpose so that I do not loose focus.

Here's what I want to do: I want to finish this project, a game I would like to play myself. This is the genre of game I enjoy playing, the genre of game I am good at designing, and the type of game I want to make, and will make, regardless of what is said here. It is a large scope, because I want to have that depth, the story, and exploration which is only accomplish-able by a game which has a reasonably large scale.

I'm committed to this project, honestly. In answer to your questions, I want to finish this game, because I like making games, and I'm going to make the kind of game I like to make. I honestly don't care that much about a portfolio, I have 4 more years to do that, I'd like to spend time now to experiment.

In answer to the second part, I don't feel like I won't finish right now, but I'm afraid that I'll feel that way later. 2 years ago, I was certain I was going to publish Valley of Charon august of 2018. 3 months ago I canceled that project in favor of this one.

So I think what I'm really looking for is project management advice. How do I develop a game that won't become unwieldy, hard to work with, or unfun to develop?

Here's some of the reasons I stopped on the older one. Some of these are almost certainly going to happen this time too and I'm worried about dealing with them.
- Obsolete Code: I learn code so fast right now, that last time I ended up writing code that I ended up re-writing later. Like, the horrible camera system, the entire inventory, entire terrain generation, and the UI. I also ported it from GMS1.4 to GMS2 in the middle, which won't (fortunately) happen this time. This time around, I'm making sure to work out the systems before-hand, trying to make sure the code is entirely separate, so that I don't have to rewrite code in-order to implement a new feature. I'm still going to keep learning though... what happens a year from now when I look back and my enemy AI is horrible all of a sudden?
- Lack of Motivation: This is more abstract. Right now I'm fine, but in a few months or a year, how can I be sure that I'll still be totally into this project like I am now? Some stuff I tried last time included regular screenshot updates for feedback, which did help. This time, I'm making sure to design as much as possible before hand (I have a game design document), so that even when I'm bored of it, I can still make progress by following my checklist. Finally, I've committed myself more, I am treating this basically like a part-time job. I could've gotten a summer job this time, but I've decided that if I put the 20-30 hours a week into this, that I won't. I can't say how well that will work yet. It seems okay now, the mental shift of "I'm employed" has pushed me to be a lot more efficient.
- Obsolete Design: Last time also, the project shifted frequently as to what I wanted to actually do with it. I kept coming up with better ideas and trying to use them instead. This time I'm (as I mentioned) designing everything beforehand, and making sure I have a solid design and mechanics before I go forward with designing levels or new enemies. I am sure my design is solid this time, and I think it'll be okay, but once again, I thought that last time around...

Finally, having a "complete" game before hand, saves me still if I end up working on something else, because I still have a product to work with, it's just worth 3 dollars instead of 15 dollars. Last time, I didn't even have a playable demo of Valley of Charon when I finished. No good at all, other than programming experience.
 
Alrighty. So you say you're committed to this project, because it's the game you want to make and want to play. That's how you feel right now, and I think that's the attitude to have.
But you're also worried that a few years from now, you might not care about finishing the game anymore. I don't know what to say about that....there's nothing you can really do about changing feelings about a game. Personally, I can't imagine not finishing my game, and I know I'll finish it....there's no question there for me. If you do end up not caring about your game anymore, my advice would be to do something to change that, or to just drop it and start a new one - if even you don't care about it, how good can it be? How many sales would you get anyway from a game even the creator has stopped caring about?

That's not a comment on your game as it currently is - I'm just saying that if you go for two years and then look at your game and ask "why am I making this?", then what's the point of trying to foist it off onto players? How good is it at that point, really?
So I guess this is my advice to you...you love your game right now, which is great. If you can look at your game when it's finished, and can say "I love this, this is a great game that I want to play," then there's a very good chance that other players will love it, too. If you develop your game for a few years and look at it and are thinking "I don't care about this project anymore, I just want to finish it and sell it for three dollars," then I think the game is sunk at that point, anyway. I wouldn't worry about that outcome unless it actually gets to that point. If you do get to that point, just wrap up the game as quickly as possible and put it on the market without worrying about it too much....the game is done at that point anyway. For now, I'd take your love for your game, and pour all of your energy into making it a game you can continue loving until it's finished (and beyond!) Whenever I open up my project, I think "this is 💩💩💩💩ing awesome! I can't wait to show people this!" I think every game designer should aim for the same feeling. Stay excited about your project. If you start to lose excitement for your project, you're doing something wrong. Instead of abandoning the project and selling it for a budget price, remember why you started the project in the first place, and right the ship.

For how to do that, I dunno. I just love my game. I'm having fun making it and thinking about it every day. I'm having fun surprising myself, and thinking of how much I'm going to surprise audiences. Just have fun, and it'll reflect in your work.
To keep development fun, I like to aim for little milestones. Adding new gameplay elements I can enjoy myself is especially fun. I rotate adding new stuff to play with with the busywork that comes with making a game.
One day I'll slog through drawing a forest tileset for ten hours, but the next I'll add new bug enemies to battle and mess around with.
Draw caves, and then add procedural generation, so I can run around caves infinitely.
Add NPCs, and then give them terrible vulgar dev dialog you can laugh at like a twelve year old while you're testing.
Spend a week drawing a desert tileset, and then program footprints so you can draw dicks all over the screen like a twelve year old.
Add a game over screen, and then have your character explode into bloody gibs, so you can laugh at it like a twelve year old.

I dunno, hahah. Just mess around. Have fun with your game. Rotate the kind of work you do each day so you don't get overly burnt out, and give yourself some time to enjoy your own game.
Every few weeks, I play around with my game for an hour or two just so I can remind myself "yeah, I'm making something good. My work is slowly adding up to something." Do the same. Love your game, and it'll be good!

Share it with people, too, online and in person. What's old to you is new to everyone else. Watching people's faces light up or reading good comments from people because of something clever you did never gets old, and helps to remind you that your work is worth something if you've been working too close to the board for awhile.

Anyway, sorry for the long post. My tldr is: just love your game and constantly add new things that will keep you loving your game. Don't worry about not liking your game anymore three years from now. If you get to that point, it's because you stopped surprising yourself, which means you did something wrong. Just worry about keeping yourself happy, and your players will be happy, too. If you stare at your game for a million hours while you develop it, and still think "💩💩💩💩 yeah, this is awesome!", then you're on the right track. If you stop thinking "this is awesome!", then change things up a little!

Good luck, CG! *_*

Edit: About showing people your game....I think it's best to design your game with a few people especially in mind, too. I think it leads to better game design and more motivation. Thinking "my girlfriend will laugh so hard at this" is a hundred times more motivating than a generic "girls will think this is cute," and it leads to much tighter design, I think....if you design for ambiguous shadowy groups of people, I think you're going to end up with an ambiguous, grey game. If you design with a few special people in mind, they'll love it, and anybody like them will love it. Designing for imaginary groups rather than for solid people you know is how you get the bland "designed by committee" stuff, I think.

::shrug:: I hope my advice helps a little, lol. I'm just kind of ranting, but... X'D

Also, do you have your game posted anywhere, yet? I'd love to follow along. I'm an avid RPG lover, hahah!
 
Last edited:
Thank you so much @RichHopelessComposer, that was very encouraging. I think you nailed the core of what's really important in game development, a passion for games. I'm going to make this game because I want to make this game, and at the moment, that is the only reason I need. The other techniques will make it easier to work on, faster to develop, but a love for the game itself is what is going to push me to actually finish it.

I will start posting development updates in the summer, and share my game. That's when I'll start having enough I think.
 
Top