bfdz49 发表于 2026-5-27 19:42:02

远征ol服务端客户端AI系统增加法宝装备

本帖最后由 bfdz49 于 2026-5-28 01:56 编辑

新版本优化仓库放东西无缘无故消失是源代码的问题 不是数据库的问题
bug 这个是新版本很多Scp目录文件要修复不然会启动失败 或者修改源代码
修改源代码定义函数服务端的数据库文件DBProcedure.dbs改为DBProcedure.xml这样方便修改 DBProcedure.db是加密的不好破解

引擎启动 → 收到 pszDBProcedurePath (如 "Data\Scp\DBProcedure.dbs")
→ 将 .dbs 替换为 .xml → 检查同名 .xml 是否存在
    ├─ 存在 → LoadScheme(xml, false)// 不加密
    └─ 不存在 → LoadScheme(dbs, true)// 加密,原行为
编译选择别搞错了 不然启动不成功看图

1. LingHunEquipSkep.cpp (EntityServer)
路径: `D:\yzol111\Server\EntityServer\Src\LingHunEquipSkep.cpp`

修改内容:
- 在 ActiveSkep() 中新增 CheckEquipResonance() 和法宝技能加载调用
- 在 FreezeSkep() 中新增 ClearResonanceBuff() 和法宝技能移除调用
- 在 DeductEquipEndure() 中新增对 FABAO、MOUNT_EQUIP、AMULET 装备子类的耐久扣除
- 新增以下函数实现 (19个):
- IsTryMountEquip() - 判断是否为坐骑装备
- IsTryAmulet() - 判断是否为护符
- GetMountEquipUsableTime() - 获取坐骑装备可用时间
- GetAmuletUsableTime() - 获取护符可用时间
- IsTryFabao() - 判断是否为法宝
- GetFabaoUsableTime() - 获取法宝可用时间
- CheckEquipResonance() - 检查装备共鸣
- ClearResonanceBuff() - 清理共鸣Buff
- OnEquipVisualChange() - 处理装备幻化变更
- GetVisualData() - 获取幻化数据
- OnEquipRefine() - 处理装备精炼
- GetEquipRefineLevel() - 获取精炼等级
- OnFabaoLoad() - 处理法宝装载
- OnFabaoUnload() - 处理法宝卸载
- GetFabaoLoadData() - 获取法宝装载数据
- OnEquipReincarnate() - 处理装备
- GetEquipReincarnateTimes() - 获取问�
- ExportDBContext_ORM() - ORM数据导出

2. LingHunEquipSkep.h (EntityServer)
路径: `D:\yzol111\Server\EntityServer\Src\LingHunEquipSkep.h`

修改内容:
- 新增装备位置常量:
- PERSON_EQUIPPLACE_MOUNT_EQUIP = 14
- PERSON_EQUIPPLACE_AMULET = 15
- PERSON_EQUIPPLACE_FABAO_SLOT1 = 16
- PERSON_EQUIPPLACE_FABAO_SLOT2 = 17
- 新增结构体:
- SEquipVisualData - 幻化数据
- SEquipResonanceActive - 共鸣激活数据
- SFabaoLoadData - 法宝装载数据
- 新增成员变量:
- map<int, SEquipVisualData> m_mapVisualData
- vector m_vecResonanceActive
- map<int, SFabaoLoadData> m_mapFabaoLoadData
- 新增32个函数声明

3. PersonEquipSkepPart.h (EntityServer)
路径: `D:\yzol111\Server\EntityServer\Src\PersonEquipSkepPart.h`

修改内容:
- 新增 GetCurLingHunEquipSkep() 函数声明

4. lua_GameEntityAPI.cpp (EntityServer)
路径: `D:\yzol111\Server\EntityServer\Src\lua_GameEntityAPI.cpp`

修改内容:
- 注册15个新的Lua API函数:
- lua_GetMountEquipInfo
- lua_GetAmuletInfo
- lua_GetFabaoInfo
- lua_ActiveResonance
- lua_DeactiveResonance
- lua_GetResonanceInfo
- lua_SetEquipVisual
- lua_GetEquipVisual
- lua_ClearEquipVisual
- lua_RefineEquip
- lua_GetRefineInfo
- lua_LoadFabao
- lua_UnloadFabao
- lua_GetFabaoLoadInfo
- lua_ReincarnateEquip

5. DBServer.xml (配置文件)


修改内容:
- 数据库服务器
- 用户名: GameUser
- 苈�: 123!@#qwedxlq

编译步骤

1. 打开 `D:\yzol111\Server\EntityServer\EntityServer.vcxproj`
2. 确保使用 Visual Studio 2017 (v141) 工具集
3. 选择 Release | Win32 配置
4. 编译项目: Ctrl+Shift+B
5. 编译成功后,EntityServer.dll 将输出到 `D:\yzol111\Server\bin\` 目录

注意事项

- 部分函数实现为桩函数(stub),返回默认值
- 装备方案中心相关方法被注释掉,需要后续集成
- 确保备份原始文件后再覆盖

编译状态

最后修复的编译错误:
1.DeductEquipEndure() - 修复了if条件语句缺少的)括号
2.IsTryMountEquip() - 修复了双重{{ 为 {
3.IsTryAmulet() - 移除了函数体开始前的多余空行
4.GetMountEquipUsableTime() - 添加了缺失的函数闭合 }
5.文件末尾 - 移除了不属于任何函数的孤立代码
YZOL111 装备系统扩展 - 工作总结

已完成的工作

1. 源代码修改

LingHunEquipSkep.cpp (已修复所有编译错误)
- ActiveSkep() 插入点: 新增 CheckEquipResonance() 和法宝技能加载
- FreezeSkep() 插入点: 新增 ClearResonanceBuff() 和法宝技能移除
- DeductEquipEndure() 插入点: 新增 FABAO、MOUNT_EQUIP、AMULET 装备耐久扣除
- 新增19个函数实现 (桩函数待后续集成方案中心)

修复的编译错误:
1.DeductEquipEndure() - if条件语句缺少)括号
2.IsTryMountEquip() - 双重{{ 修复为 {
3.IsTryAmulet() - 移除函数体前的多余换行
4.GetMountEquipUsableTime() - 添加缺失的函数闭合}
5.文件末尾 - 移除不属于任何函数的孤立代码

LingHunEquipSkep.h
- 新增4个装备位置常量 (MOUNT_EQUIP=14, AMULET=15, FABAO_SLOT1=16, FABAO_SLOT2=17)
- 新增3个结构体 (SEquipVisualData, SEquipResonanceActive, SFabaoLoadData)
- 新增32个函数声明

PersonEquipSkepPart.h
- 新增 GetCurLingHunEquipSkep() 函数声明

lua_GameEntityAPI.cpp
- 注册15个新Lua API函数

DBServer.xml
- 更新数据库连接配置

2. 本地验证
- 修复后的cpp文件: 75,050字符, 78,422字节(GB2312编码)
- 函数实现总数: 57个
- 所有新增装备系统标记已验证存在
- 语法检查通过(文件正确闭合,无孤立代码)

当前状态

编译准备就绪,等待服务器连接恢复以进行远程编译和部署。

修复后的 `LingHunEquipSkep.cpp` 文件已保存至:
`/mnt/agents/output/yzol111_deploy/LingHunEquipSkep.cpp`



- 将修改后的cpp文件上传到服务器
- 使用msbuild编译 EntityServer.vcxproj
- 编译 ZoneServer 项目
- 部署编译后的DLL到Bin目录
- 启动游戏服务端测试
函数      参数      返回值      说明      
`ActivateEquipVisual(dwActorID, dwEquipID)`      玩家ID, 装备ID      int      激活装备外观效果      
`DeactivateEquipVisual(dwActorID, dwEquipID)`      玩家ID, 装备ID      int      取消装备外观效果      
`IsEquipVisualActive(dwActorID, dwEquipID)`      玩家ID, 装备ID      bool      检查装备外观是否已激活

源代码修改

文件      行号      代码      说明      
`ManagerConnector.cpp`      35      `return 3212;`      ManagerConnector 返回 WorldID      
`XSceneSvrTestBase.cpp`      34      `pLogicInitParam->iWorldID = 3212;`      测试基类(你已改成 3015)      
`ZoneServerLauncher.cpp`      57      `setThisGameWorldID(3212);`      ZoneServer 启动器设置 WorldID      
现在启动显示

----------------按新区开启固定地图

场景服名=_1;场景服ID=1

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动载入配置脚本......
当前服务器所属游戏区ID:100000
载入配置脚本成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动LUA引擎......
创建LUA引擎成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动任务服务器......
创建任务服务器成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动场景管理器......
创建场景管理器成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动实体服务器......
创建实体服务器成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动效果服务器......
创建效果服务器成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动BUFF服务器......
创建BUFF服务器成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动攻击(伤害/治疗)计算服务器.......
WorldID: 3015 State: 1
创建伤害/治疗对象工厂成功... ...
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
开始启动技能服务器......
ERROR: Skill script, Cell: illegal data
ERROR: SkillDataManager::read failed
ERROR: LoadScheme: 'Scp\Skill_Dream.csv' failed. ...
WARNING: 服务器连接器还没有连上子服务器,请求设定服务器状态失败!
开始释放场景服的各个模块......
WARNING: 释放 [更新场景信息器] 耗时0ms
WARNING: 释放 [任务服务器] 耗时0ms
WARNING: 释放 耗时0ms
WARNING: 释放 [场景管理器] 耗时31ms
WARNING: 释放 [实体服务器] 耗时0ms
WARNING: 释放 耗时16ms
WARNING: 释放 [效果服务器] 耗时15ms
WARNING: 释放 [资源生成器] 耗时0ms
WARNING: 释放 [冷却服务器] 耗时0ms
WARNING: 释放 [记录服务器] 耗时0ms
WARNING: 释放 [通用物品篮] 耗时0ms
WARNING: 释放 [摆摊服务器] 耗时0ms
WARNING: 释放 [聊天服务器] 耗时0ms
WARNING: 释放 [好友服务器] 耗时0ms
WARNING: 释放 [阵营服务器] 耗时0ms
WARNING: 释放 [AI服务器] 耗时0ms
WARNING: 释放 [PK服务器] 耗时0ms
WARNING: 释放 [药方服务器] 耗时0ms
WARNING: 释放 [交易服务器] 耗时0ms
WARNING: 释放 [组队服务器] 耗时0ms
WARNING: 释放 [传送服务器] 耗时0ms
WARNING: 释放 [公共服务器] 耗时0ms
WARNING: 释放 [登入管理器] 耗时0ms
WARNING: 释放 [仓库服务器] 耗时0ms
WARNING: 释放 [副本管理器] 耗时0ms
WARNING: 释放 [配置中心] 耗时47ms
WARNING: 释放 [技能服务器] 耗时0ms
WARNING: 释放 [伤害/治疗服务器] 耗时0ms
WARNING: 释放 [共享数据接收器] 耗时0ms
WARNING: moduleId(30) already unregistered unregisteTransmitHandler
WARNING: 释放 [共享服务辅助类] 耗时0ms
WARNING: 释放 [共享数据发生源] 耗时0ms
WARNING: 释放 [论坛服务器] 耗时0ms
WARNING: 释放 [五行服务器] 耗时0ms
WARNING: 释放 [商城服务器] 耗时0ms
WARNING: 释放 [称号服务器] 耗时0ms
WARNING: 释放 [寄售服务器] 耗时0ms
WARNING: 释放 [邮件服务器] 耗时0ms
WARNING: 释放 [镜像服务器] 耗时0ms
WARNING: 释放 [验证码服务器] 耗时0ms
WARNING: 释放 [结婚服务器] 耗时0ms
WARNING: 释放 [师徒服务器] 耗时0ms
WARNING: 释放 [声望服务器] 耗时0ms
WARNING: 释放 [安全服务器] 耗时0ms
WARNING: 释放 [好友推荐服务器] 耗时0ms
WARNING: 释放 [金币交易服务器] 耗时0ms
WARNING: 释放 [角色交易服务器] 耗时0ms
WARNING: 释放 [卡片收集服务器] 耗时0ms
WARNING: 释放 [国家系统服务器] 耗时0ms
WARNING: 释放 [帮会服务器] 耗时0ms
WARNING: 释放 [防沉迷服务器] 耗时0ms
WARNING: 释放 [游戏模块服务器] 耗时0ms
WARNING: 释放 [家族服务器] 耗时0ms
WARNING: 释放 [集体任务数据存储器] 耗时0ms
WARNING: 释放 [载具服务器] 耗时0ms
WARNING: 释放 [仇恨服务器] 耗时0ms
WARNING: 释放 [跨服服务器] 耗时0ms
WARNING: 释放 [跨服组队撮合服务器] 耗时0ms
WARNING: 释放 [国战服务器] 耗时0ms
WARNING: 释放 [神器服务器] 耗时0ms
WARNING: 释放 [经脉服务器] 耗时0ms
WARNING: 释放 [军饷服务器] 耗时0ms
WARNING: 释放 [装备过期服务器] 耗时0ms
WARNING: 释放 [配置引擎] 耗时0ms
WARNING: 释放 [事件引擎] 耗时0ms
WARNING: 释放 耗时0ms
完成释放场景服的各个模块.....总耗时=109ms


      

AI远征本来就带有AI 我修改文件增加做装备PK做装备做任务杀BOSS聊天功能
『来自123云盘用户的分享』
链接:https://1843781346.share.123pan.cn/123pan/clBbTd-6Utwh
提取码:iAJK
源代码修改文件





你为何如此不孝 发表于 2026-5-27 20:47:19

修改好的发出来呀,

a894834062 发表于 2026-5-27 20:55:22

谢谢分享

chianpan 发表于 2026-5-27 23:00:17

我来了,既然来了我就得说几句!只说几句而已!如果我不说几句!就对不起人了,既然我要说几句!那么肯定是要说话的~所以我决定要说几句了。考虑好了要说几句之后!我就来这里说几句了!很显然我是无意间进来说几句的!说了几句后,我觉得我不应该多说。只说最重要的几句就行了!虽然只是很少的几句!可是!你别小看我说的这几句!有这很重要的几句话!就这几句话能改变些什么呢?几句话也许能改变一切!也许我说的这几句话什么也不能改变!不过!就算我说的几句话什么都不能改变!可我还是要把我想说的几句话说出来!如果我不把我想说的几句话说出来!那么,我来到这里而不说出我想说的几句话~~首先不说我想说的这几句话就对不起我自己!其实我不说出这几句话来!就浪费我上面所说的几句话了!到最后我还是总结了一下!!!我只是随意说几句。

sheli1989 发表于 2026-5-27 23:43:06

这是在钓鱼?

xyz7220633 发表于 7 天前

远征ol服务端客户端AI系统增加法宝装备                                                                                                                                                                           

176034095 发表于 7 天前

谢谢分享

狼桃 发表于 7 天前

谢谢大神分享,大佬辛苦了

wang721215 发表于 6 天前

谢谢大神分享,大佬辛苦了

weiweiku 发表于 6 天前

感谢这位愿意分享的小伙伴!!!哈拉少!!!

水晶月 发表于 5 天前

:::
页: [1]
查看完整版本: 远征ol服务端客户端AI系统增加法宝装备

本站内容如若侵犯到您的权益,请来电来函告知,我们会尽快处理!
联系QQ:1953150286,2251387361,123784736,免责申明