作者gasbomb (虚空雷神兽)
看板mud
标题[心得] 从0开始的MUD开发日记 0.前言
时间Tue Dec 3 16:25:40 2019
- 序
2009 年, 当年我是一个正在退学边缘的大学生, 曾经妄想过要自己架
设一个属於自己的 MUD, 并且妄想着用架设出来的作品当作进入游戏业界
的敲门砖, 在数个月的尝试之後以失败告终. 探究其原因是我当年缺少太
多程式设计相关知识, 光是下载编译 mudOS, 面对完全不熟悉的 C 语言
compiler 需要排除的问题就有很多, 成功编译 mudOS 後也完全没有能
力修改程式, 只能对 mudlib 做简单的修改. 最後, 我被学校退学, 不
得已去当兵, 退伍後为了养活自己开始当货车司机, 架设 MUD 的梦想也
越来越远, 就这样尘封在记忆深处中.
2019 年的 5 月, 我成功转职为 java 程式设计师(a.k.a 码农). 在
我还是货车司机时因为工作繁忙, 每天只有下班後的几个小时可以玩玩电
脑, 转职成功後每天使用电脑的时数暴增到 10 个小时以上, 而且在公司
交付的进度都如期完成下, 电脑萤幕如果开着 IDE 写自己的程式其实是
不太有人管的, 所以我又萌生了创作 MUD 的想法. 不过这次的动机和之
前并不相同, 10 年前想架设 MUD 最初要是想要『自己创作游戏』, 这次
更多的动机是想藉由『从无到有独立建构一个系统』验证、培养自己在程
式设计方面的能力.
在写这篇文时我已经断断续续开发了一个月, 目前已经可以让使用者登
入并新建帐号, 也有简易的房间、道具与 NPC 系统, 也写了程式可以读
取特定格式的纯文字档, 并用这些文字档产生 MUD 内的物件. 原本是打
算等完成度更高再来发文的, 但是最近在回头整理旧程式码时又出现了不
少心得, 於是想趁记忆还鲜明时将这些心得记录下来分享给大家.
- 开发环境 & 基础知识
既然我身为 java 工程师, 当然是使用 java 做为开发语言罗, 本系
列文使用 java SE 8 + Eclipse 开发, 并且会使用到自订 annotation,
反射, 代理, 等新手工程师比较没机会用上的特性与技巧. 不过不用太担
心, 只要你的 java SE 基础够稳固, 这系列对你来说不会太难的 :)
- 注意事项
都 2019 年了还在写 BIG5 程式实在是很 low, 加上 java 预设使用
UTF-8 编码, 因此提供的范例程式(如果有的话)皆使用 UTF-8. 经过测试
Mudlet 是可以正常处理 UTF-8 中文的, 但是 zmud 跟 PCMAN 的支援度
就不是那麽好了, 如果你还是习惯使用旧的连线程式来玩 MUD, 可以自己
把档案编码转 BIG5, 不过我不对 BIG5 编码提供任何协助与指引.
--
╔═◢ ◣═╦╦═════╦═════╗
║
◤◤◤ ◥ ╠╣
飞鸟ももこ╠═╗ ║
║ ▇ ▇ ║╚═════╝ ╚═╦═╣
║ ▌ ● ● ▌ ║╔══════╗╔═╩═╣
║
◤ ◥
︺█◤
◥╠╣
Momoko Asuka╠╝ ║
╚◣◢ ▄▂▄ ◣◢╩╩══════╩════╝
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 211.72.253.40 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/mud/M.1575361555.A.76B.html
1F:推 outshaker : 为你的毅力推一个 111.248.73.145 12/03 17:25
2F:→ outshaker : 但你有没有考虑先参与营运中的MUD? 111.248.73.145 12/03 17:26
3F:→ outshaker : 自干是蛮辛苦的一条路,甘巴茶 111.248.73.145 12/03 17:28
没有考虑参加正在营运中的 MUD 耶
因为前面有说了, 做这个计画主要的目的是锻链自己的程式能力
也不会太辛苦啦, 反正都是利用上班时间在写
想到写 MUD 也有薪水拿, 忽然就变得很愉快了 XDDDD
4F:→ kruz : 有时间贴这个应该已经达标了吧 XD 73.162.174.153 12/04 01:22
没, 距离达标还很远 XD
会写系列文也是因为最近进度有点卡住
来 ptt po 个系列文给自己一点压力, 可能比较不容易断尾(?)
5F:→ kruz : client的话我发现mudlet很好用 73.162.174.153 12/04 01:23
mudlet 真的好用
6F:→ takomalu : 我ms专题就是用AJAX+C#.NET做mud 172.104.96.130 12/04 02:12
7F:→ takomalu : 连线功能算是最容易的部分 orz 172.104.96.130 12/04 02:13
方便的话, 可以分享 source code 让我研究吗?
8F:推 reyes2222 : 有趣 101.12.103.150 12/05 03:40
谢谢你的鼓励
※ 编辑: gasbomb (211.72.253.40 台湾), 12/05/2019 13:04:12
9F:→ takomalu : 如果能先找到当初烧的光碟片... 172.104.96.130 12/05 22:13
10F:推 nfsong : 推 36.229.213.83 12/06 01:06
11F:推 roujuu : 那请教一下,对於CMUD的支援呢? 101.136.28.127 12/16 22:35
12F:推 WalkingIce : 看起来真不错,有打算 open source吗203.104.128.122 01/10 14:02