作者laechan (小太保)
看板mud_sanc
标题[wizs] 区域搬移到 /area 下之准备
时间Mon Jan 5 11:09:33 2009
我昨天才想到一些新的问题...
一、/area 下分五种类, 房间、怪物、武器、防具、物品。
二、因为区域众多,所以 /area/房间 的部份可分不..
/area/room1, /area/room2, ...
例如主大陆的统一放在 room1 之类的. 要这样分的话最多只能
分到 room9(不希望出现 room10), 原则上 room1 就主大陆.
这样的好处是,名字同样叫 hole 的区域可以存在不同的roomX
中。
另外视情况也可以考虑把 room1 变成 r1 之类的尽量缩短路径
长度。(可识别就好了)
r0 则可以当做新手镇。
二、/area/装备 与 /area/武器 就照先前所说的依种类分目录存放
,某些装备种类名称过长的(如 necklace)要尽量改短, 这麽做
是为了缩短路径长度.
三、/area/物品 的部份就大致分为两种,一种是 /area/vobj,存放
虚拟物品指向的实体(非继承 OBJECT 的),另一种就是纯粹的实
体物品。
四、/area/怪物 的部份要讨论,原则上我希望以後有个统一的怪物
库,尽量不要再写新的怪物,直接从怪物库引用怪物即可,但因
为圣殿的怪物种类非常多,有两种方式...
1)对怪物做分类(类似区域房间的分法)
2)缩减怪物种类(例如血肉与八卦使用同一种怪物,这只是例子)
但不管如何因为怪物种类还是会很多,所以还是得做适当的分类
五、昨天梦到的新结论是,以上要执行,有三种方式..
1)完全手动去做 <= 不可行
2)完全用程式去 auto run <= 不可行
3)半手动半程式自动化 <= 这才是可行的
所以在进行区域搬移到 /area 下的工作前, 有些工具程式必须先
写好, 包括跑出需要 cp 的档案清单之类的, 以及 cp 後自动为档
案做注记之类, 因此可能需要做 read_file, write_file.
另外底下模拟菲里德的情况..
房间: /area/r2/felid/050.c
怪物: /area/npc/man.c
/area/mob/bat01.c (例如 bat01~09 代表等级不同名称不同的蝙蝠)
/area/gmob/bat01.c (例如 bat01~09 代表各种不同群体数量的 bat)
装备: /area/eq/mask/01.c (可以不用介意等级, 先以 loadall 做成的排列为主)
武器: /area/wp/sword/01.c (同上)
物品: /area/vobj/r1/a01.c (怪物掉落物)
/area/vobj/r2/q01.c (任务品)
/area/obj/stone.c (实体物品)
由上面可以再发现,虚拟物品的编号部份要再仔细衡量,原则上一个
整合区域(如 r1),其掉落物最多 99 种(即怪物最多 99 种就好),但
是若爆表的话可以改用 b01, b02, .. 继续编。我是不希望有爆表的情
况. 至於任务品,单一整合区域 99 种应该够吧?
Laechan
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.131.226.93
1F:→ laechan :另外编号部份可能也可以像mob那样编,即bat01对映到 01/05 11:38
2F:→ laechan :vobj 下的 bat01 之类的 01/05 11:38
3F:→ laechan :因为掉落物虽然可能与rX有关,但其实跟mob比较正相关 01/05 11:39