3.8 KiB
3.8 KiB
爆炸射线武器测试说明
已实现的功能
1. 核心功能
- ✅ 继承自原版 Verb_ShootBeam 的所有功能
- ✅ 可配置的爆炸触发间隔
- ✅ 可配置的爆炸伤害、范围、类型
- ✅ 可配置的音效和特效
- ✅ 可配置的爆炸后效果(生成物品、气体等)
2. 配置选项
enableExplosion: 爆炸开关explosionShotInterval: 爆炸间隔(每x发触发一次)explosionRadius: 爆炸半径explosionDamageDef: 爆炸伤害类型explosionDamage: 爆炸伤害值explosionSound: 爆炸音效chanceToStartFire: 点燃概率postExplosionSpawnThingDef: 爆炸后生成物品
3. 示例武器
已创建三个示例武器:
- CLa-15"蓝爆"轻型: 每发都爆炸,火焰伤害
- CLa-16"蓝爆"重型: 每3发爆炸,炸弹伤害+燃料污渍
- CLa-17"蓝毒": 每2发爆炸,毒气伤害+毒气云
测试步骤
1. 编译测试
dotnet build "Source\WulaFallenEmpire\WulaFallenEmpire.csproj"
✅ 编译成功
2. 游戏内测试准备
- 启动RimWorld
- 启用开发者模式 (Options -> Dev mode)
- 加载包含此模组的存档或创建新游戏
- 按
~键打开开发者控制台
3. 生成测试武器
使用以下命令生成测试武器:
Thing.Spawn WULA_RW_Fractal_AR 1
Thing.Spawn WULA_LightExplosiveBeam 1
Thing.Spawn WULA_HeavyExplosiveBeam 1
Thing.Spawn WULA_ToxicExplosiveBeam 1
4. 功能验证清单
基础射线功能
- 射线正常发射和显示
- 射线宽度和颜色正确
- 射线伤害正常造成
- 音效和视觉效果正常
爆炸功能
- 爆炸按配置间隔触发
- 爆炸位置在射线命中点
- 爆炸半径和伤害正确
- 爆炸音效正常播放
- 爆炸视觉效果正常
特殊效果
- 点燃效果正常工作
- 爆炸后生成物品(燃料污渍等)
- 毒气云正常生成和扩散
- 护甲穿透计算正确
5. 性能测试
- 连续射击时帧率稳定
- 多个单位同时使用时无卡顿
- 内存使用正常,无内存泄漏
6. 平衡性测试
- 武器伤害与成本匹配
- 爆炸威力不会过于强大
- AI正确使用武器
- 友伤风险合理
测试场景
场景1:单目标测试
- 生成一个敌对的人形目标
- 装备测试武器
- 射击并观察:
- 射线效果
- 爆炸触发时机
- 伤害数值
- 特殊效果
场景2:群体目标测试
- 生成多个敌对目标(5-10个)
- 测试爆炸范围伤害
- 观察连锁效果(点燃、毒气扩散等)
场景3:建筑物测试
- 建造一些墙壁和家具
- 测试爆炸对建筑物的影响
- 验证射线穿透和爆炸破坏
场景4:友军测试
- 在友军附近使用武器
- 验证友伤机制
- 测试AI的使用策略
常见问题排查
问题1:爆炸不触发
- 检查
enableExplosion是否为 true - 检查
explosionShotInterval设置 - 确认射击确实命中目标
问题2:爆炸位置错误
- 检查射线的
InterpolatedPosition计算 - 确认目标位置在地图范围内
问题3:音效不播放
- 检查
explosionSound定义是否正确 - 确认音效文件存在
问题4:特效不显示
- 检查
explosionEffecter定义 - 确认特效资源文件存在
调试工具
开发者命令
# 生成特定武器
Thing.Spawn [武器DefName] [数量]
# 生成敌对目标
Pawn.Spawn Raider 5
# 治疗所有伤害
Heal.All
# 清除所有火焰
Fire.Clear
日志监控
监控游戏日志文件中的错误信息:
Player.log(Windows)- 搜索 "WulaFallenEmpire" 相关错误
报告问题
如果发现问题,请记录:
- 具体的复现步骤
- 预期行为 vs 实际行为
- 相关的日志错误信息
- 游戏版本和模组版本
- 其他加载的模组列表