Commit Graph

170 Commits

Author SHA1 Message Date
昔念
4dd05726af ```
fix(socket): 修复socket广播和退出逻辑中的返回值错误

- 修正了Broadcast方法中错误的返回值true为false
- 修正了QuitSelf方法中player遍历的返回值从true改为false
- 在玩家退出时添加了睡眠模式错误码通知消息

feat(fight): 统一技能使用方法命名并修复战斗伤害计算逻辑

- 将所有技能使用方法名从Skill_Useed重命名为SkillUseed以保持一致性
2026-01-25 17:36:40 +08:00
昔念
32f57732fe ```
refactor(common/cool/coolconfig): 修改RPC配置字段类型

将RPC字段从uint16类型更改为string类型的Address字段,
以支持更灵活的地址配置。同时更新了配置初始化逻辑,
从server.rpc改为server.address作为配置键。
```
2026-01-25 03:40:29 +08:00
1
9199768c37 ```feat(fight): 新增特性实现及逻辑优化
1. 实现NewSel114免疫瞬杀特性逻辑
2. 完善NewSel113异常状态伤害锁定逻辑
3. 修复Effect13技能效果添加错误
4. 优化ParasiticSeed状态切换处理
5. 移除无用TODO注释和废弃代码
2026-01-23 20:18:58 +00:00
昔念
95055fe955 ```
fix(logic): 移除main.go中的多余空行

移除PprofWeb函数后的多余空行,保持代码整洁性

fix(fight): 修正effect_13.go中的效果应用对象

将效果应用从对方上下文改为正确的目标对象,修复技能效果逻辑

feat(middleware): 增强server.go中的自动化部署功能

- 添加下载链接格式校验,确保包含http/https协议
- 重构部署脚本,优化screen会话终止逻辑
- 改进下载过程,添加超时和重试机制
- 增强错误处理和日志输出

refactor(config): 更新server.go中的数据库查询方法

- 修改GetPort方法返回类型为gdb.List以提高兼容性
- 使用统一的DBM方法替代不同的数据库查询方式
```
2026-01-23 15:38:23 +08:00
1
7d8497250d 1 2026-01-22 16:01:52 +00:00
1
0a0e1bf8c0 1 2026-01-21 20:46:05 +00:00
昔念
562bf380eb 根据提供的code differences信息,由于没有具体的代码变更内容,我将生成一个通用的commit message模板:
```
docs(changelog): 更新版本更新日志

- 添加新功能说明
- 修复已知问题记录
- 更新相关文档内容
```
2026-01-20 02:25:02 +08:00
b964b14f1d ```
refactor(fight): 统一DamageLock方法命名规范并修改方法签名

- 将DamageLock_ex方法重命名为DamageLockEx,统一命名规范
- 修改NewSeIdx_53、NewSeIdx_54、NewSeIdx_71的TurnEnd方法为TurnStart
- 为TurnStart方法添加fattack和sattack参数
- 修复NewSeIdx_5中的条件判断逻辑,将!ok改为ok
- 修正NewSeIdx_5中的Ctx().SkillEntity.Type为Ctx().Type
- 移除EffectNode.Alive方法中的调试打印语句
- 添加必要的action包导入
```
2026-01-06 01:34:26 +08:00
b851ab9fdb ```
refactor(fight): 统一Action方法命名规范

将Action_start和Action_start_ex方法重命名为ActionStart和ActionStartEx,
使其符合Go语言驼峰命名规范。同时更新接口定义和所有相关调用处的方法名。

- 重命名Action_start为ActionStart
- 重命名Action_start_ex为ActionStartEx
- 更新interface.go中的方法定义
- 更新所有实现类中的方法签名
- 更新fightc.go中的方法
2026-01-05 23:00:42 +08:00
85f15a72aa ```
refactor(fight): 统一战斗系统方法命名规范并优化逻辑

- 将所有下划线命名的方法统一为驼峰命名,如 Turn_Start 改为 TurnStart,
  Action_end_ex 改为 ActionEndEx,Turn_End 改为 TurnEnd
- 新增 IsOwner() 方法用于判断当前精灵是否为场上的当前宠物
- 将硬编码的 CatchTime 比较逻辑替换为 IsOwner() 方法调用
- 在 NewSel408 中实现消除对手能力强化效果的具体逻辑
- 修复 effect_74 中衰弱状态的数值引用,使用枚举类型代替硬编码
- 优化 input/fight.go 中的技能选择逻辑,使用伤害值比较代替权重比较
- 移除 shiny.go 中未使用的 utils 导入和相关逻辑
- 修正 NewSel77 从 Turn_End 重命名为 TurnStart 的方法
- 在 input/fight.go 中添加 Damage 方法的注释说明
```
2026-01-05 22:54:41 +08:00
9c3fadbd9c ```
feat(fight): 更新战斗效果计算逻辑并修复宠物信息返回

- 在PetBargeListInfo中添加EnCntCnt字段并修复返回值
- 将effect_195和effect_566中的SkillHit方法重命名为CalculatePre
- 在effect_566中添加can字段
- 更新fightc.go中的技能处理流程,将SkillHit调用改为CalculatePre
- 在接口定义中将Calculate_Pre重命名为CalculatePre
2026-01-05 00:54:52 +08:00
aafdb6238f ```
fix(fight/effect): 修复技能命中时间判断逻辑

- 修正了Effect72中技能命中时间的判断条件
- 将e.Ctx().SkillEntity.AttackTime改为e.Ctx().AttackTime
- 保持代码逻辑的一致性和正确性
```
2026-01-04 22:11:56 +08:00
142ef11a99 ```
refactor(fight): 统一战斗系统函数命名规范

统一了boss技能和效果系统中的函数命名规范,将下划线命名方式
改为驼峰命名方式,提高代码一致性和可读性。

函数名变更包括:
- Prop_Befer -> PropBefer
- Damage_DIV_ex -> DamageDivEx
- Compare_Pre -> ComparePre
- Skill_Hit_ex -> SkillHit_ex
- Damage_SUB_ex -> DamageSubEx
- Skill_Hit -> SkillHit
- DamageLock_ex -> DamageLock_ex

同时更新了相关注释中的函数名引用,
2026-01-04 22:10:34 +08:00
0f524aab85 ```
fix(fight): 修复战斗命中判断逻辑并移除冗余命中检查

- 修复 NewSel32 中的命中判断,将 Side 字段改为 Hit 字段
- 移除 EffectAttackMiss 中的冗余命中判断逻辑
- 移除 EffectDefeatTrigger 中的重复命中检查
- 移除 EffectPhysicalAttackAddStatus 中的冗余命中判断
- 移除多个效果文件中的重复命中检查逻辑
- 修正 Effect136 中的命中处理逻辑,确保在技能命中时正确触发
- 移除其他多个效果中的重复命中检查代码
```
2026-01-04 21:41:10 +08:00
1
7071703d80 ``` fix(fight): 添加Effect60技能触发前的空指针和攻击时间检查 2026-01-03 02:04:55 +00:00
a62b94446a ```
feat(pet): 添加精灵进化功能并优化融合系统

- 新增PetELV方法实现精灵进化功能,支持分支进化选择
- 添加进化相关的数据结构定义
- 实现进化材料检查和扣除逻辑
- 优化宠物融合失败处理机制

fix(fight): 修复战斗系统和效果计算问题

- 修复NewSeIdx_11和effect_60中的伤害计算逻辑
- 修复战斗状态判断条件,避免非PVP模式下的错误处理
- 优化战斗回合处理流程,修复效果缓存清空时机
- 修复effect_69
2026-01-03 01:35:32 +08:00
699231ee38 ```
feat(vscode): 添加调试参数配置

为launch.json添加-debug=1参数,便于调试模式启动

docs(README): 补充zellij终端复用工具使用说明

添加x-cmd安装和zellij会话管理相关命令示例

refactor(config): 注释掉GamePort配置项

暂时注释GamePort配置项以解决配置冲突问题

refactor(xmlres): 移除未使用的gf框架依赖并注释文件监控逻辑

移除未使用的gctx、gfile、gfsnotify、glog导入包
注释init函数中的文件监控逻辑,避免不必要的文件监听
```
2026-01-02 04:11:37 +08:00
fd4c494530 ```
refactor(fight): 重构战斗状态效果系统

- 重命名BaseStatus.Switch方法为SwitchOut以提高语义清晰度
- 修改ParasiticSeed结构体继承关系,从BaseStatus改为EffectNode
- 添加Status字段用于存储状态类型枚举
- 修复战斗循环中血量计算逻辑,使用Min替代Max确保血量不超过上限
- 完善PetSwitch逻辑,确保我方单位下场时状态正确失效

fix(fight): 修复战斗播报和切换逻辑

- 在战斗回合信息中添加技能
2025-12-26 03:51:24 +08:00
143e02de77 ```
feat(fight): 实现精灵切换时的出战和下场触发机制

- 新增SwitchOut接口方法用于精灵下场时触发
- 重命名Switch为SwitchIn用于精灵出战时触发
- 在战斗流程中添加精灵下场时的广播调用
- 修改EffectDefeatTrigger等效果的切换逻辑

refactor(effects): 优化战斗效果的切换处理逻辑

- 修改Effect147和Effect148的触发条件判断逻辑
-
2025-12-25 20:49:54 +08:00
ff199e339f 1 2025-12-24 19:17:39 +08:00
1
839d02b17f "fix(logic): 修复宠物技能学习校验逻辑并移除冗余战斗效果字段" 2025-12-23 13:53:34 +00:00
90fdb49b92 ```
feat(logic): 新增减少最大生命值效果并优化属性同步逻辑

新增了减少最大生命值的效果实现(opTypeMaxHP),并在 EffectPropSyncReverse
结构体中增加了对目标宠物属性的处理逻辑。同时重构了属性同步与反转相关代码,
改进了效果激活
2025-12-19 21:12:45 +08:00
96b5dbb425 feat(fight): 重构属性同步与反转效果逻辑
统一处理效果45、51、55、56的属性同步与反转逻辑,优化代码结构并提高可维护性。新增通用效果结构体 `EffectPropSyncReverse` 和操作类型定义,集中管理不同属性操作行为。

fix(controller): 修复玩家离开地图逻辑错误

修正 `FRESH_LEAVE_FIGHT_LEVEL` 接口中 defer 调用为进入地图,并发送角色信息包给客户端以确保状态一致。

feat(effect): 新增天敌机制核心逻辑占位

在 `NewSel14` 效果中添加 `Turn_Start` 方法,实现若遇到天敌则害怕多回合的核心逻辑框架。

chore(config): 更新Boss配置怪物ID及血量

调整Boss ID为2的怪物配置,替换原有Monster ID并设置血量为10,用于测试或平衡调整。

refactor(fight): 优化战斗循环和精灵切换逻辑

整理战斗主循环中的血量赋值语句格式,调整精灵切换时变量顺序以避免潜在问题,并修复死亡标记逻辑。

refactor(node): 恢复BoolisFalse方法实现

取消注释 `BoolisFalse` 方法内容,恢复其正常功能以便其他模块正确判断布尔条件。

style(logic): 格式化代码空行和缩进

清理多余空行,对齐导入语句与其他代码块格式,增强整体代码可读性。

debug(effect): 增加烧伤伤害调试打印

在持续伤害效果中加入println语句,输出实际造成的真实伤害数值便于排查问题。
2025-12-18 23:57:17 +08:00
1
fb835a017f 1 2025-12-18 13:10:40 +00:00
1
002c855e47 feat(fight): 新增试炼之塔和勇者之塔地图切换功能,优化战斗效果处理逻辑 2025-12-18 10:57:59 +00:00
59c4ff6b93 fix(fight): 实现无限PP值效果并修复Effect46伤害逻辑
- 在NewSeIdx_10中添加Turn_Start方法以实现每回合恢复PP值
- 修复Effect46中伤害计算与存活判断的顺序问题
- 调整部分代码结构,移除无用math包引用及注释内容
2025-12-17 01:44:54 +08:00
d2467363e8 feat(effect): 新增回合结束计数逻辑并调整伤害处理流程
在 Effect46 中新增 `Turn_End` 方法用于回合结束时增加计数器,并移除了原有在
`Damage_DIV_ex` 方法中重复的自增操作,以确保逻辑清晰且统一。

---

fix(monster): 调整异色宠物生成规则及捕获概率

测试服环境下强制开启异色宠物生成,并将原捕获概率由 30% 调整为 1%,提升
稀有精灵
2025-12-15 04:02:03 +08:00
4b604669e4 feat(pet): 更新精灵闪光信息结构以支持更丰富的光晕效果
将 Shiny 字段从单一 uint32 值扩展为 GlowFilter 结构体数组及相关长度字段,
用于表示更复杂的闪光视觉效果。同时调整相关序列化标签及保留字段布局。

- 修改 PetInfo、PetShortInfo、ReadyFightPetInfo 等结构体中的 Shiny 表示方式
- 添加 ShinyLen 和 ShinyInfo 字段,并配置 json 与 struc 序列化选项
- 调整部分结构体中 Reserved 字段为数组形式以优化空间布局
- 更新 copier.Copy 为 copier.CopyWithOption 并启用深拷贝逻辑
- 微调经验升级顺序以确保数据一致性
- 修正地图BOSS信息判断条件并清理无用导入和注释代码
2025-12-14 05:34:39 +08:00
1
75bcbb89c5 ```fix(fight): 修复效果104状态触发逻辑,添加can标志控制首次触发 2025-12-12 13:49:50 +00:00
1
32c61f37bd ```feat(fight): 新增无视双防效果566实现,优化战斗过程中宠物信息保存逻辑 2025-12-11 20:20:39 +00:00
1
4c69e578dd ``` feat(fight): 新增多种技能效果实现(110/125/128/131/145/151),优化状态判断逻辑并重构随机数生成方式 2025-12-11 20:05:00 +00:00
1
5ca43fe21f ``` refactor(fight): 重构状态效果初始化逻辑,统一使用InitEffect方法并内置随机持续回合 2025-12-11 19:12:54 +00:00
1
cbf9b1039f Merge branch 'main' of https://github.com/72wo/blazing 2025-12-11 14:02:45 +00:00
1
29ddbdd7e6 ``` feat(fight): 新增状态类技能效果104和109,重构特效类型枚举并优化技能效果实现 2025-12-11 13:58:24 +00:00
7b73a59f31 fix(logic/service/fight/effect): 修复技能实体为空时的空指针异常
在 effect_32.go 的 Action_start 方法中添加了对 SkillEntity 是否为 nil 的检查,
避免在技能实体不存在的情况下访问其属性导致程序崩溃。
2025-12-11 13:39:19 +08:00
294cb2e3fd feat(login): 重构登录逻辑并迁移每日重置功能到 Personself 方法
将原本在 Controller.Login 中处理的每日重置逻辑(如电池、任务等)迁移到
service.Info.Personself 方法中,并移除对 gtime.Now().Time 的旧引用。同时更新了
相关的时间判断函数 IsToday,使其支持 *gtime.Time 类型。

此外,清理无用导入包,优化日志打印方式,并修复部分结构体字段定义与使用问题。
2025-12-07 19:23:44 +08:00
91690658b5 feat(boss-effect): 统一处理参数类型转换,提升数值比较与运算准确性
对多个 boss 技能效果文件中的参数调用进行了统一调整,将原先直接使用 `e.Args()[index]` 的地方,
改为通过 `e.Args()[index].IntPart()` 或 `e.Args()[index]` 进行类型转换后再参与逻辑判断或数值计算。
同时修正了部分 HP 比较方式,由整型比较转为 decimal
2025-12-06 15:11:42 +08:00
43813932c9 ```
build(go): 升级 Go 版本至 1.20 并更新依赖包

将项目 Go 版本从 1.18 升级至 1.20,并同步更新了相关模块依赖。
同时替换 decimal 库为 alpacadecimal,以提升数值计算精度和性能。

- 升级 Go 模块版本
- 替换 github.com/govalues/decimal 为 github.com/alpacahq/alpacadecimal
- 更新多个间接依赖包版本
- 调整相关代码中 decimal
2025-12-05 00:24:02 +08:00
1
022dc12461 refactor(decimal): 替换shopspring/decimal为govalues/decimal库 2025-12-04 14:28:42 +00:00
aad1e2f44c feat(fight): 添加战斗前状态检查与经验获取限制判断
- 在挑战BOSS和野外怪物战斗前,增加 CanFight 状态检查,防止非法战斗
- 修复战斗胜利后经验与物品发放逻辑,增加 CanGetExp 判断避免重复获取
- 优化战斗中精灵切换逻辑与相关伤害效果处理,确保死亡标记正确设置
- 修正战斗轮次中被动切换行为及技能执行顺序问题
- 移除无用的管理员会话控制器和宠物融合模型代码
- 调整战斗输入结构体中的 Switch 类型为 Map 以提高查找效率
- 修复战斗中精灵存活判定条件,
2025-12-01 23:31:48 +08:00
1
e4fd9c2e38 fix(fight): 修正空变更导致的潜在逻辑问题 2025-11-30 10:21:57 +00:00
11f6817d62 feat(fight): 优化战斗逻辑与精灵切换流程
- 在多个战斗控制器方法中添加 defer 调用,确保战斗操作正确延迟执行
- 修改 ChangePet 方法返回值类型,增强接口一致性
- 修复战斗准备阶段逻辑,重构战斗开始信息构建过程
- 移除冗余广播调用,调整 PVE 战斗初始化流程
- 更新 README 中的 pprof 命令地址并完善项目介绍部分

fix(effect): 修复效果叠加逻辑与ID解析问题

- 效果叠加时默认增加一层,而非直接相加参数
- 修正 EffectIDCombiner 类型、CatchTime 的掩码偏移计算错误
- 添加重复效果日志输出,便于调试追踪

feat(boss): 完善BOSS特性实现逻辑

- 修正 NewSel17 特性
2025-11-29 19:26:56 +08:00
1
279f5d9d39 fix(fight): 修正空变更导致的潜在逻辑问题 2025-11-27 11:11:13 +00:00
1
aa87e1c55a fix(fight): 修正空变更导致的潜在逻辑问题 2025-11-27 10:58:30 +00:00
5a9c37e852 feat(effect): 实现多个新技能效果逻辑
- 新增 NewSel12 效果:实现特定条件下增加属性的功能
- 新增 NewSel36 效果:实现按回合轮换属性顺序出招的去血逻辑
- 修改 NewSel37 效果:限制仅对红伤生效
- 修改 NewSel39 和 NewSel40 效果:方法名从 Damage_Floor 改为 Damage_DIV_ex
- 新增 NewSel44 效果:实现重生逻辑,恢复
2025-11-26 23:09:20 +08:00
f15f08189f feat(effect): 实现多个新技能效果逻辑
新增了多个宠物战斗中的技能效果实现,包括伤害反弹、必杀技增强、先手权调整、
回复机制以及特殊条件触发逻辑。同时修复了部分技能判断条件与执行顺序问题,
优化了 AI 在 NPC 战斗中的行为表现,并完善了相关配置文件内容。
2025-11-26 18:39:23 +08:00
0ea1a24419 feat(fight): 实现 boss 战斗中精灵特性的支持与多个新魂印效果
- 在 `fight_boss.go` 中为 Boss 的每只宠物增加了 CatchTime 字段以区分不同精灵,
  并修复了技能特效参数解析的问题。
- 新增多个魂印(NewSeIdx)实现,包括:
  * 无限 PP、伤害倍率控制、命中屏蔽、属性克制、暴击率调整等。
- 调整了部分已有 NewSeIdx 文件中的方法调用方式,统一使用 `ID().GetCatchTime()`
  来判断精灵是否在场。
- 修改了 EffectIDCombiner 的字段访问方式,改为通过 Get/Set 方法操作。
- 优化战斗逻辑,在 NPC 战斗中加入 AI 自动出招机制。
2025-11-26 15:25:10 +08:00
6455455992 feat(fight): 增加Boss精灵特效索引解析与空列表校验
在挑战Boss逻辑中,新增对Boss怪物NewSeIdxs字段的解析,将其分割并转换为EffectInfo添加到宠物信息中。同时增加对PetList为空时的错误处理,返回精灵不存在错误码。

refactor(effect): 调整技能属性判断方式及方法命名

将部分战斗效果和技能实体中的Type()方法重命名为GetType(),统一接口调用方式,并修改属性类型比较逻辑,直接通过整型值进行判断,提升代码一致性与可维护性。

fix(xml): 补充地图Boss配置项Id字段

更新地图配置文件中Boss节点缺失的Id属性,确保Boss数据结构完整性和唯一标识正确加载。

chore(input): 增加技能实体非空检查防止panic

在输入处理模块中加入对SelectSkillAction.SkillEntity的空指针检查,避免因未初始化技能导致运行时异常。
2025-11-25 18:25:52 +08:00
1
240c349b8a fix: 修复空提交问题 2025-11-23 23:38:03 +00:00
1dbd4169e9 feat(xmlres): 更新 BOSS 配置结构并优化字段注释
新增多个 BOSS 相关配置字段,包括任务关联、奖励机制与挑战限制等,
增强 BOSS 精灵的可配置性与业务表达能力。同时完善字段注释以对齐 XML
实际使用情况,并保留原有部分字段用于兼容历史配置。

fix(fight): 调整战斗胜利回调执行顺序以确保数据一致性

将战斗结束回调移至广播之前执行,保证在发送战斗结果前已完成所有状态
更新,尤其是针对胜利宠物的信息同步
2025-11-22 22:57:32 +08:00