A group dedicated to indie and standalone game development.
Welcome to another part of our game development series. This time it will be little bit different as you will now receive tips and pieces of advice from other people that are into gamedev, not directly from me. Some are known more, some less but all of them have enough experience that is worth sharing with you. Some focused on design, others on programming part and last but not least you will find something about graphics. Basically: there’s something useful for everyone. Enjoy reading
Posted by ANtY93 on Jul 9th, 2011
Welcome to another part of our game development series. This time it will be little bit different as you will now receive tips and pieces of advice from other people that are into gamedev, not directly from me. Some are known more, some less but all of them have enough experience that is worth sharing with you.
Some focused on design, others on programming part and last but not least you will find something about graphics. Basically: there’s something useful for everyone. Enjoy reading
Of course there are no ‘tricks’ that will apply to every game, but I’ve tried picking few general tips that work pretty much always.
Try limiting yourself to few key features in your game that are most essential for gameplay. If you start adding every other ‘awesome idea’ that will come to you (and there’ll be tons of them), game will not only become harder to develop but also key elements will start to shine less between this mass of extra unneeded crap. It’s better to focus on what is important for game and do it well rather than putting everything-i-can-think-of into it (so called kitchen-sink design).
Make sure that every main action available in your game is giving nice impressions, works flawless and is awesome for player. If you’re working on a platform game focus on your character – it needs to be really responsive and pleasant in controlling. If your game contains a lot of interaction with UI (strategic game, logic game) work on those nice and sleek interfaces. If there’s lot of text in your game – make sure text appears in some fancy way that reading is actually enjoyable. Basically interaction with your game should give joy to player.
Polishing all UIs and menu screen really gives a lot. Nothing should just pop-up out of nowhere. Windows should slowly show up, buttons nicely react on mouse-over and clicking, menu screens should have pretty animation that gives feeling of flow. Remember that interface is the first thing that player meets in your game and is giving first, very essential impression. Games not polished in that aspect will always seem amateur, even if gameplay is the best thing in the world.
I’ve participated in lots of different projects as lead programmer. There were some bigger, smaller, better and worse. After all that experience I can tell one thing. You gotta think about code. Code needs to be planned. Of course, you can’t exaggerate and waste weeks on sitting at your desk, drawing weird schemes and diagrams. But writing everything on the fly isn’t good idea either. Programmer should know almost everything about game before he starts. Main foundations of project, its features so that he can think about future structure of code. Classes, hierarchies, dependencies shall be in your head so that you don’t look for some stuff in your code for half an hour. At the moment if I closed Puzzle Masters code for couple of weeks I would have no problem in opening it and knowing exactly where what is.
Write your code on pure object-oriented basis! Sometimes it’s better to add new class or two, because it can turn out that this functionality you’re working on will be expanded later on. And also it boosts your code’s clearness and organizes it little bit more.
Think! Got hard algorithm to code? Tons of ‘ifs’ and ‘fors’? Get a sheet of paper, pen and write it all down. Draw a little, put on paper exactly what your code needs to do and just think!
Take care of your code’s clarity. Spend some time on polishing it, adding few comments here and there, shortening what you can. It doesn’t take much time but it really helps!
If you got a bug that you can’t solve, don’t tire yourself and don’t sit hours on it. Go for a walk, rest a little, get back to that ‘clear mind’ state. I’ve had tons of situations where ‘must-work’ code failed and error was so embarrassing to show anyone. And I was ready to rewrite half of engine!
Create milestones with your team, todo lists, tasks for each day. Sometimes it just seems that you start losing your enthusiasm in project. Try to do something else then – maybe work on UI and not AI this time? Also milestones really improve your motivation if you can experience progress by yourself.
My best advice would be never to give up! Learning to make games can be a daunting experience, but stick with it because it’s great fun and very rewarding. Challenge yourself, and every time you pick up a new bit of code, try to use it to do something you haven’t done before. The more you push yourself the more you’ll learn.
I’d also recommend networking. This is important for anyone, no matter whether you’re a beginner, an experienced coder or an industry veteran! Meet other developers whenever you can, in your local area as well as at developer events and careers fairs. You pick up all kinds of useful advice this way, and discussing difficulties with your peers can help you find great solutions. If you can, work with other developers, face to face rather than online.
I wouldn’t be the developer I am today if I hadn’t been a part ofWarwick Game Design, a student society at my university. We did all kinds of projects, and made our own tools and graphics. This encouraged me to learn new languages, improve my art skills, and develop more efficient code that was easy to integrate with other people’s work. If you have this kind of opportunity in front of you, make the most of it as it will definitely pay off!
1. Have a consistent style.
I often see games that have potential but what they lack is not artistic skills but rather consistent style. You have to stick to this rule always, even if you can’t really draw. Game with amateur sprites will look better than one with half awesome and half crap sprites. Lots of developers seem to go with trends and for example add logo for their game with tons of light effects, fonts with antialiasing and characters in pixel-art. Terrible. It creates impression that there was enough money for one element and for others you had to work something out. If you go into pixelart – do everything in it. Logo, every sprite, fonts without aliasing. Every style is good if it’s consistent and decision about it should be made quite early and be unchanged later on.
2. Whole product, not bunch of elements.
Game and graphics should scale together into one product and that’s how you have to think about it. Every element has to fit with each other. While working on Cinders we had easy concept – menu and all gui elements are stylized on secession, thick outlines, no shading. During menu creation there were ideas to remake other graphics to similar style. But then we would lose this effect of blend in coming between cover and actual content, and I would have to re-do lot of already done elements. So we would basically lose quite a lot of valuable time in order to get something that could not work out that well. You can risk and take such decisions if you’re certain that it will increase quality of your product by 200% (see Borderlands). If effect will be same or just slightly better and game is already in production state – it’s waste of time. I’m often not very happy with what I draw but there is simply no time to try again and if it looks OK I have to leave it.
I often see games (mostly adventure games) in which locations are very chaotic. I’m walking upstairs on first floor just to get out to garden with next doors. I’m wandering in castle in medieval setting that has furniture from XIX century. I’m talking with comic-style character while suddenly 3D model with photoshop filters appears. You see what I mean already? That kind of things are destroying feel of your game. Surely not everyone has to be perfect artist and historian. That’s not the point. But everyone got access to google and sheet of paper. Sit down, draw your location on paper and plan it. Don’t make your players go through mountains that will change to a lake while coming back. If your game has setting of certain historic time – look it up on google to see how architecture was done back then. Let your friends play the game, they will often see faster what doesn’t fit and you’ll be able to fix it instantly.
4. I can’t draw, but I got really awesome idea for game.
No problem. From visual artist perspective that is in industry for couple of years, I can give you few tips on how to encourage someone to join you. Or rather things you should avoid.
If you want to interest someone, especially to work for you for free, you have to come up with specific project and list of things to do. If somebody has just joined your project during its production, you have to send him necessary tasks list, whole schedule, list of what you need (how many characters, enemies, locations) and present vision of your project.
I drop 99% offers not because project is amateur and without budget, but because people that contact me are mostly completely not serious. If I receive someone’s description of huge RPG that author has thought about for 10 years and still done nothing I can assume that he will do nothing in another 10 years. On the other hand – if someone shows me prototype on random placeholders from google that look awful but at least game works, I will treat him seriously. Because it’s my task to make game look not awful anymore and it’s good when I see that other person is already working on actual game.
Graphics is not really a problem, really. There are many great illustrators that would like to work on a project, of course only if they can see that other person will do something and rules are clear. Every finished product is great contribution to one’s portfolio after all.
Good example is Tom from MoaCube that I’m working together for couple of years now. He didn’t have anyone to help @ his first game so he did graphics by himself. When he’s designing new game he can now create fast prototype to show how it’s supposed to work (that’s how it was at Phantasmat), so I know exactly what to work on.
Problem of most people looking for visual artist is that they don’t really know what they want or what they’re good at. I often get offers from so called “programmers-designers” that have no clue about designing but they can code something…in PHP(that ain’t joke, real example). Or “designers” that can write 30 pages of their world’s idea, but can’t even create simple prototype (meaning they haven’t done anything by themselves yet). It doesn’t work lie that. It’s similar to situation where your artist would assure you about awesome sprites whilst not showing any sketches or concepts.
Hope you enjoyed those tips and that they will be useful for you. For those looking for an artist I recommend reading at least last paragraphs.