跳转到正文

功能测试账号 ​

happyro2 是可选的开发测试数据,不随正式数据库初始化自动创建。账号为 happyro2,密码为 happyro,属于普通玩家组(group_id=0),用于按实际玩家权限测试功能。

角色与物资 ​

四个角色位于普隆德拉 prontera 164,185,均为 Base 99 / Job 50,各有 1,000,000 Zeny、普通剑、100 瓶红色药水和 50 瓶蓝色药水。

角色位角色名职业测试准备
1二号铁匠铁匠露天商店 Lv.10、手推车使用 Lv.10;已装备推车,车内有红色药水×100、蓝色药水×50、杰勒比结晶×100、普通剑×1
2二号宠物剑士已出战的波利、关联宠物蛋;苹果汁×100、宠物孵化器×10
3二号佣兵剑士已出战的 Lv.20 弓箭手佣兵 Mina,在线契约时间 30 分钟;1 级弓佣兵召唤书×10、佣兵红色和蓝色药水各×30
4二号炼金炼金术师已出战的 Lv.50 Amistr 生命体;蒸发、召唤与复活技能;扎贡×100、生命种子和胚胎各×10

铁匠快捷栏第一个位置为露天商店。炼金术师前三个位置依次为蒸发、召唤人工生命体、人工生命体复活;Amistr 已学习王车易位、防御、精钢皮肤各 Lv.5,并保留 1 点技能点。

测试方式 ​

  • 摆摊:选择二号铁匠,在允许摆摊的位置使用露天商店,从推车选择商品并设置价格。用另一个账号(例如 happyro)购买;同一账号不能同时登录两个角色。
  • 宠物:选择二号宠物,检查波利跟随、宠物资料与喂食。波利吃苹果汁;返蛋后使用宠物孵化器重新孵化。出战期间关联蛋在背包中隐藏,属于正常状态。
  • 佣兵:选择二号佣兵,检查跟随、资料、技能与药水使用。契约时间按在线时间消耗;解雇或契约结束后使用背包中的召唤书继续测试。
  • 生命体:选择二号炼金,检查 Amistr 跟随、喂食、技能、蒸发和重新召唤。食物为扎贡;Renewal 的召唤有持续时间,后续召唤按当前技能规则消耗材料。

SQL 重放 ​

权威 SQL 位于根仓库的 deploy/mariadb/fixtures/happyro2.sql,按当前 Renewal 游戏库结构执行,账号、角色和伙伴 ID 均由数据库分配,不依赖某台机器的固定 ID。

先停止游戏、Gateway 和 API 写入进程,只保留数据库运行。必须等待游戏进程完成存档后再导入;不能在账号在线时用 SQL 修改角色。服务管理方式见根仓库服务手册。

在 HappyRO 根目录向本机独立数据库导入:

bash
docker exec -i happyro-native-database sh -c \
  'exec mariadb --default-character-set=utf8mb4 -uroot -p"$MARIADB_ROOT_PASSWORD" happyro' \
  < deploy/mariadb/fixtures/happyro2.sql

连接其他开发数据库时,明确指定游戏库和有写入及创建存储过程权限的操作账号:

bash
mariadb -h 127.0.0.1 -P 13306 -u root -p \
  --default-character-set=utf8mb4 happyro \
  < deploy/mariadb/fixtures/happyro2.sql

导入成功后恢复游戏与 API 服务,使用 happyro2 / happyro 登录。

重放行为:

  • 账号不存在时,创建账号、四个角色、技能、物资、推车和伙伴关联。
  • 已存在且匹配该测试数据的账号,校验四个角色位、名称与职业后跳过;不重置密码、等级、物资、契约时间或测试进度。
  • 同名账号不匹配,或者角色名已被其他账号占用,直接报错,不覆盖存档。
  • 游戏表使用 MyISAM,SQL 的异常处理会清理本次新建账号的关联记录,避免依赖无效的事务回滚;数据库进程崩溃或连接被强制终止时仍需人工检查残留。

要恢复最初的完整物资与伙伴状态,应使用新的开发数据库重放,或先通过管理后台的账号删除流程删除 happyro2,等删除任务完成并停服后再导入。不要手工只删除 login 或 char 行,否则会留下关联数据。

HappyRO 仅供个人学习与研究,任何商业用途均须自行承担相应责任。