PvP 竞技场是一个对决系统:一位玩家发起带报名费的对决,另一位玩家带着自己的英雄加入,服务器立即完成战斗。 胜者在扣除你设置的销毁比例后拿走奖池,平局则退回报名费。
玩家看到什么
- 可以用自己的某个英雄加入的公开对决。
- 你的对决:等待中(取消会退回报名费)和已结束(胜、负、平)。
- 新建对决:规则、按战力选择英雄、规则范围内的报名费,以及胜者能拿到什么。
- 战斗策略(每回合的攻击和防御部位),以及按回合回放的战斗。
竞技场
12 450
320
公开对决
我的对决
Arrow · 战力 1 920报名费 100 金币
加入
Mira · 战力 2 300报名费 250 金币
加入
策略
攻击:头部 · 防御:身体
新建对决
第 1 回合:头部暴击
-412第 2 回合:被格挡
01可用英雄加入的公开对决,以及你自己的对决。
2带报名费的新对决;每回合的攻击和防御部位。
3服务器瞬间完成战斗;结果按回合回放。
如何运作
- 战斗由服务器根据英雄属性计算:每回合命中、暴击、格挡或闪避。
- 英雄和属性来自英雄系统;没有英雄时界面会推荐它。
- 规则设定报名费范围和奖池中被销毁的比例。
步骤 01把系统加入项目
告诉 AI 编程助手:“加一个 PvP 竞技场”。它会安装现成的系统,附带一个金币对决(报名费 10 到 500,销毁 10%),由演示英雄参战。
步骤 02在后台中设置
打开后台,选择你的项目,进入 实时运营 → v2 → 对战。
- 创建对决规则:报名货币及范围、销毁比例,以及哪些属性参与战斗。
- 确认游戏在角色中已经有英雄。
页面上的 AI 按钮会打开助手:描述你的需求,它会提出修改,你检查后点击保存。
步骤 03测试并发布
在应用的测试版中检查系统。设置通过单独的操作发送到正式应用,请看发布与链接。
开发者须知
对决通过 @idosgames/core 中的 client.match 工作。
// 按 'coin_duel' 规则发起一场报名费 100 金币的对决
const created = await client.match.createMatch(
{ Entries: [{ Type: 'VirtualCurrency', CurrencyID: 'coins', Amount: 100 }] },
'coin_duel',
'knight',
)
// 加入别人的对决:服务器立即完成战斗
const battle = await client.match.instantBattle(matchID, 'coin_duel', 'knight')- 报名费在创建对决时扣除;取消公开对决会退回。
- 战斗记录在
instantBattle的响应中:回放它,不要自己计算。
每个字段都在技能 match-system 中有说明,由 SDK 的 MCP 服务器提供。
常见问题
战斗是实时的吗?
不是。服务器根据英雄的属性和策略一次性结算整场战斗;界面负责回放。
平局会怎样?
双方的报名费都会退回。