anchor.diff:  
   [NOTE]
   ====
  -Many game developers dream of creating their very own “MMORPG with full-physics, AI, post-rendering effects, multi-player networking, procedurally generated maps, and customizable characters. So why aren't there tons of MMORPGs out there? +
  -Even for large experienced game producers, the creation of such a complex game is time-intensive and failure-prone. How familiar are you with multi-threading, persistence, optimization, client-server synchonization, …? Unless your answer is “very!, then start with a single-player desktop game, and work your way up – just as the pros did when they started.
  +Many game developers dream of creating their very own MMORPG with full-physics, AI, post-rendering effects, multi-player networking, procedurally generated maps, and customizable characters. So why aren't there tons of MMORPGs out there? +
  +Even for large experienced game producers, the creation of such a complex game is time-intensive and failure-prone. How familiar are you with multi-threading, persistence, optimization, client-server synchonization, …? Unless your answer is "very!", then start with a single-player desktop game, and work your way up – just as the pros did when they started.
   ====
   
   
  
positive.code: 
  Every milestone of a game development project is made up of phases: Planning, development, testing, and release. Every milestone involves updates to multi-media assets and to code.  
  
  This “best practices page is a collection of recommendations and expert tips. Feel free to add your own!
  
  
  == Requirements and Planning
  
negative.code: 
  .  Omega = Final Release
  
  How you name or number these stages is fully up to your team. Development teams use numbered milestones (m1, m2, m3), Greek letters (ex. alpha, beta, gamma, delta), link:http://en.wikipedia.org/wiki/Software_versioning[&quot;major.minor.patch-build&quot; version] numbering (ex. "2.7.23-1328"), or combinations thereof. 
  
  
  === Use File Version Control
  
  Whether you work in a team or alone, keeping a version controlled repository of your code will help you roll-back buggy changes, or recover old code that someone deleted and that is now needed again.
  
  *  Treat commit messages as messages to your future self. "Made some changes" is _not_ a commit message.
  *  The jMonkeyEngine SDK supports Subversion, Mercurial, and Git. +
  If you don't know which to choose, Subversion is a good choice for starters.
  *  Set up your own local server, or get free remote hosting space from various open-source dev portals like link:http://sourceforge.net/[SourceForge], link:https://github.com/[GitHub], link:https://bitbucket.org/[BitBucket] (supports private projects), link:https://about.gitlab.com/[GitLab] (free private projects)…
  
  
  == Multi-Media Asset Pipeline
  