《传世私服》多城堡实现方法
D:\Wolsever\Mir200\Castle\
文件夹中新建一个文件夹。文件夹名字随便。我是用数字的。其他我不知道可不可以。
新建完文件夹后在
D:\Wolsever\Mir200\Castle\ List.txt
这个文件中加一行你刚才新建的文件夹名字(一个城一行)
然后把现有的城堡文件全复到你刚才“新建的文件夹”中
在把“新建的文件夹”中 “SabukW.txt”这个文件的内容修改一个,主要的有以下几个
[Setup]
CastleName= “这个为城堡名”
OwnGuild= “这个为行会名”
[Defense]
CastleMapList= “这个为商店之类的地图”
CastleMap= “这个是城堡所在的地图”
CastleHomeMap= “这个是城堡所在的地图”
CastleHomeX= “这个是城堡所在的座标X”
CastleHomeY= “这个是城堡所在的座标Y”
CastlePlaceMap= “这个为站领城堡的皇宫地图”
CastleSecretMap= “这个为皇宫秘密通道地图”
CastlePalaceDoorX= “这个为皇宫秘密通道座标X”
CastlePalaceDoorY= “这个为皇宫秘密通道座标X”
列如;
[Setup]
CastleName=第二城
ChangeDate=2006-3-5 22:14:10
WarDate=2006-3-5 20:00:03
IncomeToday=2007-3-26 11:30:59
OwnGuild=
TotalGold=2224883
TodayIncome=13000
[Defense]
CastleMapList=SH015,SH016,SH017,SH019,SH020,
CastleMap=3
CastleHomeMap=3
CastleHomeX=178
CastleHomeY=382
CastleWarRangeX=100
CastleWarRangeY=100
CastlePlaceMap=sh021
CastleSecretMap=e004
CastlePalaceDoorX=631
CastlePalaceDoorY=274
然后把
D:\Wolsever\Mir200\Envir
里的“MapInfo.txt”文件加入新地图的入口座标
可全抄盟重同沙巴克的内,修改地图号就行了,列如;
[SH015 朝歌城药店] FIGHT
SH015 8 21 ->3 209 390
SH015 16 13 ->3 216 385
[SH016 朝歌城服装店] FIGHT
SH016 8 19 ->3 191 372
SH016 14 13 ->3 198 367
[SH017 朝歌城武器店] FIGHT
SH017 9 24 ->3 171 344
SH017 17 15 ->3 175 340
[SH018 朝歌城监狱] FIGHT
SH018 5 17 ->3 140 374
[SH019 朝歌城首饰店] FIGHT
SH019 15 12 ->3 180 414
SH019 9 18 ->3 175 419
[SH020 朝歌城仓库] FIGHT
SH020 11 14 ->3 173 398
[SH021 朝歌议事厅] NORECALL NOGUILDRECALL NODEARRECALL NOMasterRECALL NORANDOMMOVE NOPOSITIONMOVE NORECONNECT(0) NOSHADOW NODOSHOP
SH021 19 26 ->3 168 371
SH021 20 25 ->3 168 369
SH021 18 27 ->3 166 371
SH021 5 10 ->3 158 364
[E001 朝歌地下通道二]
E001 284 278 ->E002 253 255
E001 158 162 ->E002 113 134
E001 66 77 ->E003 384 309
[E002 朝歌地下通道一]
E002 128 230 ->E004 187 76
E002 252 253 ->E001 283 276
E002 112 132 ->E001 157 160
[E003 朝歌地下通道三]
E003 385 311 ->E001 67 79
[E004 朝歌密道]
E004 218 310 ->3 133 388
E004 251 316 ->3 174 333
E004 349 239 ->3 205 345
E004 188 74 ->E002 130 228
把
D:\Wolsever\Mir200\Envir
里的“Npcs.txt”文件加入城堡“管理人员”,列如;
;名称 代码 地图 x y 范围 图标
管理人员 2 01500 7 16 0 8
把
D:\Wolsever\Mir200\Envir
里的“StartPoint.txt”文件加入“区/复活点”,列如;
;地图 座标X 座标Y
30 330 330
把
D:\Wolsever\Mir200\Envir\Npc_def
里新建一个NPC文件,列如;
管理人员-SH021.txt “NPC名称-地图”
地图实现使用映射
[<SH021>SH021A 第二城] 地图参数
补充:
怎样实现多城堡分别攻城
1、首先假设提交攻城的NPC只有中州国王一个NPC,修改Envir\Npc_def\
[@main]
我是中州皇宫管理人,掌管着许多事物。希望我能对你有帮助。\ \
<请求创建行会/@@buildguildnow>\
<申请行会战争/@guildwar>\
<如何建立行会/@buildguildexp>\
<有关行会战争/@guildwarexp>\
<申请攻城战争/@requestcastlewar>
.........省略
[@requestcastlewar]
请求攻城作战你应该有<COLOR=GREEN 魔神雕像>,你有它吗?战争将会在\
申请日期的第 二 天内开始。请选择您要攻打的城市:\
<$REQUESTCASTLELIST>
<返回/@main>
[~@request_ok]
你的请求被许可, <$CASTLEWARDATE> 战争将会发生在这个值得回忆\
的日子......剩下的时间不多了,祝你好运!\ \
<关闭/@exit>
可以发现在这里使用了 $REQUESTCASTLELIST 这个变量,这个变量会按脚本命令的格式,将你所有的城堡名都列出来,并且还会加上很标准的换行符,选择后,相应的城堡目录中的AttackSabukWall.txt也会正常的添加进攻城行会的名字和日期,并且各城堡之间的攻城战争互不干扰,这个变量不知道翎风为什么没有公布,你问我从哪得来的?....这个....今天的天气....啊哈哈哈哈^_^......
2、如果使用国战功能,那你当然很希望分别去提交攻城请求,那怎么实现呢?
首先你要分别做出各个国家的有攻城功能的NPC.....具体方法请参考各个NPC脚本......
例如:
现在有三个国家,宋国,沙城目录为0;辽国,沙城目录为1;另外还有金国,沙城目录为2,宋国管理攻城的NPC脚本可以这样写
[@main]
我是您忠实的大臣,您希望:\ \
<攻打辽国/@requestcastlewar1>\
<攻打金国/@requestcastlewar2>\
.........省略
[@requestcastlewar1]
攻打辽国必须使用<COLOR=GREEN 魔神雕像>,,您是否已经有此物品?\
如果申请被批准,攻城战将在2天后开始。\ \
<申请/@requestcastlewarnow1>\
<返回/@main>
[@requestcastlewar2]
攻打金国必须使用<COLOR=GREEN 魔神雕像>,,您是否已经有此物品?\
如果申请被批准,攻城战将在2天后开始。\ \
<申请/@requestcastlewarnow2>\
<返回/@main>
[~@request_ok1]
攻打辽国的申请已被批准,攻城战将在<$CASTLEWARDATE>这个好日子进行。\
<返回/@main>
[~@request_ok2]
攻打金国的申请已被批准,攻城战将在<$CASTLEWARDATE>这个好日子进行。\
<返回/@main>
可以发现,这里多了两个脚本命令 @requestcastlewarnow 后面加上数字几,就是攻打第几个城市
现在实现国战的不足,个人认为,还缺乏对于沙行会和沙老大是隶属于哪个沙城的脚本检测命令,及当一个行会占有2个以上城堡时的检测命令等等,当然这个可以通过复杂的脚本加变量的设置来模拟出来,但毕竟太麻烦,所以翎风M2的城堡管理部分到现在还是“(未完成)”