Compare commits
50 Commits
Author | SHA1 | Date | |
---|---|---|---|
8b62106587
|
|||
076bf84410
|
|||
6136fee405
|
|||
8ebd834e73
|
|||
a4fc72dc52 | |||
d94d0f409c | |||
6323778c5f | |||
08181a63a1
|
|||
e380df8257
|
|||
2a6df12ee6
|
|||
8fd4745572
|
|||
2591b2e029
|
|||
f1aa69b2bd
|
|||
a98834de6c | |||
fe6034506f | |||
62e283a406 | |||
744feb6799 | |||
d0d3a7a90f | |||
42e948c605 | |||
24418c83fa | |||
8a0bc87c1a | |||
881b12e57b | |||
2e5327c61e | |||
c668af53a4 | |||
23ba39313f | |||
c2ec0b63e4 | |||
7ad66a0b50 | |||
4c1ed93639 | |||
3222eff7c6 | |||
596c93fb2d | |||
65d4d25ccc | |||
a47eb47b24 | |||
5a806555d5 | |||
6455539b4b | |||
ba75ec33d0 | |||
4a6874915b | |||
0657b7c0a6 | |||
7ce2d70c8b | |||
e1efb6e0d2 | |||
219bc5ba5c | |||
af9dfb6f90 | |||
52195f81a3 | |||
e37a9fe8d4 | |||
0667b44461 | |||
606eedd664 | |||
b38e3ca913 | |||
4666891e42 | |||
1ecc7be9ce | |||
a9cfb980ae | |||
468c01196b |
1
.github/FUNDING.yml
vendored
1
.github/FUNDING.yml
vendored
@ -1 +0,0 @@
|
||||
ko_fi: iiiypuk
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,3 +1 @@
|
||||
env
|
||||
version.json
|
||||
libs.txt
|
||||
for_build/
|
||||
|
10
CHANGELOG.md
Normal file
10
CHANGELOG.md
Normal file
@ -0,0 +1,10 @@
|
||||
## 2021-07-22
|
||||
+ move `./docs/` to `ph-pages` branch.
|
||||
|
||||
## 2021-07-21
|
||||
+ update launcher to 1.17.1
|
||||
> java 16 to run need
|
||||
|
||||
## 2020-10-10
|
||||
+ add return notification for generate libraries list.
|
||||
+ add output parameter for make libs script.
|
@ -1,26 +0,0 @@
|
||||
English help
|
||||
============
|
||||
## 1. Installing
|
||||
Download of [actually](https://github.com/iiiypuk/minecraft-launcher/releases/latest) version launcher.
|
||||
Next [download](https://www.minecraft.net/download) Minecraft and start Demo mode. After successfully run close game.
|
||||
Download required [libraries](https://mega.nz/#F!hUNg0Y6I!93cYw1NZg4MUWUHaVrCO7w) for run game for **your system** and game **version**.
|
||||
|
||||
## 2. Client Minecraft
|
||||
By default script configured for run Minecraft from default directory:
|
||||
for Windows is `%APPDATA%\.minecraft`.
|
||||
for Linux is `~/.minecraft`.
|
||||
|
||||
Extract launcher files in game directory, if necessary, you can create a shortcut on the desktop.
|
||||
Start. ENJOY!
|
||||
|
||||
## 3. Configuration
|
||||
This launcher configurable. Configuration made by changing the parameters in the source code of the launcher.
|
||||
|
||||
**Parameters list and values are presented below:**
|
||||
|
||||
+ `%MC_DIR%` - directory with Minecraft client.
|
||||
+ `%GAME_DIR%` - directory with user files. Resource packs, saves, screenshots and etc.
|
||||
+ `%PLAYER%` - player name.
|
||||
+ `%WINDOW_W%` - window width in window mode.
|
||||
+ `%WINDOW_H%` - height width in window mode.
|
||||
+ `%RAM%` - the amount of RAM that the JVM will use. The default is 2GB.
|
@ -1,26 +0,0 @@
|
||||
Русская справка
|
||||
===============
|
||||
## 1. Установка
|
||||
Скачиваем [актуальную](https://github.com/iiiypuk/minecraft-launcher/releases/latest) версию лаунчера.
|
||||
Далее [скачиваем](https://www.minecraft.net/download) Minecraft и запускаем демо-режим. После успешного запуска, закрываем игру.
|
||||
Скачиваем необходимые для запуска [библиотеки](https://mega.nz/#F!hUNg0Y6I!93cYw1NZg4MUWUHaVrCO7w) для **вашей системы** и **версии игры**.
|
||||
|
||||
## 2. Клиент Minecraft
|
||||
По умолчанию скрипт настроен на запуск Minecraft из стандартной директории:
|
||||
для Windows это `%APPDATA%\.minecraft`.
|
||||
для Linux это `~/.minecraft`.
|
||||
|
||||
Распаковываем файлы лаунчера в директорию с игрой, при необходимости можно создать ярлык на рабочем столе.
|
||||
Запускаем. ENJOY!
|
||||
|
||||
## 3. Настройка
|
||||
Этот лаунчер можно настроить. Настройка производится путём изменения параметров в исходном коде лаунчера.
|
||||
|
||||
**Список параметров и их значений представлены ниже:**
|
||||
|
||||
+ `%MC_DIR%` - директория с клиентом Minecraft.
|
||||
+ `%GAME_DIR%` - директория с файлами пользователя. Ресурс-паки, сохранения, скриншоты и др.
|
||||
+ `%PLAYER%` - имя игрока.
|
||||
+ `%WINDOW_W%` - ширина окна в оконном режиме.
|
||||
+ `%WINDOW_H%` - высота окна в оконном режиме.
|
||||
+ `%RAM%` - количество оперативной памяти, которое JVM будет использовать. По умолчанию 2GB.
|
BIN
Minecraft.jar
BIN
Minecraft.jar
Binary file not shown.
23
README.md
23
README.md
@ -1,14 +1,15 @@
|
||||
Minecraft Java Edition Batch Launcher
|
||||
========================
|
||||
[](https://github.com/iiiypuk/minecraft-launcher/releases/latest)
|
||||
# Minecraft [Java Edition] Batch Launcher
|
||||
|
||||
### Features:
|
||||
* Open source. Just launch the game, nothing more
|
||||
* No need for extra deps
|
||||
* Change player name
|
||||
**Features:**
|
||||
|
||||
### Instaling ∙ ∙ Установка:
|
||||
+ [English help](https://github.com/IIIypuk/minecraft-launcher/blob/master/INSTALLATION_EN.md)
|
||||
+ [Русская справка](https://github.com/IIIypuk/minecraft-launcher/blob/master/INSTALLATION_RU.md)
|
||||
* 📋 Open source. Just launch the game, nothing more
|
||||
* 🏷️ Change player name
|
||||
* 🧰 No need for extra deps
|
||||
* ⚙️ No configuration required
|
||||
|
||||
## Minecraft Natives
|
||||
The natives catalog is located on [Mega.nz](https://mega.nz/#F!hUNg0Y6I!93cYw1NZg4MUWUHaVrCO7w).
|
||||
|
||||
## ChangeLog
|
||||
See [CHANGELOG.md](CHANGELOG.md).
|
||||
|
||||
 
|
||||
|
@ -1 +0,0 @@
|
||||
theme: jekyll-theme-modernist
|
@ -1,17 +0,0 @@
|
||||
## Minecraft Java Edition Batch Launcher
|
||||
[](https://github.com/iiiypuk/minecraft-launcher/releases/latest)  
|
||||
|
||||
### Features:
|
||||
* Open source. Just launch the game, nothing more
|
||||
* No need for extra deps
|
||||
* Change player name
|
||||
|
||||
### Instaling / Установка:
|
||||
[English help](https://github.com/IIIypuk/minecraft-launcher/blob/master/INSTALLATION_EN.md)
|
||||
[Русская справка](https://github.com/IIIypuk/minecraft-launcher/blob/master/INSTALLATION_RU.md)
|
||||
|
||||
|
||||
|
||||
### Support or Contact
|
||||
|
||||
Alexander Popov: [Telegram](https://telegram.me/slexbc)
|
@ -1,44 +0,0 @@
|
||||
echo -ne "\033]2;Minecraft Launcher\007"
|
||||
|
||||
# A minecraft root directory
|
||||
MC_DIR=~/.minecraft
|
||||
|
||||
# Are stored here...
|
||||
# saves/, resourcepacks/ and screenshots/ dirs
|
||||
# and options.txt and servers.dat files
|
||||
GAME_DIR=%MC_DIR
|
||||
|
||||
# Assets location
|
||||
ASSETS_DIR=$MC_DIR/assets
|
||||
ASSETS_INDEX=1.16
|
||||
|
||||
# Version to use
|
||||
GAME_VERSION=1.16.3
|
||||
|
||||
# Native libs location
|
||||
NATIVES_DIR=$MC_DIR/bin/$GAME_VERSION
|
||||
|
||||
# Player name
|
||||
PLAYER_NAME=Steve
|
||||
|
||||
# Game window resolution
|
||||
WINDOW_W=800
|
||||
WINDOW_H=640
|
||||
|
||||
# java machine arguments
|
||||
JVM_RAM="-Xmx2G"
|
||||
JVM_ARGS="-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M"
|
||||
|
||||
cd $MC_DIR
|
||||
|
||||
java $JVM_RAM $JVM_ARGS \
|
||||
-Djava.library.path=$NATIVES_DIR \
|
||||
-cp $MC_DIR/libraries/com/mojang/patchy/1.1/patchy-1.1.jar:$MC_DIR/libraries/oshi-project/oshi-core/1.1/oshi-core-1.1.jar:$MC_DIR/libraries/net/java/dev/jna/jna/4.4.0/jna-4.4.0.jar:$MC_DIR/libraries/net/java/dev/jna/platform/3.4.0/platform-3.4.0.jar:$MC_DIR/libraries/com/ibm/icu/icu4j/66.1/icu4j-66.1.jar:$MC_DIR/libraries/com/mojang/javabridge/1.0.22/javabridge-1.0.22.jar:$MC_DIR/libraries/net/sf/jopt-simple/jopt-simple/5.0.3/jopt-simple-5.0.3.jar:$MC_DIR/libraries/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar:$MC_DIR/libraries/com/google/guava/guava/21.0/guava-21.0.jar:$MC_DIR/libraries/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar:$MC_DIR/libraries/commons-io/commons-io/2.5/commons-io-2.5.jar:$MC_DIR/libraries/commons-codec/commons-codec/1.10/commons-codec-1.10.jar:$MC_DIR/libraries/net/java/jinput/jinput/2.0.5/jinput-2.0.5.jar:$MC_DIR/libraries/net/java/jutils/jutils/1.0.0/jutils-1.0.0.jar:$MC_DIR/libraries/com/mojang/brigadier/1.0.17/brigadier-1.0.17.jar:$MC_DIR/libraries/com/mojang/datafixerupper/4.0.26/datafixerupper-4.0.26.jar:$MC_DIR/libraries/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar:$MC_DIR/libraries/com/mojang/authlib/1.6.25/authlib-1.6.25.jar:$MC_DIR/libraries/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar:$MC_DIR/libraries/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar:$MC_DIR/libraries/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:$MC_DIR/libraries/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar:$MC_DIR/libraries/it/unimi/dsi/fastutil/8.2.1/fastutil-8.2.1.jar:$MC_DIR/libraries/org/apache/logging/log4j/log4j-api/2.8.1/log4j-api-2.8.1.jar:$MC_DIR/libraries/org/apache/logging/log4j/log4j-core/2.8.1/log4j-core-2.8.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl/3.2.1/lwjgl-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-jemalloc/3.2.1/lwjgl-jemalloc-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-openal/3.2.1/lwjgl-openal-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-opengl/3.2.1/lwjgl-opengl-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-glfw/3.2.1/lwjgl-glfw-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-stb/3.2.1/lwjgl-stb-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-tinyfd/3.2.1/lwjgl-tinyfd-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl/3.2.1/lwjgl-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-jemalloc/3.2.1/lwjgl-jemalloc-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-openal/3.2.1/lwjgl-openal-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-opengl/3.2.1/lwjgl-opengl-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-glfw/3.2.1/lwjgl-glfw-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-stb/3.2.1/lwjgl-stb-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-tinyfd/3.2.1/lwjgl-tinyfd-3.2.1.jar:$MC_DIR/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar:$MC_DIR/libraries/com/mojang/text2speech/1.11.3/text2speech-1.11.3.jar:$MC_DIR/libraries/com/mojang/text2speech/1.11.3/text2speech-1.11.3.jar:$MC_DIR/libraries/ca/weblite/java-objc-bridge/1.0.0/java-objc-bridge-1.0.0.jar:$MC_DIR/libraries/ca/weblite/java-objc-bridge/1.0.0/java-objc-bridge-1.0.0.jar:$MC_DIR/versions/$GAME_VERSION/$GAME_VERSION.jar \
|
||||
net.minecraft.client.main.Main \
|
||||
--username $PLAYER_NAME \
|
||||
--version $GAME_VERSION \
|
||||
--accessToken 0 --userProperties {} \
|
||||
--gameDir %GAME_DIR% \
|
||||
--assetsDir $ASSETS_DIR \
|
||||
--assetIndex $ASSETS_INDEX \
|
||||
--width $WINDOW_W --height $WINDOW_H
|
49
make_libs.py
49
make_libs.py
@ -1,49 +0,0 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import json
|
||||
import click
|
||||
|
||||
__author__ = "Alexander Popov"
|
||||
__version__ = "1.0.0"
|
||||
__license__ = "Unlicense"
|
||||
|
||||
|
||||
@click.command()
|
||||
@click.option("--platform", default="win", help="Output platform (win, unix).")
|
||||
def make_output(platform):
|
||||
""" Return libraries list """
|
||||
|
||||
libraries = parse_libs()
|
||||
|
||||
_ = {"win": ";", "unix": ":"}
|
||||
|
||||
output = str()
|
||||
|
||||
for lib in libraries:
|
||||
output = output + "$MC_DIR/libraries/{0}".format(lib) + _[platform]
|
||||
|
||||
output = output + "$MC_DIR/versions/$GAME_VERSION/$GAME_VERSION.jar"
|
||||
|
||||
if platform == "win":
|
||||
output = output.replace("$MC_DIR", "%MC_DIR%")
|
||||
output = output.replace("$GAME_VERSION", "%GAME_VERSION%")
|
||||
|
||||
click.echo(output)
|
||||
|
||||
|
||||
def parse_libs():
|
||||
""" Make libraries list from version.json file """
|
||||
|
||||
_ = []
|
||||
|
||||
with open("./version.json", "r", encoding="utf-8") as f:
|
||||
file_data = json.loads(f.read())
|
||||
|
||||
for lib in file_data["libraries"]:
|
||||
_.append(lib["downloads"]["artifact"]["path"])
|
||||
|
||||
return _
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
make_output()
|
@ -1,4 +0,0 @@
|
||||
Minecraft Natives
|
||||
=========================
|
||||
|
||||
[mega.nz](https://mega.nz/#F!hUNg0Y6I!93cYw1NZg4MUWUHaVrCO7w)
|
@ -1 +0,0 @@
|
||||
click==7.1.2
|
75
tools/make_libs.py
Normal file
75
tools/make_libs.py
Normal file
@ -0,0 +1,75 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
## Requirements PIP: click
|
||||
|
||||
"""Parse Minecraft version.json file and return using libs"""
|
||||
|
||||
__version__ = "1.0.5"
|
||||
|
||||
import sys
|
||||
import json
|
||||
import click
|
||||
|
||||
|
||||
@click.command()
|
||||
@click.option("-p", "--platform", default=sys.platform, help="Output platform (win32, linux, darwin).")
|
||||
@click.option("-o", "--output", default="tty", help="Output option (tty, txt).")
|
||||
def make_output(platform, output):
|
||||
"""Return libraries list"""
|
||||
|
||||
libraries = parse_libs()
|
||||
|
||||
# OS libs separate
|
||||
_ = {"win32": ";", "linux": ":", "darwin": ":"}
|
||||
|
||||
out_lib = str()
|
||||
|
||||
# Generate libraries list
|
||||
for lib in libraries:
|
||||
out_lib = out_lib + "$MC_DIR/libraries/{0}".format(lib) + _[platform]
|
||||
|
||||
out_lib = out_lib + "$MC_DIR/versions/$GAME_VERSION/$GAME_VERSION.jar"
|
||||
|
||||
# Replace for OS shell variable symbol
|
||||
if platform == "win32":
|
||||
out_lib = out_lib.replace("$MC_DIR", "%MC_DIR%")
|
||||
out_lib = out_lib.replace("$GAME_VERSION", "%GAME_VERSION%")
|
||||
|
||||
if output == "tty":
|
||||
click.echo(out_lib)
|
||||
|
||||
if platform == "win32":
|
||||
print("\nWindows generate libraries list complete!")
|
||||
elif platform in ("linux", "darwin"):
|
||||
print("\nUnix generate libraries list complete!")
|
||||
elif output == "txt":
|
||||
with open("./libs.txt", "w", encoding="utf-8") as f:
|
||||
f.write(out_lib)
|
||||
|
||||
if platform == "win32":
|
||||
print("\nWindows generate libraries list complete!\n" "See libs.txt file.")
|
||||
elif platform in ("linux", "darwin"):
|
||||
print("\nUnix generate libraries list complete!\n" "See libs.txt file.")
|
||||
|
||||
|
||||
def parse_libs():
|
||||
"""Make libraries list from version.json file"""
|
||||
|
||||
_ = []
|
||||
|
||||
try:
|
||||
with open("./version.json", "r", encoding="utf-8") as f:
|
||||
file_data = json.loads(f.read())
|
||||
|
||||
for lib in file_data["libraries"]:
|
||||
_.append(lib["downloads"]["artifact"]["path"])
|
||||
except FileNotFoundError:
|
||||
print("ERROR: File version.json not found.")
|
||||
sys.exit(-1)
|
||||
|
||||
return _
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# pylint: disable=no-value-for-parameter
|
||||
make_output()
|
48
unix/mc_start.sh
Executable file
48
unix/mc_start.sh
Executable file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user