地方网

搜索

[传奇教程] 凌天科技系列教程-游戏脚本的编写以及登陆脚本的格式

[复制链接]
admin 发表于 2011-12-28 03:48:38 | 显示全部楼层 |阅读模式
软件简介:9 t( l( b  [7 B7 I* T6 x  Y
教程第一课
! j' E- H+ ^' L; L8 m  {7 ODBC2000数据库的介绍以及单机游戏架设以及外网游戏的架设方法
2 o7 ?6 T: m$ l安装DBC2000数据库
) P8 L1 X: ~( M8 ^, h* F建立DBC2000数据库与服务端mirserver/mud2/DB文件夹的数据库连接* v0 ~6 O" _7 q: D3 C7 y4 u
启动Gamecenter 选择控制向导 数据库名称 heroDB(对应DB数据库名称)
& v( s  w0 v+ P+ l( d9 z0 H0 t# P1 `填写服务端路径 并正确填写DBC正确路径
8 b, ^& S+ v5 j: G# Z内网IP地址为 127.0.0.1
( t$ V7 c* t% o8 f查询外网IP并填写启动服务端7 n- k6 }7 r% I  `
www.ip138.com0 }7 u4 i' x  J1 |( E* ^
填写我们查询到的IP地址并启动服务端
  ~, O# I. x3 p: K( v架设外网成功
. l) e1 K  b& G- \# w' p# d/ ^6 V  u" h1 D
第二课
# D4 {. {2 c. [9 N一机多区的架设方法以及对服务器进行合区
6 q) O- D8 H$ i7 l  d6 P$ O更换我们的所有端口 然后启动服务器 在登陆器上面对应每个区的网关端口; ~* p% q, J2 D( ?
使用引擎合区工具进行合区
$ x( @1 z; Q9 H( Y) h
4 S- d3 n& v2 {5 ?4 B/ n3 e第三课" ~+ @& s. B0 g: l8 s
游戏NPC的添加 NPC脚本代码对应位置9 W# L+ R& ]* P! A/ S
找到mirserver/mir200/envir/MerChant.txt
- ]2 \" A1 Z& f) @在最下面添加NPC
; S9 T0 e! z+ l, a# ^! @- AMarket_Def下面的哪个文件夹/脚本文件名称地图号 X坐标 Y坐标 NPC名称 NPC外观代码3 |  }0 w: l0 a* g% j
脚本文件开头% Z7 O/ \. k+ @+ @( r
[@main](所有脚本通用开头)
  w8 p# z/ F/ m/ p第四课1 N0 o  j5 n4 g: K: P
装备的添加: u0 I, o5 ?2 a9 b" r& j
物品代码, N% a# `* E2 m5 d) C1 n: \6 f
装备属性、隐藏属性代码、套装功能、装备名字颜色代码。
* Z( }7 b# C$ @6 Z装备属性使用万游编辑器修改 隐藏属性(万游) 详见M2引擎说明书物品代码表
- H  O" `" k$ J% t: r- }套装功能对应M2server - 查看 - 列表信息 - 其他设置 - 套装功能 " U4 Z1 P4 S" }% S! T
套装功能中套装编号对应数据库 (特殊属性栏数值) 套装属性为10-255
* }1 u6 B/ o. K# q. Y( _6 Q
: c$ f2 Z! R  `& ?5 U第五课
, Z- W- P$ I5 B! V& _& A2 s  Q; Y& r脚本的编写、登陆脚本、实战冲级奖励的编写。" J+ ~* |4 I1 e' s, o/ M
脚本文件对应NPC创建
+ S- y# R. ^/ j3 f3 f7 {以[@main]开头
( k7 E2 y* p4 o' W& G下面一#IF开始 #ACT执行 #elseact否则执行
4 {% p* N+ H) ~# _- Q- t3 ~8 g4 [登陆脚本1 i- s6 |& O* n6 M" v
mirserver/mir200/envir/MapQuest_def/QManage.txt/ M6 r# T" p: d7 x; v
sengmsg 0 全服提示 谁谁上线
) x* ^7 X9 e" b( U/ v! O' ]. a第五课
% p, G6 L8 A4 o1 u/ d装备外观的添加计算方法、以及装备内观
- `3 p6 b) S' v. ^/ Q9 h; E+ v' I工具:wil编辑器; N5 ?6 O+ r( r* B) F/ ?
背包物品外观在items.wil 掉落地上的外观在dnitems.wil 装备栏的外观在:stateitem.wil
- `- F% f, H- |1 b武器动作在 热血传奇目录:Graphics下 weapon文件夹代表武器 human文件夹代表衣服
  Q; Z0 i  m1 F6 g- f文件名字对应万游中武器衣服的外观代码; {/ ]) p5 ?. J. K+ ^3 i
补丁文件后面加1的情况 HERO的引擎是图片代码+100004 [- z! [- h, x4 ]
NPC外观代码, + D: Y7 A8 [3 A
怪物补丁的计算方法以及添加怪物7 D5 y; y, ]9 E  _( Y
mon*.wil (*-1)X10= 然后WIL编辑器打开怪物文件
, Z6 J% @0 I. N, v4 e3 Z/ zmon14.wil (14-1)X10=130 蛇蝎=130赤月恶魔=131幻影蜘蛛=132
8 L* P% s. h* w第一个怪物就在个位用0 第二个用1 依次类推' a8 M5 ~$ N0 P
怪物补丁为热血传奇目录下面的DATA文件夹下MON.wil-mon99.wil文件
4 Y0 o( a9 D$ R& {# w攻击图像详见传奇怪物攻击图像代码
8 A$ f0 A* V* M* E+ F具体怪物攻击带特殊属性详见攻击代码
; j# c8 ?1 i5 O: d+ X# |人型怪物
7 t. I5 W) m/ h8 `% U: R( E[BaseInfo]& M! X: t* D" O7 e& g; I6 k0 c
;职业
& s1 F, o/ Q* {- @# u  j! MJob=0$ r7 Y2 r  P* G; `4 o
;性别
3 N' d( l. Q( w3 X1 EGender=0, |- K' ~3 r9 J6 K
;头发
$ I7 c4 W. {% w* a$ R, f+ l7 lHair=0
8 n. i) x9 s% f- e9 b;使用魔法1 e: u9 I1 B; \0 K7 e* N& Q
;注意:人形怪必须有相关技能才可以正常使用技能.' {+ N$ c: p, ^' n  T: E7 p
Magic=基本剑术,攻杀剑术,烈火剑法,野蛮冲撞,开天斩,逐日剑法,刺杀剑术刺杀剑术& q9 S- u: C6 f3 ?( f2 Y
;是否掉了身上物品 0=不掉 1=掉落4 @: F% ]# C: w: V* `. L2 H5 A
DropItem=0
/ G# K, X/ D+ m;活动范围,0时不限制活动范围.超过活动范围自动返回出生点.
: ?  R1 n: o' RTerritory=05 N  g+ v( _, g6 m: I. l! P
;是否允许挖去身上装备1=0,0=否
# Q! j$ \: p9 B8 K) DButchUseItem=1
3 e( w9 |' g, z% \' n6 g;挖去身上装备几率:0为百分百,数字越大机率越小.1 b- J6 L* |8 {& ?  H
;注意:设置0并不代表可以100%挖到身上物品.' Q  n+ U. \1 J- T8 P% |
ButchRate=80
! F" I' N" t. g2 D' V" F. M[UseItems]
' x4 l- T- ]$ g5 z" j1 c2 Q5 X# H; V;衣服
- D1 P! y- K* uDRESSNAME=主宰神甲
9 _2 k- C/ [) T- Y;武器
8 ]6 Z9 C- R6 L" p+ g0 t& E$ D' w1 u6 u  rWEAPONNAME=倚天3 {  @( `  M$ V( C+ D. F& y
;照明物) c; w. p4 t6 \
RIGHTHANDNAME=虎威战勋
3 Y4 g* e0 `3 ~% c7 F- a# X;项链
' I' J: O; S, k" \/ l6 V& \NECKLACENAME=虎威项链(战)8 H# z; a! ^& |
;头盔
) t9 p, g; C" E4 PHELMETNAME=虎威战盔
( J+ C  z. W# L& `+ r;左手镯( {' r1 X# t- N
ARMRINGLNAME=虎威护腕(战)
/ Y$ R- J; D; ^) F;右手镯
9 C2 A0 r4 I1 f: wARMRINGRNAME=虎威护腕(战)* x$ h/ A+ E. I' Y2 a0 A# a
;左戒指0 M$ S8 Y( H1 K9 w
RINGLNAME=虎威战戒
7 t4 H7 q* }& \+ n8 V;右戒指
% T* O2 l8 b( l( N, o  I$ M1 ]RINGRNAME=虎威战戒
7 w1 h  u: z& ~2 e: \;物品
! |, `. w1 [6 ]4 g+ WBUJUKNAME=
' R9 z+ Z& g0 B; s  v5 m;腰带
+ [+ X. _2 I# Z3 G3 v; Y6 Y7 TBELTNAME=虎威腰带(战)
9 t0 Y% M- U$ H) S/ l;鞋子
8 |2 ^+ [' ^7 H! E4 q9 l" t7 p0 uBOOTSNAME=虎威战靴* ]* a5 \% X) E
;宝石
) K7 [# E' c$ _# A4 ?, fCHARMNAME=虎威战石
* n' G" {  ~* H1 t;死亡掉装备几率 数字越小掉装备几率越高
) u6 S# z1 H1 c% bDieDropUseItemRate=500' v& j, J  ?) h+ z: @% v
第六课
' Z2 k3 |$ ]" ^' s$ i+ Y( ^地图的添加以及地图限制代码的方式、地图与地图之间的连接、地图刷怪
2 t* `  E0 p8 s6 E首先把地图素材修改名字(字母跟数字组合)然后放到mirserver/mir200/map当中) _6 X% ?$ W+ D
地图信息添加在mirserver/mir200/envir 下面的MapInfo.txt当中
# y2 b. C( u6 @格式:[地图号|地图文件名(地图文件在mirserver下面的mir200下面的MPA文件夹) 地图名称] 后面以空格跟上地图限制代码或功能代码0 [% M# p) d  a( F2 V
加入盟重土城地图1 D# f) I) j7 a/ [4 K0 G4 C
找到我们盟重土城调用的地图文件,按照上面的格式添加地图
, A. h3 @1 j! n找到我们需要进行连接的两个地图的地图号9 \3 u. Y0 q; k9 u' ]: Y& s
A地图号 X坐标 Y坐标 - B地图号 X坐标 Y坐标8 f  s! @# U% g5 J
刷怪:
- Y* {) s4 v, W( ~4 }) W地图号 X坐标 Y坐标 怪物名称 刷怪范围 刷怪数量 刷怪间隔时间(分钟)
1 g: T6 ~) x- z3 e) E+ ]9 Q! Q  _, [& _1 t1 G/ ?% {; T% R
第九课. U- o- W7 k3 ^+ P; a
利用M2引擎 铸造装备 快速写合成4 H- q- k4 O) c& G! W6 I$ v# x: R- {
在mirserver/mir200/envir/ 下面的FoundryList.txt文档中; b# ~, ?  A4 t6 y: f* h
格式为:; V& E% {) s$ ?/ y0 g
合成物品 数量 成功率(100%) 需要物品 数量 失败是否消失 元宝 数量 失败是否消失
" \% }4 j# z! S2 N开天 1 100 屠龙 1 1 元宝 100 1
+ [& f: i- Y7 J* `NPC内的脚本格式为:
" n4 E& h2 F) j% d#IF9 S5 Z0 c# P( P! z' }% f6 D
CheckFoundryItem 开天
! H/ W$ q2 z; o#ACT$ \, P8 |( v5 x! p
GiveFoundryItem 开天1 N+ n  m1 T' O9 c5 N
SENDMSG 1 公告:$USERNAME 成功打造开天 一代天骄即将纵横出世!!颠覆整个玛法大陆!!!
! M9 ~4 |! s5 \" B#ELSEACT
" K' y1 n- `2 \, [5 W" NSendMsg 5 缺少合成物品%Item
1 I5 d: [$ a4 d3 V0 f2 ]4 f  e[@FoundryFail]
% D$ n  {9 N$ e#ACT
* q6 A: A2 N6 Q* j8 d/ v9 YSendMsg 5 合成 %Item 失败!
' e3 V9 Z* g% }# g合成装备脚本的快速写法-运用铸造功能写合成装备
' Y# m. B# r2 J# [, D; w8 E: u1 Y& ~
第十课
8 d/ t9 d! _$ {5 O9 N9 f人物头上的图标封号介绍
0 x% [) s3 g; D, `( Y8 [# d/ @2 o在登陆脚本中检查特定的人物 3 m9 [* E; F5 G- Q
然后使用ICON.WIL中的图片数字 * o' |* e# [3 w$ \- r
格式为:- U) w: ]  y8 V
#IF
8 o9 F; F! }9 n/ o[217] 1) w, _8 W% ^8 i" A; D
#ACT% v4 I  V1 `/ R" x4 r* q. Q
SetIcon 3300 1
8 Q. N0 o# }3 n5 }, X第十一课
1 n2 M+ q( r0 Q人物变色以及怪物触发功能脚本  S+ L8 ~- Q0 l
[@stdmodefunc*] *号为1-999 不可重复已经有的% k& L: `" l2 {6 x6 i  V4 y/ E' h/ M
同NPC脚本一样!
3 R, H( i$ ^& z( y" c: w2 ]#if
% `- W7 S1 ?) A% c9 \% S: I#act
8 a+ ~$ X# ]5 G4 \6 G#elseact6 a2 w7 A- V5 W
在mirserver文档写触发文档 格式为1 t' i7 g0 {2 u: b& l
假定人物不是变色的 那么 [679] 的标志位就应该是0继续检查幸运为多少+ [" p& o  ~+ C. R3 c4 p# C
如果满足9 就对
+ ?( V' x( _% l: X[@TAKEON1]
0 O" ?/ A$ B! h" a3 Q  @8 ^#IF' @# l6 E$ o; e- A5 K
CheckLuckPoint  9
, C2 g+ f* Q4 u9 }! [#ACT. r4 @8 D! Z8 F+ C  X  p
GMexecute TestStatus 4 65535 变成金黄色8 h: ^* v) d8 {0 S, g
SENDMSG 0 给力玩家 $USERNAME带上终极幸运套风云变色. H5 ]& b2 [* [! t$ S
goto @14 o& k- y6 h& [0 M$ ~
break
# N/ \' L6 f3 Z+ ]怪物触发脚本 4 B$ {+ d9 z( O7 o/ U* y
首先来到mirserver\mir200\envir 找到下面的MapQuest.txt - 怪物触发脚本# J) k& r$ \; X9 D
脚本格式为
! ]9 k" r& G- m: R! a4 o5 _地图号 怪物死亡触发序号 0 怪物名称 * Q0-Q800
+ S4 N1 V1 A  ^$ x4 B! G) [+ E' dmirserver\mir200\envir\mapquest_def1 P& x* o- ^* K) b- E
[@TAKEON2]
8 i0 g7 w1 K" @( q#IF
+ [; u+ V; `$ W- k2 d/ ~0 D. ycheckluckpoint  10
- h: r. i1 p; c, G- x; y#ACT% j. s/ m/ r6 U3 a% o) ~  f5 I/ [
GMexecute TestStatus 4 变回原来的
# r3 |5 ]7 W4 i1 Z9 g' b6 Pbreak; |, s. j. l% q/ z( r  m) K2 Z
这个因为我这个麦有问题 就先到这里 录像结束 等一下看能弄好就继续
3 ^# E- S+ Q9 H# o不能的话明天讲那个变色吧 也就是说一般传奇里面的 幸运9特征  f- Q- E( {+ ~
当人物达到运9的时候进行全服提示给他头上加上一个图标或者说把他的人物
# O$ W5 z/ E* m: \# w" j: ~; X变成黄金色或者其他的颜色比如紫色。9 y/ [3 J6 v) ?- P' }5 W
第十二课
& c( _1 T( q. l+ c沙巴克城战的添加以及攻城时间设定$ ?3 H  M; O; N$ q9 c- {- n9 T& R
在m2server上面点击 管理-城堡管理-沙巴克-攻城设置: w8 j6 A( H5 k, z* s
申请所有行会攻城-确定* \8 M4 X, v, a" N( I9 z
修改-参数设置-时间设置5 ]4 r; M! X0 Z& m
第十三课
7 T, O/ O0 A0 R+ N  Z自定义脚本变量
- B' f. J: F* K首先在QMannge当中产生变量 格式为:% v; n' \% S) Z5 m/ Q. `( m" S* o& c
VAR Integer HUMAN YY(变量名称)
  C) n6 _  a# c" p2 n加下来继续写读取变量,格式为:) w# `( F! s8 I/ r
LOADVAR HUMAN YY ..\QuestDiary\测试\Q123.txt
; a; n1 O" n) t) e) ^0 W- _在QuestDiary\测试 下新建一个名字为YY.txt的文档
0 k+ m1 c# ]. x接下来使用变量即可- C# ^2 o: C+ V% g7 J0 _8 B, l7 Z
详见使用说明书:自定义变量
% ]- H" b9 H" c% |4 m9 q% u9 i# x: v& }5 V6 u- Y
第十四课
! P9 R* x6 s4 v! Q9 g5 s7 D5 X4 _* `4 h游戏界面的修改以及登陆界面的修改  ?% ?, `( B- _7 }: _6 V) b
gameplan.wil
9 k, [" G2 V  B. W游戏登陆过场动画 103. J8 T3 u! m0 Q" _( b: {- f
游戏下方的窗口图片 53 70 98
% p* X, r1 ?4 L/ C! h第十五课: s, p" h1 _3 W1 H8 f' S0 e1 E
机器人脚本(也就是自动执行脚本)
" }5 a; |+ A! ~mirserver\mir200\envir\Robot_def/ l, k( E1 ]8 W& r, L# _* |
AutoRunRobot.txt 自动执行 RobotManage.txt
& e$ q, L( Y5 o8 ]+ m- N. @在AutoRunbot.txt 当中格式为
0 F* X6 [* L3 q$ e7 N#AutoRun NPC 时间类型(MIN分钟 ** / SEC秒数 ** / RUNONDAY **:** / RUNONWEEK *:**:**) @****(RobotManage.txt 脚本段)
( l/ _" {# c2 O, ?第十六课
& B0 H4 O! F5 y) _5 p, Y; t  m升级宝石的添加以及打不死的经验怪
: k6 O6 f3 I: L6 b2 @StdMode=57(升级符合类型的装备)
4 d$ i( T- k8 t0 hSource=(等于2); {- r2 u6 F. H8 ^, O6 W
Shape=(等于0升级符合类型的装备,指定类型时填写待升级装备的StdMode值)
5 v- @2 M/ N5 ^1 I2 k9 M& I, s注意:此类宝石只增加攻击,道术和魔法.* h8 m& r1 O  a/ ?) y$ F
DC2,MC2,SC2=(升级装备的攻击,魔法等,必须是可增加攻击和魔法等属性的装备才可以升级,例如:武器,项链等)
- E+ ^0 h* K5 s; G0 U2 }duramax为升级成功率 Anicount为可使用该物品升级次数
3 g. x! ?4 _% ~: L: |5 x1 D宝石类型6:
* C3 C+ Q, z* `StdMode=59(增加升级成功率)" z9 Z5 q- x) g( _6 I" L
Shape=(0表示所有类型,指定类型时填写待升级装备的StdMode值)+ g; N; F1 v! c7 z  l
DuraMax=(提高成功机率,例如:设定5即为提高5%的机率)& Z3 N- `$ y, K; ]3 N) g9 a

  D$ w' z) s, D1 U) O0 |把怪加在哪个地图 找到地图号 后面加参数 HITMON(@XXXX)9 p: K9 E7 O9 l
在QFunction-0.txt里加入触发脚本段 [@XXXX]
- s$ s# y# Y! Q8 h在万游设置器里添加怪物数据- E" M& C/ }* P2 A: h
攻击类型 120 攻击图像 18* I- b* D) m* ^5 F' p
checkhitmonname 怪物名字3 D: \( M7 a) q# ^7 r! K' n. ?
刷怪文件 Mir200\Envir\MonGen.txt
; c$ M( M1 L! S7 K+ i+ p8 M
* \- X# V& a6 `& j4 U实战效果课程7 g4 b, N3 k* n2 g& u
自定义变量 G A I S
# v6 P* D3 |6 i4 KG变量为数字型系统保存
! a% k. l5 d4 ~# h, T  m# VA变量为数字型脚本保存9 c' J6 q. @- e' m3 |6 F
I变量为文字型系统保存
! U5 n; u3 f# m; KS变量为文字型脚本保存; f0 Z1 {0 C4 }6 W
$变量名称
+ z6 C1 Z& I+ Z8 v3 a! B- \7 n9 c; _首先把奖励名额(变量)进行赋值 3 u0 U1 U, J9 S0 }) ^
首先我们把他所点击的等级移动到一个脚本保存变量
8 ?% x4 ^, Y% P2 @可以用S0 S0=他所点击的那个奖励的等级
( c( w- l, h) R6 u接下来检查该等级奖励名额的变量是否没有了 也就是等于0
/ a5 w( [" m7 u如果是的就进行一个 跳转告诉他领完了
4 O% j/ N: w& ~3 f如果不是的就跳转到 领取的地方 再进行检测 因为我们还没有检测他的等级 以及他是否领取过! ~3 A: ]6 r3 F; R' D
首先检测他的等级是否小于该奖励的等级(S0)  r6 c8 b5 F5 m# N0 \* Q* E
如果是的就告诉他等级不够 也可以使用 $STR(S0)等级不够. x7 r  ?6 C& s
再用break进行连接再进行检测+ T. C' B. ?" Y
接下来再进行检查他是否已经领取过 可以是标志位 可以检查文本文档
; f, l% N- I$ m/ e+ o8 b# fCheckNameList ..\QuestDiary\奖励\升级领奖\$STR(S0)级.txt$ X( w- e& C6 m6 K
如果他在这个文档当中就告诉他 他已经领取过$STR(S0)级的奖励了* ?9 \) o! T+ ]- g% V3 h; F/ e
如果他的名字没有在我们的那个奖励记录的txt当中的话 我们就让他去领取+ V1 _7 E% p3 j# A6 R* H6 O* y
下载地址:
2011-12-28 03:48 上传
下载权限:
版本vip会员
本地下载 检测资源   提取码: 需要终身vip或更高权限
有些游戏资源需要vip下载开通请点击开通vip
回复

使用道具 举报

全部回复0 显示全部楼层

发表回复

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

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表