

== Game Design short introduction

This page is dedicated to introduce you to Game design/Planing/Managing with: 


basic ideas, some terms, techniques,idioms, workflows you should learn and practice in the way of game/software developing.


I will keep it short but concise!



=== Wisdoms and Insights with Images

TRY: link:http://www.handdrawnapps.com/category/game-design-resources/[http://www.handdrawnapps.com/category/game-design-resources/]

'''

....
Doing it right!
....

image:http///rubycowgames.com/wp-content/uploads/game-design.jpg[game-design.jpg,with="400",height=""]

'''

....
The Process and elements
....

image:http///www.gamasutra.com/db_area/images/feature/3934/image002.jpg[image002.jpg,with="400",height=""]

'''

....
Use UML & List & Tree and Graph
....

image:http///dundee.cs.queensu.ca/~cax/arch/game-design-3.png[game-design-3.png,with="400",height=""]


image:http///indiegamesstudio.com/blog/wp-content/uploads/2012/08/articydraft_dialogjunkie_shot02_615x362.jpg[articydraft_dialogjunkie_shot02_615x362.jpg,with="400",height=""]

'''

....
Line up gameplay's element for better overview first
....

image:http///fc04.deviantart.net/fs50/i/2009/287/d/c/Game_Design_Sketch_Pack_by_deadinsane.jpg[Game_Design_Sketch_Pack_by_deadinsane.jpg,with="400",height=""]

'''

....
Care about player input and experience, motion and emotion,inspired by them!
....

image:http///gametea.files.wordpress.com/2010/09/game-design-101.gif[game-design-101.gif,with="400",height=""]


image:http///bulk2.destructoid.com/ul/215158-GameDesignEvent.JPG[215158-GameDesignEvent.JPG,with="400",height=""]


image:http///www-static.dreambox.com/wp-content/uploads/2009/06/video_gamestest.jpg[video_gamestest.jpg,with="400",height=""]

'''

....
Teamwork and share, hubris is the gamekiller!
....

image:http///gamecareerguide.net/db_area/images/item_images/20071120/071120_design_game03.jpg[071120_design_game03.jpg,with="400",height=""]



=== Website

image:http///gamedesignschools.com/uploads/digital_asset/file/1161/gamedesignschoolscom-main-image_900x300.jpg[gamedesignschoolscom-main-image_900x300.jpg,with="400",height=""]


link:http://gamedesignschools.com/[http://gamedesignschools.com/]


link:http://www.gamasutra.com/[http://www.gamasutra.com/]



=== Books to read

Try to google them please!


*  Game Architecture and Design
*  Game Design Foundations
*  Game Design Theory and Practice
*  Game Development and Production
*  Ultimate Game Design Building Game Worlds


=== Tips

If you are not a professional game designer developer, or not in a “restricted workflow, or even you are, here is some tips:



==== Thing to keep near

.  Papers &amp; Pencils
.  Your search engine
.  Game dev books
.  Open sources &amp; Free softwares
.  Good kind of musics


==== Smart workflow


image::http///www.creativeuncut.com/imgs/video-game-designer.jpg[video-game-designer.jpg,with="",height="",align="center"]




===== As developer

Read : 
link:http://en.wikipedia.org/wiki/Rapid_Application_Development[http://en.wikipedia.org/wiki/Rapid_Application_Development]


try *Extreme programing*: 
link:http://en.wikipedia.org/wiki/Extreme_programming[http://en.wikipedia.org/wiki/Extreme_programming]



===== As designer

Career
link:http://www.creativeuncut.com/how-to-be-a-video-game-designer.html[http://www.creativeuncut.com/how-to-be-a-video-game-designer.html]


Principles
link:http://www.handdrawnapps.com/2013/02/19/game-design-principles/[http://www.handdrawnapps.com/2013/02/19/game-design-principles/]



===== As an artist

See 4 phase I recommended below as my experience manage a small team:



image::http///www.skillset.org/uploads/jpeg/asset_11049_hl.jpg[asset_11049_hl.jpg,with="",height="",align="center"]




image::http///hub.leoartz.com/wp-content/uploads/2009/05/m_creative_uncut.jpg[m_creative_uncut.jpg,with="400",height="",align="center"]



.  2D Concept 
..  Outline: sketch first, dicuss a lot about ideas, be wild
..  Coloring: get as much of details as you can

.  3D Modeling
..  Draft: T-Pose, Simple geometry, basic lighting
..  Detail: with clean up textures, maps, shaders, better scuplting, animation



image::http///benregimbal.com/lame_example_benrc_2007.jpg[lame_example_benrc_2007.jpg,with="400",height="",align="center"]





image::http///fc00.deviantart.net/fs49/f/2009/206/d/b/Attack_Force_Iphone_game_art_by_carefulconan.jpg[Attack_Force_Iphone_game_art_by_carefulconan.jpg,with="400",height="",align="center"]




===== As Indie & As one man army

If you never in a professinal workflow before, try to do it simplier as your only have limited man power. Most valuable advice if you’re an artist do programming: Do it like Zen :p


.  Smart and active: Research first, try to call out for help if need! Opensource are the key.
..  Flexible but manageable: Try to use SVN.
..  Shoot with both hands: Do both assets and programming can cause a mesh, do one at a time. After finish review, get approved by yourself or the leader. Continue developing.
..  Pirate spirit: Use place holder as much as your can. Skip concept, may use existed assets. There are plenty of free assets.
..  Avoid premature optimization: If still concerning about design, make it work first. When doubt lelf out. 
..  +++<abbr title="What You See Is What You Get">WYSIWYG</abbr>+++ : What You See Is What You® (Get| Got| Goodat | Goingto | Goal )
..  +++<abbr title="Keep it simple stupid">KISS</abbr>+++ : Keep It Simple Stupid! link:http://en.wikipedia.org/wiki/KISS_principle[http://en.wikipedia.org/wiki/KISS_principle]


image::http///billeebrady.com/wp-content/uploads/2012/06/Keep-It-Simple-Stupid.jpg[Keep-It-Simple-Stupid.jpg,with="300",height="",align="center"]




== Management tips


==== Time constraints

With any workflow and model your team choose, keep in mind this to get high quality artworks in short limit of time, keep phase (a duration of development) tight, as my personal experiences:


.  *Concept phase* The more the better researches and ideas in short/afforable time!
.  *Design phase* The detailed the better/look ahead solutions and architecture in rather long time.
.  *Implementaion phase* The focus, intensive and “make it work first time.
.  *Review phase* Reviews and test, fix , always take long time, but do it frequently or you are doomed!!!


==== Phases and its expected result

So, in the end of each phase, you want to estimate your objectives and performane successes with a simple test/checklist . Here is “common expected result:


*Concept phase*  Ideas → Gameplay


*Design phase*   Gameplay → Screens


*Implementation phase*  Screen → States [or other paradigms] → Codes (class,config) 


*Review phase*  Runs → Bugs → Patches → Deployed publishabe packages, game.



==== Design as first step!

In this phase, we will design the most important things have influence to our game:


*  Gameplay 
*  Screens

Consider, gameplay brief texts is the initial basic “outline, and the screens are the detailed sketches of the gameplay into a “software form (that's it, a game :p).






==== In the scale of whole project

This article talking about pre-production and other durations


link:http://dokgames.blogspot.com/2012/09/brick-4-whats-games-development-workflow.html[http://dokgames.blogspot.com/2012/09/brick-4-whats-games-development-workflow.html]



== Useful terms


==== Gameplay

A list of “names or “things will be seen in our game, bricks that build up the gameplay piece by piece. 



===== As shortlist

Yeah, a real text list of names, short description and notes!


For examples, in a Football Manager game, as my EuroKick game <<jme3/atomixtuts/kickgame#,kickgame>>
You can see them as things: 


* a Football fan see a football match in a stadium*. 


or 


*a business man see a company with finance, reports and statistics*.



===== As Mindmapping

In mind mapping, the links between the names represent various kind relationships such as “Has - “Belong to , “In category… or unknown as they just poped out of our mind.





…link:http://www.text2mindmap.com/[http://www.text2mindmap.com/]…



==== Design to Programming translation

Those, in turn will be implemented in programming language with a programming manner. 


OOP for specific, appropriate name should be transfer to a appropriate Class of Object, with properties and methods. 


For Component Oriented Programming (COP), names should be interpreted as Prefab with a specific set of components, and their processors. 
Read : <<jme3/entitysystem#,entitysystem>>



== Userful tools


==== Online Docs and Repository

To writing corporate documentations



===== Google

Google doc link:http://doc.google.com[http://doc.google.com]
Google code link:http://code.google.com[http://code.google.com]



===== Github

link:http://github.com[http://github.com]



==== Mindmap

Mind map can be consider very simple and basic ideas of the game in Graph based presentation, simplest Game Design document…


Go to Text2Mindmap.com link:http://www.text2mindmap.com/[http://www.text2mindmap.com/] and build one… !



==== Open source projects

Google code link:http://code.google.com[http://code.google.com]
Source forge link:http://sourceforge.com[http://sourceforge.com]



==== Free software


== Detailed Game Design Course


=== Game design prime


=== Story, Theme and Plot


=== Competitive, game and fun theory


=== Map making


=== Emotional creature and character design


=== Dialogue and cinematic prime


=== Gamer's Input and exprience concern
