PsySal ([info]psysal) wrote,
@ 2008-09-06 12:14:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
GraphViz
Oh happy day!

I've mentioned before, and I'll mention again, that I think games are somehow more convincing when the setting for the game seems to be somewhat independent of the gameplay. So, you needn't have all those hallways and doors and scenery bits serve the gameplay, they can exist partly for their own sake.

Too much setting, however, and not enough gameplay leaves the player perhaps "convinced" in that they understand they are in this huge, autonomous world, but at the same time confused. This can't be too good. I think that's at least part of where I went wrong with Venture the Void. Setting was fabulous, but it was a bit too fabulous, too big. Some people can really get into that and dig it, but other people just get overwhelmed or find it perhaps a bit un-fun.

Too much gameplay and you end up with sterile "levels". This might seem appropriate for linear games but this isn't actually about linearity vs. nonlinearity. Think about Super R-TYPE III (the only R-TYPE game I am familiar with). Each stage has a definite "theme" or setting. So there is an organic level, where acid drips on you, and a mechanical one where big metal things pound at you. So on and so forth. The setting sits under and supports the gameplay, which seems to flow naturally out of it. The result is, as a player you are convinced that this mission is really happening.

Sterility in a shooter, on the other hand, would be if the enemies for instance had nothing to do with the background scenery, or if the background scenery was just plain uninteresting. But even in a game like Noiz2sa you find there is actually a lot to say for setting, it's just the setting is abstract.

I think the real magic happens when you can combine the two together and find the right balance, or when you can sprout nice gameplay out of your setting. I prefer the setting to "stand alone" and so usually I develop it first. This part I've gotten quite good at, and I have a lot of ideas for how it should (and can) work.

But as for "sprouting" the gameplay, I've always sort of hit a wall. What I realized not too long ago was a form of chart which could be helpful for it, showing requirements and how they parallelize and so forth. But drawing these out on paper tends to "set them in stone", a little bit, since it's ultimately not easy to move your boxes and lines around too much.

Enter GraphViz. This is a fabulous tool that I discovered and, while not perfect, describing the outflowing gameplay in terms of DOT files (this is the data definition language for GraphViz) has proved to be very flexible. This is a tool that lets me sort of sketch out my gameplay ideas, using existing setting elements such as items, places or NPCS, and quickly get a good idea of the "big picture". GraphViz, you are awesome and I think that me starting to use it has been something of a breakthrough. Hooray!



(Post a new comment)


[info]mapjunkie
2008-09-06 09:08 pm UTC (link)
I use GraphViz all the time. I use it for user-interface flows, project management planning, dependency diagrams, process flows, all kinds of stuff. I love it.

Other ways I like "sketching" designs are database schemas and grammars. You are already familiar with grammars, somewhat, but I really like a tool called ANTLRWorks.

(Reply to this) (Thread)


[info]mapjunkie
2008-09-06 09:09 pm UTC (link)
I shouldn't say somewhat, that came out wrong. I meant that I've only seen a portion of what you've done with them.

(Reply to this) (Parent)(Thread)


[info]psysal
2008-09-08 06:16 am UTC (link)
'Tis alright! I am familiar with grammars, and actually I used ANTLR in Venture the Void... =) However there is a great deal to them I probably don't know!

(Reply to this) (Parent)(Thread)


[info]mapjunkie
2008-09-08 12:40 pm UTC (link)
I don't know, the main trick I use is ANTLRWorks, and then I keep two versions, one with just the grammar, and one with all the handling code. Then I have an executable spec with a test environment, very suitable for documentation, and easy to port.


(Reply to this) (Parent)


Create an Account
Forgot your login?
Login w/ OpenID
English • Español • Deutsch • Русский…