我希望能够尽可能简化Minecraft服务器的启动命令输入
你好。我是芋泥。
突然问你,你喜欢玩游戏《Minecraft》(以下简称为“我的世界”)吗?
我觉得大家都喜欢。
只是当输入“我的世界”服务器的指令时,
$ ~~~ % cd ~~~/~~~/~~~/~~~/Minecraft/サーバー用ファイル
$ ~~~ % java -Xmx~G -Xms~G -jar server.jar nogui
你有没有输入类似这样的命令?
说实话,这种情况很麻烦对吧。所以我想简化一下,写了一点点编程代码。如果可以的话,请看一下。
Minecraft的准备工作。
你是否已经安装了Minecraft?由于这篇文章是为那些不打算自己搭建Minecraft服务器的人准备的,所以如果你不属于这个范围,可能对你没什么帮助,请注意这一点。
如何简单地搭建服务器的说明
将从Minecraft下载的server.jar文件放入[Application Support/Minecraft/服务器文件]文件夹中并解压jar文件。然后点击server.jar。如果需要输入命令,
$ ~~~ % cd ~~~/~~~/~~~/~~~/Minecraft/サーバー用ファイル
$ ~~~ % java -Xmx~G -Xms~G -jar server.jar nogui
所以,开始运行。(~可以是任意的数字)
cd–>java实在是太麻烦了
这个甚至都变得烦人了。所以我想,能不能自动启动它呢,比如python呢。
$ ~~~ % pyinstaller mine_driver.py --onefile
所以,我突然想到了在Windows上将其转换为exe文件,在Mac上则转化为可启动应用程序。我想,只要能够在Python中操作终端,就能够创建启动应用程序,所以我简单地尝试了一下。
在操作Command时需要注意的事项。
这个前提是server.jar文件已经放在[Application Support/Minecraft/服务器文件]里面。此外,这只是在写关于如何移动到终端的命令,实际上运行的是终端操作,而不是在Python中通过Java启动。由于它是初学者命令,所以请注意这一点。
#================================================#
#Pythonとserver.jarを組み合わせた楽々起動マン
#作成日:2022/02/13
#製作者:里芋のすり身
#================================================#
import subprocess
import os
import sys
#================================================#
#1.PATHの取得から、Minecraftのファイルまでの自動移動
#================================================#
path = os.getcwd() # PATHの取得
print('現在のPATHは ' + path + ' です。') #そのpathを出力
def change_file():
while True:
choice = input("Minecraftファイルまで移動します。よろしいですか?[y/N]").lower()
if choice in ['y', 'ye', 'yes']:
return True
elif choice in ['n', 'no']:
return False
if __name__ == '__main__':
if change_file():
os.chdir('/Users/~~~~~~/~~~~~~~/Application Support/Minecraft/~~~~~~~~~~') #change directly
path = os.getcwd() #PATHの更新
print('現在のPATHは ' + path + ' です。')
else:
print('変更しませんでした。')
path = os.getcwd() #更新などないが、一応更新
print('現在のPATHは ' + path + ' です。')
sys.exit()
#================================================#
#2.実際に移動したファイルでサーバーを起動
#================================================#
def running_minecraft():
while True:
choice = input("Minecraftを起動します。よろしいですか?[y/N]").lower()
if choice in ['y', 'ye', 'yes']:
return True
elif choice in ['n', 'no']:
return False
if __name__ == '__main__':
if running_minecraft():
try:
subprocess.run("java -Xmx4G -Xms1G -jar server.jar nogui",shell = True)
except:
print ('ERROR')
else:
print('起動しませんでした。')
我按照这个感觉做了一下。我稍微借鉴了其他人的编程。在Python内部。
os.chdir('/Users/~~~~~~/~~~~~~~/Application Support/Minecraft/~~~~~~~~~~') #change directly
如果Minecraft文件中使用了服务器专用文件的部分,请将此部分改为该文件的文件名。一旦设置完成,后来如果不移动位置就不需要重新编写。
将其转变为一个可执行文件
剩下的只是
$ ~~~ % pyinstaller mine_driver.py --onefile
好的!完成了。
我想这样可以确认启动了。如果有不懂的地方,请问问题。
这是给初学者的命令,所以请不要批评或恐吓。希望大家能停止这样做。
现在,我要感谢您一直以来的阅读。谢谢。