iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 6
0
自我挑戰組

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

Day6 LPMud介紹-2

//今天比較累,沉澱一下補充力氣。為了讓自己可以撐過鐵人賽,寫作方式會調整一下

LPMud的特色是遊戲內容和系統是分開運作的,wiz(遊戲開發人員)可以在系統運作的情況下編寫、更新遊戲內容。

LPMud的實作是在底層寫一個虛擬機,由它負責處理遊戲內所有的物件。

LPC[1][2]是LPMud虛擬機所使用的語言,跟C語言很像,只是增加了一些C所沒有的資料類型:array, object, mapping, function, buffer 提供更強大的語言抽象能力。
//LPC跟C還是存在蠻多不同之處,開發時還是需要注意一下。

在lua, python 這些動態語言還沒出現的1989年,LPC算是當時很潮的動態語言。

以現在角度來看,學LPC最主要是學習別人怎麼弄系統架構的。雖然實用性應該不大,但理解架構還是不錯的。然後也可以順便學一下虛擬機(直譯器)是怎麼實作的?

概念:
driver,底層在跑的虛擬機
mudlib,上層的遊戲內容

LPC的函數分成四種:

  1. apply
  2. eFun
  3. lFun
  4. sFun

今天先這樣,明天再繼續研究

參考:
[1] LPC語言
https://www.easyatm.com.tw/wiki/LPC%E8%AA%9E%E8%A8%80

[2] LPC基本简介(底部有系列文)
http://mud.gameivy.com/a/a2.asp?B=310&ID=5697

推薦系列文:


上一篇
Day5 LPMud介紹
下一篇
Day7 基礎LPC學習筆記 ch1-2
系列文
30天遊戲原型開發31

尚未有邦友留言

立即登入留言