49 Commits

Author SHA1 Message Date
076bf84410 now and always not need manual generate lib's list 2022-06-03 15:43:03 +03:00
6136fee405 tool4make jar's list move to project... again 2022-06-03 15:40:55 +03:00
8ebd834e73 1.18.2 2022-05-16 19:35:28 +03:00
a4fc72dc52 Merge pull request #21 from Gauley123/patch-1
Used `/d` parameter for change directory with drive.
2021-11-07 02:17:28 +03:00
d94d0f409c Update mc_start.bat
changes it to use cd /d instead
2021-11-04 18:55:27 +00:00
6323778c5f xD 2021-10-29 03:37:55 +03:00
08181a63a1 update readme 2021-07-22 01:44:49 +03:00
e380df8257 make gh-pages 2021-07-22 01:36:00 +03:00
2a6df12ee6 cleaning 2021-07-22 01:29:43 +03:00
8fd4745572 fix readme 2021-07-22 01:10:54 +03:00
2591b2e029 up to 1.17.1 2021-07-21 04:39:18 +03:00
f1aa69b2bd add binary builds link 2021-03-31 01:29:35 +03:00
a98834de6c add site statictics 2021-02-16 20:24:02 +03:00
fe6034506f add todo list 2021-02-15 18:27:20 +03:00
62e283a406 add portable guide 2021-02-14 08:18:28 +03:00
744feb6799 Merge branch 'master' of https://github.com/iiiypuk/minecraft-launcher 2021-02-14 05:46:51 +03:00
d0d3a7a90f make docs by docsify 2021-02-14 05:46:42 +03:00
42e948c605 fix main page 2021-02-14 05:38:06 +03:00
24418c83fa fix links 2021-02-14 05:35:10 +03:00
8a0bc87c1a fix path 2021-02-14 05:30:59 +03:00
881b12e57b fix docs 2021-02-14 05:28:41 +03:00
2e5327c61e fix basePath 2021-02-14 05:23:41 +03:00
c668af53a4 remove .nojekyll 2021-02-14 05:22:45 +03:00
23ba39313f add docs by docsify 2021-02-14 05:20:17 +03:00
c2ec0b63e4 remove trash folder 2021-02-10 22:53:24 +03:00
7ad66a0b50 remove github-docs 2021-02-10 22:50:47 +03:00
4c1ed93639 remove *.jar libs string in the code
for small size repository files
2021-02-10 22:48:03 +03:00
3222eff7c6 add LICENSE badge 2021-02-10 22:43:11 +03:00
596c93fb2d add player name user input
and add shebang
2021-02-10 22:37:47 +03:00
65d4d25ccc update natives readme 2021-02-07 18:05:36 +03:00
a47eb47b24 update to 1.16.5
change `authlib` version
2021-02-07 17:56:00 +03:00
5a806555d5 add emoji 📝
and add "No need configuration" label to README
2021-02-07 17:21:22 +03:00
6455539b4b add tg contact link 2020-11-22 11:48:49 +03:00
ba75ec33d0 change dir name 2020-11-22 04:17:40 +03:00
4a6874915b fix unix version variable 2020-11-22 04:16:34 +03:00
0657b7c0a6 update to 1.16.4 2020-11-22 04:02:47 +03:00
7ce2d70c8b fix complete message
fix complete message for unix system
2020-11-22 03:38:06 +03:00
e1efb6e0d2 OS lib separate output fix 2020-11-22 03:35:27 +03:00
219bc5ba5c auto select output platform 2020-10-17 00:26:41 +03:00
af9dfb6f90 remove binary files 2020-10-15 02:18:58 +03:00
52195f81a3 fix line end markup 2020-10-15 02:15:36 +03:00
e37a9fe8d4 Merge pull request #13 from LudovicTOURMAN/patch-1
Fix shell variables
2020-10-15 02:01:42 +03:00
0667b44461 Fix shell variables
Fix shell variables that where style "windows styled"
2020-10-14 23:17:18 +02:00
606eedd664 update changelog 2020-10-10 03:10:02 +03:00
b38e3ca913 add new parameter for output 2020-10-10 03:04:51 +03:00
4666891e42 add donate button to readme 2020-10-10 02:47:12 +03:00
1ecc7be9ce add notify for generate libs list 2020-10-10 02:29:27 +03:00
a9cfb980ae move tools to dir 2020-10-10 02:23:13 +03:00
468c01196b add TODO 2020-10-09 03:41:42 +03:00
17 changed files with 161 additions and 188 deletions

1
.github/FUNDING.yml vendored
View File

@ -1 +0,0 @@
ko_fi: iiiypuk

4
.gitignore vendored
View File

@ -1,3 +1 @@
env
version.json
libs.txt
for_build/

10
CHANGELOG.md Normal file
View 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.

View File

@ -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.

View File

@ -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.

Binary file not shown.

View File

@ -1,14 +1,15 @@
Minecraft Java Edition Batch Launcher
========================
[![https://img.shields.io/badge/Download-this-lightgrey?style=for-the-badge](https://img.shields.io/badge/Download-this-lightgrey?style=for-the-badge)](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).
![Latest release](https://img.shields.io/github/v/release/iiiypuk/minecraft-launcher?style=for-the-badge) ![Total downloads](https://img.shields.io/github/downloads/iiiypuk/minecraft-launcher/total?style=for-the-badge)

View File

@ -1 +0,0 @@
theme: jekyll-theme-modernist

View File

@ -1,17 +0,0 @@
## Minecraft Java Edition Batch Launcher
[![https://img.shields.io/badge/Download-this-lightgrey?style=for-the-badge](https://img.shields.io/badge/Download-this-lightgrey?style=for-the-badge)](https://github.com/iiiypuk/minecraft-launcher/releases/latest) ![Latest release](https://img.shields.io/github/v/release/iiiypuk/minecraft-launcher?style=for-the-badge) ![Total downloads](https://img.shields.io/github/downloads/iiiypuk/minecraft-launcher/total?style=for-the-badge)
### 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)

View File

@ -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

View File

@ -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()

View File

@ -1,4 +0,0 @@
Minecraft Natives
=========================
[mega.nz](https://mega.nz/#F!hUNg0Y6I!93cYw1NZg4MUWUHaVrCO7w)

View File

@ -1 +0,0 @@
click==7.1.2

75
tools/make_libs.py Normal file
View 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()

52
unix/mc_start.sh Normal file
View File

@ -0,0 +1,52 @@
#!/bin/sh
echo -ne "\033]2;Minecraft Launcher\007"
# Set username
read -p "What username would you like?: " player
# 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.18
# Version to use
GAME_VERSION=1.18.2
# Native libs location
NATIVES_DIR=$MC_DIR/bin/$GAME_VERSION
# *.jar paths from version.json
LIBRARIES_LIST="$MC_DIR/libraries/com/mojang/logging/1.0.0/logging-1.0.0.jar:$MC_DIR/libraries/com/mojang/blocklist/1.0.10/blocklist-1.0.10.jar:$MC_DIR/libraries/com/mojang/patchy/2.2.10/patchy-2.2.10.jar:$MC_DIR/libraries/com/github/oshi/oshi-core/5.8.5/oshi-core-5.8.5.jar:$MC_DIR/libraries/net/java/dev/jna/jna/5.10.0/jna-5.10.0.jar:$MC_DIR/libraries/net/java/dev/jna/jna-platform/5.10.0/jna-platform-5.10.0.jar:$MC_DIR/libraries/org/slf4j/slf4j-api/1.8.0-beta4/slf4j-api-1.8.0-beta4.jar:$MC_DIR/libraries/org/apache/logging/log4j/log4j-slf4j18-impl/2.17.0/log4j-slf4j18-impl-2.17.0.jar:$MC_DIR/libraries/com/ibm/icu/icu4j/70.1/icu4j-70.1.jar:$MC_DIR/libraries/com/mojang/javabridge/1.2.24/javabridge-1.2.24.jar:$MC_DIR/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar:$MC_DIR/libraries/io/netty/netty-all/4.1.68.Final/netty-all-4.1.68.Final.jar:$MC_DIR/libraries/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar:$MC_DIR/libraries/com/google/guava/guava/31.0.1-jre/guava-31.0.1-jre.jar:$MC_DIR/libraries/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:$MC_DIR/libraries/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar:$MC_DIR/libraries/commons-codec/commons-codec/1.15/commons-codec-1.15.jar:$MC_DIR/libraries/com/mojang/brigadier/1.0.18/brigadier-1.0.18.jar:$MC_DIR/libraries/com/mojang/datafixerupper/4.1.27/datafixerupper-4.1.27.jar:$MC_DIR/libraries/com/google/code/gson/gson/2.8.9/gson-2.8.9.jar:$MC_DIR/libraries/com/mojang/authlib/3.3.39/authlib-3.3.39.jar:$MC_DIR/libraries/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar:$MC_DIR/libraries/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar:$MC_DIR/libraries/commons-logging/commons-logging/1.2/commons-logging-1.2.jar:$MC_DIR/libraries/org/apache/httpcomponents/httpcore/4.4.14/httpcore-4.4.14.jar:$MC_DIR/libraries/it/unimi/dsi/fastutil/8.5.6/fastutil-8.5.6.jar:$MC_DIR/libraries/org/apache/logging/log4j/log4j-api/2.17.0/log4j-api-2.17.0.jar:$MC_DIR/libraries/org/apache/logging/log4j/log4j-core/2.17.0/log4j-core-2.17.0.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.12.4/text2speech-1.12.4.jar:$MC_DIR/libraries/com/mojang/text2speech/1.12.4/text2speech-1.12.4.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"
# Player name
PLAYER_NAME=$player
# 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"
# Running minecraft
cd $MC_DIR
java $JVM_RAM $JVM_ARGS \
-Djava.library.path=$NATIVES_DIR \
-cp $LIBRARIES_LIST \
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

4
windows/README.md Normal file
View File

@ -0,0 +1,4 @@
## Java minimum version
For run Minecraft need Java **17.0.1**.
[Proof](https://minecraft.fandom.com/wiki/Tutorials/Update_Java).

View File

@ -14,14 +14,17 @@ set GAME_DIR=%MC_DIR%
:: libraries and resource dir (requires no changes)
set ASSETS_DIR=%MC_DIR%\assets
set ASSETS_INDEX=1.16
set ASSETS_INDEX=1.18
:: version minecraft (from versions/ dir)
set GAME_VERSION=1.16.3
set GAME_VERSION=1.18.2
:: get archive from natives/ dir
set NATIVES_DIR=%MC_DIR%\bin\%GAME_VERSION%
:: *.jar paths from version.json
set LIBRARIES_LIST=%MC_DIR%/libraries/com/mojang/logging/1.0.0/logging-1.0.0.jar;%MC_DIR%/libraries/com/mojang/blocklist/1.0.10/blocklist-1.0.10.jar;%MC_DIR%/libraries/com/mojang/patchy/2.2.10/patchy-2.2.10.jar;%MC_DIR%/libraries/com/github/oshi/oshi-core/5.8.5/oshi-core-5.8.5.jar;%MC_DIR%/libraries/net/java/dev/jna/jna/5.10.0/jna-5.10.0.jar;%MC_DIR%/libraries/net/java/dev/jna/jna-platform/5.10.0/jna-platform-5.10.0.jar;%MC_DIR%/libraries/org/slf4j/slf4j-api/1.8.0-beta4/slf4j-api-1.8.0-beta4.jar;%MC_DIR%/libraries/org/apache/logging/log4j/log4j-slf4j18-impl/2.17.0/log4j-slf4j18-impl-2.17.0.jar;%MC_DIR%/libraries/com/ibm/icu/icu4j/70.1/icu4j-70.1.jar;%MC_DIR%/libraries/com/mojang/javabridge/1.2.24/javabridge-1.2.24.jar;%MC_DIR%/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar;%MC_DIR%/libraries/io/netty/netty-all/4.1.68.Final/netty-all-4.1.68.Final.jar;%MC_DIR%/libraries/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar;%MC_DIR%/libraries/com/google/guava/guava/31.0.1-jre/guava-31.0.1-jre.jar;%MC_DIR%/libraries/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar;%MC_DIR%/libraries/commons-io/commons-io/2.11.0/commons-io-2.11.0.jar;%MC_DIR%/libraries/commons-codec/commons-codec/1.15/commons-codec-1.15.jar;%MC_DIR%/libraries/com/mojang/brigadier/1.0.18/brigadier-1.0.18.jar;%MC_DIR%/libraries/com/mojang/datafixerupper/4.1.27/datafixerupper-4.1.27.jar;%MC_DIR%/libraries/com/google/code/gson/gson/2.8.9/gson-2.8.9.jar;%MC_DIR%/libraries/com/mojang/authlib/3.3.39/authlib-3.3.39.jar;%MC_DIR%/libraries/org/apache/commons/commons-compress/1.21/commons-compress-1.21.jar;%MC_DIR%/libraries/org/apache/httpcomponents/httpclient/4.5.13/httpclient-4.5.13.jar;%MC_DIR%/libraries/commons-logging/commons-logging/1.2/commons-logging-1.2.jar;%MC_DIR%/libraries/org/apache/httpcomponents/httpcore/4.4.14/httpcore-4.4.14.jar;%MC_DIR%/libraries/it/unimi/dsi/fastutil/8.5.6/fastutil-8.5.6.jar;%MC_DIR%/libraries/org/apache/logging/log4j/log4j-api/2.17.0/log4j-api-2.17.0.jar;%MC_DIR%/libraries/org/apache/logging/log4j/log4j-core/2.17.0/log4j-core-2.17.0.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.12.4/text2speech-1.12.4.jar;%MC_DIR%/libraries/com/mojang/text2speech/1.12.4/text2speech-1.12.4.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
:: player nickname (the over head)
set PLAYER_NAME=%player%
@ -34,12 +37,11 @@ set "JVM_RAM=-Xmx2G"
set "JVM_ARGS=-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M"
:: running minecraft
%SystemDrive%
cd %MC_DIR%
cd /d %MC_DIR%
java.exe %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 ^
-cp %LIBRARIES_LIST% ^
net.minecraft.client.main.Main ^
--username %PLAYER_NAME% ^
--version %GAME_VERSION% ^