Commit Graph

87 Commits

Author SHA1 Message Date
xinian
0d44de2ea7 fix: 修复PVP赛季数据结构及相关逻辑
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-03-13 12:04:35 +08:00
昔念
4751594ee8 ```
feat: 更新战斗系统模型结构和Redis消息处理

- 引入gredis依赖用于Redis消息处理
- 将战斗相关的枚举和结构体从info包迁移到model包
- 更新战斗结束原因、攻击值等类型的引用路径
- 添加新的zset工具包到工作区
- 修改Redis消息处理逻辑以正确解析gredis.Message类型
- 在战斗控制器中统一使用model包下的类型定义
2026-03-04 22:47:21 +08:00
昔念
bfafd5789d ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(utils): 添加切片元素计数功能

新增CountSliceElements函数用于统计切片中各元素的出现次数,
返回map[元素]出现次数的映射关系,支持任意可比较类型的切片元素。

fix(config): 调整地图配置模型默认值设置

修改MapPit结构体中的MinLevel和MaxLevel字段设置,
将数据库约束改为非空并设置默认值为1,确保等级范围配置的有效性。

ref
2026-02-26 22:32:15 +08:00
昔念
dc4835f14c ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(common/utils): 添加时间范围检查工具函数

添加了 IsCurrentTimeInRange 函数用于判断当前时间是否在指定的 HH:MM
时间区间内,支持当前日期的时间比较功能。

refactor(logic/controller): 重构 Boss 挑战逻辑并集成配置服务

- 集成 service 模块替代原有硬编码逻辑
- 重构 PlayerFightBoss 方法,使用新的配置数据结构
- 移除已废弃的 processMonID 函数和相关注释代码

refactor(logic/space): 优化地图 Boss 信息管理和天气系统

- 更新地图 Boss 数据
2026-02-25 19:05:50 +08:00
昔念
c00a796203 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
refactor(common/utils): 重构concurrent_swiss_map使用官方sync.Map实现

- 替换原有的第三方并发map实现,改为基于标准库sync.Map的封装
- 保持完全的API兼容性,原有配置方法变为无实际作用的占位符
- 优化Range方法实现,移除goroutine/channel开销,避免潜在的死锁风险
- 移除依赖的外部库和
2026-02-25 13:20:38 +08:00
昔念
6c26e448fd ```
refactor(common): 移除未使用的XML解析测试代码

移除test_test.go中未完成的Mapxml函数和login/main.go中的
XML解析注释代码,清理无用的导入包,优化代码结构

BREAKING CHANGE: 删除了modules/config/model/map_moster_node.go
文件中的MapPit相关模型定义
```
2026-02-24 12:53:07 +08:00
xinian
932e199622 fix: 修复切片长度校验和内存分配防护问题
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
refactor: 优化战斗循环中的宠物处理逻辑
refactor: 重构物品更新服务使用ORM模型
2026-02-22 21:46:36 +08:00
昔念
1dc75b529d ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(socket): 优化TCP连接处理性能

- 添加最小可读长度检查,避免无效Peek操作
- 修复数据部分解析逻辑,避免空切片分配

perf(utils): 优化并发哈希映射性能

- 将分段数量调整为CPU核心数
- 重写Range方法,移除channel和goroutine开销
- 添加原子标志控制遍历终止

perf(utils): 优化结构体序列化缓存机制

- 添加sync.Map缓存预处理结果
- 支持结构体、自定义类型、二进制类型分别缓存
- 减少重复反射
2026-02-22 10:59:41 +08:00
xinian
d159944d37 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-21 22:41:59 +08:00
昔念
31d9eb3f9e ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(config): 添加超时空地图配置和时间地图查询功能

新增IsTimeSpace字段用于标识地图是否为超时空地图,
添加TimeMap API接口支持查询超时空地图配置

perf(socket): 优化XORDecryptU解密函数减少内存分配

基于bytebufferpool实现缓冲区池化,大幅降低高频调用下的
内存分配和GC压力,提升性能表现

refactor(utils): 优化packVal序列化函数提升性能和稳定性

减少反射开销,
2026-02-21 16:48:42 +08:00
xinian
16b6adf1a1 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-19 14:54:36 +08:00
昔念
2860bcfa5c 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-09 01:29:33 +08:00
昔念
2edd1ba852 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-08 15:18:50 +08:00
昔念
8988e84a01 1
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-08 12:18:23 +08:00
昔念
09a295db34 ```
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
feat(utils): 添加基于权重的概率随机函数

添加了两个泛型函数用于实现权重随机选择功能:
- RandomByIntProbs: 核心函数,支持任意类型元素数组和int型概率数组
- RandomByProbs: 封装函数,兼容string型概率数组输入

函数特性:
- 支持泛型,可处理任意类型的数据
- 实现权重随机算法,通过前缀和匹配随机值
- 包含完整的参数校验和错误
2026-02-05 00:29:19 +08:00
xinian
cdb7cec4ad refactor: 移除冗余日志输出并优化日志处理
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
2026-02-02 18:32:41 +08:00
xinian
83a0c12409 refactor: 移除未使用的fmt导入 2026-01-29 12:10:47 +08:00
xinian
ee9c256286 编辑文件 min_heap.go 2026-01-29 02:12:21 +08:00
昔念
2744f72eb2 ```
refactor(socket): 使用fmt.Println替换Logger.Error处理panic

修复socket连接关闭和流量处理中的panic恢复机制,
使用fmt.Println直接打印错误信息替代原有的Logger组件。

---

refactor(timer): 移除ants协程池依赖并优化错误处理

移除timer模块中对ants协程池的依赖,改用原生goroutine,
添加panic恢复机制确保任务执行的稳定性。

---

feat(player): 移除CountPlayer函数

删除玩家服务中统计在线玩家数量的功能函数,
该功能不再需要由专门函数提供。

---

refactor(space): 移除协程池优化广播逻辑

移除空间服务中对ants协程池的依赖,简化广播逻辑,
将用户循环遍历操作改为同步执行以提升性能。
```
2026-01-29 01:55:13 +08:00
昔念
40b4d5955e ```
refactor(socket): 使用fmt.Println替换Logger.Error处理panic

修复socket连接关闭和流量处理中的panic恢复机制,
使用fmt.Println直接打印错误信息替代原有的Logger组件。

---

refactor(timer): 移除ants协程池依赖并优化错误处理

移除timer模块中对ants协程池的依赖,改用原生goroutine,
添加panic恢复机制确保任务执行的稳定性。

---

feat(player): 移除CountPlayer函数

删除玩家服务中统计在线玩家数量的功能函数,
该功能
2026-01-29 01:13:32 +08:00
昔念
e37d5a4d80 ```
refactor(config): 移除登录端口配置和相关功能

移除LoginPort配置项,注释掉相关代码逻辑

feat(admin): 添加版本查询接口

新增Version接口用于获取当前版本信息

refactor(login): 禁用注册服务

注释掉reg()函数调用,禁用登录相关的注册服务

refactor(deploy): 更新文件下载逻辑

修改自动化部署流程中的文件下载地址,使用新的配置域名

chore(utils): 添加最新逻辑文件获取工具

添加utils.GetLatestLogicFile方法用于获取最新的逻辑文件
```
2026-01-28 23:28:25 +08:00
1
1a95ce8c48 优化代码结构,移除未使用的依赖和冗余代码 2026-01-26 14:12:12 +00:00
昔念
fa928c9a48 ```
feat(common): 添加GlowFilter的Level字段

添加了GlowFilter结构体中的Level字段,用于表示等级信息,
对应JSON标签为"level,omitempty"

---

fix(utils): 修复concurrent_swiss_map中的panic处理

- 使用goroutine替代线程池来监听通道
- 添加panic恢复机制,当发生panic时记录错误日志
- 确保在异常情况下程序能够
2026-01-25 23:17:46 +08:00
1
53be2cb776 修改 2026-01-23 14:59:15 +00:00
1
97f70731b5 1 2026-01-21 14:51:10 +00:00
1
5ef922278a ``` feat(pet): 重构宠物繁殖系统,添加蛋孵化功能 2026-01-20 22:08:36 +00:00
昔念
026689f3ed ```
feat(cache): 添加复合键缓存操作支持

添加了基于 uint32+string 组合键的缓存操作方法,包括
GetByCompoundKey、SetByCompoundKey、DelByCompoundKey 和
ContainsByCompoundKey 方法,用于处理用户ID和会话ID的组合缓存场景

fix(vscode): 添加 cSpell 配置支持 struc 词汇

refactor(session): 移除过时的会话管理方法

移除了基于单一字符串键的会话管理方法,因为已迁移到使用
复合键的缓存操作方式
```
2026-01-19 18:51:56 +08:00
971abd29ab ```
feat(config): 添加服务器调试模式配置和塔配置重构

- 在ServerList结构体中添加IsDebug字段用于调试模式标识
- 修改GetServerInfoList函数增加isdebug参数支持
- 移除硬编码的rpcaddr本地地址配置
- 重构塔配置模型,将tower_500和tower_600合并到tower_110
2026-01-08 23:57:22 +08:00
4d0464c76b ```
feat(rpc): 设置默认RPC地址为本地回环

修复RPC客户端连接问题,将默认服务器地址设置为127.0.0.1以确保本地连接正常

refactor(qqwry): 优化IP地址查询功能

移除不必要的正则表达式依赖,重构IP地址查询逻辑,提高代码性能和可维护性

fix(server): 保存确定的端口到配置中

确保服务器端口在确定后正确保存到配置中,避免端口配置丢失
2026-01-08 05:15:10 +08:00
174562b895 ```
feat(config): 重构配置结构并添加服务器列表支持

- 重命名PortBL字段为GameOnlineID,改进命名语义
- 添加ServerList结构体用于管理服务器配置
- 移除七牛云配置相关字段
- 更新ID生成器使用GameOnlineID参数

fix(server): 调整服务器启动参数和VIP逻辑

- 将启动参数从-port改为-id,统一参数命名
- 更新服务器启动逻辑,基于GameOnlineID获取服务器信息
- 为VIP服务器启用调试模式
- 优化端口可用性检查逻辑

refactor(model): 统一模型基类结构

- 将各模型中的*cool.Model嵌入改为Base基类
- 移除soul.go
2026-01-08 03:30:18 +08:00
1bd6840e98 ```
feat(base): 添加IP数据库文件加载功能

- 移除qqwry.go中被注释的embed代码和init函数
- 在base_sys_log.go的init函数中实现IP数据库文件加载逻辑
- 添加从public/qqwry.ipdb文件加载IP数据库的功能
- 当IP数据库加载失败时panic处理
```
2026-01-04 01:31:11 +08:00
1
3cce8738cf ``feat(ip): 新增IP定位查询功能,支持通过API和网页解析获取归属地信息`` 2026-01-03 10:20:36 +00:00
c9bc4be244 ```
feat: 添加ItemInfo结构体并重构抽蛋和任务系统

- 在common/data/color.go中添加ItemInfo结构体用于表示发放物品的信息
- 在common/utils/tomap.go中添加RandomSlice泛型函数用于从切片中随机选取元素
- 重构action_egg.go中的EggGamePlay功能,实现抽蛋逻辑和物品发放
- 更新fight_boss.go中使用新的ItemInfo结构体替换旧的model.ItemInfo
- 修改user_talk.go中获取物品数量的逻辑
- 更新user_task.go中任务完成逻辑使用新的ItemInfo结构体
- 在egg.go中更新抽蛋结果结构体使用ItemInfo
- 更新战斗奖励结构体使用ItemInfo
- 在player.go中添加学习力道具处理逻辑
- 重构任务系统使用新的ItemInfo结构体
- 移除旧的model.ItemInfo定义
- 更新宠物奖励配置模型添加成长值等字段
- 实现GetEgg方法用于获取扭蛋奖励
- 修复宠物融合材料服务中的道具验证逻辑
```
2025-12-26 20:38:08 +08:00
937f97fe83 ```
feat(go): 升级 Go 版本至 1.20

统一将所有模块的 Go 版本从 1.18 或 1.19 升级到 1.20,以使用最新的语言特性和性能改进。

feat(service): 新增乱斗服务默认宠物生成逻辑

在 fight 模块中调用新的 MELEEService.Def() 方法来生成初始对战宠物,
并根据配置
2025-12-15 14:26:24 +08:00
269256a861 feat(common): 添加无锁并发工具包依赖
新增 lockfree-1.1.3 工具包到 go.work 文件中,为项目提供无锁并发数据结构支持,
提升高并发场景下的性能表现。
2025-12-05 00:36:28 +08:00
3e1887c7b8 ```
feat(broadcast): 添加全服广播功能并完善相关逻辑

新增 Broadcast 结构体及 Server 的 Broadcast 方法,用于实现全服广播消息,
并在 RPC 客户端中增加对应接口。同时在 fight 模块中添加聊天信息结构体和处理逻辑。

refactor(pet_skill): 优化宠物技能设置逻辑

修复宠物技能替换判断条件错误的问题,并调整相关逻辑顺序以提高代码可读性与健壮性。

feat(chat): 实现战斗内聊天功能

新增战斗中的聊天指令结构体 ChatInfo 和对应的控制器方法 FightChat,
支持玩家在战斗中发送聊天消息。

refactor(item_buy): 调整金币购买道具的扣费方式

将原直接比较金币数量改为调用
2025-11-25 16:36:55 +08:00
1
240c349b8a fix: 修复空提交问题 2025-11-23 23:38:03 +00:00
105c6f5a23 ```
fix(fight): 修复战斗逻辑中的一些潜在问题

- 在 `fight_leitai.go` 中增加玩家是否可以战斗的判断,避免非法挑战
- 注释掉部分冗余的日志打印与广播调用,并调整了擂台状态更新逻辑
- 修正 `effect_62.go` 中镇魂歌效果持续时间的处理方式,引入独立计数器 `duy`
- 优化随机精灵生成逻辑,确保 CatchTime 正确设置
- 增加对数据库操作错误的 panic 处理,提高代码健壮性
- 调整部分结构体指针传递,统一返回结构体指针以避免拷贝问题
- 移除未使用的导入包和调试日志,清理无用代码
```
2025-11-20 21:37:37 +08:00
9f89f9f259 ```
fix(binary): 修复零值处理导致的结构体打包异常

在 binaryFallback 的 Sizeof 和 Pack 方法中增加对 IsZero 值的判断,
避免空值参与序列化计算引发错误。同时调整了 struc 包相关逻辑以正确
处理空值情况,并打印调试日志辅助排查。

feat(fight): 完善玩家 PVP 对战胜负统计逻辑

修正 PET_MELEE 与 PET_King 模式下胜利归属判定问题,确保只有实际胜出
者才累计胜利次数。此外优化了战斗邀请流程,移除冗余状态控制字段并增强
邀请有效性校验,提升 PvP 流程稳定性。

refactor(pack): 简化数据组包逻辑并提高兼容性

重构 TomeeHeader.Pack 方法,去除反射相关的复杂类型判断,统一使用 struc
进行编码,强化对 nil、interface{} 及多级指针的支持。另外更新了客户端发包
记录日志内容以便追踪调试。

style(code): 规范代码格式并清理无用注释和字段

删除多个文件中的无效或过时注释,如 PlayerID 字段标记废弃、无意义的日志输出等;
同步更新结构体字段命名一致性(如 NonoColor),并对部分函数参数及条件表达式做
可读性优化,整体提升代码整洁度和维护性。
```
2025-11-20 15:19:13 +08:00
1
5dbff2411c 重构 2025-11-16 20:30:17 +00:00
1
88cd1affe4 修复战斗 2025-11-15 22:17:43 +00:00
6979b7018d ```
feat(space): 替换并发安全map实现以提升性能

将原来基于`utils.ConcurrentMap`的玩家存储结构替换为
`github.com/mhmtszr/concurrent-swiss-map`提供的`CsMap`,
以获得更高效的并发读写能力。

同时修改了相关API调用方式:
- `Set` 改为 `Store`
- `Remove` 改为 `Delete`
- `IterCb` 改为 `Range`,并支持提前终止迭代
- `Items()` 不再使用

此外,调整了部分业务逻辑中对玩家列表遍历的方式,
确保在发送网络包后及时跳出循环,避免不必要的操作。

新增战斗类型处理函数`PET_King`用于处理宠物王相关的
战斗请求,并修复了`PET_MELEE`方法中的逻辑问题。

更新了go.mod和go.sum引入新的依赖库。
```
2025-11-15 15:22:58 +08:00
004ce51c5e feat(fight): 调整效果叠加逻辑与精灵属性处理
- 将 `MaxStack` 方法重命名为 `CanStack`,并修改其逻辑为布尔值控制是否可叠加
- 更新多个效果文件中的注释和调用方式以适配新的叠加控制方法
- 修复精灵属性类型获取逻辑,增加缓存字段 `PType`
- 修改战斗回合处理流程,优化技能解析顺序和状态比较时机
- 调整状态效果初始化逻辑,确保状态类效果默认允许无限叠加
- 更正伤害类型缺失问题,在固定伤害
2025-11-14 06:14:49 +08:00
1
65758c799e fix(fight): 战斗修改 2025-11-11 05:54:24 +00:00
3bbdbf0af3 ```
feat(common): 添加IP私有地址和环回地址判断函数

在 qqwry.go 中新增 isPrivateIP 和 isLoopbackIP 函数,用于判断 IPv4/IPv6
是否为私有地址或环回地址,并在查询 IP 时优先返回局域网和私有地址标识。

fix(base): 修正系统日志查询字段

将 base_sys_log.go 中的查询字段从 "user".name 更正为 "user".username,
确保关联查询正确显示用户名。
```
2025-11-06 12:26:23 +08:00
699db8406b ```
feat(base): 添加邮箱注册码功能及用户注册接口

- 在 `sessionManager` 中新增邮件注册码缓存管理实例和相关方法
- 实现生成、保存、验证、删除邮件注册码的逻辑
- 新增 `/reg` 和 `/email` 接口用于用户注册和发送验证码
- 引入 `golang-lru` 依赖以支持限流缓存功能
- 调整包导入顺序,优化代码结构
```
2025-11-04 11:44:07 +08:00
1
ed4d961e32 feat(utils): 添加QQWry IP数据库解析功能及HTTP查询服务 2025-11-03 16:38:53 +00:00
1
f61e6cc937 refactor(utils): 移除QQWry IP数据库子模块依赖 2025-11-03 16:36:03 +00:00
1
abaa51af38 feat(log): 添加QQWry IP数据库支持并实现IP地址解析功能 2025-11-03 16:19:24 +00:00
1
35935549bd refactor(effect): 重构效果节点生命周期管理及属主控制逻辑
- 将Alive()方法改为Alive(bool)可设置方法,替代NotALive()
- 将GetOwner()改为Owner(bool)可设置方法
- 修复效果初始化时默认激活状态
- 优化效果叠层和取消逻辑
- 修正超时处理日志输出
2025-11-03 14:46:33 +00:00