diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..bb87d69 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,16 @@ +MIT No Attribution + +Copyright 2025 Aaron Crate + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..1e8eb27 --- /dev/null +++ b/README.md @@ -0,0 +1,55 @@ +## Core Keeper Server + +Very simple Docker image for conveniently running your own Core Keeper dedicated server. Uses [SteamCMD](https://developer.valvesoftware.com/wiki/SteamCMD) so it can get a little greedy with ram sometimes. + +## How to use + +1. [Install Docker](https://docs.docker.com/engine/install/) + +2. Clone this repo to a convenient location + +3. Enter the repo directory and create a worlds folder +```console +$ cd ck-server && mkdir worlds +``` + +4. Run the launch script to build the image locally and launch the container: +```console +$ ./docker-run.sh +``` + +OR you can run this command to skip the build: + +```console +$ docker run -d --restart always -v $PWD/worlds:/root/.config/unity3d/Pugstorm/'Core Keeper'/DedicatedServer/worlds --name corekeeper git.crate.zip/crate/ck-server:latest +``` + +5. Run `docker logs corekeeper | grep GameID` to get the Game ID for your server (so you can join it). It will look something like this: + +```console +$ docker logs corekeeper | grep GameID +No GameID found. Creating new GameID for the session. +GameID: wB4k6ZCB3Wrc41Q +``` + +The server might take a minute to start up on first run, as it pulls down some dependencies. Afterwards it should be pretty quick. As far as I know it will always use the same Game ID after the first launch -- so you don't have to check it every time. + +## Quick Launch + +If you want to keep things really simple, you can launch a server with this command: + +```console +$ docker run -d --name corekeeper git.crate.zip/crate/ck-server:latest +``` + +However, **you will not be able to recover your save** once the container is removed, unless you dive into its volume and dig the file out. + +## Using your own save + +Drop the `0.world.gzip` file from your local save into the `worlds/` folder before you launch the server to use it. In the same way, you can take this file generated by the server and use it locally. + +ALWAYS BACK UP YOUR SAVE FILES BEFORE MESSING AROUND WITH THEM!! + +If you mess something up it's not my fault :) + +Happy gaming!! \ No newline at end of file