GithubHelp home page GithubHelp logo

leandrowo / minecraft-launshell Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alexivkin/minecraft-launcher

0.0 0.0 0.0 53 KB

Offline Linux Minecraft launcher in pure Bash for standard and Forge versions

License: Apache License 2.0

Shell 89.79% Java 10.21%

minecraft-launshell's Introduction

A Better Mincraft launcher for Linux

A smarter way of managing multiple minecraft installations on Linux. It downloads and installs Minecraft version on demand, including all the appropriate libraries and assets. Pairs well with the minecraft server launcher for Linux.

  • Minecraft versions are downloaded automatically if they are not already installed.
  • Supports the normal (aka vanilla/mainline) and Forge Minecraft versions.
  • Works with offline game profiles.
  • Allows multiple versions, player profiles, and game mod configurations to be installed and run at the same time.

Running

Prerequisites: make sure you have the following tools installed: jq,unzip,curl, sha1sum

Running: ./start <version> <player_nick>

  • To run a Forge version add a suffix "-forge" to the version, for example ./start 1.17.10-forge player1.
  • To see what normal and Forge versions are currently available for installation, run the script with a non-existing version, like this ./start 0 player1, ./start 0-forge player1
  • To create another game profile with the same game version and same player name, for example to try out different mods, specify a name of this profile as the last argument ./start <version> <player_nick> <profile>

Troubleshooting

  1. Delete the version subfolder under "versons" and re-run ./start to download and rebuild everything. The versions and player profiles are kept in separate folders, so you can remove versions without removing player configuration.
  2. If the step above did not work for a Forge version, remove both the Forge and the the corresponding mainline version folders under "versions" and run ./start again to re-download everything.

How to add it to the KDE desktop

Download and install the minecraft icon

curl -O https://launcher.mojang.com/download/minecraft-launcher.svg
sudo install -Dm644 minecraft-launcher.svg /usr/share/icons/hicolor/symbolic/apps/minecraft-launcher.svg

Then write the following into ~/.local/share/applications/minecraft.desktop, with the correct path, version and the player

[Desktop Entry]
Type=Application
Version=1.0
Name=Minecraft
GenericName=Minecraft
Comment=Minecraft Launcher
Exec=$HOME/minecraft/start <version> <player>
Path=$HOME/minecraft
Icon=minecraft-launcher
Terminal=false
Categories=Game;Application;
StartupNotify=true

How to do reproduce manually what this launcher does

  • Run the official java launcher. Login and start the game. The launcher will download all the required files for the new version. You can see them in this manifest.
  • Find the native libraries in the process name with ps -ef | grep java.library.path. Then copy that folder cp -a /tmp/folder $HOME/.minecraft/versions/$ver/$ver-natives. The native libraries can be found here.
  • Copy-paste the whole -cp argument from the java process, along with the java args to a run script. Run the script, plus assets, libraries, and version folder what you need.

To learn more about the files that Minecraft uses, see this page.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.