move game detection into toolkit for reuse

This commit is contained in:
Jesse Plamondon-Willard 2019-06-17 18:52:03 -04:00
parent 1a8c7345c3
commit 2cf2b6706f
No known key found for this signature in database
GPG Key ID: CF8B1456B3E29F49
3 changed files with 13 additions and 1 deletions

View File

@ -68,6 +68,14 @@ Or only create it in release builds with this:
<EnableModZip Condition="$(Configuration) != 'Release'">False</EnableModZip>
```
### Debug game
The package automatically configures Visual Studio to launch/debug the game when you launch/debug
the project. To disable that, add this above the first `</PropertyGroup>` in your `.csproj`:
```xml
<EnableGameDebugging>False</EnableGameDebugging>
```
### Game path
The package usually detects where your game is installed automatically. If it can't find your game
or you have multiple installs, you can specify the path yourself. There's two ways to do that:
@ -148,6 +156,7 @@ You can use the package in non-mod projects too (e.g. unit tests or framework DL
disable deploying the mod and creating a release zip:
```xml
<EnableGameDebugging>False</EnableGameDebugging>
<EnableModDeploy>False</EnableModDeploy>
<EnableModZip>False</EnableModZip>
```
@ -235,6 +244,7 @@ _[Game path](#game-path)_ above.
* platform target is now set to x86 automatically to avoid mismatching platform target warnings;
* added GAC to assembly search paths to fix references to XNA Framework.
* Builds now include `.pdb` files by default, to enable line numbers in error stack traces.
* You can now optionally disable game debugging config.
* Fixed `Newtonsoft.Json.pdb` included in release zips when Json.NET is referenced directly.
* Fixed `<IgnoreModFilePatterns>` not working for `i18n` files.
* Dropped support for older versions of SMAPI and Visual Studio.

View File

@ -29,6 +29,7 @@
<ModZipPath Condition="'$(ModZipPath)' == ''">$(TargetDir)</ModZipPath>
<EnableModDeploy Condition="'$(EnableModDeploy)' == ''">True</EnableModDeploy>
<EnableModZip Condition="'$(EnableModZip)' == ''">True</EnableModZip>
<EnableGameDebugging Condition="$(EnableGameDebugging) == ''">True</EnableGameDebugging>
<CopyModReferencesToBuildOutput Condition="'$(CopyModReferencesToBuildOutput)' == ''">False</CopyModReferencesToBuildOutput>
</PropertyGroup>
@ -129,7 +130,7 @@
</ItemGroup>
<!-- launch game for debugging -->
<PropertyGroup>
<PropertyGroup Condition="$(EnableGameDebugging) == 'True'">
<StartAction>Program</StartAction>
<StartProgram>$(GamePath)\StardewModdingAPI.exe</StartProgram>
<StartWorkingDirectory>$(GamePath)</StartWorkingDirectory>

View File

@ -20,6 +20,7 @@
- platform target is now set to x86 automatically to avoid mismatching platform target warnings;
- added GAC to assembly search paths to fix references to XNA Framework.
- Builds now include `.pdb` files by default, to enable line numbers in error stack traces.
- You can now optionally disable game debugging config.
- Fixed `Newtonsoft.Json.pdb` included in release zips when Json.NET is referenced directly.
- Fixed `&lt;IgnoreModFilePatterns&gt;` not working for `i18n` files.
- Dropped support for older versions of SMAPI and Visual Studio.