I have an idea, but where do I start?

Started by
3 comments, last by TheYoungBasedGod 8 years, 6 months ago

I have an idea for a game that I want to make in Unity. It's a block puzzle game where the player controls blocks that have different abilities to solve puzzles and eventually finish the level. For more information on my project, I created this post:

http://www.gamedev.net/topic/672264-my-block-puzzle-game/

My problem is that I am not sure where to begin. I have a lot of ideas for game mechanics and I have an idea for how I can make most of the mechanics work, but I don't know how I should go about building my project in Unity. I started by watching tutorials on making games in Unity and GameMaker, so I have experience using Unity and programming in C#. I would like to get some advice from more seasoned developers so I can figure out exactly what I should do to get my game working in Unity (what should my priorities be when making the first version, how much of the final product should the art and gameplay represent, and any other significant information that you would like to share).

Also, if there are any Unity extensions that will make creating tile-based levels easier, please let me know (I found one on the asset store, but I couldn't figure out how to use it, and I don't know if there's a better one).

Need help getting started as a game developer? Check out my channel:

https://www.youtube.com/channel/UCq417Slwr-Qt8hN-gemJS0w?&ab_channel=HowtoMakeGames

Advertisement

I have an idea for a game that I want to make in Unity. It's a block puzzle game where the player controls blocks that have different abilities to solve puzzles and eventually finish the level. For more information on my project, I created this post:

http://www.gamedev.net/topic/672264-my-block-puzzle-game/

My problem is that I am not sure where to begin. I have a lot of ideas for game mechanics and I have an idea for how I can make most of the mechanics work, but I don't know how I should go about building my project in Unity. I started by watching tutorials on making games in Unity and GameMaker, so I have experience using Unity and programming in C#. I would like to get some advice from more seasoned developers so I can figure out exactly what I should do to get my game working in Unity (what should my priorities be when making the first version, how much of the final product should the art and gameplay represent, and any other significant information that you would like to share).

Also, if there are any Unity extensions that will make creating tile-based levels easier, please let me know (I found one on the asset store, but I couldn't figure out how to use it, and I don't know if there's a better one).

Your questions here are kinda vague... to get better response, you should try to be more precise what advice you are looking after:

- How much expierience do you have with Unity and C#? Did you already started a Unity Project, did you use C# before? Did you finish anything and got it to work? Is it only theoretical knowledge?

- What part of "get my game working" is the problem? Is it an Unity editor related problem (don't know how to make the code work, don't know where to build, don't know how to create the terrain, and so on)? Is it a game deisgn related problem (you have a working game, but it isn't fun)? Is it a question about how and where to release the game? Marketing?

As to the one less vague question, finding Systems in the Asset Store for kickstarting tile based leveldesign, while I do like the idea of evaluating multiple systems and picking the best, maybe you should try to get the system to work you already got.

Did you reach out to the developer? Most are quite active in the Unity Forums, and there is a whole section of the forum devoted to "support threads" for Asset Store products. Look in the Asset Store page for this tilebased system, and search for a forum link. If there is one, ask your questions there. Else there might be an e-mail or other kin of contact information.

Most asset store devs are quick to answer and quite helpful... one time an asset store dev from an asset I have bought actually took the time to talk to me over Skype, we were able to solve the problem I had that way. I literally have bought dozens of assets in the Unity asset store over the years, and only two of them were a dissapointment when it came to support.

One dev vanished, leaving his asset abandoned, the other was ripping people off with subpar code for an inflated price, and didn't react very fast on support requests.

All the other gave support fitting true professionals. I cannot speak highly enough of them and their support.

So give it a try, most probably you will find your assets dev be helpful and able to solve your problems quickly.

A last thing that I would like to tell you:

Sounds like you are pretty new to this, and also to your current project. It is good to start this journey informed and always seek for advice from more expierienced devs, but beware running into "Analysis paralysis".

What I mean by that is, YOU need to try things... and more often than not, fail with it. That is how you learn what to do and not to do. And that is how you innovate instead of imitate. Don't be afraid of the loss of time when you run into a dead end and need to restart at some point. Everyone runs into these problems, even the Pro's (there is a whole phase of project planning, pre-production, dedicated to this process of trying, failing, and finding out what works).

Make sure you fail fast and learn from your mistakes, and make sure you test crucial things first before moving on to the less important ones.

If you are not a software dev, get to know this one word: ITERATION (If you already are a dev, you will know it). Iterate a lot. Don't try to create the perfect version with your first try... make it your first iteration, creating a draft. Iterate over it again, make it better. Do that until you run out of time/money, or you start seeing diminishing returns on further iterations.

Rome wasn't built in a day. Your game most probably will also not be. Might as well start piece by piece.

So when you ask "How much of the final game should be in the first version?", I gotta ask bakc "Which first Version?"... because hopefully there will be a gazillion of playable versions that you iterate on before you use it for anything (for example finding investors, or playtesting).

More to the point and maybe more helpful, make sure you start with the important things... core gameplay. A single level that defines the core look and feel of your game (Maybe not the oddball level that plays in the bizaro world, or on the moon when all other levels are playing on earth).

Don't do what many other inexpirienced devs did and start with character customization, when the core gameplay is an RPG or FPS (if your game IS a character customization sim, then things are different of course :) )

Now, most devs like to start with proxies and placeholders (blocks and untextured simple meshes in 3D games, placeholder sprites in 2D Games) so that they can start coding and testing their core gameplay as early as possible.

"Art passes" will later start to replace these placeholder assets, but NOT BEFORE you are REALLY sure that the project is worth the investment (Likewise, at that time the coder should probably not only write the code for the less important systems, but also refactor the already existing code to make it more robust).

Sometimes, devs build a "vertical slice"... which means a single level, or just a small portion of this level, polished to an almost production level state. This is great for showing off to public or investors, and maybe also to test your art pipeline and see just how much creating this limited set of art will cost you in time/money (to extrapolate that and see how big the investment will be to bring the rest of the game to the same standart).

Again, make sure you pick the core gameplay and a typical look and feel for the game, so it accurately presents what you want to build. You can also pick "key highlights" the way movie producers often do for movie trailers (like "Inside Out" did lately... showing off literally the ONLY really funny full scene in the movie).

Don't bother with the tile-extension. Unity already has a bit of functionality that simplifies this.

The best way to start out with your idea is really a Four step progress.

Brainstorm what is in the game.
Pick one feature, mature it.
Prototype it.
Test it.
Return to step two, and repeat.

A lot of people fail to realize that programming everything at once is a good way to get yourself in a bind, and make absolutely no progress. This is what actually happens in general software development. You hit the planning phase, and figure out a good design to simplify the programming. The OO structure. You are then assigned one feature. You implement it. Test it. Then move on to the next feature. When your features are done, you can refactor everything to clean it up some.

Why work like this? Errors and Bugs are easy to track down and fix. Working in pieces means you limit code visibility. If you are working with a team, then those who program their stuff will not break your stuff.

Thank you for your advice. I guess I was over-thinking what I had to do for my game.

Now I have a very clear idea for what I need to do; I will begin designing a few scenes that capture the most basic of mechanics, slowly adding on and refining the gameplay and visuals. Since I already have some experience in both Unity and C#, I think I can get a proof-of-concept done within several weeks.

Need help getting started as a game developer? Check out my channel:

https://www.youtube.com/channel/UCq417Slwr-Qt8hN-gemJS0w?&ab_channel=HowtoMakeGames

Have you ever heard of the agile method? It is efficient for designing software and I recommend if your having a hard time wondering wear to start! Scrum uses the agile meathod, good luck on your game!

This topic is closed to new replies.

Advertisement