var mongoose = require('mongoose');

var playerSchema = new mongoose.Schema({
  /* NAMES
   * - trueName is the player's... true name.
   * - displayName is the displayed name in the game, such as
   * if pranked into changing their name. All transactions and
   * actions should refer to trueName, not displayName.
   */
  trueName: { type: String, required: true, unique: true },
  displayName: { type: String, required: true, unique: false },
  /* CHARACTER INFO
   * - job is the player's class (aka job). Can be changed, of
   * course.
   * - gold is the player's total. We may want to implement a
   * bank (in which there would be two totals). For now,
   * there will just be 'gold.'
   * - stat details are in the docs, and are just the name of the
   * stat preceded by 'stat,' like statHP.
   */
   job: { type: String, required: true, unique: false },
   gold: { type: Number },
   /* == STATS == */
   statHP: { type: Number },
   statMP: { type: Number },
   statSTR: { type: Number },
   statDEX: { type: Number },
   statINT: { type: Number },
   statMorality: { type: Number },
   statLuck: { type: Number }
   /* TODO: Items? */
});

var playerModel = mongoose.model('Player', playerSchema);

module.exports = playerModel;

@@ -1159,28 +1159,396 @@
  /* 
-TODO: Items? */%0D%0A%7D);
+ITEMS%0D%0A    * Items will be added by id (as a number). Max bag size of 10.%0D%0A    * bag is the bag, of course.%0D%0A    */%0D%0A    bag: %5BNumber%5D%0D%0A%7D);%0D%0A%0D%0A/* == FUNCTIONS == */%0D%0AplayerSchema.methods.getTrueName = function() %7B return this.trueName; %7D%0D%0AplayerSchema.methods.getDispName = function() %7B return this.displayName; %7D%0D%0A%0D%0AplayerSchema.methods.create = function() %7B%0D%0A  // create a new player%0D%0A%7D
 %0D%0A%0D%0A

Add some functions to gamePlayer