收起左侧

[求助] 大佬们我问个事啊

[复制链接]
Weiluw0发表于 2025-11-7 18:46:12
现在我新弄了一个建筑,效果是可以让拓荒者过去赚升级经验(类似于原住民的社区广场),现在我需要给这个建筑加一个功能:把在这个建筑采集的拓荒者转化为其他单位。  

请问,这个效果怎么实现?
こはね发表于 2025-11-10 08:03:53
无法实现
Weiluw0发表于 2025-11-10 23:22:32
那这个就跳过了,接着是下一个问题。

我给我的mod单位试着追加了一些技能,已经成功给这个单位追加了狙击的技能。但是给它追加招募守护者的技能的时候出了毛病。
我试着按照圣殿教程把动画,tactics和abilities都修改了一遍。游戏当中我的新单位也有这个招募守护者的技能。但是我试着发动技能的时候新单位无动于衷。

请问,这是什么毛病?

(附上相关的代码文件)

settlerarmed.mods.tactics

3.58 KB, 下载积分: 钱币 -2 , 经验 3

abilitymods.xml

354 Bytes, 下载积分: 钱币 -2 , 经验 3

powermods.xml

628 Bytes, 下载积分: 钱币 -2 , 经验 3

protomods.xml

9.15 KB, 下载积分: 钱币 -2 , 经验 3

villager_armed.xml

8.18 KB, 下载积分: 钱币 -2 , 经验 3

Weiluw0发表于 2025-11-12 20:10:01
大佬们,我又拿其他的单位试了一下,发现好像是转换守护者这个技能本身出了问题,没办法正常调用动画了。这是怎么回事?
こはね发表于 2025-11-12 22:50:36
屏幕截图 2025-11-12 224912.jpg

实测一切正常,没有任何问题

检查释放对象是否为与宝藏关联的宝藏守护者


  • Weiluw0 : 啊,我的测试使用的都是没跟任何宝藏关联的守护者
Weiluw0发表于 2025-11-15 03:01:33
哎我去怎么决定版mod这么难啊?protounitcommand都能失效?

protomods和protounitcommandmods都是没什么问题的,按理说受影响的单位应该可以执行一个protounitcommand变成mod新增单位的,但是为什么就是改不对?
Weiluw0发表于 2025-11-15 05:37:54
预期目标:被招降的宝藏守护者可以通过特定命令一键变身成另外一个兵种

实施步骤:
1. protomods.xml,原兵种追加了transformcommand词条以确认变身命令,相应的command词条也已追加
2. protounitcommandmods.xml,增加了变身命令
3. unittransform.xml,增加变身
4. 相应的动画和声音都已经做好了

实测结果:命令按钮始终不显示。

所以这是什么毛病?
  • こはね : 盲猜缺少<Flag>ShowTactics</Flag>
  • Weiluw0 回复 こはね : 试过了,不行(我的测试对象是一个宝藏守护者,目的是通过这个指令把这个宝藏守护者变成另一个单位,是不是这里的问题?)
  • Weiluw0 回复 こはね : 试了试,现在就剩下怎么让这个按钮生效了
Weiluw0发表于 2025-11-16 18:22:44
进度汇报:
好消息是命令终于做出来了,坏消息是点了没反应。
距离实操已经临门一脚了
  • こはね : 所以犯错原因呢
  • Weiluw0 回复 こはね : 一个很低级的错误,不提也罢
  • Weiluw0 : 至于点了按钮没反应这个事我就想不通了
Weiluw0发表于 2025-11-17 08:09:05
我问个事啊,墙的变身算是能力还是指令?
Weiluw0发表于 2025-11-19 03:10:48
发现一个问题。

同样的单位,同样的代码,原版的变身效果就能顺利出发,mod的就不行。这是怎么回事?
  • こはね : 你可以添加一个<flag>placeanywhere</flag>
  • Weiluw0 回复 こはね : 这是个什么flag?
Weiluw0发表于 前天 18:26
各位好,问题终于解决了。

目前实验过程汇报。

测试对象:宝藏守护者版吹箭手(强盗吹箭手)

测试目标:通过追加一个command,达成“让强盗吹箭手变成另外一个单位”的效果。

步骤1,根据强盗吹箭手制作新单位,并制作兵种动画(已完成,兵种动作测试正常)

步骤2,制作新兵种tactics(已完成,兵种tactics正常)

步骤1和步骤2已整合进protomods.xml

步骤3,制作相应的protounitcommand(已完成,卡住)

步骤3整合进

步骤4,unittransform.xml追加相应变身(已完成)

测试结果:变身按钮可正常显示,但是按下按钮始终没反应

对策:

1. techtree追加特定文明允许生产mod单位的词条(无用)

2. 测试原有变身代码(无用,原有变身相关代码复制粘贴之后就会失效)

3. 从其他mod数据包复制粘贴protoy,protounitcommand到测试数据包(无用,该不反应还是不反应)

4. 按照小羽大佬的提示追加了<flag>placeanywhere</flag>(无用,该不反应还是不反应)

5. 检查错别字(查出了错别字,变身命令能正常显示了,但是还是不能生效)

最终解决方案:去掉了第三个数据包的unittransform.xml,将所有unittransform整合到同一个数据包(顺利实现变身效果)

现在问题来了,有什么办法不用整合unittransform文件么?
跳转到