# mogs.json 文件的配置

在安装完mogs-tools和 MOGS SDK 之后,会在目录底下自动生成 mogs.json 文件,用于存储使用 MOGS 能力的相关配置。

mogs-tools在构建游戏代码时,会严格按照node_modules/@timi/mogs-sdk-config/index.d.ts中的类型约束对mogs.json进行检测,检测不通过会进行对应字段的报错提示

mogs.json 的默认配置如下。

{
    "env": "testbusiness",
    "cymini": {
        "gameId": null
    },
    "mocker": "off",
    "mogsId": "这里填写从后台要到的mogsId",
    "userInteraction": {
        "useInternalSchema": true,
        "key": "date",
        "limit": 20,
        "repeatedSendLimit": 10
    },
    "modifyFriendInteractiveStorageTemplates": [
        {
            "key": "1",
            "action": "赠送",
            "object": "金币",
            "ratio": 10
        }
    ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

mogs.json配置参数释义:

  • env: 连接 MOGS 的环境,默认testbusiness测试环境
取值 介绍
testbusiness 测试环境
testtime 测试环境(可改服务器时间)
prebusiness 预发布环境
prodbusiness 正式环境
business 正式环境
dev 调试开发环境
test 调试测试环境
check 发布服
  • cymini: (非必填)用于有乐环境下的特定配置
    • (必填)gameId: 如果发布的平台不是有乐,则gameId填写null,如果发布的平台中有有乐平台,则需要填写快速接入提到的申请接入有乐平台后,后台提供的appid
    • (非必填)useCyminiMatch: 跟匹配相关的接口是否用有乐自带的匹配,不填则默认走mogs后台的匹配
  • mocker: (非必填)"on" || "off",用于控制页面在浏览器中打开时,是否启用mock MOGS相关接口,便于调测;正式发布时请注意关闭。
  • mogsId: (必填)填写快速接入提到的接入 MOGS 后,后台提供的mogsId
  • userInteraction: (非必填)用于配置玩家赠送规则,具体配置和使用请参考玩家互动模块
    • useInternalSchema: (非必填)为true才可以使用玩家互动模块
    • key:(必填)限制单位,目前取值只有 date(每天)。
    • limit:(必填)在限制单位下的限制总次数,可以取任意正整数。如当 key 为 date,limit 为 20 时,意义为限制每天一个玩家只能向其他玩家赠送共 20 次。
    • repeatedSendLimit:(必填)在限制单位下对同一玩家的赠送次数。如当 key 为 date,repeatedSendLimit 为 10 时,意义为限制对同一个玩家一天最多赠送 10 次。
  • modifyFriendInteractiveStorageTemplates: (非必填)用于配置互动文案,其中有字段 key, action, object, ratio,配置后当用户发生互动行为时,会生成文案 确认 ${action} ${nickname} ${object} x ${opNum * ratio}?。具体配置请参考玩家互动模块
  • debug: (非必填)调试模式开启时,MOGS 会在命令行中输出日志
  • showEnvDebugDialog: (非必填)是否在建立连接时 弹窗提示当前后台环境信息,连接到 MOGS 后台正式环境时,该配置会被忽略,不会显示弹窗
  • adCaseIds:(非必填)adCaseId在不同环境下对应的adUnitId配置,例如 adCaseIds: { 'caseIdA': { wx: 'wxUnitIdA', qq: 'qqUnitIdA', cymini: 'cyminiUnitIdA' } },表示caseIdA在wx、qq、cymini环境下分别对应wxUnitIdA、qqUnitIdA、cyminiUnitIdA;配置后通过sdk创建广告时即可根据传入的caseIdA,自动对应到平台下的adUnitId