Linux wine国服LOL英雄联盟,完美运行!!
Tofloor
poster avatar
zhtengw
deepin
2013-03-20 21:26
Author
Linux下玩国服LOL,国服哦。
网络上随处都可以搜到wine美服LOL的教程,但腾讯运营的国服客户端跟美服原版相差比较大,按照美服的方式不能搞起国服LOL,由于宿舍文化,这几天我专注于wine一个国服LOL,对照winehq网站上的LOL相关的bug列表和美服的配置方法,试了各种patch,最后得到了满意的结果。
大家来看!!

OS: Fedora 19
Arch: x86
CPU: Intel(R) Core(TM)2 Duo CPU T5870 @2.00GHz
VideoCard: Nvidia GForce G105M
Memory: 4G

[color=#BF0000:23xr9fys]需要[/color:23xr9fys]:
[color=#BF0000:23xr9fys]打过补丁的wine、LOL国服完整安装包、winetricks、反TP补丁[/color:23xr9fys]

(在我以前的教程里,是需要打两个补丁的,LOL更新到3.0.9.x以后,使用打了第一个补丁的wine会经常出现“因为未知原因,无法登陆”的错误,而对于1.5.29之前的wine,若不打这第一个补丁,又肯定会崩溃,所以我更新了教程,使用最新的开发版wine。)
我使用的wine版本是1.6-rc2,这里需要加上补丁重新编译,补丁主要解决以下问题:
1、游戏中点击商店崩溃。
    0001-HACK-Disallow-block-based-textures-with-sub-block-si-1.6-rc2.txt

下面详细讲一下操作过程。

[color=#FF0000:23xr9fys]一、给wine打补丁,并编译[/color:23xr9fys]
首先咱们编译wine,(如果您觉得编译太麻烦,可以直接用我编译好的wine,看帖子最底下,不过,自己编译的应该还是比较适合自己的系统)
[color=#FF0000:23xr9fys]对于64位的ubuntu系统,编译wine实在太麻烦,本人没用过ubuntu,不敢做过多讲解,有朋友在折腾后给出了详细的教程,见http://forum.ubuntu.org.cn/viewtopic.php?f=121&t=443064,感谢243750496朋友。[/color:23xr9fys]
先下载wine的源码,解压出来
  1. tar xvf wine-1.6-rc2.tar.bz2
  2. cd wine-1.6-rc2
Copy the Code
下载上面的补丁(适用于wine-1.6-rc2~wine-1.6),给源码打上
  1. patch -p1 < 0001-HACK-Disallow-block-based-textures-with-sub-block-si-1.6-rc2.txt
Copy the Code
接着咱们来编译
  1. ./configure
Copy the Code
为避免影响系统安装的wine,可以指定新的prefix
  1. ./configure --prefix=/opt/lol-wine
  2. make depend
  3. make
  4. sudo make install
Copy the Code

[color=#FF0000:23xr9fys]二、配置wine环境[/color:23xr9fys]
接着,到http://winetricks.org/winetricks 下载最新的winetricks(如果网页打开的是winetricks的源代码,可以右键点击另存为),当然,发行版有提供也行啦,只不过发行版上提供的可能会比较老,下载一些DLL时会有404错误。
把下载的winetricks放到/usr/bin下,并加上可执行权限。
  1. chmod +x winetricks
  2. sudo cp -a winetricks /usr/bin/winetricks
Copy the Code

配置wine,这里我是定义另一个WINEPREFIX,以跟本机上原来的wine配置分开,
我们先执行
  1. export WINEVERPATH=/opt/lol-wine
  2. export PATH=$WINEVERPATH/bin:$PATH
  3. export WINESERVER="$WINEVERPATH/bin/wineserver"
  4. export WINELOADER="$WINEVERPATH/bin/wine"
  5. export WINEDLLPATH="WINEVERPATH/lib/wine/fakedlls"
  6. export LD_LIBRARY_PATH="$WINEVERPATH/lib:$LD_LIBRARY_PATH"
Copy the Code

接着再来
  1. mkdir ~/LOL
  2. WINEPREFIX=~/LOL/.wine WINEARCH=win32 $WINEVERPATH/bin/winecfg
Copy the Code
# WINEARCH=win32是设定wine为32位的,使用32位的Windows软件,这在64位Linux系统是必须的,然后设定Windows版本为xp。
  1. WINEPREFIX=~/LOL/.wine winetricks vcrun2005 corefonts d3dx9 wininet dotnet20 dotnet35 ie6 win7 adobeair glsl-disable mfc42
Copy the Code
# 用winetricks安装一些Windows组件,执行的时候请务必关注终端的提示信息;注意,在安装.Net framework 3.5的时候,进度条可能会在满格时卡住,没关系,kill掉wine和winetricks的进程后重新执行此命令就行了。

然后,我们再执行一下
  1. WINEPREFIX=~/LOL/.wine WINEARCH=win32 $WINEVERPATH/bin/winecfg
Copy the Code
,确保此时Windows版本是Windows 7。

[color=#FF0000:23xr9fys]三、安装LOL[/color:23xr9fys]
好,接下来安装LOL,大家自行到官网去下载安装包,我用的是从17173上下的完整安装包:
  1. WINEPREFIX=~/LOL/.wine $WINEVERPATH/bin/wine 17173_LOL_V3.0.7.9_FULL.exe
Copy the Code
[color=#FF0000:23xr9fys]注意,如果出现“不能打开要写入的文件”的错误,请确认自己执行winetricks的时候成功安装了dotnet20和dotnet35。[/color:23xr9fys]


[color=#FF0000:23xr9fys]四、应用反TP补丁(重要!)[/color:23xr9fys]
安装完成以后,找到游戏目录下的Game/League of Legends.exe,备份好后用反TP补丁替换,反TP补丁主要是解决选好英雄后进入游戏时崩溃,反TP补丁见
帖子下方。
[color=#FF0000:23xr9fys]注意,每次更新LOL后都要检查一下League of Legends.exe文件有没有变化,如果没变,咱就继续L吧,如果有,去看一下反TP补丁有没有更新!![/color:23xr9fys]

[color=#FF0000:23xr9fys]五、运行游戏[/color:23xr9fys]
运行游戏时,切换到游戏目录下的TCLS/目录,执行
  1. WINEPREFIX=~/LOL/.wine $WINEVERPATH/bin/wine Client.exe
Copy the Code

我们可以自建一个desktop文件,这里假设您wine是安装到/opt/lol-wine,
  1. [Desktop Entry]
  2. Name=League of Legends
  3. Name[zh_CN]=英雄联盟
  4. Exec=WINEVERPATH="$HOME/tools/lol-wine-1.6-rc2" PATH="$WINEVERPATH/bin:$PATH" WINESERVER="$WINEVERPATH/bin/wineserver" WINELOADER="$WINEVERPATH/bin/wine" WINEDLLPATH="$WINEVERPATH/lib/wine/fakedlls" LD_LIBRARY_PATH="$WINEVERPATH/lib:$LD_LIBRARY_PATH"  WINEPREFIX=$HOME/.lol-wine $WINEVERPATH/bin/wine ~/documents/LOL/英雄联盟/TCLS/Client.exe
  5. Type=Application
  6. StartupNotify=true
  7. Icon=lol
Copy the Code
[color=#FF0000:23xr9fys]WINEVERPATH=/opt/lol-wine请根据自己的wine安装目录修改,且务必将“$HOME/documents/LOL/英雄联盟/TCLS/Client.exe”改成您自己的Client.exe的路径[/color:23xr9fys]。然后将内容保存为“英雄联盟.desktop”放到桌面上。再将这个图标下载下来,放到~/.local/share/icons/hicolor/64x64/apps/
lol.png

然后,双击桌面的英雄联盟就可以开始游戏啦。

好,接下来就好好享受LOL之旅吧!!
深度截图20130320131126.png
深度截图20130320131249.png
深度截图20130320131336.png
深度截图20130320131355.png
深度截图20130320131423.png
深度截图20130320131636.png

[color=#FF0000:23xr9fys]反tp补丁下载:[/color:23xr9fys]
3.0.9.4版本:League of Legends.exe(版本号3.8.1.228)

[color=#FF0000:23xr9fys]预编译lol-wine下载:[/color:23xr9fys]
有朋友反映说编译麻烦,我这里将我编译好的包发上来,分32位和64位,是分别在Fedora 19 x86和Gentoo amd64编译的,大家试着用一下吧,如果有问题,再发帖讨论。

lol-wine_32bit.tar.bz2
lol-wine_64bit.tar.bz2

如果您希望跟帖子里说的配置一样,根据自己的系统下相应的压缩包,解压到/opt/,
  1. sudo tar xvf lol-wine_32bit.tar.bz2 -C /opt/
Copy the Code
or
  1. sudo tar xvf lol-wine_64bit.tar.bz2 -C /opt/
Copy the Code
当然您也可以将/opt/另选为自己喜欢的目录。
接下来,您就可以跳过上面的“第一步”,直接从“第二步、配置wine环境”开始了

2013年4月2日:
如果您使用的是Intel的核显,您需要安装libtxc_dxtn这个包,它在不同发行版的命名有些不同,在Ubuntu/Deepin应该是libtxc-dxtn-s2tc0。我用过的发行版比较少,大家可以先搜索一下这个包,用相应的命令安装。

2013年4月7日:
提高游戏fps的技巧(转自LOL论坛):
1、更改注册表
  1. WINEPREFIX=~/LOL/.wine regedit
Copy the Code
打开注册表编辑器,找到键
HKEY_CURRENT_USER>Software>Wine>Direct3D
没有的话就新建一个,然后新建几个"字符串值",DirectDrawRenderer、Multisampling、OffscreenRenderingMode、RenderTargetLockMode、UseGLSL,设定它们的值分别是gdi、disabled、fbo、disabled、disabled;根据自己的显卡情况,还可建一个“字符串值”VideoMemorySize,将它的值设为自己显存大小,像我就设为512

2、选完英雄进入游戏后,打开终端,用top找到League of Legends.exe这个进程的PID,假设为11732,然后,用taskset命令将它设为只用一个cpu核
  1. taskset -pc 1 11732
Copy the Code
这里指定它只用编号为1的cpu核心。

相关链接: http://www.linuxdeepin.com/forum/24/14706?p=62277
Reply Favorite View the author
All Replies
......7 / 13
To page
243750496
deepin
2013-05-22 23:40
#121
cc@thinkpad:~/下载/wine-1.5.8$ perl attachment.cgi
Bareword found where operator expected at attachment.cgi line 2, near "@@
    ole32"
        (Missing operator before ole32?)
Array found where operator expected at attachment.cgi line 5, at end of line
        (Missing semicolon on previous line?)
Array found where operator expected at attachment.cgi line 5, near "11 "
        (Missing operator before  ?)
Bareword found where operator expected at attachment.cgi line 5, near "@@ HRESULT"
        (Missing operator before HRESULT?)
syntax error at attachment.cgi line 1, near "-,"
syntax error at attachment.cgi line 12, near "+    }"
Execution of attachment.cgi aborted due to compilation errors.
Reply View the author
243750496
deepin
2013-05-22 23:41
#122
这是打补丁成功了?貌似是出问题了吧 楼主 求回答谢谢了
Reply View the author
243750496
deepin
2013-05-22 23:43
#123
我是wine1.5.8
Reply View the author
243750496
deepin
2013-05-22 23:58
#124
我知道楼主前面把补丁文件发上来了可是我想学习一下 希望大神您能帮个小忙
Reply View the author
zhtengw
deepin
2013-05-23 00:00
#125
http://bugs.winehq.org/attachment.cgi?id=25672&action=diff&context=patch&collapsed=&headers=1&format=raw
第一个补丁 怎么回不是patch文件?
@@ -, +, @@
    ole32: force inproc instead of local server
--- a/dlls/ole32/compobj.c       
+++ a/dlls/ole32/compobj.c       
@@ -2261,6 +2261,11 @@ HRESULT WINAPI CoGetClassObject(

     TRACE("CLSID: %s,IID: %s\n", debugstr_guid(rclsid), debugstr_guid(iid));

+    if(CLSCTX_LOCAL_SERVER == dwClsContext) {
+        dwClsContext = CLSCTX_INPROC_SERVER;
+        WARN("forcing CLSCTX_INPROC_SERVER instead of CLSCTX_LOCAL_SERVER\n");
+    }
+
     if (!ppv)
         return E_INVALIDARG;
这些代码怎么用?是哪个文件里的?为什么第二个补丁就是patch文件呢
它就是patch文件,只是以网页的形式显示了其中的内容,你也逛ubuntu论坛是吧,可以参考此贴的17楼
Reply View the author
zhtengw
deepin
2013-05-23 00:04
#126
英雄联盟安装完毕
但是画面发黑,人物模型什么的正常  但是画面的色彩十分灰暗  不知该怎么设置 求解
您的是intel的显卡吗?
2013年4月2日:
如果您使用的是Intel的核显,您需要安装libtxc_dxtn这个包,它在不同发行版的命名有些不同,在Ubuntu/Deepin应该是libtxc-dxtn-s2tc0。我用过的发行版比较少,大家可以先搜索一下这个包,用相应的命令安装。
Reply View the author
243750496
deepin
2013-05-23 04:01
#127
问一下 如果安装到/opt/lol-wine
./configure --enable-win64 --prefix=/opt/lol-wine
那么如何使用命令(用 wine XXX.exe是用的我系统安装的wine版本1.5.3 不是1.5.8(lol-wine))
Reply View the author
243750496
deepin
2013-05-23 04:15
#128
接着,到http://winetricks.org/winetricks 下载最新的winetricks,当然,发行版有提供也行啦,只不过SlackBuild.org上提供的比较老,下载一些DLL时会有404错误。(这步是为啥 直接下一步可以吗)

配置wine,这里我是定义另一个WINEPREFIX,以跟本机上原来的wine配置分开,
我们先执行

代码: 全选

        export WINEVERPATH=/opt/lol-wine
        export PATH=$WINEVERPATH/binPATH
        export WINESERVER="$WINEVERPATH/bin/wineserver"
        export WINELOADER="$WINEVERPATH/bin/wine"
        export WINEDLLPATH="WINEVERPATH/lib/wine/fakedlls"
        export LD_LIBRARY_PATH="$WINEVERPATH/libLD_LIBRARY_PATH"
Reply View the author
243750496
deepin
2013-05-23 04:19
#129
另外打开http://winetricks.org/winetricks也不知道是哪个版本不知是不是1.5.8 如果下载了会有问题么 还有下载下来后放哪里 望楼主不要嫌小白烦 谢了
Reply View the author
243750496
deepin
2013-05-23 04:20
#130
好,接下来安装LOL,大家自行到官网去下载安装包,我用的是从17173上下的完整安装包:
这是腾讯的安装包还是外国的lol安装包?
Reply View the author
zhtengw
deepin
2013-05-23 06:18
#131
这步是为啥 直接下一步可以吗
我只是在说,发行版提供的winetricks可能比较老,在用它安装windows的dll时可能会出现404错误,建议大家去这个网站下最新的winetricks。
另外打开http://winetricks.org/winetricks也不知道是哪个版本不知是不是1.5.8 如果下载了会有问题么 还有下载下来后放哪里 望楼主不要嫌小白烦 谢了
winetricks跟wine的版本号是不一样的,winetricks是以日期为版本号的,从那里下的就是最新稳定版,要更新的版本可以下这个,下了放在PATH变量所指的地方,比如/usr/bin,为了便于管理,我是把~/bin/加入了PATH变量,然后把winetricks放进~/bin里的。
Reply View the author
zhtengw
deepin
2013-05-23 06:20
#132
好,接下来安装LOL,大家自行到官网去下载安装包,我用的是从17173上下的完整安装包:
这是腾讯的安装包还是外国的lol安装包?
国服当然是腾讯的,因为急速下载器太慢了,我就在合作媒体下载那里找的,发现从17173上下载最快。
Reply View the author
zhtengw
deepin
2013-05-23 06:22
#133
问一下 如果安装到/opt/lol-wine
./configure --enable-win64 --prefix=/opt/lol-wine
那么如何使用命令(用 wine XXX.exe是用的我系统安装的wine版本1.5.3 不是1.5.8(lol-wine))
这个我考虑到了,按帖子做就行了。
Reply View the author
243750496
deepin
2013-05-23 15:44
#134
243750496 写道:
好,接下来安装LOL,大家自行到官网去下载安装包,我用的是从17173上下的完整安装包:
这是腾讯的安装包还是外国的lol安装包?

国服当然是腾讯的,因为急速下载器太慢了,我就在合作媒体下载那里找的,发现从17173上下载最快。

不是我是问大神用wine模拟的版本是要下载lol国际版安装程序还是腾讯版lol?
据说国际版更稳定 但不晓得国际版能否上国服如果我下载腾讯版会不会照样掉线啥的
Reply View the author
243750496
deepin
2013-05-23 15:49
#135
问个十分小白的问题:winetricks有啥用 ?下载下来能运行么 命令是啥
Reply View the author
243750496
deepin
2013-05-23 16:09
#136
cc@thinkpad:~$         export WINEVERPATH=/opt/lol-wine
cc@thinkpad:~$         export PATH=$WINEVERPATH/binPATH
cc@thinkpad:~$         export WINESERVER="$WINEVERPATH/bin/wineserver"
cc@thinkpad:~$         export WINELOADER="$WINEVERPATH/bin/wine"
cc@thinkpad:~$         export WINEDLLPATH="WINEVERPATH/lib/wine/fakedlls"
cc@thinkpad:~$         export LD_LIBRARY_PATH="$WINEVERPATH/libLD_LIBRARY_PATH"
cc@thinkpad:~$         WINEPREFIX=~/LOL/.wine WINEARCH=win32 $WINEVERPATH/bin/winecfg
wine: chdir to /home/cc/LOL/.wine
: No such file or directory
cc@thinkpad:~$
过程都对?为啥报错
/opt目录下有lol-wine
说明没啥错
我用的./config是这样的:
./configure --enable-win64 --prefix=/opt/lol-wine
另外我是wine的时候没有make depend 直接make -j 2
然后make install
Reply View the author
243750496
deepin
2013-05-23 16:25
#137
WINEPREFIX=~/LOL/.wine winetricks vcrun2005 corefonts d3dx9 wininet dotnet20 dotnet35 ie6 win7 adobeair glsl-disable mfc42 physx

# 用winetricks安装一些Windows组件,其中physx是Nvidia显卡才要的,如果你的显卡不是Nvidia的,请删去;注意,在安装.Net framework 3.5的时候,进度条可能会在满格时卡住,没关系,kill掉wine和winetricks的进程后重新执行此命令就行了。
如果是bumblebee还要装么
Reply View the author
zhtengw
deepin
2013-05-23 19:41
#138
WINEPREFIX=~/LOL/.wine winetricks vcrun2005 corefonts d3dx9 wininet dotnet20 dotnet35 ie6 win7 adobeair glsl-disable mfc42 physx

# 用winetricks安装一些Windows组件,其中physx是Nvidia显卡才要的,如果你的显卡不是Nvidia的,请删去;注意,在安装.Net framework 3.5的时候,进度条可能会在满格时卡住,没关系,kill掉wine和winetricks的进程后重新执行此命令就行了。
如果是bumblebee还要装么
不装没关系
Reply View the author
zhtengw
deepin
2013-05-23 19:43
#139
cc@thinkpad:~$         export WINEVERPATH=/opt/lol-wine
cc@thinkpad:~$         export PATH=$WINEVERPATH/binPATH
cc@thinkpad:~$         export WINESERVER="$WINEVERPATH/bin/wineserver"
cc@thinkpad:~$         export WINELOADER="$WINEVERPATH/bin/wine"
cc@thinkpad:~$         export WINEDLLPATH="WINEVERPATH/lib/wine/fakedlls"
cc@thinkpad:~$         export LD_LIBRARY_PATH="$WINEVERPATH/libLD_LIBRARY_PATH"
cc@thinkpad:~$         WINEPREFIX=~/LOL/.wine WINEARCH=win32 $WINEVERPATH/bin/winecfg
wine: chdir to /home/cc/LOL/.wine
: No such file or directory
cc@thinkpad:~$
过程都对?为啥报错
/opt目录下有lol-wine
说明没啥错
我用的./config是这样的:
./configure --enable-win64 --prefix=/opt/lol-wine
另外我是wine的时候没有make depend 直接make -j 2
然后make install
恩,这个我漏说了,创建一个~/LOL目录就行
Reply View the author
243750496
deepin
2013-05-23 20:40
#140
我是问大神用wine模拟的版本是要下载lol国际版安装程序还是腾讯版lol?
据说国际版更稳定 但不晓得国际版能否上国服如果我下载腾讯版会不会照样掉线啥的
还有winetricks 有啥用 怎么用 我不了解 麻烦您了 神。
Reply View the author
......7 / 13
To page