diff options
-rw-r--r-- | README.md | 37 |
1 files changed, 25 insertions, 12 deletions
@@ -6,12 +6,14 @@ with the game. It's safely installed alongside the game's executable, and doesn' your game files. ## Contents -* [For players](#for-players) -* [For mod developers](#for-mod-developers) +* **[For players](#for-players)** +* **[For mod developers](#for-mod-developers)** * [For SMAPI developers](#for-smapi-developers) * [Compiling from source](#compiling-from-source) * [Debugging a local build](#debugging-a-local-build) * [Preparing a release](#preparing-a-release) +* [Advanced usage](#advanced-usage) + * [Configuration file](#configuration-file) ## For players * [How to install SMAPI & use mods](http://canimod.com/guides/using-mods#installing-smapi) @@ -36,10 +38,10 @@ If you'd like to compile SMAPI from source, you can do that on any platform usin [Visual Studio](https://www.visualstudio.com/vs/community/) or [MonoDevelop](http://www.monodevelop.com/). SMAPI uses build configuration derived from the [crosswiki mod config](https://github.com/Pathoschild/Stardew.ModBuildConfig#readme) to detect your current OS automatically and load the correct references. Compile output will be -placed in a `bin` directory at the root of the git repository. +placed in a `bin` folder at the root of the git repository. ### Debugging a local build -Rebuilding the solution in debug mode will copy the SMAPI files into your game directory. Starting +Rebuilding the solution in debug mode will copy the SMAPI files into your game folder. Starting the `StardewModdingAPI` project with debugging will launch SMAPI with the debugger attached, so you can intercept errors and step through the code being executed. @@ -47,7 +49,7 @@ can intercept errors and step through the code being executed. To prepare a crossplatform SMAPI release, you'll need to compile it on two platforms. See _[crossplatforming a SMAPI mod](http://canimod.com/guides/crossplatforming-a-smapi-mod#preparing-a-mod-release)_ for the first-time setup. For simplicity, all paths are relative to the root of the repository (the -directory containing `src`). +folder containing `src`). 1. Update the version number in `GlobalAssemblyInfo.cs` and `Constants::Version`. Make sure you use a [semantic version](http://semver.org). Recommended format: @@ -61,14 +63,14 @@ directory containing `src`). 2. In Windows: 1. Rebuild the solution in _Release_ mode. 2. Rename `bin/Packaged` to `SMAPI-<version>` (e.g. `SMAPI-1.0`). - 2. Transfer the `SMAPI-<version>` directory to Linux or Mac. + 2. Transfer the `SMAPI-<version>` folder to Linux or Mac. _This adds the installer executable and Windows files. We'll do the rest in Linux or Mac, since we need to set Unix file permissions that Windows won't save._ 2. In Linux or Mac: 1. Rebuild the solution in _Release_ mode. - 2. Copy `bin/Packaged/Mono` into the `SMAPI-<version>` directory. - 3. If you did everything right so far, you should have a directory like this: + 2. Copy `bin/Packaged/Mono` into the `SMAPI-<version>` folder. + 3. If you did everything right so far, you should have a folder like this: ``` SMAPI-1.x/ @@ -101,10 +103,21 @@ directory containing `src`). install.exe readme.txt ``` - 4. Open a terminal in the `SMAPI-<version>` directory and run `chmod 755 Mono/StardewModdingAPI`. - 5. Copy & paste the `SMAPI-<version>` directory as `SMAPI-<version>-for-developers`. - 6. In the `SMAPI-<version>` directory, delete the following files: + 4. Open a terminal in the `SMAPI-<version>` folder and run `chmod 755 Mono/StardewModdingAPI`. + 5. Copy & paste the `SMAPI-<version>` folder as `SMAPI-<version>-for-developers`. + 6. In the `SMAPI-<version>` folder, delete the following files: * `Mono/StardewModdingAPI.config.json` * `Windows/StardewModdingAPI.config.json` * `Windows/StardewModdingAPI.xml` - 7. Compress the two folders into `SMAPI-<version>.zip` and `SMAPI-<version>-for-developers.zip`.
\ No newline at end of file + 7. Compress the two folders into `SMAPI-<version>.zip` and `SMAPI-<version>-for-developers.zip`. + +## Advanced usage +### Configuration file +You can customise the SMAPI behaviour by editing the `StardewModdingAPI.config.json` file in your +game folder. If it's missing, it'll be generated automatically next time SMAPI runs. It contains +these fields: + +field | purpose +----- | ------- +`DeveloperMode` | Default `false` (except in _SMAPI for developers_ releases). Whether to enable features intended for mod developers. Currently this only makes `TRACE`-level messages appear in the console. +`CheckForUpdates` | Default `true`. Whether SMAPI should check for a newer version when you load the game. If a new version is available, a small message will appear in the console. This doesn't affect the load time even if your connection is offline or slow, because it happens in the background.
\ No newline at end of file |