首页 攻略 单机攻略 查看内容

《我的世界》全面论述minecraft1.8初期如何在linux ubuntu 14.04(64bit)上玩(官服)

  -Xmx1200M -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M 这几个是一些优化参数。Xmx1200M就是使用1.2GB内存。

  -Djava.library.path=后边,那个natives库文件必须有。但是官方正版一般是放入一个临时数字文件夹,等退出游戏,又给删除了。所以你写脚本时候,要放入一个自己单起名的文件夹。我就是起名的

  1.8-natives这个文件夹,放在/home/$USER/.minecraft/versions/1.8/,然后在这个脚本里头指一下位置。

  里头有几个库文件,可以在游戏运行时候复制出来。很容易。

  libjinput-linux64.so liblwjgl64.so libopenal64.so libjinput-linux.so liblwjgl.so libopenal.so 就这几个,64位的mc1.8用的。

  然后,-cp后头都是各种库文件,linux不是windows,用半角冒号分隔。

  最后net.minecraft.client.main.Main,是游戏启动命令。

  --version 1.8 --userProperties {} --accessToken "" --uuid "" --gameDir "/home/$USER/.minecraft" --assetsDir "/home/$USER/.minecraft/assets" --assetIndex 1.8 --width 854 --height 480 --userType offline --username abc123

  这几个是游戏启动的参数。

  如果用正版,官方登陆器登录游戏后,留下的json文件,还有登陆器如果你在profile设置时候,选择游戏登录后不关闭launcher起动器,则可以在launcher起动器日志中看到自己的uuid和accessToken,那2个是作为正版登录的。如果只是offline测试,可以暂时不用写。以后minecraft就是巨硬m$家的了,不知道会不会变。。。

  --gameDir 要指向mc根目录。--assetsDir如果你指错了,会游戏没有声音。--width 854 --height 480是分辨率,可以不写。--userType offline如果是正版帐号登录你要写--userType mojang。

  --username就是你测试时候的进入服务器后的帐号名字或者正版登录帐号的名字。

  --version 1.8和--assetIndex 1.8,如果是启动以前的版本,比如1.7.10,那你就写--version 1.7.10 ,--assetIndex 不写其实没事儿。--assetsDir指对了就行。但是现在1.8时代了。1.7x和更早 的mc都算legacy版本。--assetsDir 要写成--assetsDir /home/你的名字/.minecraft/assets/virtual/legacy ,1.8因为是最新,所以不用指到这里,如果写错了,进游戏没声音,相应文件也要对应改为1.7x的,路径也要对,包括那几个natives库文件。

  $USER表示当前用户,比如我的linux帐号名字叫onetwothree,那那些文件路径也可以写/home/onetwothree/.minecraft/xxoo/ooxx.jar 也可以。

  =-=-==-==-=

  改好后。保存脚本,加运行权限。运行启动这个脚本。就进游戏了。

  如果你缺重要参数,或者有无法识别的参数的话,比如因为语法不对,格式不对,或者拼写有误,那么可能无法运行!报错。你可以在ctrl-alt-t控制台中,sh runmc18ubu1404x64.sh。运行出错,可以看到报错。

  这样启动的好处就是,--username 那里,比如我可以写2个内容一样的脚本,放在linux下,/home/我的名字/文件夹下的不同子文件夹位置启动,第一个帐号--username 写abc123,第二个脚本--username def456,还可以有第三个。这样可以实现模拟客户端多开。。。测试方便么。。。

  =-=-==-未完待续。

  本帖最后由 fanbu 于 2014-9-17 18:50 编辑

  但是还是有问题,现实世界一般人都玩mod。这没有forge,不挂mod,不科学啊。

  我也要NEI或者TMI随便刷物品,我要有虚拟村庄带智能的npc。我要有小地图,要这要那。那怎么办。

  客户端安装forge。

  现在mc1.8时代初期,forge肯定一时出不来,1.8也不是小更新。forge现在主流版本是对应mc1.7.2和mc1.7.10.

  比如mc1.7.2,linux下怎么装forge。

  先去minecraftforge.net官方网站,比如找forge-1.7.2-10.12.2.1121-installer.jar,推荐版本的,如果能连的话,应该不难。这个mc1.6x时代以后都是installer了。。。

  用法,把这个jar包复制到/home/你的名字/.minecraft下,

  然后再写一个sh脚本,比如installforge.sh,里头写

  #!/bin/bash

  java -jar forge-1.7.2-10.12.2.1121-installer.jar

  然后保存,加运行权限。运行之,

  图形桌面下会问你,你要装client还是server,那当然是客户端client的了。

  然后,会问你路径,路径写/home/你的名字/.minecraft

  然后会给你自动把当前的对应版本,如果对上的话,升级出一个forge版。比如1.7.2-Forge10.12.2.1121这样子。

  然后,你就用magic launcher启动,在setup -> environment中,应该也能找到这个forge的版本,可以点test启动。不过,安装时候和第一次运行forge版本的游戏,你最好一直联网,因为forge是自带库的,installer有时对于wrapper还有几个库渺似不会及时下载。。。所以。。。库如果不全可是无法启动的。好在现在scala的2个库不用你乱折腾了。。。直接帮你下。。。以前还要手动的。。。

  还好现在forge的对应版本natives是自动弄好的。也不用折腾了。

  成功运行第一次带forge的版本后,就可以开始上mod了。

  把自己喜欢的mod扔到,自动生成的/home/你的名字/.minecraft/mods文件夹下。

  再启动游戏就行了。这样单机启动forge就能行了。可以不用官方登陆器。

  =--=-=-==-=-未完待续

  本帖最后由 fanbu 于 2014-9-17 20:51 编辑

  我如果做测试的话,肯定要同时多开。需要脚本方式启动,而且magic launcher那种方法,只能一次起一个随机帐号,或者固定用正版帐号名。这在offline服务器测试时候,有些时候可以,有些就不行。

  forge版本的脚本启动怎么弄。还是在/home/你的名字/.minecraft下,写一个sh文件,加运行权限,内容如下。(参数实际在version下的对应版本的json文件中有,)

  #!/bin/bash

  java -Xmx1G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M -Djava.library.path=/home/$USER/.minecraft/versions/1.7.2-Forge10.12.2.1121/1.7.2-Forge10.12.2.1121-natives -cp /home/$USER/.minecraft/libraries/net/minecraftforge/forge/1.7.2-10.12.2.1121/forge-1.7.2-10.12.2.1121.jar:/home/$USER/.minecraft/libraries/net/minecraft/launchwrapper/1.9/launchwrapper-1.9.jar:/home/$USER/.minecraft/libraries/org/ow2/asm/asm-all/4.1/asm-all-4.1.jar:/home/$USER/.minecraft/libraries/org/scala-lang/scala-library/2.10.2/scala-library-2.10.2.jar:/home/$USER/.minecraft/libraries/org/scala-lang/scala-compiler/2.10.2/scala-compiler-2.10.2.jar:/home/$USER/.minecraft/libraries/java3d/vecmath/1.3.1/vecmath-1.3.1.jar:/home/$USER/.minecraft/libraries/net/sf/trove4j/trove4j/3.0.3/trove4j-3.0.3.jar:/home/$USER/.minecraft/libraries/com/ibm/icu/icu4j-core-mojang/51.2/icu4j-core-mojang-51.2.jar:/home/$USER/.minecraft/libraries/net/sf/jopt-simple/jopt-simple/4.5/jopt-simple-4.5.jar:/home/$USER/.minecraft/libraries/lzma/lzma/0.0.1/lzma-0.0.1.jar:/home/$USER/.minecraft/libraries/com/paulscode/codecjorbis/20101023/codecjorbis-20101023.jar:/home/$USER/.minecraft/libraries/com/paulscode/codecwav/20101023/codecwav-20101023.jar:/home/$USER/.minecraft/libraries/com/paulscode/libraryjavasound/20101123/libraryjavasound-20101123.jar:/home/$USER/.minecraft/libraries/com/paulscode/librarylwjglopenal/20100824/librarylwjglopenal-20100824.jar:/home/$USER/.minecraft/libraries/com/paulscode/soundsystem/20120107/soundsystem-20120107.jar:/home/$USER/.minecraft/libraries/io/netty/netty-all/4.0.10.Final/netty-all-4.0.10.Final.jar:/home/$USER/.minecraft/libraries/com/google/guava/guava/15.0/guava-15.0.jar:/home/$USER/.minecraft/libraries/org/apache/commons/commons-lang3/3.1/commons-lang3-3.1.jar:/home/$USER/.minecraft/libraries/commons-io/commons-io/2.4/commons-io-2.4.jar:/home/$USER/.minecraft/libraries/net/java/jinput/jinput/2.0.5/jinput-2.0.5.jar:/home/$USER/.minecraft/libraries/net/java/jutils/jutils/1.0.0/jutils-1.0.0.jar:/home/$USER/.minecraft/libraries/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar:/home/$USER/.minecraft/libraries/com/mojang/authlib/1.3/authlib-1.3.jar:/home/$USER/.minecraft/libraries/org/apache/logging/log4j/log4j-api/2.0-beta9/log4j-api-2.0-beta9.jar:/home/$USER/.minecraft/libraries/org/apache/logging/log4j/log4j-core/2.0-beta9/log4j-core-2.0-beta9.jar:/home/$USER/.minecraft/libraries/org/lwjgl/lwjgl/lwjgl/2.9.0/lwjgl-2.9.0.jar:/home/$USER/.minecraft/libraries/org/lwjgl/lwjgl/lwjgl_util/2.9.0/lwjgl_util-2.9.0.jar:/home/$USER/.minecraft/versions/1.7.2-Forge10.12.2.1121/1.7.2-Forge10.12.2.1121.jar net.minecraft.launchwrapper.Launch --version 1.7.2-Forge10.12.2.1121 --gameDir "/home/$USER/.minecraft" --assetsDir "/home/$USER/.minecraft/assets/virtual/legacy" --accessToken "" --uuid "" --width 854 --height 480 --tweakClass cpw.mods.fml.common.launcher.FMLTweaker --username abc123