吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4214|回复: 19
收起左侧

[C&C++ 转载] mudos v22.2b14 64位大数据 VS本地编译版

  [复制链接]
andersgong 发表于 2020-12-2 08:12
本帖最后由 andersgong 于 2020-12-2 08:15 编辑

本人花了几天时间,将mudos v22.2b14(官方最新稳定版)移植到windows平台本地化编译了,所有依赖均已内置,无需再天南海北的找各种支撑库。
支持编译器VS2010和VS2019,照说中间的版本也都支持,没有一一测试。
搞定这件事并开源的,应该只有我一个了。
https://gitee.com/andersgong/mudos
仓库里也有编译好的可执行版本。

我自己测试的两个lib:
https://gitee.com/andersgong/xyj450
https://gitee.com/andersgong/nitan3

关于mudos的简介:
MUD (/ˈmʌd/; 原指 Multi-User Dungeon 多使用者迷宫[1],后又被称为 Multi-User Dimension 多使用者空间与 Multi-User Domain 多使用者领土),台湾使用者通常直接称呼为MUD。通常将缩写字直译为“网络泥巴”或是简称“泥巴”(英文 mud 的意思为泥巴)。是一款多人即时的虚拟世界,通常以文字描述为基础。 MUD 结合了角色扮演、砍杀、玩家与玩家对战、互动小说与在线聊天等元素,玩家可以阅读或查看房间、物品、其他玩家、非玩家角色的描述,并在虚拟世界中做特定动作。 玩家通常会通过输入类似自然语言的指令来与虚拟世界中的其他玩家互动。
而mudos,就是mud历史最悠久的驱动程序了。
  
下面是版本说明,请大家自行移步观看“不看说明别怪我.doc”
1、此版本来源:http://www.revivalworld.org/static/downloads/driver/MudOS/v22.2b14.tar.gz
我没有改什么具体逻辑和功能,只是做了几件事:
修改为VS2010/2019本地化,傻瓜式一键编译
增加自动测试功能
增加64位大数据支持,编译x64版本即可开启
增加数据库支持,兼容32位MySQL 5、32位MySQL 8、32位SQLite 3、64位MySQL 5、64位MySQL 8、64位SQLite 3
增加部分ntos的efun,可以直接启动NT3的lib
自动识别并兼容gb2312和utf8格式的混合lib

2、进入根目录,双击Mudos.sln,选择VS2019/2010打开,如下图(参考“不看说明别怪我.doc”):

四个项目说明如下:
bison--这个是yacc的本地编译版本,不用管它,编译mudos的时候会自动依赖的。
editsource--用于生成一些编译需要的文件,不用管它,编译mudos的时候会自动依赖的。
mudos--主项目,点击鼠标右键,点击重新生成,即可全自动编译生成mudos.exe。
testmud--测试项目,点击鼠标右键,点击重新生成,会重新编译mudos.exe,并且自动使用最新生成的mudos.exe来启动xyj 4.50的lib
https://gitee.com/andersgong/xyj450
这个lib也是我用来测试这个版本mudos的,目前基本上运行正常,报错都解决了,还加入了rzr自动测试,以及db指令测试数据库,供大家参考。具体可以在项目上点击鼠标右键,选择属性,进入“调试”标签页查看。

3、鼠标右键mudos,重新生成,如下图表示编译成功:

编译warning我已经全部解决了。  

4、mudos项目编译完成后,可以直接按F5看看效果,这个版本自带了一个testsuite最小测试lib,我已经设置好,mudos项目编译完成后,会自动将mudos.exe复制到testsuite下面,config文件在testsuite\etc\config.test,端口5555,第一次运行mudos.exe之前,需要设置管理员权限和xp模式。如下图:

5、按下F5后mudos正常启动,zmud连接5555端口,如下图:

6、数据库方面的测试方法,根据你options.h里的设置,首先开启MySQL 5或者8的服务,然后用客户端连接,创建用户dbuser,密码dbpassword,如果你有自己的用户密码,可以修改对应的文件:
testsuite\command\db.c

testsuite\single\master.c的valid_database函数
  


7、手动创建一个名为mudos的数据库  

8、回到zmud,分别执行三条命令:
db 0

此时会在mudos库里创建数据表users

db 1
会在users表里插入数据


db 2
自动查询users表里的name字段

关于数据库选项的配置,请看options.h

以及PACKAGES\db.h

50表示MySQL 5,80表示MySQL 8,如果直接使用sqlite3则无此烦恼,会自动在lib根目录生成mudos.db数据库文件(参考/cmds/adm/db.c或者testsuite\command\db.c指令),用客户端打开就能看到数据了。  
补充说明:如果需要使用数据库功能的话,请将libcrypto-1_1.dll、libssl-1_1.dll、sqlite3.dll三个文件和mudos.exe放在一起。32位和64位版本的dll分别放在MUDOS\testsuite\win32和MUDOS\testsuite\x64下面。  
再补充说明:此版本同时兼容32位MySQL 5、32位MySQL 8、32位SQLite 3、64位MySQL 5、64位MySQL 8、64位SQLite 3,代码内部已经处理好了所有的依赖关系。  

9、支持64位大数据,如下图,x64版本默认开启大数据支持,轻松超过21亿上限。


  

10、最新支持NT3的lib,https://gitee.com/andersgong/nitan3
增加了部分ntos的efun,开关如下:

源代码在mudos\PACKAGES\ntos.c
  

11、如果想要修改编译参数,自己改options.h。Enjoy it!

免费评分

参与人数 7吾爱币 +6 热心值 +7 收起 理由
pujing + 1 + 1 谢谢@Thanks!
笙若 + 1 + 1 谢谢@Thanks!
happyfeng + 1 谢谢@Thanks!
ldz123ldz + 1 + 1 我很赞同!
bullshit + 1 + 1 我很赞同!
carl820912 + 1 + 1 我很赞同!
temper + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| andersgong 发表于 2021-2-9 08:46
pujing 发表于 2021-2-8 20:40
感谢大神的回复,用了您编译好的OS,启动了,但是速度很慢,是在本机架设的,不知道是什么问题

不应该呀,我们几个人用了都没问题,要不然你自己编译一个看看。。。
 楼主| andersgong 发表于 2020-12-4 11:19
cao777 发表于 2020-12-4 10:58
这个难点在于客户端
鼠标化的客户端太少了
传统的zmud客户端只有命令 难记

鼠标化的客户端也有一些,而且也有app的端,只是由于种种原因,mud的命运最终无法挽回。我们这代人百年之后,可能连记忆都不会存在了。
chase001 发表于 2020-12-2 08:32
xinrongwjy 发表于 2020-12-2 08:35
逐渐进步中
简单单单 发表于 2020-12-2 09:05
谢谢分享,支持开源
吾爱今朝 发表于 2020-12-2 13:49
感谢大神分享!!
 楼主| andersgong 发表于 2020-12-4 09:26

是啊,玩mud这波人的年纪都不小了,现在大多数都处于养家糊口的中年阶段了,所以我也是出于兴趣爱好,有时间就搞一搞。
cao777 发表于 2020-12-4 10:58
这个难点在于客户端
鼠标化的客户端太少了
传统的zmud客户端只有命令 难记
cao777 发表于 2020-12-4 12:02
andersgong 发表于 2020-12-4 11:19
鼠标化的客户端也有一些,而且也有app的端,只是由于种种原因,mud的命运最终无法挽回。我们这代人百年之 ...

鼠标化的电脑客户端有收集吗
app的坚果不少 但是没有感觉非常好的
塞北的雪 发表于 2020-12-31 11:37
好怀念MUD啊,以前最喜欢玩书剑类的mud,现在也只能是闲暇时候玩玩单机书剑飘零了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 16:21

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表