|
|
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 |
|
|
|
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 |
|
|
|
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 |
|
|
|
5dbff2411c
|
重构
|
2025-11-16 20:30:17 +00:00 |
|
|
|
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 |
|
|
|
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 |
|
|
|
ed4d961e32
|
feat(utils): 添加QQWry IP数据库解析功能及HTTP查询服务
|
2025-11-03 16:38:53 +00:00 |
|
|
|
f61e6cc937
|
refactor(utils): 移除QQWry IP数据库子模块依赖
|
2025-11-03 16:36:03 +00:00 |
|
|
|
abaa51af38
|
feat(log): 添加QQWry IP数据库支持并实现IP地址解析功能
|
2025-11-03 16:19:24 +00:00 |
|
|
|
35935549bd
|
refactor(effect): 重构效果节点生命周期管理及属主控制逻辑
- 将Alive()方法改为Alive(bool)可设置方法,替代NotALive()
- 将GetOwner()改为Owner(bool)可设置方法
- 修复效果初始化时默认激活状态
- 优化效果叠层和取消逻辑
- 修正超时处理日志输出
|
2025-11-03 14:46:33 +00:00 |
|
|
|
ea4ca98e49
|
fix(socket): 修复连接处理逻辑并优化数据解码流程
- 修复 `OnOpen` 中网络类型判断位置不正确的问题,提前过滤非 TCP 连接
- 移除 `OnTraffic` 中重复的网络类型判断
- 优化 `TomeeSocketCodec` 的解码逻辑,使用 `InboundBuffered` 和 `Next` 提高效率
- 调整 `ByteArray` 创建方法参数,避免可变参数带来的性能损耗
- 在 `ClientData` 中将 `IsCrossDomain` 改为 `sync.Once` 避免重复处理
- 使用 `AsyncWrite` 替代 `Write` 提升写入异步性
- 修复连接关闭流程,使用
|
2025-11-01 14:31:19 +08:00 |
|
|
|
e75ecd413d
|
feat(fight): 重构战斗系统技能逻辑与精灵切换功能
- 优化技能执行流程,统一使用 SelectSkillAction 作为技能载体
- 移除冗余的技能 ID 字段,简化数据结构
- 调整命中判断和技能效果触发机制,提升准确性
- 修改精灵切换与捕获相关方法参数格式
- 更新技能列表结构为动态数组以支持灵活长度
- 完善睡眠等异常状态的处理逻辑
- 修复战斗中技能 PP 扣减及副本还原问题
- 清理无用代码,如多余的 FindWithIndex 函数定义
- 强化验证码缓存键命名规则,增强安全性
|
2025-10-26 20:56:03 +08:00 |
|
|
|
db3a21dd91
|
feat(login): 引入基于 IP 的限流中间件
新增 github.com/xiaoqidun/limit 依赖,替换原有的全局速率限制器,
实现针对客户端 IP 的细粒度限流控制。在服务启动时初始化限流器,
并在程序退出前确保后台任务正确停止。同时更新 go.work 和 login/go.sum
文件以包含新的依赖项。此外,在 logic/main.go 中添加了主玩家数据
保存逻辑以确保服务关闭时数据持久化。
|
2025-10-24 23:14:36 +08:00 |
|
|
|
83fb06a229
|
feat(utils): 重构 OrderedMap 为 OrderMap,支持排序和非阻塞遍历
- 将原有的 `OrderedMap` 替换为 `OrderMap`,基于 `map` 和 `slice` 实现,提升性能并简化逻辑
- 支持自定义 key 排序规则,若未提供则按插入顺序维护
- 提供 `Set`、`Get`、`Delete`、`Keys`、`Values` 等基本操作,均并发安全
- 引入非阻塞遍历机制(`Iter`、`Iter
|
2025-10-22 21:30:05 +08:00 |
|
|
|
ae88790ed3
|
修改range,支持技能效果
Updated comments for clarity and consistency in the OrderedMap implementation, enhancing the understanding of the data structure and its methods.
|
2025-10-22 00:57:25 +08:00 |
|
|
|
341fc4120b
|
``refactor(websocket): 移除未使用的os包导入并硬编码debugTrace为true``
|
2025-10-16 15:26:12 +00:00 |
|
|
|
e84d55aec0
|
```
feat(player): 优化玩家连接与消息发送逻辑
- 为 `Conn` 结构体新增 `Close()` 方法,并在多处替换原有的 `GetConn().Close()` 调用,
统一通过 `MainConn` 操作以提高代码一致性。
- 在 `SendPack` 和 `GetPlayer` 等方法中增加互斥锁保护,确保对 `MainConn` 的访问是线程安全的。
- 移除冗余的 `GetConn()` 方法,直接使用 `MainConn` 提升性能并简化结构。
refactor(rpc): 临时将 RPC 客户端地址硬编码为本地地址
- 将 rpcaddr 临时设置为 "127.0.0.1",便于调试和开发环境测试。
refactor(handler): 扩展 JSON-RPC 方法过滤条件
- 增加了对 "Kick" 和 "RegisterLogic" 方法的排除,防止其被注册到 RPC 处理器中。
refactor(fight): 精简战斗服务中的判断逻辑
- 简化 `IsFirst` 函数返回表达式。
- 移除了多余的 defer 语句,提前设置 `closefight` 标志位。
refactor(pet): 改进宠物经验添加机制
- `AddPetExp` 方法新增布尔参数 `bro` 控制是否广播更新。
- 修改调用点以适配新参数,修复潜在的数据同步问题。
- 初始化宠物时禁止触发经验变更广播。
chore(build): 删除旧版二进制文件 logic1
- 清理无用的编译产物,避免混淆项目结构。
```
|
2025-10-14 01:26:59 +08:00 |
|
|
|
b258a81bb8
|
1
|
2025-10-11 01:01:36 +08:00 |
|
|
|
6b06c580ff
|
修改底层map
|
2025-10-10 04:26:07 +00:00 |
|
|
|
ed01ddedc3
|
踢人逻辑修改,先保存数据
|
2025-10-03 20:20:17 +08:00 |
|
|
|
2d187e4474
|
refactor(fight/effect): 实现Effect9的BeforeSkill逻辑,新增Min泛型函数并优化效果叠加处理
|
2025-09-24 22:20:59 +00:00 |
|
|
|
805fe8ec8d
|
fix(fight): 修复技能效果获取逻辑并调整伤害计算方式
-
|
2025-09-24 19:46:42 +08:00 |
|
|
|
9b078d7820
|
fix(fight): 修复技能效果添加逻辑并优化效果管理
- 修改 `AddEffect` 方法,使用 `EffectID` 包装技能效果,并避免重复添加
- 将 `Effects` 类型从 `[]Effect` 改为 `*utils.OrderedMap[int, Effect]` 以提升查找和管理效率
- 移除 `Effect` 接口中的 `ID()` 方法,改由 `EffectID` 结构体维护
- 增加 `GetSkillEffect` 和 `GetDamageEffect` 方法返回带 ID 的效果结构
- 更新 `CancelTurn` 和 `Exec` 方法以适配新的数据结构
- 初始化 `Effects` 为 `OrderedMap` 实例,确保容器正确创建
|
2025-09-24 19:22:46 +08:00 |
|
|
|
a05219c6ae
|
refactor(pet): 重构宠物经验计算逻辑,引入种族值参数并优化进化条件判断
|
2025-09-22 15:47:07 +00:00 |
|
|
|
c0cda6fa58
|
refactor(global): 将DefaultGenerator移至global包并更新引用,移除utils包中的默认生成器
|
2025-09-22 14:48:55 +00:00 |
|
|
|
55ca29a22e
|
refactor(utils): 移除第三方雪花算法依赖,实现自定义Snowflake生成器并修复cronex递归调用问题
|
2025-09-22 14:44:02 +00:00 |
|
|
|
6fb5a9d09d
|
refactor(global): 将Cron.Start()改为go Cron.Run()并移除cronex.Start()方法
|
2025-09-22 06:17:39 +00:00 |
|
|
|
9a3ffe93d8
|
feat(utils): 添加cronex高性能cron库支持,包含Apache 2.0许可证和完整测试用例
|
2025-09-22 06:15:39 +00:00 |
|
|
|
6f03c2453d
|
refactor(utils): 移除cronex子模块引用
|
2025-09-22 06:14:41 +00:00 |
|
|
|
b662457347
|
refactor(utils): 更新cronex子模块引用
|
2025-09-22 06:10:11 +00:00 |
|
|
|
dc46cd5b66
|
feat(global): 添加时间轮支持并优化玩家登录逻辑,移除冗余地图ID检查
|
2025-09-22 06:07:58 +00:00 |
|
|
|
a0441700e5
|
refactor(fight): 重构暴击判断逻辑并优化伤害计算,添加泛型Max函数到utils包
|
2025-09-10 08:05:45 +00:00 |
|
|
|
a09bc7884c
|
feat(logic): 添加玩家改名功能并优化战斗逻辑
- 在 CreatePlayer.go 中添加 ChangePlayerName 函数,实现玩家改名功能
- 更新 FightC 类的 battleLoop 方法,增加平局条件和处理逻辑
- 优化 enterturn 方法,统一处理战斗结束逻辑
- 移除 global.go 中的 log 包引用,改为使用 glog
- 更新 go-sensitive-word 依赖版本
|
2025-09-10 00:41:09 +08:00 |
|
|
|
685069fded
|
feat(cool): 添加敏感词过滤功能
- 引入 go-sensitive-word 敏感词过滤库
- 在全局初始化中加载敏感词库并配置过滤器
- 在创建玩家时应用敏感词过滤,替换不合适的昵称内容
|
2025-09-09 01:11:10 +08:00 |
|
|
|
b3f02b82c1
|
fix(common): 修复 Field_Pack 方法的逻辑
- 在 Field_Pack 方法中增加了对剩余空间的处理,确保在数据长度不足时能够正确填充
- 优化了数据拷贝的逻辑,提高了代码的效率
- 在 SocketHandler_Tomee 中启用了接收封包的日志打印,便于调试和监控
|
2025-09-08 01:48:47 +08:00 |
|
|
|
75e428f62e
|
refactor(blazing): 重构任务系统并优化相关功能
- 重构了任务系统的数据结构和执行逻辑
- 优化了地图加载和怪物刷新机制
- 改进了宠物系统的基础架构
- 调整了玩家信息和背包的处理方式
- 统一了数据访问层的接口和实现
|
2025-08-30 21:59:52 +08:00 |
|
|
|
3b6e69f1f4
|
refactor(fight): 重构随机数生成器模块并优化战斗技能PP管理
|
2025-08-25 16:44:50 +00:00 |
|
|
|
10eed9418c
|
refactor(common): 重构 Conn 实体并优化地图进入逻辑
- 优化 Conn 实体的 SendPack 方法,提高代码复用性
- 添加 goja 模块到 go.work 文件
- 重构地图进入逻辑,增加玩家广播和刷怪功能
- 调整 OutInfo 结构中的 Vip 和 Viped 字段类型
- 简化 MonsterRefresh 结构体定义
|
2025-08-18 00:38:14 +08:00 |
|