注册 | 登录

游侠NETSHOW论坛





查看: 9308|回复: 8
打印 上一主题 下一主题

[分享] scripting.lua脚本作弊浅释 [复制链接]

信徒
奥菲莉娅回忆中的修女

帖子
10147
精华
0
积分
6029
金钱
11348
荣誉
95
人气
56
评议
0

跳转到指定楼层
楼主
发表于 2010-12-8 19:53:52 |只看该作者 |倒序浏览

原帖地址:http://ran2.uueasy.com/read-htm-tid-104.html

作者:百合星女王应该就是Roderna

1:世界地图迷雾全开
用记事本打开scripting.lua,然后用=>OnWorldCreated<=搜索
然后找到下面这个脚本事件..

local function OnWorldCreated()
        scripting.game_interface:technology_osmosis_for_playables_enable_culture("european")
        scripting.game_interface:technology_osmosis_for_playables_enable_all()
end


里面添加一行scripting.game_interface:show_shroud(false)
正确的话会变成这样...

local function OnWorldCreated()
        scripting.game_interface:technology_osmosis_for_playables_enable_culture("european")
        scripting.game_interface:technology_osmosis_for_playables_enable_all()
        scripting.game_interface:show_shroud(false)
end


然后保存就可以了~~
OnWorldCreated()事件会在会战创建的时候触发~~~
要注意的是,迷雾全开后,所有AI动作都会被显示,如果不想看的话,把选项里的=>显示CPU移动<=关掉~~

----------------------------------------------------------------------------------------------------------------------------------------------------------------
2:平和的吞并
就在scripting.lua的开头,有个OnFactionTurnStart(context)事件.....
这个事件会在会战里每回合执行一次~~
里面的内容其实就是英国,西班牙和法国在会战里的殖民地小任务触发脚本~~
一些语句格式:

基本条件语句
(单个条件,单个指令)=>if 条件 then 执行指令 end
(多个条件,单个指令)=>if 条件1 and 条件2 and 条件3 then 执行指令 end
(多个条件,多个指令)=>if 条件 then 执行指令
                                     elseif 条件 then 执行指令
                                     elseif 条件 then 执行指令 end

conditions.TurnNumber(context)                                                   获得当前的回合数
conditions.FactionName("国家代码", context)                               检测某个国家是否存在(是否被消灭或未出现)
conditions.FactionIsHuman("国家代码", context)                          检测某个国家是否由玩家控制
scripting.game_interface:trigger_custom_mission()                       触发殖民地小任务(参数不建议修改)
scripting.game_interface:enable_auto_generated_missions(true)   自动触发小任务(用途不明)
scripting.game_interface:grant_faction_handover("吞并国", "被吞并国", 6, 触发回合, context) 今天的主角,强制某个国家获得另一个国家的全部领土

因为这个修改比较复杂,需要有编程或脚本编写基础...所以,除非你清楚了解你在做什么.否则,不建议自己修改~~
这里给个例子,目前偶使用的脚本:

local function OnFactionTurnStart(context)                //当回合开始
if conditions.TurnNumber(context) == 2 then        //如果当前回合是2(注意,是双等号,这个不是一般数学的等式,而是逻辑数学)
  scripting.game_interface:enable_auto_generated_missions(true)   
//自动触发小任务
end                                              //语句结束

if conditions.FactionName("portugal", context) and conditions.FactionIsHuman("portugal", context) then  //如果葡萄牙存在,并且葡萄牙是由玩家控制的国家
  scripting.game_interface:grant_faction_handover("portugal", "new_spain", 6, 7, context)                //葡萄牙在第7回合获得新西班牙的全部领土,新西班牙被消灭
end                                                //语句结束
end                                                
//事件结束

不建议把触发的回合数定于5回合之前,因为会战开始的前几回合,有其他的脚本在运行~~
可能会发生冲突,或者错误,造成跳出或坏档~~
吞并国和被吞并国关系可以是任意,并不必须是宗主,同盟或敌对....列强/龙套国家都行~~
如果其中一个国家不存在,就会出错跳出.这就是前面conditions语句的意义,用来避免上述错误的出现.至于conditions.FactionIsHuman(),不是必须~~
另外,不能凭空生出国家,所以,想靠这个命令来产生美国或墨西哥的人,可以死心了...会跳出的~~
而且,只能定义整个国家,不能单独获得某个地区~~
这样的语句可以无数条,也就是说.....让你数回合后立刻当球长都行....国家代码可以在patch.pack/db/factions_tables/faction里查到~~~

[ 本帖最后由 秋之回忆n 于 2010-12-9 04:31 编辑 ]

使用道具 举报

帖子
72
精华
1
积分
246
金钱
272
荣誉
1
人气
0
评议
0
沙发
发表于 2010-12-9 11:24:40 |只看该作者
好东西 ,拿下了

使用道具 举报

帖子
105
精华
0
积分
53
金钱
228
荣誉
0
人气
0
评议
0
板凳
发表于 2010-12-9 11:25:55 |只看该作者
就等着东西了, LZ好强啊 V5

使用道具 举报

帖子
52
精华
1
积分
226
金钱
234
荣誉
0
人气
1
评议
0
地板
发表于 2010-12-9 11:28:17 |只看该作者
喜欢,[幸福] [幸福]

使用道具 举报

帖子
166
精华
0
积分
164
金钱
711
荣誉
8
人气
0
评议
0
5#
发表于 2010-12-9 11:29:23 |只看该作者
不错的东西,支持下

使用道具 举报

信徒
奥菲莉娅回忆中的修女

帖子
10147
精华
0
积分
6029
金钱
11348
荣誉
95
人气
56
评议
0

6#
发表于 2010-12-9 11:32:58 |只看该作者
作者并不是我,不必说我强大,我只转帖而已!

[ 本帖最后由 秋之回忆n 于 2010-12-9 04:34 编辑 ]

使用道具 举报

帖子
58
精华
0
积分
30
金钱
211
荣誉
0
人气
0
评议
0
7#
发表于 2010-12-22 11:56:41 |只看该作者

回复 #1 秋之回忆n 的帖子

scripting.lua我找到6到7个 到底是那一个啊 教教吧

使用道具 举报

信徒
奥菲莉娅回忆中的修女

帖子
10147
精华
0
积分
6029
金钱
11348
荣誉
95
人气
56
评议
0

8#
发表于 2010-12-22 11:59:16 |只看该作者

回复 #8 27181981 的帖子

我只是单纯的转帖,自己都不会,怎么教你

使用道具 举报

帖子
892
精华
0
积分
536
金钱
2353
荣誉
9
人气
2
评议
0
9#
发表于 2010-12-27 09:53:55 |只看该作者
原帖由 27181981 于 2010-12-22 11:56 发表
scripting.lua我找到6到7个 到底是那一个啊 教教吧

   路径Napoleon Total War\data\campaigns\mp_eur_napoleon下的scripting.lua 这个是反法同盟的 右键用记事本可以打开编辑 但是发现战争迷雾哪项是没的local function OnWorldCreated 
国家全开是改Napoleon Total War\data\campaigns\mp_eur_napoleon下的startpos.esf

[ 本帖最后由 戳白 于 2010-12-27 09:56 编辑 ]

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|游侠NETSHOW论坛 ( 苏ICP备2023007791号 )

GMT+8, 2025-10-5 09:05 , Processed in 0.282717 second(s), 12 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

分享到