本blog建議使用firefox觀看
本blog可轉載, 但請依創用CC規範
站長現在比較沒空玩mud了, 所以資料大概不會再更新了吧:)

目前分類:看Code心得 (6)

瀏覽方式: 標題列表 簡短摘要
事實上是舊聞了, 只是我一直還沒看
這個版本的日期是2008/01/23

有許多己開放的東西並沒有找到或者仍然是舊code
在lib/std/module/product/下應該要有工業產品的資料, 但並沒有跟原始碼一起放出來


以下是我之前發表的文章相關的變動

lib\cmds\std\ppl\collect.c
沒有變動, 但在1.0.2之後己經有變了, 等待下一版

lib\system\daemons\skill_d.c
沒有變動

lib\system\daemons\treasure_d.c
沒有變動, 怪怪的, 應該有變動才對, 採集己經拿不到書了

lib\std\module\room\research.c
沒有變動

有任何想知道的東西請告訴我, 我可以找找看

suzin 發表在 痞客邦 留言(2) 人氣()

這個檔案包括collect info指令, collect所花的體力, collect的行為
下面會講到後二者

首先看collect花的體力,
對於這種數量愈大就每單位愈多(或少)的行為,clode一般比較喜歡次方的寫法來調整
不過這裡用的是if_else_if的寫法,不知道是不是因為次方跟浮點數相對起來是比較吃系統資源的運算
而這指令很常用所以用比較不吃資源的寫法, 代價就是code會比較長

每次花的是COLLECT_STR_COST - skilllevel/4
其中COLLECT_STR_COST被定義成35
當採集技能100時, COLLECT_STR_COST - skilllevel/4 就會等於10
因此,
10個以下每個花10體力
20個以下每個花9體力
50個以下每個花8體力
100個以下每個花7體力
101個以上都是每個6體力

suzin 發表在 痞客邦 留言(0) 人氣()

RWLib 1.0.1 2007/05/14

此檔案包括技能列表跟升級所需經驗值

經驗值的部分,反正就是一條公式而己,不解釋了= =
(事實上我也沒看懂, 用這個公式推不出來現在遊戲中的數據)
裡面用到的 EXP_SHIFT 是7700
100級以上的部分目前還沒有用到(巨建嗎?)

suzin 發表在 痞客邦 留言(0) 人氣()

版本 RWLib 1.0.1 2007/05/14


這篇是種田的稀有物的機率,
重點在get_treasure_growth這個函式, 它會在grow harvest的時候被呼叫

這個函式可以分成二個重點,
一個是第4行的if決定機率, 接在後面的switch決定拿到什麼

決定機率的式子如下,其中用到的變數有 地等級 跟 int
以 地等=5 int=50 來計算, 機率大概是 1/15500 到 1/13500 之間

  if( random(18000 - growth_level*500 - me->query_int()*random(40)) ) return;

suzin 發表在 痞客邦 留言(0) 人氣()

版本 RWLib 1.0.1 2007/05/14


這裡面包含二個東西, 一個是採集資源挖到書的機率,
另一個是在農田牧場養殖(以下合稱種田)種出稀有物的機率
這篇講採資源的, 種田的另開一篇

挖資源拿書已經被改掉了, 所以這段code對現在的遊戲沒有幫助
不過我們還是看一下之前是怎麼運作的
這中間相關的變數有二個, 一個是角色的int, 另一個是每次採集的數量
式子如下

suzin 發表在 痞客邦 留言(0) 人氣()

版本 RWLib 1.0.1 2007/05/14


先看房間的設定, 每60秒心跳一次, 當然rw裡的60秒大概是現實的64秒到67秒左右

nosave mapping action_info =
([
    "laboratory"    :
    ([
        "short"    : HIC"研發"NOR CYN"實驗室"NOR,
       
"heartbeat":60,    // 實際時間 1 秒為單位
        "job"    : ENGINEER,
        "master": 1,
        "help"    :
            ([


suzin 發表在 痞客邦 留言(0) 人氣()