基于 Ubuntu 搭建 MUD 游戏服务器

[复制链接]
查看: 501|回复: 0

13

主题

14

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2021-7-6 22:20:25 | 显示全部楼层 |阅读模式
本教程包括mud游戏驱动编译和mud游戏服务器启动二部分,游戏驱动使用fluffOS,游戏服务器使用炎黄MUD。对正在学习LPC的同学可以通过本教程体验fluffOS驱动的编译。
LPMUD游戏开发语言为LPC,早期大名鼎鼎的网络游戏大话西游就是基于LPC开发,而游戏驱动为MUDOS,目前为最新开源版本驱动为fluffOS。

因为LPC语言是C语言的变体,简单易学,通过玩MUD游戏,也让大批玩家走上了程序员的道路。

什么是mud游戏?MUD游戏一种纯文字的网络游戏,没有图形界面,没有音乐和特效,玩家通过指令控制你的人物探险和交流。如果其它网络游戏是看电视剧,那mud游戏就是在看小说。在图形网络游戏问世前,玩家玩的网络游戏就是这种纯文字的MUD游戏。


没有云服务器的朋友可以考虑阿里云新用户特惠腾讯云新用户特惠,如果是阿里和腾讯老用户,那不推荐,因为价格很贵,建议选择TOP云服务器,续费同价


FLuffos 下载和编译
任务时间:时间未知
Fluffos 是 LPMUD 游戏驱动,目前有2017和2019二个主要版本,2017版可以直接驱动现有的MUD游戏,但2019版只支持utf-8的mudlib,本教程分别演示v2017 和 v2019 编译。
编译环境配置
请直接复制以下命令并运行安装编译v2017和v2019版驱动所需的组件。
  1. sudo apt install libjemalloc-dev bison zlib1g-dev libssl-dev libmysqlclient-dev libpcre3-dev libevent-dev libicu-dev gcc g++ autoconf automake cmake -y
复制代码
下载 FLuffos 源码
fluffos 下载。
下载
因为使用的是github官方下载,速度可能比较慢,请耐心等待。
  1. cd ~ && git clone https://github.com/fluffos/fluffos.git
复制代码
编译 Fluffos v2019 版
进入 fluffos 目录,建立 build 编译目录,然后编译驱动:
  1. cd ~/fluffos && mkdir build && cd build && cmake .. && make install
复制代码
安装完成会在 ~/fluffos/build/bin 目录中生成驱动文件 driver。
输入以下指令看看:
  1. bin/driver
复制代码
可以看到类似以下内容:
  1. Your locale 'en_us.utf8' is not UTF8 compliant, you will likely run into issues.
  2. ========================================================================
  3. Full Command Line: bin/driver
  4. Boot Time: Wed Aug  5 17:42:43 2020
  5. Version: fluffos v2019.2020050101 (Linux/x86-64)
  6. Jemalloc Version: 3.6.0-11
  7. ICU Version: 60.2
  8. libdw or libbfd is not found, you will only get very limited crash stacktrace.
  9. Core Dump: No, Max FD: 65535
  10. ========================================================================
  11. Usage: bin/driver config_file
复制代码
驱动运行成功,显示版本为 fluffos v2019.2020050101 (Linux/x86-64),只是需要指定配置文件 config_file 运行 mudlib,我们稍后演示。
编译 Fluffos v2017 版
切换到 v2017 版,进入 src 目录编译驱动:
  1. cd ~/fluffos && git checkout v2017 && cd src && ./build.FluffOS && make install
复制代码
安装完成会在 ~/fluffos/bin 目录中生成驱动文件 driver。
输入以下指令看看:
  1. cd .. && bin/driver
复制代码
可以看到以下内容:
  1. Command: bin/driver
  2. ========================================================================
  3. ========================================================================
  4. Boot Time: Wed Jan 15 15:57:59 2020
  5. FluffOS Version: v2017.2019112002(git-51e006b8-1574310904)@ (Linux/x86-64)
  6. Jemalloc Version: 4.4.0-0-gf1f76357313e7dcad7262f17a48ff0a2e005fcdc
  7. ========================================================================
  8. Core Dump: No, Max FD: 65535
  9. Usage: bin/driver config_file
复制代码
驱动运行成功,显示版本为 v2017.2019112002,只是需要指定配置文件 config_file 运行 mudlib。
MUD 游戏运行
任务时间:时间未知
编译好游戏驱动后,我们来找个游戏运行一下吧,因为v2017版目前已不再维护,v2019版是当前推荐版本,支持utf-8和websocket,这里就用v2019运行一款游戏。
下载 MUDLIB
这里我们下载开源的MUD游戏炎黄来体验一下(下载速度较慢,请耐心等待):
  1. cd ~ && git clone https://github.com/oiuv/mud.git
复制代码
启动游戏
我们使用以下指令用 2019 版驱动运行游戏,为了使用websocket,这里先复制驱动提供的 www 目录到游戏目录中。
  1. cd ~/mud && cp ~/fluffos/build/bin/www/ . -r && ~/fluffos/build/bin/driver config.ini
复制代码
如果有显示以下内容,代表启动成功:
  1. ...
  2. /adm/daemons/backupd...
  3. /adm/daemons/mapd...
  4. /adm/daemons/familyd...
  5. /adm/daemons/questd...
  6. /adm/daemons/cpud...
  7. /adm/daemons/invasion/invasiond...
  8. /adm/daemons/task/set_task...
  9. Accepting telnet connections on 0.0.0.0:5555.
  10. Accepting telnet connections on 0.0.0.0:6666.
  11. Accepting websocket connections on 0.0.0.0:8000.
  12. Initializations complete.
复制代码
游戏启动后可以使用 telnet 连接游戏,其中5555端口为GBK编码,6666端口为UTF-8编码。
  1. telnet <您的 CVM IP 地址> 5555
  2. telnet <您的 CVM IP 地址> 6666
复制代码
v2019 版还支持 WEBSOCKET,我们可以直接访问以下网页连接游戏。
  1. http://<您的 CVM IP 地址>:8000
复制代码
这是一个可以做正式运营的游戏,注册ID名称“mudren”的用户为游戏管理员,当然,关于怎么玩游戏,这里不做演示,有兴趣的可以在游戏中输入 help 查看指南。




腾讯云
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩图文



在线客服(工作时间:9:00-22:00)
400-600-6565

内容导航

微信客服

Copyright   ©2015-2019  云服务器社区  Powered by©Discuz!  技术支持:尊托网络     ( 湘ICP备15009499号-1 )