页面

2013年2月21日星期四

新解决魔兽争霸崩溃的问题 Centos6.3

From Evernote:

新解决魔兽争霸崩溃的问题 Centos6.3

CentOS6.3 wine运行魔兽 只要一个脚本就能避免崩溃。原来的方法是修改魔兽的game.dll为英文版。这次这个方法是修改运行环境为简体中文。脚本如下:
  1. #!/usr/bin/env sh  
  2. export LANG="zh_CN.utf-8"  
  3. wine War3.exe -opengl 
这个方法引用这篇文章。

我们两台电脑在宿舍里对战魔兽争霸3,配置如下:

我的计算机:Debian GNU/Linux 6

室友计算机:Windows 7

两台电脑通过同一个交换机连接网络,下面描述详细配置过程:

 

首先在Windows 7正常安装魔兽争霸3冰封王座,并安装NoCD补丁(Debian下不知如何模拟光盘,所以先用NoCD补丁避免麻烦。PS:当然暴雪的这款游戏非常经 典,在中国售价也属于学生可以接受的程度,所以能购买正版的请尽量购买正版),将魔兽争霸3安装后的文件夹打包用U盘复制到Debian的一个目录下,接 下来配置Debian这边。

要运行Windows程序首先安装wine,在root下使用如下指令安装wine:

  1. # apt-get install wine  
 

安装好之后可以测试是否安装成功

  1. # wine --version  
  2. wine-1.2.3  
 

其他操作系统请使用各自的包管理工具进行安装,如果没有包管理工具也可以进wine官方网站http://www.winehq.org/下载源码包编译。

 

然后进入魔兽争霸,建立一个脚本文件(比如run.sh)作为引导文件,

$ touch run.sh

$ vim run.sh

里面填入如下内容:

  1. #!/usr/bin/env sh  
  2. export LANG="zh_CN.utf-8"  
  3. wine War3.exe -opengl  
 

首先解释一下第1行,是UNIX系统查找环境中可执行当前文件的标准写法,以#!开头跟着一条命令就是说,在当前环境中找到sh来执行当前脚本。

第2行是把当前语言环境换为简体中文,因为我们使用的魔兽争霸是简体中文版的,只能在简体中文的环境下运行。

最后一行是在OpenGL模式下用wine运行魔兽争霸3冰封王座,值得说明的一点是非Windows环境一般对OpenGL支持比较好,速度很 快,而魔兽争霸3默认是以DirectX作为图形API的,速度很慢效果也差。(魔兽争霸3是支持OpenGL模式的,其他游戏不一定支持,或者设定的方 式不一样)

给该文件加上可执行属性:

  1. $ chmod +x ./run.sh  
 

写好后以普通用户运行run.sh就可以开始游戏了:

  1. $ ./run.sh  
 

现在程序的确是可以运行而且速度还不错,问题就是无法在局域网模式下看到对方创建的游戏。

解决的办法是,将两个人的IP地址的前三项设为一样(最后一项不能一样,否则就冲突了),并且子网掩码设为255.255.255.0。

Debian主机下可以以root用户输入以下命令:

  1. # ifconfig eth0 192.168.1.123 netmask 255.255.255.0  
 

Windows 7主机可以这样设定:

开始--控制面板--网络和共享中心--更改适配器设置--本地连接--Internet 协议版本4 (TCP/IPv4)--使用下面的IP地址:

IP地址:192.168.1.124

子网掩码:255.255.255.0

其他留空。确定,确定就设置好了。

 

现在重新进入游戏可以看到对方创建的游戏了,但是点击进入却提示"不能加入指定的游戏",这是因为Windows的防火墙阻拦所致,需要修改防火墙设置:

开始--控制面板--Windows防火墙--打开或关闭Windows防火墙--将家庭或工作和公用网络位置设为关闭Windows防火墙

 

现在再重新进入游戏就可以进入对方创建的游戏并联机对战了。


没有评论:

发表评论