作者laechan (小太保)
看板mud
标题Re: [闲聊] 复制物储存系统...
时间Sun Nov 20 08:40:02 2011
分享一下圣殿的做法。
圣殿允许每个玩家可以申请自己的「家」,因此玩家除了自己
的资料档例如 laechan.o 之外,还会有一个家的资料档叫做
laechan-home.o,以及家的物件档 laechan-home.c。
那家除了可以储存「家」本身的资料外,也可以储存该玩家的
其它资料,例如农作物收成资料、自创技能资料、所养的马匹
资料等等。
这样就可以把玩家资料分两地储存,laechan.o 靠玩家下save
指令、或是系统在你执行一些动作完之後执行 me->save() 做
储存,而 laechan-home.o 藉由其它动作去储存,如收成农作
物时、物品仓库存取时、...
这样就可将玩家的资料分两部份储存,如此可避免 laechan.o
资料档的过於肥大。
至於物品资料的储存一般都是写在物品本身较多,或是让玩家
在做 me->save_obj() 时把物品的额外储存资料(如认主)也储
存进去(倚赖该物品有没有设定这类资料的储存参数)。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.26.181.222
1F:推 taily:我也是这样写@@/ 只有上述我才把它写入玩家身上... 11/20 17:07
2F:→ laechan:嗯嗯,基本上这样是可行的,而loading资料只在玩家login时做 11/20 20:16
3F:→ laechan:save资料时只在玩家quit时做,这样会比较没问题也方便 11/20 20:16