mysql - 多人游戏历史数据库建模

标签 mysql database database-design relational-database

我试图弄清楚如何对跟踪游戏历史的数据库进行建模。 在游戏历史中,可以存在玩家1和玩家2。 我希望在玩家 1 和玩家 2 列中都建立从用户到游戏历史的一对多关系。我是否以错误的方式处理这个问题?如果是这样,我可以采取什么更好的方法呢?

最佳答案

我建议在游戏中使用NoSQL数据库。使用状态管理架构,您将能够存储游戏状态,包括所有元素和玩家信息,例如(位置、生命值、武器...等)

一个简单的 2D 游戏状态会是这样的

interface GameState {
  grid: Tile[][];
  player1: Player;
  player2: Player;
  time: Date;
  state: string;
}

interface Player {
   position: Tile;
   health: number;
   weapons: Weapon[];
}

interface Tile {
   x: number;
   y: number;
   walkable: boolean;
   sprite: string;
   type: string;
}

看看这个游戏 Demo | Source code

关于mysql - 多人游戏历史数据库建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44619449/

相关文章:

mysql - 如何使用开始日期和特定时间段查找每个用户的平均数

php - 这个 PHP 和/或 MySQL 查询有什么问题?

带有字符串表达式的mysql if语句

php - IN FIND_IN_SET 之间的 MySql 查询

mysql - 如何修改现有表以添加时区

MYSQL - 在选择查询中使用带有正则表达式的变量来获取记录

java - 两个 Hibernate 应用程序连接到同一个数据库

mysql - MySQL中如何向表中插入数据

vba - Excel 中空白行之间的动态范围

mysql - 为 MySQL 中的 perfromant 连接键入在两个属性上唯一的表的最佳方法?