Re: [閒聊] coffeemud

看板mud (網路地下城/文字遊戲)作者 (primo)時間8年前 (2016/12/12 22:05), 8年前編輯推噓5(503)
留言8則, 4人參與, 最新討論串2/2 (看更多)
※ 引述《gasbomb (胖丁)》之銘言: : http://www.coffeemud.org/ : 前面討論串有人提到這個,在JAVA底下跑的mud : 剛剛抓下來試了一下,使用上實在非常便利 : windows底下只要會double click就跑得起來了! XD : 然後這引擎也提供了很多方便的工具 : 內建的東西套一套五分鐘就有一個無腦打怪的迷宮可以玩了 : 不過好像沒辦法支援utf-8跟big-5的樣子 :( : 想改也不知從何改起,真是可惜了功能這麼強的軟體阿 : - : 要是對中文的支援性搞定了 : 說不定可以看到新站一直開站一直倒站的場景...!? 回這麼久以前的文章 真不好意思 最近才發現這個好東西 至少目前在 github上面的版本 utf-8支援的還不錯 只要稍微改幾個地方 如下 輸出都是UTF-8 coffeemud.ini # CHARSETINPUT is the name of the Java Character set to use for the default # input stream. Default is iso-8859-1 #CHARSETINPUT=iso-8859-1 CHARSETINPUT=utf-8 # CHARSETOUTPUT is the name of the Java Character set to use for the default # output stream. Default is iso-8859-1 #CHARSETOUTPUT=iso-8859-1 CHARSETOUTPUT=utf-8 Backend.java 這個是改內定DB 如果改用mysql等 就不用了 他在處理UTF-8時候 有bug 整個忽略了 else { // int val = 0; // for (int i = 0; i < 4; i++) // { // c = (char) (fileBuffer[++dex[0]] & 0xFF); // if (c >= 'A') // val = (16 * val) + (c - 'A'); // else // val = (16 * val) + (c - '0'); // } String utf8 = "\\u"; for (int i = 0; i < 4; i++) { utf8 += (char) (fileBuffer[++dex[0]] & 0xFF); } buffer.append(decode(utf8)); static final String decode(final String in) { String working = in; int index; index = working.indexOf("\\u"); while(index > -1) { int length = working.length(); if(index > (length-6))break; int numStart = index + 2; int numFinish = numStart + 4; String substring = working.substring(numStart, numFinish); int number = Integer.parseInt(substring,16); String stringStart = working.substring(0, index); String stringEnd = working.substring(numFinish); working = stringStart + ((char)number) + stringEnd; index = working.indexOf("\\u"); } return working; } 所有的 cmvp樣板檔 這樣編輯器也可以正常看到中文 <META HTTP-EQUIV="Pragma" CONTENT="no-cache" charset="UTF-8"> <---charset="UTF-8" Siplet.java 有兩個地方 這個改完 連網頁連線都支援中文了 //in[0] = new BufferedReader(new InputStreamReader(sock.getInputStream(), "iso-8859-1")); in[0] = new BufferedReader(new InputStreamReader(sock.getInputStream(), "UTF-8")); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 182.235.41.126 ※ 文章網址: https://www.ptt.cc/bbs/mud/M.1481551526.A.6ED.html ※ 編輯: primochen (182.235.41.126), 12/12/2016 22:10:18 ※ 編輯: primochen (182.235.41.126), 12/12/2016 22:12:36 ※ 編輯: primochen (182.235.41.126), 12/12/2016 22:16:37

12/13 00:07, , 1F
推薦python的Evennia, 支援unicode
12/13 00:07, 1F

12/13 00:11, , 2F
12/13 00:11, 2F

12/13 00:40, , 3F
Evennia web client用webscoket
12/13 00:40, 3F

12/13 00:44, , 4F
好先進 有空來看看
12/13 00:44, 4F

12/13 20:30, , 5F
fluffos 也有支援 websocket / utf8
12/13 20:30, 5F

12/13 20:33, , 6F
小貓的世界 http://catworld.muds.t
12/13 20:33, 6F

12/13 20:39, , 7F

01/22 13:07, , 8F
推個
01/22 13:07, 8F
文章代碼(AID): #1OJgwcRj (mud)
討論串 (同標題文章)
本文引述了以下文章的的內容:
1
7
完整討論串 (本文為第 2 之 2 篇):
1
7
文章代碼(AID): #1OJgwcRj (mud)