xuzhouhudajz 发表于 2015-7-24 20:57:46

英雄加强脚本

特点:增加选定英雄特长
1、后勤每级增加4%
2、生命每级增加5%
3、每5级增加弩车射击次数
4、魔法伤害没5级翻一番
5、远程兵种没20级增加一次射击次数
6、远程兵种具有几率格挡免物理伤害,士气、幸运、英雄等级影响发生几率
7、近战兵种具有一定几率2倍以上的攻击能力,每8级增加一倍,8级以下为2倍,士气、幸运、英雄等级影响发生几率
缺点:
1、该英雄比较变态,自己可修改发生几率,也可删掉不需要的特长增加。
2、魔法伤害不能对封神2.2.1的圣侏儒魔法伤害进行加强,由于能力有限,身体癌症后未回复,也无法学习沧海大师、贤知有你等大师的佳作,在生病治疗的这几个月坚持搞了这个脚本,前期也发表了一个,但是问题比较多,这次经过很多次验证应该没多少问题了。
遗憾:
想对人类兵源进行限制,但是由于身体原因,可能会放弃编制了。初步设想是人类活动的英雄所带的部队在外探险、战斗需要维护费。根据难度的不同系数不一样。前面我发了一个帖子,贤知有你大师给我介绍了TE,我也下载了,但是由于身体和对编程语言无基础的我确实难度比较大,所以很难为继,因此准备放弃了,如果哪位有兴趣,编好后我有机会也可欣赏一下佳作。

xuzhouhudajz 发表于 2015-7-24 21:00:09

这是上次发的帖子内容“各位大师:最近我在玩封神时思考了一个问题,战争是要资源的,但是部队只有招募资源(培训所需的资源)无日常战争过程消耗的资源,因此我想人类玩家应该要有这样的限制。比如玩家1所带领的部队数量是50大天使,那么根据招募价格每天资源损耗是50*(5000+3珠宝)*K,K根据难度系数确定,分为4个等级,一般消耗0.01,普通消耗0.02,困难消耗0.03,极难消耗0.05,并增加一个自定义选项可自动填写难度系数(范围是0.05~0.2)每天提供财务报表。如果资源不够就有一定数量的兵种脱离部队,玩家也可自己提前解散不需要的部队。意思就是如果只招募没有后续资源你是无法进行探险和战争的。电脑没有此限制。由于本人能力有限,不知哪位大师能伸出援助之手。若果各位大师确实没有时间,也请指点需用那些关键指令,我自己再摸索看能否整出点样子来。”

xuzhouhudajz 发表于 2015-7-24 21:03:14

另外想在封神里使用,只需MOD不加载贤知有你大师的界面及操作增强就可以了,但是你得狠心哟!毕竟这个MOD实在是太方便了!

贤知有您 发表于 2015-7-24 23:19:43

看了楼主的经历倒被吓着.希望楼主一切顺利.
那个增强MOD其实不是为封神做的.不必纠结加载不加载.

关于维持费的问题,其实挺纠结的.在单机中出发点无非是削弱了玩家.(TE中就不同了)
这里会有个不好计算的问题.比如
如果有多个英雄都带有超标的天使,怎么分配出每个该削弱多少呢.
TE里面的维护费都是黄金,超标只会让玩家资金为0.(TT的NH3版本增强为,若维护费不足会削减所有英雄的移动力)
要写这种脚本,无非就是找个 TM触发器,每天都检测一遍而已.

yueminli007 发表于 2015-7-25 06:21:45

衷心希望楼主早日康复,为您祈福!

xuzhouhudajz 发表于 2015-7-25 06:57:09

贤知有您 发表于 2015-7-24 23:19
看了楼主的经历倒被吓着.希望楼主一切顺利.
那个增强MOD其实不是为封神做的.不必纠结加载不加载.



我的想法就是很简单,一个增加难度,让人类玩家永远都处于以弱胜强的状态,兵种数量需要靠积攒,就得懂得节省,就不能任性,同时也促使你懂得规划,时间就是效率,否则你只有出局。二个就是你需懂得如何搭配兵种,才能最省钱,不是兵种越贵价值越高就不停积累,这是需要成本代价的,你得需要有很强的资源来源,比如美国你有7个舰队,你没有收入如何维持!

lhtoo1 发表于 2015-7-25 09:23:24

把游戏做到这么高深的地步,群里的大神真厉害

xuzhouhudajz 发表于 2015-7-26 07:06:30

贤知有您 发表于 2015-7-24 23:19
看了楼主的经历倒被吓着.希望楼主一切顺利.
那个增强MOD其实不是为封神做的.不必纠结加载不加载.



这样修改后虽然运行不报错了,但是无效果。多次修改了时间触发器计时器编号,有的可运行,有的程序无法运行,直接卡住了,电脑有没死机!不知道什么原因!望指点!
ZVSE
!!TM6:S1/999/1/255;
!?TM6&1000;
!!DO10000004/0/155/1:P;
!?FU10000004;
!!OW:C?i;
!!OW:Ii/?y3;
!!FU&y3<>0:E;
!!OW:Ri/6/?y30;
!!OW:Oi/?y4/?y5/?y6/?y7/?y8/?y9/?y10/?y11/?y12;
!!VRy40:S50;部队维修费系数

!!FU10000005&y5>-1:Py5/y40;
!!FU10000006&y6>-1:Py6/y40;
!!FU10000007&y7>-1:Py7/y40;
!!FU10000008&y8>-1:Py8/y40;
!!FU10000009&y9>-1:Py9/y40;
!!FU10000010&y10>-1:Py10/y40;
!!FU10000011&y11>-1:Py11/y40;
!!FU10000012&y12>-1:Py12/y40;

!?FU10000005;
!!VRy13:S0;
!!VRy18:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy18:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000006;
!!VRy13:S0;
!!VRy19:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy19:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000007;
!!VRy13:S0;
!!VRy20:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy20:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000008;
!!VRy13:S0;
!!VRy21:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy21:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000009;
!!VRy13:S0;
!!VRy22:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy22:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000010;
!!VRy13:S0;
!!VRy23:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy23:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000011;
!!VRy13:S0;
!!VRy24:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy24:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!?FU10000012;
!!VRy13:S0;
!!VRy25:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy25:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;
!!VRy26:Sy18 +y19 +y20;
!!VRy26:+y21 +y22 +y23;
!!VRy26:+y24 +y25;
!!VRy27:Sy30-y26;
!!VRy27&y27<0:S0;
!!OW:Ri/6/y27;;
------------------------------END--------------------------------;

贤知有您 发表于 2015-7-26 23:26:44

爪机,只能凭经验看。首先有个明显错误,MA接收器该用双叹号。

xuzhouhudajz 发表于 2015-7-27 06:59:09

贤知有您 发表于 2015-7-26 23:26
爪机,只能凭经验看。首先有个明显错误,MA接收器该用双叹号。

把时间触发器的计时编号和MA更改后解决了游戏无反应的问题后,但是仍然无效果,就是金币的数量并没减少,请问还有什么问题吗?

贤知有您 发表于 2015-7-27 10:35:54

xuzhouhudajz 发表于 2015-7-27 06:59
把时间触发器的计时编号和MA更改后解决了游戏无反应的问题后,但是仍然无效果,就是金币的数量并没减少, ...

我得下午才能帮你测试.
另外,楼主的意思只是在外部队需要给养吗.
城里的英雄或者部队不用吗.

fly123 发表于 2015-7-27 12:30:53

!?FU10000005;
!!VRy13:S0;
!!VRy18:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy18:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;这里错了,应该是G2

knigt.mk 发表于 2015-7-27 12:53:26

鼓励!!注意身体!!1

luwei 发表于 2015-7-27 14:00:11

看上还不错,我来试试呢
第5和第4个很BT啊~ 20级不就翻了16翻的魔法伤害?
一个雷鸣不就几十万血?

xuzhouhudajz 发表于 2015-7-27 18:46:19

贤知有您 发表于 2015-7-27 10:35
我得下午才能帮你测试.
另外,楼主的意思只是在外部队需要给养吗.
城里的英雄或者部队不用吗.

是的,因为招募的价格就是训练的日常费用,而对外探险和战争才是额外增加的费用。因此我的理解就是对外作战部队产生额外的维护费。

xuzhouhudajz 发表于 2015-7-27 18:48:18

luwei 发表于 2015-7-27 14:00
看上还不错,我来试试呢
第5和第4个很BT啊~ 20级不就翻了16翻的魔法伤害?
一个雷鸣不就几十万血?

20级是4倍伤害,每5级伤害增加一倍,可能我的说法有问题,是每5级增加一倍

贤知有您 发表于 2015-7-27 22:35:04

007简单评注.

!!TM6:S1/999/1/255;
!?TM6&1000; --->1000这个标志在TM中是无效的,不必使用
!!DO10000004/0/155/1:P; --->既然是针对颜色玩家,不必使用循环英雄编号,直接FU.(后面也没用上这个循环)
!?FU10000004;
!!OW:C?i;
!!OW:Ii/?y3;
!!FU&y3<>0:E;
!!OW:Ri/6/?y30;
!!OW:Oi/?y4/?y5/?y6/?y7/?y8/?y9/?y10/?y11/?y12;
!!VRy40:S50;部队维修费系数

!!FU10000005&y5>-1:Py5/y40;
!!FU10000006&y6>-1:Py6/y40;
!!FU10000007&y7>-1:Py7/y40;
!!FU10000008&y8>-1:Py8/y40;
!!FU10000009&y9>-1:Py9/y40;
!!FU10000010&y10>-1:Py10/y40;
!!FU10000011&y11>-1:Py11/y40;
!!FU10000012&y12>-1:Py12/y40;

!?FU10000005;
!!VRy13:S0;
!!VRy18:S0; ---->这个y18,按照楼主意思是想用来计算总数的,但y变量不能跨触发器自动返回.也就没意义了.(见最后)建议改用临时v变量
!!HEx1:C0/y13/?y14/?y15; [#0] --->循环标号只是注释句,循环句在当前触发器第几行(从0开始),应为第3行,即#2
!#MA&y14>-1: Cy14/6/?y16;[#1] -->不能用! #(优先语句),应为双叹号语句
!!VRy17:Sy16 *y15 :x2;
!!VRy18:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0; --->改为G2

....(中间省略)...

!?FU10000012;
!!VRy13:S0;
!!VRy25:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]
!#MA&y14>-1: Cy14/6/?y16;[#1]
!!VRy17:Sy16 *y15 :x2;
!!VRy25:+y17; 部队每日维修费
!!VRy13:+1;
!!SN&y13<7:G0;

!!VRy26:Sy18 +y19 +y20; ---->首先这往后几句应该是在FU10000004下运作,也就是应该写在<FU10000012&y12>-1:Py12/y40;>之后.此外,这里的y18-y25都没有意义,因为y变量不能跨FU触发器应用.可采用临时v变量(参考ERM帮助的变量声明部分)
!!VRy26:+y21 +y22 +y23;
!!VRy26:+y24 +y25;
!!VRy27:Sy30-y26;
!!VRy27&y27<0:S0;
!!OW:Ri/6/y27;

最后说明一下.
y变量在每个触发器(包括FU)下独立应用,跨触发器会被清零.(除非用于返回值)
建议在一些需要返回应用值的地方采用v变量的方式.v变量不会自动清零,除非被改写.(临时v变量也应该只用于同一段连续运行代码中)另外使用FU10000005-FU10000012,语法功能一致,可以考虑编写一种循环体.
SN:G循环体,虽然简化代码但容易混淆,如果对ERM不算熟练,应该用DO循环更方便.

贤知有您 发表于 2015-7-27 22:42:50

顺便帮楼主改写了个,有些地方可能还需要修改下,楼主自行研究研究.
(未作完整测试,提供思路过程)

ZVSE
!#TM2:S1/999/1/255;[直接使用官方的TM2通用触发器]

!?TM2;
!!OW:C?i Ii/?j;
!!FU&j<>0:E;[非人类玩家]
!!FU10000004:Pi/20;

!?FU10000004;
*x1=玩家颜色,x2=基数(千分比整数)
!!OW:Ox1/?y1/?v101/?v102/?v103/?v104/?v105/?v106/?v107/?v108;[只考虑驻外部队?]
!!FU&y1<1:E;
!!VRv109:S0;[初始化,计算部队总价值]
!!DO10000005/101/108/1:P109;
!!VRy1:Sv109*x2:1000;[计算额外消耗]
!!OW:Rx1/6/?y2;[玩家库存金额]
!!VRy2:-y1;
!!VRy2&y2<0:S0;
!!OW:Rx1/6/y2;[扣除金额后余额]
!!IF:L^颜色%X1,驻外部队价值%V109,扣除金额%Y1^;
!!UN:R2;[刷新一下]

!?FU10000005;
!!FU&vx16<0:E;[无英雄]#0
!!VRy10:Svx16;[英雄编号]#1
!!VRy13:S0;[初始化循环序号,生物槽]#2
!!HEy10:C0/y13/?y14/?y15; [获得英雄某生物槽生物信息]#3
!!if&y14>-1:;[有生物时]
!!MA:Cy14/6/?y16;
!!VRy17:Sy16 *y15;
!!VRvx1&y17>0:+y17;
!!en:;
!!VRy13:+1;[循环序号]
!!SN&y13<7:G3;[设置循环条件]

吴志明 发表于 2015-7-27 23:10:54

使用后显示不完整,只能显示“生命每级增加5%”

xuzhouhudajz 发表于 2015-7-28 06:54:23

fly123 发表于 2015-7-27 12:30
!?FU10000005;
!!VRy13:S0;
!!VRy18:S0;


!!VRy13:S0;
!!VRy18:S0;
!!HEx1:C0/y13/?y14/?y15; [#0]y13是循环检查带兵位置的类型和数量,不检查了!我试试
页: [1] 2
查看完整版本: 英雄加强脚本

捐赠