软件简介:- F# v; I9 g8 c! U) ]
教程第一课1 \( B% T0 q& g: D; M6 e
DBC2000数据库的介绍以及单机游戏的架设以及外网游戏的架设方法
2 m& R0 d6 J% l$ x安装DBC2000数据库
) T; @% n/ p8 Q! x+ S建立DBC2000数据库与服务端mirserver/mud2/DB文件夹的数据库连接
" t! z5 ?7 p1 n8 Y9 ?启动Gamecenter 选择控制向导 数据库名称 heroDB(对应DB数据库名称)0 K1 i1 u" r8 }7 B$ f
填写服务端路径 并正确填写DBC正确路径$ d2 @) D' Y r0 q* {
内网IP地址为 127.0.0.1
0 B2 t: `: a/ e2 h; z查询外网IP并填写启动服务端
) l' O- G- B4 o5 g5 [7 |! Jwww.ip138.com
$ {# T& U9 D/ K/ v填写我们查询到的IP地址并启动服务端4 Q+ J& p; q2 G7 w- I
架设外网成功0 Y% H8 `, g4 |4 W( j7 D9 c3 C2 P& g k
: E5 ~5 G& ~9 q3 B5 @. u
第二课
$ D- b) S. }. b( {' N$ R% q游戏NPC的添加 NPC脚本代码对应位置) Z7 F% S% { N; G4 }: p6 n7 a0 K
找到mirserver/mir200/envir/MerChant.txt% j/ |* C2 u* d; J0 t; W
在最下面添加NPC
8 Z7 j- f! b" M4 ?$ I" O* @Market_Def下面的哪个文件夹/脚本文件名称地图号 X坐标 Y坐标 NPC名称 NPC外观代码! I, I) p9 H- G N4 ]% D3 C) Y
脚本文件开头
! T- o) n5 E x* l3 o v+ E; K4 _[@main](所有脚本通用开头)0 j! @% I( e9 D
脚本代码详见传奇脚本代码文件 Q) p6 ?1 L% {- F5 ~3 S6 i' Y) }
9 u; E* J, n+ ?; O7 O: ~% l E
第三课
7 U! a3 y( n+ X1 F; u* i1 p装备属性、隐藏属性代码、套装功能、装备名字颜色代码。
; ^' D% j7 F$ b6 ]( b装备属性使用万游编辑器修改 隐藏属性(万游) 详见M2引擎说明书物品代码表
0 u5 a+ \+ j, W# _# u/ g套装功能对应M2server - 查看 - 列表信息 - 其他设置 - 套装功能
' m. \" E+ V! q# \# a4 i. Q0 `套装功能中套装编号对应数据库 (特殊属性栏数值) 套装属性为10-200
8 e1 P! J+ m2 T3 G* E$ B& h6 a& M, G+ T x Y/ E8 P
第四课. Y7 Z( C: V# I
脚本的编写、登陆脚本、实战冲级奖励的编写。
: E# Z, E% C! t- x/ {8 `) K脚本文件对应NPC创建
1 Q# V, m" Q( _6 p, r1 F以[@main]开头
; p. W8 }( l4 g2 [下面一#IF开始 #ACT执行 #elseact否则执行
4 {: d6 [- ]+ g7 v登陆脚本6 X+ ?. o( Z: o
mirserver/mir200/envir/MapQuest_def/QManage.txt
! U0 p) W" j- m* Vsengmsg 0 全服提示 谁谁上线
& k5 d* \( ]5 l3 r第五课
/ L' k8 H5 f" r, E/ F装备外观的添加计算方法、以及装备内观
5 l" t2 `+ T1 M" ?8 ]& w工具:wil编辑器
6 M% Y: l% X9 }) Q% l# g背包物品外观在items.wil 掉落地上的外观在dnitems.wil 装备栏的外观在:stateitem.wil' k* e* c9 Z8 c# Z
武器动作在 热血传奇目录:Graphics下 weapon文件夹代表武器 human文件夹代表衣服9 c" [; R- R' W& m# U& r. q: w
文件名字对应万游中武器衣服的外观代码
/ w6 S6 y5 z" B0 x5 B% @ b补丁文件后面加1的情况 HERO的引擎是图片代码+10000* ~. p/ j- Y4 h2 S0 |
NPC外观代码,
O5 u7 [5 W. Z ]6 B8 I" k怪物补丁的计算方法以及添加怪物
. G; Z/ \* S; ?+ m2 Dmon*.wil (*-1)X10= 然后WIL编辑器打开怪物文件
7 Q8 Z9 s) b' E' F& nmon14.wil (14-1)X10=130 蛇蝎=130赤月恶魔=131幻影蜘蛛=132+ }# u6 ?% W9 R: A) b
第一个怪物就在个位用0 第二个用1 依次类推
+ g& e- j) u, W0 v( m怪物补丁为热血传奇目录下面的DATA文件夹下MON.wil-mon99.wil文件
: L$ p7 K+ j2 @7 a o3 `攻击图像详见传奇怪物攻击图像代码
9 S/ B& w$ E: [/ t" z: X3 ~具体怪物攻击带特殊属性详见攻击代码
/ @% ^& B, y8 y; ^) z4 q& p% U人型怪物1 U' y7 W5 g& O- K
[BaseInfo]
& k) H1 r2 L+ ^. s/ y;职业
- _( k% F1 C3 A- A5 B zJob=00 i; u4 N. D' ?7 E
;性别2 V; e3 l' a- q9 E
Gender=0: C$ e# z3 t, F
;头发
8 n* O8 v: N1 Y# V- ^' }: [- _Hair=0
5 {1 y7 s0 v0 |* z;使用魔法
3 J" O2 A" O, Z6 {$ x, p;注意:人形怪必须有相关技能才可以正常使用技能.
9 |2 M) v y3 a( e0 i; x3 n) MMagic=基本剑术,攻杀剑术,烈火剑法,野蛮冲撞,开天斩,逐日剑法,刺杀剑术刺杀剑术7 Q( u# T1 I% w1 [' G; N( ?- u
;是否掉了身上物品 0=不掉 1=掉落) {8 V' g: m8 ^7 T9 I1 d' ?7 I
DropItem=0
( u: m1 R- r% T5 z+ C;活动范围,0时不限制活动范围.超过活动范围自动返回出生点.
: n( J( Z) c% y4 K7 `- RTerritory=0
4 Z C' ^9 F/ R/ C) F: [% Q;是否允许挖去身上装备1=0,0=否, \+ p* D3 U$ x, x! [ F0 j& s
ButchUseItem=1
0 T* j# I( U j$ c& R7 g \;挖去身上装备几率:0为百分百,数字越大机率越小. k; C: k/ ?- J- o
;注意:设置0并不代表可以100%挖到身上物品.
3 }. d: Z; w5 E* L* aButchRate=80
0 ]" v0 b+ Q( ]3 h[UseItems]5 _6 |. l* q0 g5 s4 n: [8 t
;衣服) h$ F; A& z( ~, |' s! a
DRESSNAME=主宰神甲
2 ]* c- _6 b# U! M& A;武器2 R6 g5 X* L ~- b- k# y) R
WEAPONNAME=倚天3 _- i8 [7 n( r2 S2 d5 l+ E) S" {* j
;照明物- f" o8 t# o5 ]# D' F# R p; ]( m
RIGHTHANDNAME=虎威战勋
. z/ Q) O' f5 O3 b: G;项链4 ^/ q7 P' m# q, P5 N8 h
NECKLACENAME=虎威项链(战)
9 k- i- O/ }/ C, |+ d) [9 f;头盔; e$ K. u$ }) W3 ?6 [; F0 L
HELMETNAME=虎威战盔0 L" k, P8 u' Z- s9 p( ?
;左手镯
" ~7 F' q& y4 R! j% CARMRINGLNAME=虎威护腕(战): e# }! p8 _/ X( w/ u+ k
;右手镯
( C. N; g* X* b) u( R! \ARMRINGRNAME=虎威护腕(战)( V; u2 {. d: F3 r/ f* V
;左戒指
2 y' k6 U6 p% M* FRINGLNAME=虎威战戒7 x1 J( o$ z, A/ Q+ A5 V4 R. |3 A- W
;右戒指
: \4 Y: T: N/ a/ H9 A$ w# |RINGRNAME=虎威战戒
- V9 D3 b4 v' ~ H b9 B;物品
p3 `+ s* Z7 KBUJUKNAME=7 q h7 E# b' U0 q' g) w5 b( d
;腰带& G. B" [) }/ d% }9 R# S6 k6 _
BELTNAME=虎威腰带(战)
6 v& Z5 E) N, p0 P4 z! k+ o;鞋子* t' r3 d2 V" ^5 O# Q& ~! l/ F: V
BOOTSNAME=虎威战靴
: V( g; K- Y1 I' l o3 O;宝石) T: T7 s1 ~) X! R, \5 Z, d8 b
CHARMNAME=虎威战石
: X, Q/ o+ n+ o# i* S;死亡掉装备几率 数字越小掉装备几率越高
1 C1 U2 [1 c( xDieDropUseItemRate=500( L, W! z/ W3 R' S! X! Z G
第六课1 r) ^- ^8 }1 @3 f& R
地图的添加以及地图限制代码的方式、地图与地图之间的连接、地图刷怪
) a/ O5 I8 X+ X! S8 ?首先把地图素材修改名字(字母跟数字组合)然后放到mirserver/mir200/map当中
3 w" X$ ?9 a& S3 `$ {9 c1 Z. o$ H地图信息添加在mirserver/mir200/envir 下面的MapInfo.txt当中
+ Z5 ^6 E% X \5 D9 e9 O格式:[地图号|地图文件名(地图文件在mirserver下面的mir200下面的MPA文件夹) 地图名称] 后面以空格跟上地图限制代码或功能代码
2 q. a0 c9 b2 B9 L加入盟重土城地图
- \6 ~3 W7 |. h2 x; s# c4 D找到我们盟重土城调用的地图文件,按照上面的格式添加地图
, `& R j' j5 R( F X4 B6 b5 ?8 [8 c找到我们需要进行连接的两个地图的地图号
. o4 z) f R2 c, L4 |A地图号 X坐标 Y坐标 - B地图号 X坐标 Y坐标% A# I' W; A2 j$ s6 d
刷怪:6 `- C& A% u1 `3 c& G- B
地图号 X坐标 Y坐标 怪物名称 刷怪范围 刷怪数量 刷怪间隔时间(分钟)* r( S' `! z; [6 u0 A5 l
! ?) l- z T7 m) a$ y$ l第九课
! K% B+ M0 j W; b8 a利用M2引擎 铸造装备 快速写合成/ L+ x# H1 E- F
在mirserver/mir200/envir/ 下面的FoundryList.txt文档中
5 i6 `. v" U d/ X& ]( i2 o格式为: M$ f6 [( m. g5 v! X" R- _
合成物品 数量 成功率(100%) 需要物品 数量 失败是否消失 元宝 数量 失败是否消失; T1 k8 U: a+ _* H) k
开天 1 100 屠龙 1 1 元宝 100 1# x5 h- F6 a1 k- K. m
NPC内的脚本格式为:
9 l9 _+ p: O4 ~6 o3 W#IF. G) x: s5 Q$ _4 G6 l8 t3 N8 {: Q
CheckFoundryItem 开天/ E* f8 z5 b, w' D
#ACT2 u+ c j$ ~; B5 w' Z7 B, q
GiveFoundryItem 开天8 l+ }! |: X0 f9 _8 {
SENDMSG 1 公告:$USERNAME 成功打造开天 一代天骄即将纵横出世!!颠覆整个玛法大陆!!!+ j2 X7 ^8 g0 q M6 T
#ELSEACT j+ g$ V2 Y0 k1 u
SendMsg 5 缺少合成物品%Item
) A) c( {( @4 @" J2 b[@FoundryFail]2 \+ ^7 Q8 s3 C2 Q
#ACT
5 n1 Y( T- A6 I# M2 P2 Q7 rSendMsg 5 合成 %Item 失败!4 N6 x; Y. ?4 [ j% C& l6 O I C
合成装备脚本的快速写法-运用铸造功能写合成装备$ Y# k& p) V: x" s9 r
! n& e. W" f' }) u6 G. w
第十课
; f, G# y% M3 M$ ~& ~" o9 o人物头上的图标封号介绍
( Q) o/ E; ^6 O在登陆脚本中检查特定的人物
6 w+ p+ v+ W* J1 R然后使用ICON.WIL中的图片数字 + j3 }2 u+ Y6 i5 A) o
格式为:
6 I8 W/ Y3 I3 b8 E0 N P7 _* x#IF# o) ~7 i+ c9 V1 o8 X
[217] 1' d. [. K2 Q% p
#ACT; Z4 l$ X! \0 S) B- c# g" d
SetIcon 3300 1! f+ ]. N: T. R& Y s7 D
第十一课$ Y- A$ g, m3 P/ x A- b/ x* v
人物变色以及怪物触发功能脚本
; z5 l2 {5 S4 z( Z[@stdmodefunc*] *号为1-999 不可重复已经有的, W5 K n- ?& [) S, {1 k3 L3 F
同NPC脚本一样!' Z6 q( k f4 T5 P: i
#if
( U! `8 q1 c9 l4 L& k7 E: l: w1 M) ~#act
( F! L+ }- x9 c7 m#elseact4 |6 y5 B: G; z
在mirserver文档写触发文档 格式为. {6 r2 N" Q1 Z3 m) d/ O6 S
假定人物不是变色的 那么 [679] 的标志位就应该是0继续检查幸运为多少
! N: M0 V1 f) G. j( R+ y; f# L如果满足9 就对
7 w+ X# t2 J( G$ C) Y8 [4 v+ L[@TAKEON1]' Z1 f# N. z" B! z' Z3 U
#IF3 h8 \) G- ]- E: ?9 L! N6 V
CheckLuckPoint 9
3 C/ U( R, d' b8 o r" N#ACT; s0 w2 R) Y. W) D7 i
GMexecute TestStatus 4 65535 变成金黄色) T! |4 w3 t& B2 I$ D
SENDMSG 0 给力玩家 $USERNAME带上终极幸运套风云变色/ x2 ^0 o( t) ]+ ] A9 M/ O
goto @1
- m7 Y t9 M @. _$ u5 Rbreak
8 c3 l2 t3 s: R" p怪物触发脚本
* P ~3 c! J( F( R. m首先来到mirserver\mir200\envir 找到下面的MapQuest.txt - 怪物触发脚本
M" `* D5 `" B- q& t脚本格式为: V; d' Z! P8 e5 M% F
地图号 怪物死亡触发序号 0 怪物名称 * Q0-Q800) |% v4 K1 b' C, r+ C3 t& z! X% P0 J
mirserver\mir200\envir\mapquest_def
. N2 }7 ?0 u1 j[@TAKEON2]
# n+ v d$ ~9 p#IF' k2 i1 m2 I9 a. N' Y5 d; g
checkluckpoint 108 G* K' |! I( x5 a1 t+ ?
#ACT
& A+ q8 c8 ~8 H& B7 b4 Q' D' mGMexecute TestStatus 4 变回原来的
7 L( A1 U( m( y& u) S/ P( \% |break, P' H7 Y3 U, [# w" W; a+ f
这个因为我这个麦有问题 就先到这里 录像结束 等一下看能弄好就继续 . X3 e7 G9 e% u( `4 M0 E: P- K5 w; U
不能的话明天讲那个变色吧 也就是说一般传奇里面的 幸运9特征
% t* E0 W) H& b6 i4 q, E, w* U当人物达到运9的时候进行全服提示给他头上加上一个图标或者说把他的人物
# G5 I/ f5 G) n7 Y& N# D变成黄金色或者其他的颜色比如紫色。' e$ E1 D% v. b5 ]0 `/ P; T
第十二课
; x" n6 y" R6 F/ t9 [! M8 F3 Q2 g0 F沙巴克城战的添加以及攻城时间设定) [& [+ n i4 t. R2 I4 a
在m2server上面点击 管理-城堡管理-沙巴克-攻城设置" p+ ?. r; \. N
申请所有行会攻城-确定
% M" }+ R- ]! P& N+ u修改-参数设置-时间设置3 T$ f8 A& O/ @' V
第十三课! \, a; A r# R4 o7 H
自定义脚本变量2 E A# p) r$ `9 U
首先在QMannge当中产生变量 格式为:
5 U# j; o( H4 VVAR Integer HUMAN YY(变量名称)- h' ], o, S% [$ q3 v2 R! P
加下来继续写读取变量,格式为:9 @' S. b8 i' r
LOADVAR HUMAN YY ..\QuestDiary\测试\Q123.txt m1 c e6 r( L# j. G) x' l* x
在QuestDiary\测试 下新建一个名字为YY.txt的文档
$ V$ Y0 L# a. H$ a1 @- q接下来使用变量即可% G" Q. Q! r) @6 M
详见使用说明书:自定义变量
" \. w2 ~9 M& H; h( @# \
( x- A. n! Q# X: k/ m! k1 U第十四课7 s" [' a, _+ N9 s
游戏界面的修改以及登陆界面的修改
8 S4 U9 q3 b% ^gameplan.wil
) v8 `$ @; U) I$ t5 @# l, [: n, z游戏登陆过场动画 103* A/ Q$ `5 \( W& Q
游戏下方的窗口图片 53 70 98
) v6 r. \. U+ p; b; D' ]; l第十五课
" \/ ~& L7 \( Y# r7 w机器人脚本(也就是自动执行脚本)
# ]9 C0 ^, w; S, y6 Lmirserver\mir200\envir\Robot_def
" s6 Q+ [1 E0 o. Z, a. x* e; @ jAutoRunRobot.txt 自动执行 RobotManage.txt) s( O* P4 Q7 W9 `
在AutoRunbot.txt 当中格式为
& z% \: j0 y, J5 f I. _2 f#AutoRun NPC 时间类型(MIN分钟 ** / SEC秒数 ** / RUNONDAY **:** / RUNONWEEK *:**:**) @****(RobotManage.txt 脚本段)% q) O% I; \; a/ Y
第十六课* G+ U T( f9 M* R! _5 A+ a
升级宝石的添加以及打不死的经验怪
- o! {* r* U8 S* U% C' KStdMode=57(升级符合类型的装备)
2 r/ y. w( @' b sSource=(等于2)) T7 D4 o2 L# ]9 h4 [/ d7 x8 M
Shape=(等于0升级符合类型的装备,指定类型时填写待升级装备的StdMode值)
. J8 R9 z, O. M5 e注意:此类宝石只增加攻击,道术和魔法.
( J- s& q+ R+ H$ F, k/ D& m! J4 SDC2,MC2,SC2=(升级装备的攻击,魔法等,必须是可增加攻击和魔法等属性的装备才可以升级,例如:武器,项链等)
d8 A1 a# _2 f9 A: S3 Nduramax为升级成功率 Anicount为可使用该物品升级次数
! ?7 n0 Y6 o* k( h" c7 C宝石类型6:6 {9 m, T; ]7 v4 o/ Q
StdMode=59(增加升级成功率). F% S+ `: X' p1 T' `- T+ j
Shape=(0表示所有类型,指定类型时填写待升级装备的StdMode值)6 r% k/ K5 Q4 d4 G
DuraMax=(提高成功机率,例如:设定5即为提高5%的机率)
1 l f& B! |1 |7 x' \" {! T$ a3 }8 P7 {; v# D
把怪加在哪个地图 找到地图号 后面加参数 HITMON(@XXXX)7 G7 }4 j3 o; O% P& B( e
在QFunction-0.txt里加入触发脚本段 [@XXXX] a) n1 p1 ~7 m( A# c
在万游设置器里添加怪物数据
- F/ m& Z; M( v) ^' [1 K! |& M- ?攻击类型 120 攻击图像 18* ~4 H' q% X+ E
checkhitmonname 怪物名字
& ?. p5 p0 x% k' s刷怪文件 Mir200\Envir\MonGen.txt
& q9 f, \( X/ a5 V- ^6 ^5 c
@; l3 T* J) A2 V' r- Q' L- Z实战效果课程
4 S4 p0 b* ?2 t& T自定义变量 G A I S " H% g" m: _7 o8 w a) ]2 i3 x
G变量为数字型系统保存
/ n. a$ ?8 W4 \) F5 W+ a+ @A变量为数字型脚本保存
' i( T; Y6 `- R/ Y2 AI变量为文字型系统保存
b3 {" f% A, @2 lS变量为文字型脚本保存
% F+ l* {. K$ k4 W0 r( q/ I9 ?$变量名称8 P k9 O4 I- Q0 J0 J0 v
首先把奖励名额(变量)进行赋值
! |* u; r, {. ?- A6 w! d/ i首先我们把他所点击的等级移动到一个脚本保存变量
2 m1 X% |9 V& \$ {( e" v; ^) I可以用S0 S0=他所点击的那个奖励的等级
$ c5 `; J, U( y- `) n) I4 a接下来检查该等级奖励名额的变量是否没有了 也就是等于0' P0 C5 Q8 G; l' `5 W
如果是的就进行一个 跳转告诉他领完了
: c2 N+ o4 ^8 z1 B# t; u! V! T& h' @如果不是的就跳转到 领取的地方 再进行检测 因为我们还没有检测他的等级 以及他是否领取过$ c7 Q& \# V, S: h. A; S
首先检测他的等级是否小于该奖励的等级(S0)! q; r$ R9 o- O
如果是的就告诉他等级不够 也可以使用 $STR(S0)等级不够, P3 f" v. b( |
再用break进行连接再进行检测
7 G4 e( i3 s$ ^/ N2 ]接下来再进行检查他是否已经领取过 可以是标志位 可以检查文本文档
& _. W" w8 o" E3 S# B* Y0 |CheckNameList ..\QuestDiary\奖励\升级领奖\$STR(S0)级.txt; A n9 `5 @6 L5 p- |0 j" R7 `; v
如果他在这个文档当中就告诉他 他已经领取过$STR(S0)级的奖励了
+ Q0 D/ W. b. L. \2 |) C1 f. K2 G如果他的名字没有在我们的那个奖励记录的txt当中的话 我们就让他去领取0 v1 |5 c0 p0 j" ?5 ^8 v& U& P
下载地址:
|