TAGS: Heroes3, vcmi, opensource
DATE: 2013-08-23
vcmi是什么?
vcmi 是经典的 SLG 英雄无敌3 的开源游戏引擎。原来的英雄无敌3只能在Windows上玩, 现在通过 vcmi,我们也可以在 Unix/Linux, 苹果等其它系统上玩了。目前手机和平 板上的英雄无敌3就是用的这个项目的成果。 而手机和平板上的英雄无敌2的出现,是因为另一个开源项目 fheroes2
。
vcmi
和 fheroes2
的另一个好处就是降低了CPU的消耗,以前的Windows游戏估计 是为了获得及时的响应,都是100%地利用CPU,即使没什么需要计算的,也让CPU不停地 空循环。而 vcmi
和 fheroes2
都很环保,CPU占用率极低。本来一个游戏的计算 量很小,何必占用100%的CPU呢。
说到英雄无敌3,我特别地有感情,我喜欢这个游戏胜过 魔兽争霸。俺还用它的地图编 辑器自己编辑过地图,用它的战役编辑器自己编辑过战役呢。想想一个秋日的午后,和 你的好朋友,花上半天时间,一边喝茶,一边像下棋一样玩一局英雄无敌3,该是多么 惬意的事情啊。
如果你像我一样对英雄无敌3情有独钟,可以访问vcmi的主页: http://forum.vcmi.eu/portal.php
为什么要编译安装?
- 学习源代码,如果有可能,加入这个开源项目。
- 因为现在的vcmi不支持中文版的死亡阴影,我要修改源代码,让它支持中文的正常显 示。(目前手机上的英雄无敌2和英雄无敌3也都是英文版,就是因为原项目没提供中 文支持。大陆一些发布手机包的这些人就知道拿来人家的东西,植入广告,鄙视)
- 如果你并不想学习和修改代码,还是直接安装官网上提供的二进制包吧。
获取vcmi源码
下载最新的源码包:http://download.vcmi.eu/vcmi-0.93.tar.gz 。 下载完解压到某处。
编译安装
在开始编译之前说一下我的环境: arch Linux。下面的步骤大部分和你用什么Linux发 行版没有关系,如果涉及因发行版而不同的命令,我会特别说明。
- 进入源码目录。
- 建立一个build目录。
mkdir build
- 用cmake检查编译环境,生成 makefile。
cmake ..
如果已经安装好 SDL 和 Boost 的开发库,应该没有问题。
一开始我没有安装 Boost 的开发库, cmake 没有成功,报错:
error found. Boost_INCLUDE_DIR not defined.
。于是我安装boost的开发库,sudo pacman -S boost
(如果你用的是别的Linux发行版,请用相应的包管理器安装), cmake 就成功了。 - 开始编译。
make -j2
j2表示针对双核CPU编译,也可以不要这个选项。等吧,我的2.3G双核CPU,编译了 15分钟。
- 安装。
make install
安装数据
先看一下游戏的安装目录,通过命令行执行:
vcmiclient -v
我的结果如下:
Starting... VCMI 0.93 data directory: /usr/local/share/vcmi library directory: /usr/local/lib/vcmi path to server: /usr/local/bin/vcmiserver
数据目录是 =/usr/local/share/vcmi/=,然后我们要把原版游戏的Data, Maps, Mp3目 录拷贝到这个目录下。 如果不想拷贝,也可以建立符号链接。我是这样做的:
cd /usr/local/share/vcmi sudo ln -sf /path/to/Heroes3-Shadow-of-Death/Data . sudo ln -sf /path/to/Heroes3-Shadow-of-Death/Mp3 . sudo ln -sf /path/to/Heroes3-Shadow-of-Death/Maps .
现在你已经可以玩了。
注意 :你应该安装英文版游戏的数据。如果你用的是中文版游戏的数据,画面上会显示乱码。 不要着急,我已经开始修改源代码,让vcmi支持中文,可以等 我的修改版 啊。
可选的数据包 :
官网上还提供了两个数据包下载,都是游戏的Mod。 什么是Mod呢,估计类似“死亡阴影”的资料片吧。我暂时没有下载。
- Mod WoG: http://download.vcmi.eu/WoG/wog.zip
- VCMI data file: http://download.vcmi.eu/core.zip
这两个数据包的安装方法就是解压到游戏的数据目录,以 core
为例:
cd /usr/local/share/vcmi sudo unzip /path/to/core.zip
开始玩吧
在命令行输入: vcmiclient
,游戏就启动了。其实英文版的也蛮好,可以练练英语。 如果你执意要玩中文版的,等我修改的版本吧。
其它废话
- 对于Windows系统,源码中包含Visual Studio的工程文件,只要配置好SDL, Boost 库,编译应该很顺利。另一个方案是,在windows下安装mingw,然后像在Linux下一样去make。
- 对于Mac OS,我一点都不熟悉,但我想应该也是直接cmake和make即可。因为它也是 Unix like OS,它的shell使用起来和Linux没什么差别(如果说得不对,请尽情地喷我)。补充一下,我发现源码包中有xcode的工程文件。
- 如果你不是想修改游戏引擎,你大可不必编译安装。对于 Debian/ubuntu/Fedora Linux,都可以直接从软件仓库安装;对于小众的 arch Linux, 可以从 AUR 安装。 对于Windows 和Mac OS,都有编译好的二进制包下载。 请参考项目主页