Skip to content

Commit 9a1ef05

Browse files
docs: Improve documentation on mods/plugins (#47)
#patch Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JamesIves <[email protected]>
1 parent 5007e0d commit 9a1ef05

File tree

3 files changed

+54
-24
lines changed

3 files changed

+54
-24
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Before starting, ensure you have the [Docker daemon](https://www.docker.com/) a
1818
You can run the following in your terminal to get started as quickly as possible. Adjust the image name (`jives/hlds`) so the tag corresponds with the game you want to use. Additionally, you can adjust the server startup arguments by modifying the `command` property; [for a list of available arguments, visit the Valve Developer Wiki](https://developer.valvesoftware.com/wiki/Half-Life_Dedicated_Server).
1919

2020
```bash
21-
docker run -d \
21+
docker run -d -ti \
2222
--name hlds \
2323
-v "$(pwd)/config:/temp/config" \
2424
-v "$(pwd)/mods:/temp/mods" \

config/README.md

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,36 @@
11
# Configs and Plugins
22

3-
If you wish to add server configurations, such as add-ons, plugins, map rotations, etc, you can add them to the `config` directory. The `config` directory is volume-mapped within the directory for the game for which you're starting the container. For example, if you're starting a container for `cstrike`, you can add things like `mapcycle.txt` or `motd.txt` here, and it would appear within the corresponding `cstrike` directory on the server.
3+
If you wish to add server configurations, such as add-ons, plugins, map rotations, etc, you can add them to the `config` directory. Your directory setup should look something like the following where you're running either `docker run` or `docker compose` next to where the `config` directory is located.
4+
5+
```
6+
├── 📂 server
7+
│ ├── 📜 docker-compose.yml
8+
│ ├── 📂 config
9+
│ │ ├── 📜 mapcycle.txt
10+
│ │ ├── 📜 motd.txt
11+
│ │ ├── 📂 maps
12+
| │ | ├── 📜 crazytank.bsp
13+
```
14+
15+
16+
The `config` directory is volume-mapped within the directory for the game for which you're starting the container. For example, if you're starting a container for `cstrike`, you can add things like `mapcycle.txt` or `motd.txt` here, and it would appear within the corresponding `cstrike` directory within the container.
417

518
> [!NOTE]
619
> The startup examples posted in the project README already have this directory volume mapped accordingly. If you've strayed from the suggested setup, [please refer back to it to get started](../../README.md).
720
821
```
9-
├── hlds
10-
│ ├── cstrike
11-
│ │ ├── models
12-
│ ├── maps
13-
│ │ ├── mapcycle.txt
14-
│ │ ├── motd.txt
22+
├── 📦 hlds
23+
│ ├── 📂 cstrike
24+
│ │ ├── 📂 maps
25+
|| ├── 📜 crazytank.bsp
26+
│ │ ├── 📜 mapcycle.txt
27+
│ │ ├── 📜 motd.txt
1528
```
1629

1730
> [!TIP]
1831
> You can use this method to install server plugins such as AMX Mod, Meta Mod, etc., as the directory can handle nested folders too; for example, these can be placed in `config/addons/amxmodx` etc.
1932
20-
1. Create a folder called `config` alongside where you would typically start the server process. If you've cloned this project locally, you'd place it alongside this README file.
33+
1. Create a folder called `config` alongside where you would typically start the server process. If you've cloned this project locally, you'd place your files alongside this README file.
2134
2. Add your config files to the directory.
2235
3. Start the image as you usually would, either with `docker run` or `docker compose up`.
2336

mods/README.md

Lines changed: 32 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,44 @@
11
# Custom Mods
22

3-
If you want to run a custom mod, you can do so with the `mods` directory. The `mods` directory is volume mapped within the root directory of the Half-Life Dedicated Server client on startup. For example, if you wanted to add a mod named `decay`, you'd place it as a subfolder here, i.e., `mods/decay`. Once the container starts, it would be placed in the following directory.
3+
If you want to run a custom mod, you can do so with the `mods` directory. Your directory setup should look something like the following where you're running either `docker run` or `docker compose` next to where the `mods` directory is located.
44

55
```
6-
├── hlds
7-
│ ├── cstrike
8-
│ │ ├── models
9-
│ │ ├── maps
10-
│ │ ├── autoexec.cfg
11-
│ ├── valve
12-
│ │ ├── models
13-
│ │ ├── maps
14-
│ │ ├── autoexec.cfg
15-
│ ├── decay
16-
│ │ ├── models
17-
│ │ ├── maps
18-
│ │ ├── autoexec.cfg
6+
├── 📂 server
7+
│ ├── 📜 docker-compose.yml
8+
│ ├── 📂 mods
9+
│ | ├── 📂 decay
10+
│ │ | ├── 📜 autoexec.cfg
11+
│ │ | ├── 📂 models
12+
│ │ | ├── 📂 maps
13+
│ | ├── 📂 svencoop
14+
```
15+
16+
The `mods` directory is volume mapped within the root directory of the Half-Life Dedicated Server client on startup. For example, if you wanted to add a mod named `decay`, you'd place it as a subfolder here, i.e., `mods/decay`. Once the container starts, it would be placed in the following directory within the container.
17+
18+
```
19+
├── 📦 hlds
20+
│ ├── 📂 cstrike
21+
│ │ ├── 📂 models
22+
│ │ ├── 📂 maps
23+
│ │ ├── 📜 autoexec.cfg
24+
│ ├── 📂 valve
25+
│ │ ├── 📂 models
26+
│ │ ├── 📂 maps
27+
│ │ ├── 📜 autoexec.cfg
28+
│ ├── 📂 decay
29+
│ │ ├── 📂 models
30+
│ │ ├── 📂 maps
31+
│ │ ├── 📜 autoexec.cfg
32+
│ ├── 📂 svencoop
33+
│ │ ├── 📂 models
34+
│ │ ├── 📂 maps
35+
│ │ ├── 📜 autoexec.cfg
1936
```
2037

2138
> [!NOTE]
2239
> The startup examples posted in the project README already have this directory volume mapped accordingly. If you've strayed from the suggested setup, [please refer back to it to get started](../README.md).
2340
24-
1. Create a folder called `mods` alongside where you would normally start the server process. If you've cloned this project locally, you'd place it alongside this README file.
41+
1. Create a folder called `mods` alongside where you would normally start the server process. If you've cloned this project locally, you'd place your files longside this README file.
2542
2. Add your mod files as a sub-directory of `mods`. For example if the mod name is `decay`, you'd place it in `mods/decay`.
2643
3. Define the `GAME` environment variable for your mod name. The dedicated server client will use this to ensure that it starts a server for the correct mod, which corresponds with the directory name that was just created.
2744

0 commit comments

Comments
 (0)