mud 網頁連線的開發 (以es2系統為範例) - MUD Game

Jack avatar
By Jack
at 2018-12-14T00:20

Table of Contents

由於現在運行中的 mudlib 不方便公開 source code
所以我拿 es2 v1.3b 的 mudlib 來做 demo

完整的 source code 放在 github 上面, 網址是
https://github.com/jrealm/fluffos-web-es2

搭配使用的 mudos 是我修改過的 fluffos, 一樣也是放在 github, 網址如下
https://github.com/jrealm/fluffos


網頁連線主要是透過 websocket (以下簡稱 ws) 運作的
以下是 mudlib 修改的簡單說明:

/adm/etc/es2.conf
es2 的主要設定檔
需要開啟 ws port (這邊我使用的是 4001 port)

/adm/obj/master.c
理論上這個檔案應該是不需要修改的
但 es2 在 connect() 裡面加上了 port 的判斷
只能也加上 4001 port, 否則會無法連線

/adm/obj/simul_efun.c
1. 增加 base64_encode(), sha1(), trim() 三個 sefun
進行 ws handshake 步驟時會用到
2. 覆寫 query_ip_name(), query_ip_number() 兩個 efun
用來取得 ws client 端的連線 ip

/obj/login.c
1. 修改 logon()
ws 連線需要多一道 handshake 的手續, 完成後才能開始登入程序
2. 新增 process_input()
處理 ws handshake 手續
這個 function 是整個 ws 連線的精華, 有興趣的板友可以參考
https://en.wikipedia.org/wiki/WebSocket 的 "Protocol handshake"

基本上 es2 系列的 mudlib 只要修改上述幾個檔案
再配合使用 fluffos 2.2x 作為 mudos
就可以提供 web 介面的連線方式


live demo 的網址是 https://demo-es2.muds.me/

之後有機會再跟大家分享
1. 瀏覽器使用的 html/js/css (有興趣的可以先自行查看網頁原始碼)
2. web server 的設定
3. mud 在 web 介面上的延伸功能, 如即時地圖/角色狀態監控...等功能

--
Tags: 線上

All Comments

Harry avatar
By Harry
at 2018-12-18T07:48
感謝分享!
Jessica avatar
By Jessica
at 2018-12-22T15:16
M起來
Catherine avatar
By Catherine
at 2018-12-26T22:44
推推
Erin avatar
By Erin
at 2018-12-31T06:12
Dorothy avatar
By Dorothy
at 2019-01-04T13:40
M一波!!
Sandy avatar
By Sandy
at 2019-01-08T21:08
應該不會用到了但是謝謝分享
Lily avatar
By Lily
at 2019-01-13T04:36
還以為ES2回來了,玩了有滿足感
Belly avatar
By Belly
at 2019-01-17T12:04
可惜網路上找不到完整版的src
Cara avatar
By Cara
at 2019-01-21T19:32
機器還在只是有沒有人要拿而已吧 XD
Eden avatar
By Eden
at 2019-01-26T03:00
有src我就可以架給大家回味
Genevieve avatar
By Genevieve
at 2019-01-30T10:28
感謝分享

SCLxLogitech 世界賽線下觀賽活動

Frederica avatar
By Frederica
at 2018-12-13T22:06
https://i.imgur.com/WRXPWpy.png 情報來源:SCL FB https://goo.gl/fGyWnY 情報詳細內容: SCLxLogitech -WGP世界賽 線下同樂大會 年底是開趴的季節、年底大賽的季節、年底是SCL團隊感謝各位粉絲一年來支持的季節 就在這週六、日(12 ...

特長和特別事件新機架

Regina avatar
By Regina
at 2018-12-13T21:48
以下是發表在global論壇,遊戲開發者針對這次引擎更新做出的更詳細的解釋 [post=17192231.6] Quick SE 速度特技 Stats from HT-Tasos about these events (read remark in (17192231.1)) 官方開發者HT-Taso ...

特長和特別事件新機架

Ethan avatar
By Ethan
at 2018-12-13T20:41
以下是發表在global論壇,遊戲開發者針對這次引擎更新做出的更詳細的解釋 https://i.imgur.com/Fk9oNdA.png https://i.imgur.com/REYXgtT.png https://i.imgur.com/sOkW2ph.png 此篇結論 : 1) Everythi ...

シャドバ道場 新卡

Isla avatar
By Isla
at 2018-12-13T20:03
https://i.imgur.com/1LnPuJd.jpg 死靈 銅卡 2/2/2 [入場曲][爆能強化4] 獲得:[謝幕曲] 召喚兩隻骷髏士兵。 https://i.imgur.com/Hrkqpjg.jpg 主教 虹卡 7/5/6 [入場曲]如果自己墓地數有9以上,召喚兩隻「聖騎兵」到場上。 ...

12/15(六)闇影詩章ES大會in諾亞(指定)

Jake avatar
By Jake
at 2018-12-13T18:57
參賽就有一包實體卡包,累積參加還可以額外獲得實體卡包~ 12/23 還有年末回饋抽獎~歡迎各位朋友踴躍報名 活動資訊 1030~1100 玩家報名 1100~1300 對戰時間 1300~1400 會外賽 1400~小活動,頒獎及玩家大合照 活動人數上限:24人(活動滿八人開賽) 活動網址:https ...