帝国3吧 关注:78,017贴子:2,229,753
  • 7回复贴,共1

大老们可以帮忙看看我的代码吗?

只看楼主收藏回复

想试着做点简单的MOD
首先从解除塔斯云坎游荡者的数量限制开始
于是写了protomod,内容如下
<protomods>
<unit id="768" name="xpCoupRider">
<dbid>1153</dbid>
<displaynameid>44434</displaynameid>
<editornameid>44435</editornameid>
<populationcount>2</populationcount>
<obstructionradiusx>0.7900</obstructionradiusx>
<obstructionradiusz>0.7900</obstructionradiusz>
<stealthdiscoveryradius>2.0000</stealthdiscoveryradius>
<formationcategory>Mobile</formationcategory>
<maxvelocity>6.7500</maxvelocity>
<maxrunvelocity>8.5000</maxrunvelocity>
<movementtype>land</movementtype>
<turnrate>18.0000</turnrate>
<animfile>units\natives\lakota\coup_rider\coup_rider_horse.xml</animfile>
<impacttype>Flesh</impacttype>
<physicsinfo>cav</physicsinfo>
<icon>resources\art\units\coup_rider_icon.png</icon>
<portraiticon>resources\art\units\coup_rider_portrait.png</portraiticon>
<rollovertextid>44433</rollovertextid>
<shortrollovertextid>44432</shortrollovertextid>
<initialhitpoints>220.0000</initialhitpoints>
<maxhitpoints>220.0000</maxhitpoints>
<los>28.0000</los>
<unitaitype>HandCombative</unitaitype>
<trainpoints>43.0000</trainpoints>
<bounty>20.0000</bounty>
<buildbounty>20.0000</buildbounty>
<cost resourcetype="Food">125.0000</cost>
<cost resourcetype="Gold">75.0000</cost>
<allowedage>3</allowedage>
<armor type="Ranged" value="0.1000">
</armor>
<unittype>LogicalTypeHealed</unittype>
<unittype>LogicalTypeValidSharpshoot</unittype>
<unittype>LogicalTypeNeededForVictory</unittype>
<unittype>LogicalTypeHandUnitsAutoAttack</unittype>
<unittype>LogicalTypeLandMilitary</unittype>
<unittype>LogicalTypeScout</unittype>
<unittype>LogicalTypeValidSPCUnitsDeadCondition</unittype>
<unittype>LogicalTypeGarrisonInShips</unittype>
<unittype>LogicalTypeRangedUnitsAutoAttack</unittype>
<unittype>LogicalTypeRangedUnitsAutoAttackNoVillagers</unittype>
<unittype>LogicalTypeVillagersAttack</unittype>
<unittype>LogicalTypeHandUnitsAttack</unittype>
<unittype>LogicalTypeRangedUnitsAttack</unittype>
<unittype>LogicalTypeMinimapFilterMilitary</unittype>
<unittype>AbstractCavalry</unittype>
<unittype>Unit</unittype>
<unittype>UnitClass</unittype>
<unittype>Military</unittype>
<unittype>AbstractHandCavalry</unittype>
<unittype>ConvertsHerds</unittype>
<unittype>AbstractCavalryInfantry</unittype>
<unittype>CountsTowardMilitaryScore</unittype>
<unittype>HasBountyValue</unittype>
<unittype>AbstractHeavyCavalry</unittype>
<flag>CollidesWithProjectiles</flag>
<flag>ApplyHandicapTraining</flag>
<flag>CorpseDecays</flag>
<flag>ShowGarrisonButton</flag>
<flag>DontRotateObstruction</flag>
<flag>ObscuredByUnits</flag>
<flag>ConstrainOrientation</flag>
<flag>OrientUnitWithGround</flag>
<flag>Tracked</flag>
<command page="10" column="1">Stop</command>
<command page="10" column="0">Garrison</command>
<command page="10" column="7">Delete</command>
<command page="9" column="0">ToggleStealth</command>
<tactics>coupRider.tactics</tactics>
<protoaction>
<name>BuildingAttack</name>
<damage>15.000000</damage>
<damagetype>Siege</damagetype>
<rof>3.000000</rof>
<damagebonus type="AbstractWall">0.500000</damagebonus>
<damagebonus type="ypShrineJapanese">1.500000</damagebonus>
</protoaction>
<protoaction>
<name>DefendHandAttack</name>
<damage>15.000000</damage>
<damagetype>Hand</damagetype>
<rof>1.500000</rof>
<damagecap>40.000000</damagecap>
<damagearea>2.000000</damagearea>
<damageflags>Enemy</damageflags>
</protoaction>
<protoaction>
<name>GuardianAttack</name>
<damage>15.000000</damage>
<damagetype>Hand</damagetype>
<rof>1.500000</rof>
<damagecap>40.000000</damagecap>
</protoaction>
<protoaction>
<name>MeleeHandAttack</name>
<damage>15.000000</damage>
<damagetype>Hand</damagetype>
<rof>1.500000</rof>
<damagecap>40.000000</damagecap>
<damagearea>2.000000</damagearea>
<damageflags>Enemy</damageflags>
</protoaction>
<protoaction>
<name>TrampleHandAttack</name>
<damage>8.000000</damage>
<damagetype>Hand</damagetype>
<rof>2.000000</rof>
<damagecap>80.000000</damagecap>
<damagearea>4.000000</damagearea>
<damageflags>Enemy</damageflags>
</protoaction>
</unit>
</protomods>
结果不起作用,接着打算把掠夺者提高的限制增加到5倍
于是又写了一个tecreemod
<techtreemods>
<tech mergeMode="replace" name="HCXPMarauders" type="Normal">
<dbid>3476</dbid>
<displaynameid>47168</displaynameid>
<cost resourcetype="Ships">1.0000</cost>
<researchpoints>40.0000</researchpoints>
<status>UNOBTAINABLE</status>
<icon>resources\images\icons\techs\native\Marauders.png</icon>
<rollovertextid>47167</rollovertextid>
<flag>HomeCity</flag>
<effects>
<effect type="Data" amount="6.00" subtype="BuildLimit" relativity="BasePercent">
<target type="ProtoUnit">xpCoupRider</target>
</effect>
<effect type="TextOutput">47170</effect>
</effects>
</techtreemods>
一样没有反应,不知是哪裡出了问题
先谢谢各位大老了


IP属地:中国台湾1楼2025-02-22 21:19回复
    protomod那个,少了mergeMode="replace"


    IP属地:上海2楼2025-02-22 23:03
    回复
      2025-08-04 12:58:01
      广告
      不感兴趣
      开通SVIP免广告
      techtreemods也破案了,你参考一下官方教程里修改印度圣牛的例子,要先remove一个效果然后再add一个效果


      IP属地:上海3楼2025-02-23 08:27
      收起回复
        最后下个无限村民的MOD模彷内部代码就解决了
        <unit name='xpCoupRider'>
        <buildlimit mergemode='remove'>1</buildlimit>
        </unit>
        另外尝试将鹿皮靴的增速效果加强并作用在所有兵种上也成功
        <Tech name ='HCXPWindRunner'>
        <Effects>
        <Effect mergeMode='remove' type="Data" amount="1.10" subtype="MaximumVelocity" relativity="BasePercent">
        <Target type ='ProtoUnit'>AbstractInfantry</Target>
        </Effect>
        <Effect mergeMode='add' type="Data" amount="1.50" subtype="MaximumVelocity" relativity="BasePercent">
        <Target type ='ProtoUnit'>AbstractInfantry</Target>
        </Effect>
        <Effect mergeMode='add' type="Data" amount="1.50" subtype="MaximumVelocity" relativity="BasePercent">
        <Target type ='ProtoUnit'>AbstractCavalry</Target>
        </Effect>
        <Effect mergeMode='add' type="Data" amount="1.50" subtype="MaximumVelocity" relativity="BasePercent">
        <Target type ='ProtoUnit'>AbstractLightInfantry</Target>
        </Effect>
        </Effects>
        </Tech>
        现在尝试将一些卡片改成可研发科技好腾出卡组空间
        但我发现许多新增科技的MOD都无法跟世界时代同时使用了
        即使直接把代码复製一份到我的MOD中也是一样
        不知是不是世界时代设了什麽限制


        IP属地:中国台湾4楼2025-02-23 21:29
        回复
          决定便宜行事直接将一些卡牌效果整到市场科技中
          于是先添加如下
          <techtreemods>
          <Tech name ='HuntingDogs'>
          <Effects>
          <Effect mergeMode='add' type="Data" amount="-20.00" subtype="Cost" resource="Wood" relativity="Absolute">
          <target type="ProtoUnit">FishingBoat</target>
          </Effect>
          <Effect mergeMode='add' type="Data" amount="0.70" subtype="TrainPoints" relativity="BasePercent">
          <target type="ProtoUnit">FishingBoat</target>
          </Effect>
          <Effect mergeMode='add' type="Data" amount="-20.00" subtype="Cost" resource="Wood" relativity="Absolute">
          <target type="ProtoUnit">deFishingBoatAfrican</target>
          </Effect>
          <Effect mergeMode='add' type="Data" amount="0.70" subtype="TrainPoints" relativity="BasePercent">
          <target type="ProtoUnit">deFishingBoatAfrican</target>
          </Effect>
          <Effect mergeMode='add' type="Data" action="Gather" amount="1.25" subtype="WorkRate" unittype="AbstractFish" relativity="BasePercent">
          <target type="ProtoUnit">AbstractFishingBoat</target>
          </Effect>
          </Effects>
          </Tech>
          </techtreemods>
          到这裡都是成功的,但接着将捕鲸速度
          <Effect mergeMode='add' type="Data" action="Gather" amount="1.20" subtype="WorkRate" unittype="AbstractWhale" relativity="BasePercent">
          <target type="ProtoUnit">AbstractFishingBoat</target
          </Effect>
          也加进去后就失效了
          此外加入如伐木速度之类的也都无效
          请问有没有大老能协助看问题出在哪?谢谢


          IP属地:中国台湾5楼2025-02-25 02:25
          收起回复