作者laechan (小太保)
看板mud_sanc
标题Re: [讨论] 称号系统。
时间Fri Jun 4 10:15:39 2010
※ 引述《hlead (希多)》之铭言:
: 我觉得可以做个称号系统,
: 这样很多东西就可以更有吸引力。
: 称号,後期可以考虑附送属性之类?
: 像是杀巴哈100次可以得到"巴哈屠杀者"之类的称号
: 称号有啥用?很好看!哈~
: 大概多做个栏位来储存就好了?
: 然後称号可以列个表单,
: 让人选择要哪个称号,
: 每个称号都能额外增加不同的附加数值。
这个可以用一个档案存起来
一、s_rank.h
以 key name 对应称号的方式,例如..
mapping S_RANK=([\
"001" : HIW"巴哈"HIR"屠杀者"NOR,\
.
.
])
二、s_rank.c
用来储存玩家的 rank,例如..
S_RANK->set(names,({"001","005",...}));
S_RANK->save_room();
这麽做是为了...
一、离线阅览
例如有个地方叫称号查询所,则即便某玩家不在线上,
其它玩家仍可透过该查询所(读取 S_RANK)得知该玩家
拥有的称号。也可以透过称号查询指令→读取查询所某
函数→读取 S_RANK→query 玩家称号。
二、总存方便
例如将来若要变更 key_name(例如 001->s001),那只
需更动该总存档即可,而不用一个一个去搜寻玩家的档
案来更动、或是在 login 处设转换。
三、玩家档不用附加别的资料
因为称号通常是下特殊指令时才会看到的,跟战斗力是
类似的概念(战斗力就是读取函数而非设值),需要时再
读,不需要时就安静地存放在总存档中。
这也可以与天空城之家做结合,把资料存在天空城之家也是
可行的做法,即「有家的人才会有称号」。
目前实作上,xxx.h 都会放在 /open 下或某个 open 的目录
让大家都可编辑,或采另一种方式 include 大家的 .h 档来
让大家可方便扩增称号。
而总存档会放在适当的位置,储存方式有两种..
一、set("names",({"001","002",...}));
二、set("names/001",比方取得称号的时间);
set("names/002", .... );
还有一个重点,就是假设一个人拥有十个称号
问题:如何「很酷地」把十个称号展现出来给大家看?
目前有想过在 who -l 时,若有人拥有十个称号我就给它十行
的空间例如..
(第120级女性妖精玛法祭司) wser(Wser)
(第120级男性妖精战神司祭) 「巴哈屠杀者
白瓦镇屠夫
菲里德开膛手
罗德斯摧花辣手
.
.
.
圣殿皇宫画家
战神麦理的虔诚司祭
罗德斯首富」羿云身上的爱困无尾熊(Hmml)
(第120级男性妖精骑士) 水银灯(Angelwind)
至於称号需不需附加什麽价值,这是次要的。比方打死巴哈能
拿到武器,一般装备了 str+30,那如果是「巴哈屠杀者」的话
可能装备了 str+50 也可以。
Laechan
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.225.162.219
1F:推 hlead :恩...主要目的是让人有一些目标之类的... 06/04 13:32
2F:→ hlead :像是杀巴哈万次然後拿到一个称号...当别人看到这称号 06/04 13:33
3F:→ hlead :时,就会觉得你好屌!... 06/04 13:33
4F:→ aiggkimd :称号会加能力或是能使装备属性更高也不错. 06/04 13:42
5F:→ aiggkimd :比较有想拿的动力 06/04 13:42
6F:推 litears :ex:一拳打倒巴哈.十岁打倒龙骑士...etc 06/04 17:37
7F:推 hmml :咦~我是首富?是指尤加利币吗? 06/04 19:34
8F:→ hmml :圣殿极品帝王蟹:圣殿全任务攻略 这样? 06/04 19:35