views:

298

answers:

7

Is it possible or even constructive to make a game without any graphics (but is intended to become graphical)

I'm not good with graphics at all, so I'd like to write the skeleton for the game then have a graphics programmer/artist fill in the rest. I could write up all the major classes, and their interactions, and all the major functions/parts of the game.

If so, what should I do to make it easier to integrate graphics into the game later on (every drawn object should have a Draw, Rotate, Collide, etc method) ?

+2  A: 

Speaking from a non-game dev background the UI is almost always the last part of development. If you guarentee there will be graphics coming then defintely accomodate this to fit.

You could even look at a plugin type approach where you can have a non-graphical version of the game and have a plugin which accomodates the graphical version.

James
Leaving the UI as the last part might work for most applications, but only for a small subset of games. Surely you can write all the logic "blind" and unit test it to hell, but unfortunately there's no unit test for *fun*. And that's all that matters.
Matti Virkkunen
Right, I'm just wondering HOW to accommodate the fit best for the next guy who helps out. I don't want to throw a huge structure at him and say "Figure it out". I want to make it easier.
cam
How about you developing the base classes which has overridable methods like `Draw` etc then he can derive from these and implement the graphical stuff on his end. Or you could implement your classes as partial and he can easily extend them on his end to accomodate the drawing methods.
James
@Matti: I am not a game programmer but I have yet to come across a system where I couldn't test it without the UI....
James
@James: What I wanted to say was that you can test all the logic, but the point of games is to be *fun*, and you can't really test for that without, you know, playing it.
Matti Virkkunen
@Matti: The point of a game to a developer is to make it work :)
James
@James: Judging by the OP's post, it would seem that he's also the project leader and designer, and therefore his responsibilities are a bit more broad than "just making it work". Of course it's a different story if you have an army of designers and play testers working for you.
Matti Virkkunen
@Matti: To be honest, that sounds more like Alpha/Best testing. For actually building the game (which the OP was talking about) you don't need to be testing the "fun-factor" that can only truly be tested once the game is near completion or complete.
James
+2  A: 

Generally:

You might want to have look at this:

Game programming wiki

This should get you started up.

Specifically, What kind of game do you envision?

Update:

Since you dont want to do any graphics programming at all, you might want to give your drawable objects a draw() method stub, and leave these for your fellow graphics developer.

I would expect that you need Move, rotate and Checkcollision methods for the basic functionality testing, but as you wrote you would only build the foundations of the game system, a simple setpositon might be sufficent.

You should allow your objects to store theire position (and direction if applicable).

Another approach could be to build a list of objects and there positions in game world later on. This would enable you to develope your interaction event handlers (like On GunFired, OnHit, Ondie,...) and test these in some kind of testbench.

sum1stolemyname
An overhead 2D, tile-based game with FPS type action.
cam
I wonder how exactly do you make 'overhead 2D' and 'first person' fit together...
axel_c
@axel_c: Nitpicking, you are. I guess FPS is used as a general term for Shoot'em Up.
sum1stolemyname
Well, just show the shoes of the character all the time and let him throw things down at mice in a labyrinth. You see the mice in 2D from the top (overhead) but you still are viewing from first person and shoot (throw) things....
dbemerlin
The condensed form of Shoot 'Em Up is *shmup*, not *FPS*. *FPS* means *first-person shooter*, the *first-person* being key.
dash-tom-bang
@ dash-tom-bang: OP wrote: 'FPS type action', meaning hordes of monsters running at the player, and the only way to survive is KILL EM ALL!!1! *Type* is the key here.
sum1stolemyname
+4  A: 

Use placeholder graphics. Anyone can draw up boxes and stickmen in Gimp.

Or just use Google, should give you access to a vast repository of graphics you can freely use in your game, or at least "borrow" until you get proper graphics in.

Matti Virkkunen
I'm talking about all graphics programming as well. The entire physics system. It's not a matter of just art.
cam
@cam: If you take the graphics and physics out, what's left?
Matti Virkkunen
haha :( yeah... Well, the network programming, and structure of the game. The interaction between everything in the environment. It's more of a sim-game, so while graphics and physics are important, they don't make up the whole thing.
cam
+6  A: 

I used to play NetHack (ASCII Characters), Castle of the Winds (top-down graphical), and Diablo (2-D but viewed from an angle). The gameplay for all was similar. They were all tile based. They all had similar equipment, spells, fighting, exploring, random maps, etc. However, the graphics increased in quality.

The game, Adventure was a text based adventure game with text commands for "go north", "look", "get rock", etc. Then, the King's Quest games (all graphical) started with walking around but still typing commands. In the later games, you had a standard menu icon for "look here", "walk here", "pick up object", etc instead of typing.

This doesn't really answer your questions, but some examples of games with similar gameplay but added graphical features as time went forward.

Steven
Hey don't forget Zork and all of the other Infocom games. "The best graphics are the ones in your mind" or something like to that effect.
dash-tom-bang
+1  A: 

Certainly it's possible. The games that founded the "adventure/RPG" genre had no graphics and were a load of fun. Here are some great examples:

  1. The Colossal Cave
  2. Zork
Jay
+2  A: 

Some games use the MVC(Model View Controller) pattern. If you did the same, it should be possible to do the MC parts with multiple views(text based, 2d, 3d).

stonemetal
+2  A: 

Prime example what is possible without graphics is Dwarf Fortress. Incredibly deep and complex game represented merely by bunch of ascii characters. There are fan created visualizers (isometric 3d, full 3d world). So yes, it's possible to do a great game without bothering to program complex graphics.

MaR