- MscoMod API (ModApi.cs) and ModLoader: own mods from MSCO\Mods, hooks for menu/game/update/GUI, session and player events, Send/OnMessage between players (MsgType.ModMessage) - Server mods: ModList before Welcome, consent prompt (INSTALL & JOIN), download with SHA-256 check into MSCO\Mods\Servers, active only on that server; game start waits for the download - Mods page in the MSCO menu, console command "mods" - Server browser: MODS pill, VANILLA/MODDED filters, mod list in the server profile - PlayMaker ApplicationQuit is ignored in the main menu (ESC used to close the game) - MODDING.md and examples/HelloMod Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
131 lines
6.0 KiB
XML
131 lines
6.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
|
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
<ProjectGuid>{CE3FFBAB-946E-9569-CCAA-9CFA2D5C11F3}</ProjectGuid>
|
|
<OutputType>Library</OutputType>
|
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
<RootNamespace>MSCO</RootNamespace>
|
|
<AssemblyName>MSCO</AssemblyName>
|
|
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
|
<FileAlignment>512</FileAlignment>
|
|
<TargetFrameworkProfile>Unity Full v3.5</TargetFrameworkProfile>
|
|
<LangVersion>13</LangVersion>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<DebugType>full</DebugType>
|
|
<Optimize>false</Optimize>
|
|
<OutputPath>bin\Debug\</OutputPath>
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
<DebugType>none</DebugType>
|
|
<Optimize>true</Optimize>
|
|
<OutputPath>bin\Release\</OutputPath>
|
|
<DefineConstants>TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<Reference Include="System" />
|
|
<Reference Include="System.Core" />
|
|
<Reference Include="System.Xml.Linq" />
|
|
<Reference Include="System.Data.DataSetExtensions" />
|
|
<Reference Include="System.Data" />
|
|
<Reference Include="System.Xml" />
|
|
<Reference Include="UnityEngine">
|
|
<HintPath>F:\SteamLibrary\steamapps\common\My Summer Car\mysummercar_Data\Managed\UnityEngine.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
<Reference Include="Assembly-CSharp-firstpass">
|
|
<HintPath>F:\SteamLibrary\steamapps\common\My Summer Car\mysummercar_Data\Managed\Assembly-CSharp-firstpass.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
<Reference Include="Assembly-CSharp">
|
|
<HintPath>F:\SteamLibrary\steamapps\common\My Summer Car\mysummercar_Data\Managed\Assembly-CSharp.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
<Reference Include="cInput">
|
|
<HintPath>F:\SteamLibrary\steamapps\common\My Summer Car\mysummercar_Data\Managed\cInput.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
<Reference Include="PlayMaker">
|
|
<HintPath>F:\SteamLibrary\steamapps\common\My Summer Car\mysummercar_Data\Managed\PlayMaker.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
<Reference Include="0Harmony">
|
|
<HintPath>lib\0Harmony.dll</HintPath>
|
|
<Private>False</Private>
|
|
</Reference>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Compile Include="MoneySync.cs" />
|
|
<Compile Include="WheelSpin.cs" />
|
|
<Compile Include="DamageSync.cs" />
|
|
<Compile Include="WorldVarSync.cs" />
|
|
<Compile Include="TrafficSync.cs" />
|
|
<Compile Include="HingeSync.cs" />
|
|
<Compile Include="ControlSync.cs" />
|
|
<Compile Include="Toasts.cs" />
|
|
<Compile Include="PlayerNeeds.cs" />
|
|
<Compile Include="Favorites.cs" />
|
|
<Compile Include="Bootstrap.cs" />
|
|
<Compile Include="Commands.cs" />
|
|
<Compile Include="MscoLog.cs" />
|
|
<Compile Include="ItemSpawner.cs" />
|
|
<Compile Include="Cheats.cs" />
|
|
<Compile Include="InputLock.cs" />
|
|
<Compile Include="Overlays.cs" />
|
|
<Compile Include="SafetyPatches.cs" />
|
|
<Compile Include="SceneCache.cs" />
|
|
<Compile Include="UiTheme.cs" />
|
|
<Compile Include="VehicleStateSync.cs" />
|
|
<Compile Include="Branding.cs" />
|
|
<Compile Include="DiscordPresence.cs" />
|
|
<Compile Include="DoorSync.cs" />
|
|
<Compile Include="FsmSync.cs" />
|
|
<Compile Include="JoinLinks.cs" />
|
|
<Compile Include="LobbyUI.cs" />
|
|
<Compile Include="MenuHelper.cs" />
|
|
<Compile Include="MenuInputBlocker.cs" />
|
|
<Compile Include="MiniJson.cs" />
|
|
<Compile Include="ModApi.cs" />
|
|
<Compile Include="ModLoader.cs" />
|
|
<Compile Include="MenuBranding.cs" />
|
|
<Compile Include="MSCO.cs" />
|
|
<Compile Include="MultiplayerManager.cs" />
|
|
<Compile Include="NetSession.cs" />
|
|
<Compile Include="ObjectSync.cs" />
|
|
<Compile Include="Passenger.cs" />
|
|
<Compile Include="GameCharacter.cs" />
|
|
<Compile Include="SaveSync.cs" />
|
|
<Compile Include="ServerBrowser.cs" />
|
|
<Compile Include="SteamLobby.cs" />
|
|
<Compile Include="VehicleFx.cs" />
|
|
<Compile Include="WinHttp.cs" />
|
|
<Compile Include="WorldSync.cs" />
|
|
<EmbeddedResource Include="menu-logo.png">
|
|
<LogicalName>MSCO.menu-logo.png</LogicalName>
|
|
</EmbeddedResource>
|
|
<EmbeddedResource Include="logo.png">
|
|
<LogicalName>MSCO.logo.png</LogicalName>
|
|
</EmbeddedResource>
|
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
<Compile Include="RemotePlayer.cs" />
|
|
</ItemGroup>
|
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
|
|
<!-- Zum Testen: MSCO.dll direkt in den Spielordner (My Summer Car\MSCO) - läuft das Spiel, ist sie gesperrt -->
|
|
<Target Name="CopyToGame" AfterTargets="Build">
|
|
<Copy SourceFiles="$(TargetPath)" DestinationFolder="F:\SteamLibrary\steamapps\common\My Summer Car\MSCO" ContinueOnError="true" Condition="Exists('F:\SteamLibrary\steamapps\common\My Summer Car')" />
|
|
</Target>
|
|
<!-- Release-Build: neue Version automatisch auf den Keymaster laden (nur mit Release-Token, siehe release.ps1) -->
|
|
<Target Name="MscoRelease" AfterTargets="Build" Condition="'$(Configuration)' == 'Release'">
|
|
<Exec Command="powershell -NoProfile -ExecutionPolicy Bypass -File "$(MSBuildProjectDirectory)\release.ps1" -Product mod -File "$(TargetPath)"" ContinueOnError="true" />
|
|
</Target>
|
|
</Project> |