Getting Started

Nibbie
Posts: 2
Joined: 2012.06
Post: #1
I've decided on my game concept and decided what language/environment to build it in. I've done some design work for game play concepts/characters/levels.

What is the "best" way to start the programming off?

Examples:
Should i start building the UI then the controls, network handling, animation...?

Or do i start from the inside and build-up the animation/collision handling, etc...?

what are some peoples expierences?

as a tangent, do people try to get the final artwork ready first or just use temporary stuff?

thanks,
kevin
Quote this message in a reply
Member
Posts: 164
Joined: 2002.04
Post: #2
I don't know if this is the BEST way, but what I always end up doing is working from the inside-out. I.e. your first goal should be to get your character up and running around in a map.

That means you have the subgoals:
-Code the map rendering
-Code animation
-Get a placeholder player model
-Get collision detection

And then just build from there
Quote this message in a reply
Member
Posts: 715
Joined: 2003.04
Post: #3
Check out Antack source code in resources!
I think it has everything David mentioned.

And there's Black Shades source, where I imagine you can pick up some animation and ai techniques.

And there's dim3 animator source where you can pick up some more animation and file format background.

hope that helps.
Quote this message in a reply
Founder
Posts: 1,139
Joined: 2002.04
Post: #4
>What is the "best" way to start the programming off?
What type of game?

Many people who work on RPGs, or tile based games start off with a map editor. Actually, an editor can help save time later, and can serve as the basis of the game engine.

>as a tangent, do people try to get the final artwork ready first or just use temporary stuff?

Common sense says use coder art or art from here because...

1. You may find that you need to alter things, and then perhaps all art goes out the window
2. You could make a ton of art and give up making the code, or spend all your time here "talking" about the games you are gonna make. (This is an inside joke not really pointed at you, but in everyone's general direction, unless they finished a game Wink )

Carlos A. Camacho,
Founder
iDevGames
Quote this message in a reply
Member
Posts: 177
Joined: 2002.08
Post: #5
Definitely do the tools/editors first. They will let you easily create game data to test the rest of the engine on.

My current project has been assembled in roughly this order: Texture import tool and file format, map editor and file format, script runner, game engine, model importer and file format, physics system.

(edit) As for art: Just draw/find something quick and crappy that excersizes as many aspects of the engine as possible. You don't need to be spending time on art when there's nowhere to put it, and you can't go backwards and do a "quick and crappy" engine to check if the art works Smile But on the other hand, be sure to occasionally change your test cases around, so you can be sure you are getting correct general behavior and not just making it work with this one case and moving on.
Quote this message in a reply
Moderator
Posts: 916
Joined: 2002.10
Post: #6
I tend to start coding the game, then a little ways in (after I got basics) I duplicate my project and then turn that into an editor of some sort
Quote this message in a reply
Nibbie
Posts: 2
Joined: 2012.06
Post: #7
I'm going to use TNT Basic and the game will be sprite based. This means that TNT Basic has provided a Map Editor and the Graphics Engine portion. So all i need to work on is the gameplay elements, UI, AI, Network handling, whatever else...

For those who say the start with an editor. How do you start biulding your editor? do you create the Interface and then add the functionality or do you create some type of functionality and then add the interface around it?

thanks for the input so far...
Quote this message in a reply
Member
Posts: 164
Joined: 2002.04
Post: #8
About editors: this probably isn't the best way, but for all my solo projects (i.e. where I do most of the work) I build the functionality first and then possibly later add a nice interface. I.e. my animation editor for Lugaru has no buttons or in-program help or anything.. you can see it at http://wolfire.com/animeditor.sit

If you're working by yourself just make something that YOU can easily and effectively use.
Quote this message in a reply
Member
Posts: 353
Joined: 2002.04
Post: #9
Quote:Originally posted by David
About editors: this probably isn't the best way, but for all my solo projects (i.e. where I do most of the work) I build the functionality first and then possibly later add a nice interface. I.e. my animation editor for Lugaru has no buttons or in-program help or anything.. you can see it at http://wolfire.com/animeditor.sit

If you're working by yourself just make something that YOU can easily and effectively use.


I agree with this (David, you and I always seem to agree on this stuff - I think we must have similar working patterns). As a solo programmer/game designer it is very difficult to predict what functions and features your editors will need until you start to get some game working. For the game I am working on now I originally tried to start by creating a really full-featured editor. But then I realised I was trying to predict where the game itself would have bottle-necks etc and design the editor's functionality around those predictions. When in reality I could have been totally wrong about what was useful and what wasn't.

So start with some core functionality, but keep in the back of your mind the notion that you will eventually create some sort of editor to create and manipulate the data your game uses.

Hope that makes sense...
Quote this message in a reply
Member
Posts: 177
Joined: 2002.08
Post: #10
I didn't say the editors should be completely finished and shipped before engine work began Rasp

I just see having data read to load as an absolute requirement for getting an engine working. And since generating some data is almost certainly going to involve custom tools to do so anyway, so why not make them full-fledged editors with a user interface?
Quote this message in a reply
Member
Posts: 715
Joined: 2003.04
Post: #11
Yeah! What he said!

Wacko excuse me I've been designing UI for days Wacko
Quote this message in a reply
Member
Posts: 79
Joined: 2002.08
Post: #12
I'd say I start with the core. Getting something up and running as soon as possible is always good for the morale. Then I build outwards. But pretty early on I also start building the shell around it, connecting the core to the outer shell.
Leaving the GUI to the very last is not a good idea in my experince. The you run the risk of it not fitting in very good with the actual game (engine).
Getting save and load game capability in early on is also good, that way you can fit it in better with the game engine.

So to make it short. Start with the main stuff, to get something up and running. But soon after that start thinking about GUI, save/load and other features so you can build in good support for them from the beginning and not something that will be hooked up as an after thought.

KenD

CodeBlender Software - http://www.codeblender.com
Quote this message in a reply
Founder
Posts: 1,139
Joined: 2002.04
Post: #13
How about looking at Raptor's code which is TNT Basic. Also talk with Holmes as he can offer advice I think on TNT.

Cheers

Carlos A. Camacho,
Founder
iDevGames
Quote this message in a reply
Member
Posts: 42
Joined: 2002.09
Post: #14
Hams, start with the simplest, most fundamental task first, such as drawing the map. Then get the map moving, then add the player, then animate the player. Then do the rest of the game (badies, goodies etc). However, it's usually best to do the animation and behaviour of other objects before the actual scoring code. This makes testing much easier, and allows scoring to be more critically and holisitically examined later. It's often helpful to build in little "cheat" codes to trigger events. This saves a lot of testing time. For example, in Kimdom Come, I used T to generate more aid and R to prod President Roh into action. This saved having to wait an average of 40 seconds or however often he shoots rays of sunshine. You might even decide to leave these in as easter eggs.

Once the mechanics are all worked out, it is time to do the scoring. This includes display and balance of difficulty.

Finally, all the GUI stuff. Do your menus, splash screens and high scores.

Generally, I agree with David. A common mistake is for people to start with what the user sees first, ie splash screen then menu the instructions, which locks you into design and programming choices too early. Start with your application's core competencies.

Visit http://www.theDailyGrind.net for your recommended daily intake of embittered satire.
Quote this message in a reply
Member
Posts: 233
Joined: 2003.05
Post: #15
Also keep in mind that any good program is completely rewritten at least once.

In other words, don't struggle with old code you have learned you can write better. REWRITE it instead. Usually, you'll save a lot of time and headaches that way. Get the pain over with quickly.

This is especially true if you are learning that there could be a much more efficient way of doing things FROM the code you are currently writing OR if you are starting to hit roadblocks created by sloppy or poorly planned code.Blush

That doesn't mean start EVERYTHING over. Chances are that a good portion of your code is still very usable. Cool

I guess, I just mean: "Don't get so attached to your code that you struggle with it for years and give up." Bored Mad Huh

Aaron

"Pay no attention to that man behind the curtain." - Wizard of Oz
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Help with getting started Filsk15 9 8,296 Nov 19, 2011 10:38 AM
Last Post: fugufish
  Getting Started makinggames 9 6,438 Jun 17, 2009 05:15 PM
Last Post: wyrmmage
  Help Getting Started onedeveloper 8 5,221 Oct 1, 2008 05:49 AM
Last Post: ThemsAllTook
  PTK w/ XCode getting started RotaJota 0 2,173 Jun 29, 2006 08:03 AM
Last Post: RotaJota