切換
舊版
前往
大廳
主題

淺談模組編程中的IEEP。

格子@懷念光牧的社畜 | 2015-07-17 00:18:48 | 巴幣 208 | 人氣 197

IEEP,IExtendedEntityProperties。
擴充實體資料。

今天來淺談IEEP的重要性。
-
我們首先只需要知道IEEP是由cpw跟mithion所設計出來的一個系統就好了。
根據Forge Documentation的內容表示。

這個參考可以讓我們把自定義的資料存儲在Entity實體當中。
-

簡單來講,IEEP能夠在一個周期(45秒)內,不斷的作儲存的動作。
不斷的把資料讀取、儲存在Entity的Properties當中。

然後當玩家離開伺服器/世界時,自動寫入該Entity的物理存儲空間(硬碟)。
-

使用的時候其實是具有一定的門檻限制。
因為IEEP所使用的儲存媒介是NBT系統
即為所謂的 具名二進位標籤(Named Binary Tag)。
→在此我是採用個人的翻譯,可能跟各家理解不同。
-

NBT對很多人來說可能是一個非常陌生的東西。
但是其實很多人都在跟這個東西打交道。
例如伺服器地圖檔world/playerdata資料夾裡面的.dat資料們。
就是記錄了玩家這些Entity的存檔。
知識點    → 在1.8版本,識別玩家的方式變成他們身上的UUID,所以存檔也改為UUID來命名。
知識點二UUID,通用唯一識別碼,碰撞的機率極低,每秒產生10億筆UUID,100年後產生一次碰撞的機率是50%。
-

講了這麼多,到底對於Forge編程有甚麼好處呢?
-

說白了,當你費煞苦心的在尋找著恰當的方法來進行自定義資料存儲。
其時還有一種方法更加安全、便利、而且不用資料庫。
→ 當然這裡是指你沒有要打造分流的情況下來講。

只需要建立簡單的封包傳輸。
還要準備一些準備儲存的資料。

你就可以儲存在任何的Entity身上!
-

爾後如果我們有機會,再來介紹如何打造一個完整的IEEP系統。
-
參考資料:Wiki 維基
-

寫在最後:
這兩天在構築一些跟存檔有關聯的系統。老實說還蠻不容易的。
達成目標的成就感很高,目前大概就是坐等美工組的配合了。

閒著發慌所以就上去板上晃了兩三圈,發個回覆、留了兩句賺點存在感。
不過我會坐在這邊好好的打一篇文章,真的讓人有點失笑。

雖然我不太懂巴哈生態,但是總是想找個地方紓壓一下。
希望小屋不會爆炸。


說在前,我真的不喜歡插件。只限於用插件嘗試營造出半成品的特色系統。
Essentials、Co、Lockette這些都有其存在價值。但是使用插件建構一個MMORPG?

Sorry, I don't think so.

所以其實看到一些標榜著RPG插件還是甚麼副本插件的,當下時常會一陣不認同。
當然也只是不認同啦。畢竟這種要不得的心態不是很方便表露出來。

趁著最近那幾篇文章沉掉了,我發了小牢騷就是了。

有印象的之前曾經出過兩三偏類似「插件心得文」的東西。
一沒上心得,二沒解說概念。讓人還蠻摸不著頭緒的。
當然沒有人有必要上心得還是解說甚麼鬼的。

但是一路看下來,其實那樣一篇文章是毫無意義可言。
當下給人的感覺其實就是,「來圍觀囉!」,接著,

「嘩!~不明覺勵!」

這其實還蠻糟糕的。講的難聽一點這感覺就像是在討拍一樣。

所以今天我也來跟個風,發了一篇沒甚麼意義的IEEP。
希望諸君笑納。

創作回應

相關創作

更多創作