Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

The Design Part of Game Development

  • 30-04-2013 8:49pm
    #1
    Registered Users, Registered Users 2 Posts: 5,818 ✭✭✭


    I've dipped my toe in and out of learning to program for a couple of years now. I've read a few books and started a few online courses (real life always interferes.) I don't have any knowledge of fancy algorithms, AI or how to make well designed code but I do know what a while and for loop is. I have the very basic ideas down. My problem is breaking the whole development into smaller chunks, and for the moment my big problem is actually getting the design part of the game to a state where I have enough in mind to go code it.

    I have a few ideas for games, I'd often lie in bed thinking up of game ideas that will make me millions on iOS, Android and Steam. I can see the interactions I want my player to have and the type of thing I want them to do but I find it very hard to translate that into the mechanics of a game. An example was I was trying to make a Pokemon style game. I wrote a small bit of code where a player controlled (via Python's raw_input) two different "creatures" and picked one of four options for how they were attacking (cautiously, defensively, all out attacking or dodging) but when I actually played the game through I realised that despite a few different choices it made very little difference to how the "Game" part of it played out. I had almost balanced everything perfectly that no strategy for the player was emerging.

    What I mean by "game design" is making something actually feel like a game where the player's decision has an effect and they can see the reaction of their decision. There will be different design parts to an action game or FPS where you're relying on a gamers skill rather than their strategic and tactical decisions (at least with basic games.) How do you actually plot out how to make the game part of the game?


Comments

  • Registered Users, Registered Users 2 Posts: 1,481 ✭✭✭satchmo


    That's a very tough question - if there was an easy way, everybody would be doing it! One answer is prototyping. You came up against something very common with your pokemon game - you do something which you think will be fun, but it turns out it isn't.

    You need to change it, play around with different aspects, strip it down, build it back up, and keep iterating until you have the seed of something you think has potential. You then take that part and build on it, seeing what emerges. Do this a lot and eventually you might semi-accidentally end up with something that's fun. This is the reason that rapid prototyping is very important. If every small change to your gameplay requires 5 minutes of code compilation and fiddling, you're not going to get anywhere. You need to be able to make changes and see the result immediately, which is the premise on which a lot of (successful) modern game engine interfaces are based.

    It's a common and effective way to design, but it's by no means the only way - there are some established building blocks you can use. Check out the book The Art of Game Design, it's an excellent guide on how to go about making games fun.

    Every designer you ask will tell you the same thing - you can only get so far with a pen and paper, and eventually you have to put ideas into practice and see how it feels. Programming mightn't be your thing, but don't let that stop you - there are plenty of tools out there for building games with the bare minimum amount of code. Check out some of the other active threads here to get an idea of what's available.

    I know this doesn't apply to your case, but for some reason this reminded me of one of the slides in a presentation I just posted:

    zh2uh.png


  • Registered Users, Registered Users 2 Posts: 8,492 ✭✭✭RedXIV


    Lyaiera wrote: »
    I've dipped my toe in and out of learning to program for a couple of years now. I've read a few books and started a few online courses (real life always interferes.) I don't have any knowledge of fancy algorithms, AI or how to make well designed code but I do know what a while and for loop is. I have the very basic ideas down. My problem is breaking the whole development into smaller chunks, and for the moment my big problem is actually getting the design part of the game to a state where I have enough in mind to go code it.

    I have a few ideas for games, I'd often lie in bed thinking up of game ideas that will make me millions on iOS, Android and Steam. I can see the interactions I want my player to have and the type of thing I want them to do but I find it very hard to translate that into the mechanics of a game. An example was I was trying to make a Pokemon style game. I wrote a small bit of code where a player controlled (via Python's raw_input) two different "creatures" and picked one of four options for how they were attacking (cautiously, defensively, all out attacking or dodging) but when I actually played the game through I realised that despite a few different choices it made very little difference to how the "Game" part of it played out. I had almost balanced everything perfectly that no strategy for the player was emerging.

    What I mean by "game design" is making something actually feel like a game where the player's decision has an effect and they can see the reaction of their decision. There will be different design parts to an action game or FPS where you're relying on a gamers skill rather than their strategic and tactical decisions (at least with basic games.) How do you actually plot out how to make the game part of the game?


    As a gamer, your best tool is your experience. You have a good idea of what works in a game and what doesn't. There is quite a lot to the fine tuning and mechanics of a game but you're very unlikely to get it right first time. Take your pokemon-style game for example. If you have an idea of how this would be fun, and your first implementation wasn't, don't give up. tweak it. and take input from other gamers too.

    Quite often if you're heavily involved in a project, you can't see anything but the flaws, so a fresh pair of eyes is always welcome. One great tip I got for helping build up game design is to buy game guides for the games you like and examine them intensely. See how the work, how they progress, what the important elements are and how you can learn from them.

    Also, its worth writing out your ideas to flesh them out as much as possible and fix any flaws while the plan is on paper. Forcing yourself to write down the planned design gets you thinking in more logical blocks and it may help you get to a more solid design stage.

    Hope some of this helps :)


  • Registered Users, Registered Users 2 Posts: 5,818 ✭✭✭Lyaiera


    satchmo wrote: »
    If every small change to your gameplay requires 5 minutes of code compilation and fiddling, you're not going to get anywhere. You need to be able to make changes and see the result immediately, which is the premise on which a lot of (successful) modern game engine interfaces are based.

    ...

    zh2uh.png

    I thought of my OP when I read through that PDF and saw that slide as well. :pac: And it's near enough. I have more than the narrative ideas she talks about but I don't have the underlying game mechanic. With the pokemon type game I was coming up with power stats and finesse stats and when it got down to it they all balanced out and countered each other perfectly. I did read somewhere in a book on the the theory of games (rather than game design theory) that we have a tendency to balance things and make things fair because that's the way we should see the world. Games don't really run on fair though. If the adventurer had an equal fight with everyone they encounter after the third fight they'd almost certainly be dead.

    I can definitely see your point about seeing the effect of changes quickly. I've run tabletop RPGs and it's really valuable to see player's immediate reactions and attitudes and if something isn't working. Your script goes out the window and straight away you're improvising and tailoring the game to the players. With game design you can't improvise anything, it's all locked down. So figuring out how things play out and getting it right without constant fiddling is important. The thing for me is that my coding abilities are as good as my game design abilities. I know enough to have a really, really basic program run and output the results of something, but not enough to make it interesting with the design.

    I think it's time to take out some pen and paper tomorrow.


  • Registered Users, Registered Users 2 Posts: 22 Carpo II


    Lyaiera wrote: »
    With game design you can't improvise anything, it's all locked down. So figuring out how things play out and getting it right without constant fiddling is important. The thing for me is that my coding abilities are as good as my game design abilities. I know enough to have a really, really basic program run and output the results of something, but not enough to make it interesting with the design.

    There's a few things you can do to get better at writing code that's amenable to quick change and improve at the process of designing and prototyping.

    There are plenty of books on the subject but I'd recommend Head First Design Patterns as a good start. Its very readable and although the examples are in Java it explains them pretty well.

    You can always ask some one else. I'm sure there are plenty of people here that would be happy to help if you were to post some code or examples.

    Finally, the obvious one is practice. Keep at it and you will get better :)


Advertisement