@gamecrate/cli 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -7
- package/dist/gamecrate.js +829 -216
- package/dist/lib.js +1 -0
- package/dist/types/cli/mods.d.ts +2 -0
- package/dist/types/launch/resolve.d.ts +4 -6
- package/dist/types/mods/acf.d.ts +19 -0
- package/dist/types/mods/modindex.d.ts +8 -3
- package/dist/types/mods/source.d.ts +7 -2
- package/dist/types/mods/steamcmd.d.ts +56 -0
- package/dist/types/mods/workshop.d.ts +15 -0
- package/dist/types/mods/workshopapi.d.ts +13 -0
- package/dist/types/types.d.ts +4 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
# @gamecrate/cli
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
gamecrate launches a modded game inside a Docker container. You describe a profile once in one
|
|
4
|
+
config file, then run it by name. Each profile gets its own save directory, its own logs, and
|
|
5
|
+
only the mods it lists.
|
|
5
6
|
|
|
6
|
-
The
|
|
7
|
-
facts
|
|
7
|
+
The tool knows nothing about any one game. A plugin supplies the file formats and the engine
|
|
8
|
+
facts, so the core stays the same for every title.
|
|
9
|
+
|
|
10
|
+
This package is the `gamecrate` command itself. It resolves a profile to a mod set, stages that
|
|
11
|
+
set, and launches the game. Without at least one plugin, it has no games to run.
|
|
8
12
|
|
|
9
13
|
## Install
|
|
10
14
|
|
|
@@ -26,6 +30,9 @@ Write `~/.config/gamecrate/profiles.yml`. This is the smallest RimWorld config t
|
|
|
26
30
|
|
|
27
31
|
```yaml
|
|
28
32
|
plugins: ['@gamecrate/rimworld']
|
|
33
|
+
# Optional. Without it, gamecrate uses steamcmd from PATH, then a Docker image.
|
|
34
|
+
steamcmd:
|
|
35
|
+
path: ~/.local/bin/steamcmd
|
|
29
36
|
games:
|
|
30
37
|
rimworld:
|
|
31
38
|
# The plugin already says source: mount and container: /game.
|
|
@@ -34,6 +41,7 @@ games:
|
|
|
34
41
|
image:
|
|
35
42
|
ref: ghcr.io/your-org/rimworld:1.6
|
|
36
43
|
acquire: pull
|
|
44
|
+
# Optional. Only for workshop items a Steam install already downloaded.
|
|
37
45
|
workshopRoot: ~/.steam/steam/steamapps/workshop/content/294100
|
|
38
46
|
scanRoots:
|
|
39
47
|
- path: ~/projects/mods
|
|
@@ -45,7 +53,9 @@ games:
|
|
|
45
53
|
|
|
46
54
|
The bare name `@gamecrate/rimworld` only resolves once the package is installed next to the
|
|
47
55
|
config. [Configuration](docs/configuration.md#how-plugins-resolve) shows both ways to point at
|
|
48
|
-
a plugin.
|
|
56
|
+
a plugin. A workshop item reaches a profile two ways: gamecrate downloads it with steamcmd, or
|
|
57
|
+
it reads an existing Steam install under `workshopRoot`. Both keys are optional, and
|
|
58
|
+
[Mod sources](docs/mod-sources.md) covers the choice. Then:
|
|
49
59
|
|
|
50
60
|
```sh
|
|
51
61
|
gamecrate doctor
|
|
@@ -53,7 +63,9 @@ gamecrate rimworld dev
|
|
|
53
63
|
```
|
|
54
64
|
|
|
55
65
|
`doctor` checks Docker, the image, the game directory, and the workshop root before anything
|
|
56
|
-
launches.
|
|
66
|
+
launches. When a config uses workshop items, it also reports which steamcmd it found and the
|
|
67
|
+
directories downloaded items land in. The second line resolves the `dev` profile, stages its
|
|
68
|
+
two mods, and starts the game.
|
|
57
69
|
`gamecrate rimworld dev --print-plan` shows what it would do without launching.
|
|
58
70
|
|
|
59
71
|
## Documentation
|
|
@@ -61,7 +73,7 @@ launches. The second line resolves the `dev` profile, stages its two mods, and s
|
|
|
61
73
|
| Read this | When you want to |
|
|
62
74
|
| --- | --- |
|
|
63
75
|
| [Configuration](docs/configuration.md) | Write the config file, load a plugin, define profiles, or set per-repository defaults |
|
|
64
|
-
| [Mod sources](docs/mod-sources.md) | Pin a mod to a directory, a
|
|
76
|
+
| [Mod sources](docs/mod-sources.md) | Pin a mod to a directory, a git repository, or a workshop item gamecrate downloads, and learn which copy wins |
|
|
65
77
|
| [The `mods` commands](docs/mods-commands.md) | Add, remove, and sync library pins from the command line |
|
|
66
78
|
| [Running](docs/running.md) | Launch, run in the background, read the result, close a window, and clean up |
|
|
67
79
|
| [Reference](docs/reference.md) | Every subcommand, flag, environment variable, and exit code |
|