From 34117a07daf55b01a711b24fd644b90573f267a1 Mon Sep 17 00:00:00 2001 From: copygirl Date: Fri, 29 Jul 2022 07:40:48 +0200 Subject: [PATCH] Fill out README --- .editorconfig | 3 ++ README.md | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) diff --git a/.editorconfig b/.editorconfig index 951cccf..f6ae18c 100644 --- a/.editorconfig +++ b/.editorconfig @@ -6,3 +6,6 @@ indent_size = 2 end_of_line = lf trim_trailing_whitespace = true insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false diff --git a/README.md b/README.md index e69de29..a5d6f58 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,81 @@ +# Heck + +.. is a Minecraft modpack for version 1.18.2 and the Forge modloader. It features a little bit of everything: Technology, magic, exploration and building / decoration mods. The primary use case for this pack is for a private server we're running for friends, fellow VTubers, and their friends. + +*Heck* comes with a modest amount of configuration changes and [KubeJS](https://kubejs.com/) scripts that aim to make our mods work together well, fix minor issues, improve balance, change and add recipes, and most importantly unify most items and materials in the pack which would otherwise exist in multiple formats. We also have a couple of texture and localization changes to make things fit together well. + +- For a **list of mods** including short descriptions, see [`docs/MODS.md`](docs/MODS.md). + + +## Download / Installation + +The modpack is currently only available as a **self-updating** PolyMC / MultiMC instance. + +- Download and install [PolyMC] (recommended) or [MultiMC], if you don't have it already. + These are third-party Minecraft launchers that simplify managing multiple instances of the game. +- Make sure you have **Java 17** (or higher) installed on your system. + You can check this by going to "Settings" in your launcher and go to "Java". + When you click "Auto-detect" and a version `17.x.x` appears, you can select it here. + If not, you can download the right version from [Eclipse Temurin](https://adoptium.net/temurin/releases/), and install it. +- To add *Heck* to the launcher, click "Add Instance", select "Import from zip", + and paste this: [`https://meowface.org/copygirl/Heck.zip`](https://meowface.org/copygirl/Heck.zip) +- On first launch, [packwiz] will download all mods and other modpack files. + On future launches, it will automatically check for updates and apply them. + +[PolyMC]: https://polymc.org/ +[MultiMC]: https://multimc.org/ +[packwiz]: https://github.com/packwiz/packwiz + + +## Server Setup + +Grab the latest [packwiz bootstrapper](https://github.com/packwiz/packwiz-installer-bootstrap/releases) and [Forge installer](https://files.minecraftforge.net/net/minecraftforge/forge/index_1.18.2.html) (recommended version can be found in the [`pack.toml`](pack.toml)) and you can install the server a little something like this: + +```sh +# Download the required bootstrapper and installer. +# Adjust if necessary, such as if a new version is available or required. +wget https://github.com/packwiz/packwiz-installer-bootstrap/releases/download/v0.0.3/packwiz-installer-bootstrap.jar +wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.18.2-40.1.68/forge-1.18.2-40.1.68-installer.jar + +# Download modpack files. Also run this to update. +java -jar packwiz-installer-bootstrap.jar -g -s server https://meowface.org/copygirl/heck/pack.toml + +# Download Minecraft and Forge files. +java -jar forge-1.18.2-40.1.68-installer.jar --installServer + +# Now do the usual, accept the EULA, edit your server +# properties, run your startup script as you're used to. +java -jar -Xmx6G -Xms6G forge-1.18.2-40.1.68.jar nogui +``` + + +## Development + +Working on the modpack requires the [packwiz] tool, so be sure to download it first. + +```sh +packwiz update --all # Update all mods to latest. +packwiz refresh # Run after modifying any files. +git commit -a # Now you can commit your changes.. +git push # ..and push them to the repository. +``` + +It should be noted that packwiz will keep an `index.toml` file and update `pack.toml` to keep track of it, mirroring any changes. However, since this is more or less a build artifacts, we decided to not include it in the repository. + +```sh +# Make sure git will not see any changes to pack.toml. +# This is to avoid accidentally committing the [index] section. +git update-index --assume-unchanged pack.toml +``` + +To test changes tocally, you can run `packwiz serve` to deploy a simple webserver that just hosts the modpack files. Setting your instance's pre-launch command to the following command will allow it to update from local files when starting up. + +```sh +"$INST_JAVA" -jar packwiz-installer-bootstrap.jar http//localhost:8080/pack.toml +``` + +While the game is running, you can use `rsync` to synchronize the `kubejs/` folder after making changes. This allows you to make, for example, recipe changes and test them out in-game, without restarting, simply by running the `/reload` command. + +```sh +rsync -r --delete kubejs $PATH_TO_INSTANCE/.minecraft +```