标签搜索

游戏邮件系统数据设计因素

anker
2021-06-27 / 0 评论 / 240 阅读 / 正在检测是否收录...

邮件系统基本是各个游戏必备基础功能,可以制作为跨项目通用功能。每个角色或者玩家可以通过“邮箱地址”来找到自己的邮件。

  1. 邮箱数据需要独立于玩家数据,方便单独加载和收信。
  2. 考虑邮箱地址这个规则,可以用简单的userid也可以更加复杂的逻辑。
  3. 考虑邮箱容量问题,过期回收问题。可以使用最小堆算法,在适当时机进行一些回收。
  4. 简要信息和详细信息分离的数据结构设置。没有必要在玩家看到邮件时下行所有邮件信息。
  5. 邮件要分类型。

    • 广播类型:角色邮箱中存储邮件GUID。在另外一个地方以GUID+邮件模板+链表实现。尝试领取新系统邮件时,使用基于表实现的链表,得到需要追加的新系统邮件。查询某个广播邮件详情时,根据唯一ID可查得。不建议使用简单数组方式来实现广播邮件,不利于后期合服实现。
    • 单播类型:直接把整个邮件数据进行保存。
    • 多播类型:使用广播一样的方式。
  6. 考虑更高更安全的发邮件端。发送端缓存是否可以考虑Redis.

    • 支持失败重试机制
    • 支持离线邮件
  7. 考虑参数化支持。对邮箱标题和邮箱内容可以有变化参数。比如,排行榜第几位等。
  8. 系统邮件支持语言或者其他字段过滤。比如收信时只收到法语系统邮件,或者只让一定等级玩家收到。
0

评论 (0)

取消