• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Silgen

Uphill Struggle

12 posts in this topic

I don't have anywhere near as much experience with game development as I would like to, and I have an ever increasing amount of school work to be completing, leaving me less time to work on my projects. Apart from feeling that the platformer I was working on is far more complicated than it should be, I'm just not getting anywhere with it. Due to my entity management system, I'm struggling to fix bugs with the collision detection and movement without breaking something else. I feel like I've either bitten off more than I can chew at this point, or am simply over complicating things.

I feel that I've hit a dead end with this current project, and my motivation has plummeted, ushering in a lot of self doubt about my own ability, which may or may not be accurate. This won't be the first time I've bailed on something like this, and honestly it just feels like complete failure.

I'm not really sure what to do - should I just go back and work on something simpler, or what?
1

Share this post


Link to post
Share on other sites
School work is the number one priority like Tom said.

I wanted to add though that your project is not a failure if you learn from the project. If you have reached a stage where you are unable to move forward with the project then I think you just learned valuable lessons about software design! Learn from it and move forward, and your next project will be better for it.
1

Share this post


Link to post
Share on other sites
Hi,

I agree with everything written in response so far (!)

School is different than real life because in the institution of education your work is graded.

In learning game development, [u]no one[/u] is going to judge you except perhaps yourself at this stage.


Frankly, if you are having [i]that[/i] much trouble with making changes, then I would say that your source code is mangled [slang!]. Start fresh! [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

The next game will be much better. You will do more modulization. See this link:
[url="http://en.wikipedia.org/wiki/Modulization"]http://en.wikipedia....ki/Modulization[/url]

Don't sweat it! [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img] You have only gained experience! Everybody is facing huge challenges at some point in game development.! [img]http://public.gamedev.net//public/style_emoticons/default/cool.png[/img]

You will be just fine.


Clinton

Edit: See this link, too:
[url="http://en.wikipedia.org/wiki/Name_mangling#How_different_compilers_mangle_the_same_functions"]http://en.wikipedia.org/wiki/Name_mangling#How_different_compilers_mangle_the_same_functions[/url] Edited by 3Ddreamer
1

Share this post


Link to post
Share on other sites
It is impossible to tell wether you have undertook too big task without knowing more about you and your game ;)

I have been in similar situations where I see how my code has grown into unmanageable mess. But usually at that moment I have already "seen the light" - i.e. what should have been done differently from the beginning.
I suggest not abandoning your current project - you have most probably already invested much time into the design of concept, gameplay etc. But be no afraid of starting over - as long as you consider it your learning project. Of course finishing crappy game is usually better than not finishing clean and elegant one - but on the other hand rewriting everything is better than abandoning it.
1

Share this post


Link to post
Share on other sites
Lauris Kaplinski,


I feel strongly that strategic risk management is always in effect. The sooner the programmer drops a very bad spaghetti source code, then the sooner such person will succesfully finish the next much better program. Sometimes there is a borderline situation which would allow a good decision in either case - stay or move - but Silgen's source code sounds too complicated to salvage in a reasonable time, especially under frustration.

The risks of staying with a failed program to repair it are far greater than the risks in the next new project in general. Some things can not be realized in staying with the failed code. Some bad coding habits likely will remain by staying. A new program with the desire to learn things such as [u]modulizing under certain interfaces, inheritance vs encapsulation, discrete variables[/u], and so forth - should be the very next stage of learning for Silgen.

Of course, only the programmer can decide if the program is too stuck in the mud to free it, but it sounds to me like it got lost in the swamp. Ever hear about "flood vehicles"? Most people won't touch them because of all the many risks of malfunctions - just not worth salvaging them. I would claim the insurance and get back to work in a new vehicle - thank you very much.

Some battles are the same way: Too far gone to save so a strategic withdraw and preparation for a new battle is in order.


Clinton
0

Share this post


Link to post
Share on other sites
A good rule is always "Finish what you start".

I'm in the same situation as you. I have to get a full set of A* to get into the school I want, and I have to do well on an interview that is likely to be torture, and I'm trying to make a game.

It's harsh, but for me... I finish what I start. That doesn't say I don't change things around. I basically only work on the game when I feel like it. I have stopped, if I ever started, to think that I have to finish it by a certain time. For me, the game has morphed from being a thing I have to finish to a thing I escape to when I feel like my mind needs to unhinge from everything.

So, maybe you should do the same. Finish it, but turn it into a relaxation thing instead.
0

Share this post


Link to post
Share on other sites
Mmm... You could refactor your code! But don't take it as "trowing everything through the window and start anew" but as another project. Like if somebody said to you "Here, I got this bunch of code and I need you to make something better out of it".

Put your game on stand by and start a refactor project of your code, rethinking what you have done until now. Don't add features! Just think again about your design, see if you can come up with a better design that does what your current codebase can do now. Once that one is complete you can pick up where you left it.
0

Share this post


Link to post
Share on other sites
[quote name='3Ddreamer' timestamp='1353716909' post='5003611']
I feel strongly that strategic risk management is always in effect. The sooner the programmer drops a very bad spaghetti source code, then the sooner such person will succesfully finish the next much better program. Sometimes there is a borderline situation which would allow a good decision in either case - stay or move - but Silgen's source code sounds too complicated to salvage in a reasonable time, especially under frustration.

The risks of staying with a failed program to repair it are far greater than the risks in the next new project in general. Some things can not be realized in staying with the failed code. Some bad coding habits likely will remain by staying. A new program with the desire to learn things such as [u]modulizing under certain interfaces, inheritance vs encapsulation, discrete variables[/u], and so forth - should be the very next stage of learning for Silgen.
[/quote]

Agree.
But that was exactly what I was suggesting - to abandon code but not abandon game. Even if one starts programming from scratch it usually makes sense to keep the existing non-programming design.
Also - even if you start programming from scratch you will normally end using many bits and pieces of previous codebase. The general design may be unreadable spaghetti code but simple parts and algorithms may still be well written.
0

Share this post


Link to post
Share on other sites
Lauris Kaplinski,


Okay, so agreement we've got here. [img]http://public.gamedev.net//public/style_emoticons/default/biggrin.png[/img]

Yes! We are recommending a new effort, program, and project to restart this game source code, beginning with looking at using some good lines of code in the old one. Silgen should begin now learning about things such as the "Single responsibility principle" and other already mentioned in this thread. The programmer is ready for the next stage of learning in refining this game design in preparation for the next one, while dropping the speghetti code for a fresh start on a new one for the game.


Clinton
0

Share this post


Link to post
Share on other sites
Hey there! What you have described is actually very common from what I've seen and experienced myself.

About how the game is getting "too complex".. I know how you feel. Sometimes you program very elaborate systems which then have to interact with each other and you have to remember what all your variables are and it can get very confusing.

There are a few ways to help this.. First of all, I think it's good that the game is complicted.. When we are learning we often make a big mess of simple things.. we might use dozens of lines of code for something that one day we will only need one line of code for. But doing it the long way will actually teach you alot and later everything you learn will help you be able to keep things more simple. It's like baking a cake for the first time, you'll probably make a much bigger mess the first time you try it.

Another thing I find that helps me is simply working on your project a little bit each day. This keeps you "in touch" with your project and also keeps it moving along. You can also grab a pen and paper and write down things as you work that you might need to look up later, like a little reference note-book. Next time you can also create a detailed plan about what your game is going to consist of and what system's you'll need. When you have the overall picture in your mind it helps give you a good direction while you are working.

"Biting off more than you can chew" is something alot of us probably experience, but I think it's actually a good thing as it forces you forward into new areas of learning and expands your knowledge and skills as a game designer.

About the motivation thing.. This is very normal and it's something you have to learn to deal with if you ever want to actually finish projects and ship them.

The truth is, when you first get an idea, you just burn with excitement for the project, but that motivation always dies down as the projects get going, the challenges and hard work set in, and you get used to your own idea so it loses that "cutting edge" feeling it had when you first thought of it. You have to keep going despite these feelings. I think what alot of us game designers do is that we think of a good idea and start it... then we hit that phase where it's challenging and the motivation subsides, and we get a new cool idea so we abandon the old project and start a new one.

Then we just get stuck in a loop of unfinished ideas.

My advice is simply to make a list of the games you most want/need to complete. Whichever is at the top of the list as the one you want to finish most is the one you stick with. You tell yourself that no matter what happens, you will not work on another project until you finish the #1 priority.

And if you get an amazing new idea, bad luck! That new idea is shelved and maybe it can be the NEXT "#1 priority", but you can't touch it until you have finished the current project. Also, surround yourself with things that get you excited and motivated about your current project... This might be music that you imagine will feature in the game or the trailer for the game, or posters in your room of games that inspired you to make yours.. Stuff like that.

Oh and one more tip for getting things done.. Right click your current connection.. "Disconnect". Good luck!
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0