iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 9
0
自我挑戰組

30天遊戲原型開發系列 第 10

Day9 mudlib研究: 區域

研究重生的世界MUD程式瑪,觀摩他們的寫法
今天大部分時間在弄另一邊的卡牌遊戲系列文,這邊相對內容會變少一點,請見諒

程式碼下載頁 from 重生的世界

目錄結構說明 在 \lib\doc\rwlib\旆+笠戌c (別問我為什麼是亂碼)

area, city 裡面幾乎都是空的,所以看不到什麼寫好的區域內容。我一開始是看 quest ,裡面有寫一些任務區域、任務NPC的資料。

區域範例說明:
檔案為 \lib\quest\old_farmer\room_1.c

#include <ansi.h>
#include <inherit.h>

inherit STANDARD_ROOM;

string help = @HELP
在這個平凡無奇的房間內並沒有任何特殊的資訊。
HELP;

void create()
{
    set("short", GRN"農舍"NOR);
    set("long",@TEXT
    這間屋子看起來十分老舊,木製的窗戶經過風吹雨打已經不堪使用。屋內的四
周擺放著各式各樣的農耕工具,但看起來似乎已經好一陣子沒使用了。在角落放著
好幾只空米袋,只見一位已經年邁的老農夫站在角落不停地咳嗽,似乎又累又餓的
樣子。
TEXT);

    set("exits", ([
        //原設定出口:"east" 	: ({ 50, 50, 0, "lightforest", 0, 0, "50/50/0/lightforest/0/0" }),
        //原設定出口:"south"	: "/quest/old_farmer/room_2",
        //該房間往東走後顯示座標是51,51,code設定是50,50。
		
        //以下為`06-09-07,由 tzj 遷位所變更的位置。
        "south" : ({ 74, 41, 0, "lightforest", 0, 0, "74/41/0/lightforest/0/0" }),
        "east"  : "/quest/old_farmer/room_2",
    ]));

    set("objects", ([
        "/quest/old_farmer/npc_old_farmer" : 1 ,
    ]));
	
    ::reset_objects();
    replace_program(STANDARD_ROOM);
}

房間的基本資料:
short,簡短敘述
long,詳細敘述
exits,出口。格式看不太懂
objects,設定區域內物件

之後再找看看有趣的東西,謝謝縮看


上一篇
Day8 中階LPC學習筆記 ch1-7
下一篇
Day10 mudlib研究筆記:簡易導覽、物件繼承關係
系列文
30天遊戲原型開發31

尚未有邦友留言

立即登入留言