[wizs] 战争系统

楼主: laechan (挥泪斩马云)   2015-10-10 21:24:03
今天花了一点时间找当初有写好一部份雏形的战役系统。
(我同时也有发现 sgz 跟 soe,这个等 11 月过后有空再写)
目前看起来应该是在 /open/cmds/war/ 目录,架构大概是
/open/cmds/war/war.c 战役物件继承档
才写了 118 行,我想重写大概也可以。(主要是我忘记怎么写的)
/open/cmds/war/mob.c, gmob.c 呼叫出来的怪物样本档
这个保留大概可以。
/open/cmds/war/control.c 战争控制档
这个应该可以重写,因为 times_check.c 已经完成了,时间的相关
控制以后交给 times_check 去管理即可,control.c 的主要程式码
大概都是 times_check 的部份。
/open/cmds/war/felid1
菲里德战争的脚本档
title=塔塔克高地夺还战##
author=laechan##
date=2013/02/19##
def=
#define PIC1 "/open/cmds/war/pic/sanctuary"
#define PATHS "/d/tatak/room/"
#define MOBS ([\
"MOB1":([\
"level":100,"race":"坦克","id":({"felid tanks","tanks"}),\
"short":HIG+"菲里德坦克连"+HIW+"(Felid Tanks)"+NOR,\
"name":"tanks","chi_name":HIG+"菲里德坦克连"+NOR,\
"warexp":50,"ethic":-100,"wealth":500,"member":10,\
]),\
])##
step1_title=战争片头##
step1_shout=
<PIC1>##
step1_times=10##
step2_title=坦克连,出动!##
step2_shout=
\n\t\g菲里德远征军战败的消息,传回了菲里德国内!\o\n
\n\t\g梅可中将:\w坦克连出动!将高地夺回来!\o\n\n##
step2_clone=
set_mob("gmob",MOBS["MOB1"],3,PATHS+"016")
set_mob("gmob",MOBS["MOB1"],3,PATHS+"017")
set_mob("gmob",MOBS["MOB1"],3,PATHS+"018")##
step2_times=30##
上面可发现一些问题
一、脚本档的怪物定义内容太杂乱
二、定义的引用不太直觉
三、讯息的部份是个问题
四、我当初没规划 demo 的部份
不过大致上我已经知道我当初的想法是怎样。
这东西我在 11 月后也会开始写,这个也是扩大玩家参与创作的
重要系统之一,事实上玩家现在透过现有工具已经能参与底下的
创作:
一、区域(只需提供设定稿)
二、任务(只需写脚本)
三、副本(只需提供区域大致路线图及流程)
以后我的构想是连“战役”也能参与创作,只需提供如上类似的
脚本即可,战役系统写好后我打算以星海战争做为样本。
最后可以确定的是,这东西要写就要一气呵成去写,不然无法完
工。
Laechan

Links booklink

Contact Us: admin [ a t ] ucptt.com