acdream/tools/ace-mods/SetTime/SetTime.csproj
Erik 13f685ee94 tools(ace-mods): add @settime ACE mod for same-clock retail/acdream sky comparisons
Sky and weather gates need retail and acdream looking at the SAME Dereth
hour and the SAME authored day group; until now the only lever was
acdream's ACDREAM_WORLD_TIME/ACDREAM_DAY_GROUP pins, which retail cannot
follow, so the user could never judge night-sky differences (aurora,
dome edge) side by side.

@settime <hour|fraction> [Sunny|Rainy|Clear|Cloudy|<index>] jumps ACE's
Timers.PortalYearTicks FORWARD to the next matching instant. Every
TimeSync header carries that value, so both clients re-sync within
seconds. Forward-only because DelayActions compare against the same
clock (a backward jump would stall them). The calendar and day-group
roll duplicate acdream's retail ports (DerethCalendar shift 3600,
SkyDayGroupSelector LCG from SkyDesc::CalcPresentDayGroup @0x00500E10)
and the 20-entry name table was dumped from the installed Region DAT.

Install: copy SetTime.dll + Meta.json to C:\ACE\Mods\SetTime and run
@mod find (or restart ACE). Dev servers only.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 14:34:37 +02:00

22 lines
1.2 KiB
XML

<Project Sdk="Microsoft.NET.Sdk">
<!-- ACE server mod: @settime. Build: dotnet build -c Release; install: copy
bin/Release/net10.0/SetTime.dll + Meta.json to C:\ACE\Mods\SetTime\ and
restart ACE. See README.md. -->
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<AssemblyName>SetTime</AssemblyName>
<RootNamespace>SetTime</RootNamespace>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<RestorePackagesWithLockFile>false</RestorePackagesWithLockFile>
<RestoreLockedMode>false</RestoreLockedMode>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<AceServerDir Condition="'$(AceServerDir)' == ''">C:\ACE\Server</AceServerDir>
</PropertyGroup>
<ItemGroup>
<Reference Include="ACE.Server"><HintPath>$(AceServerDir)\ACE.Server.dll</HintPath><Private>false</Private></Reference>
<Reference Include="ACE.Entity"><HintPath>$(AceServerDir)\ACE.Entity.dll</HintPath><Private>false</Private></Reference>
<Reference Include="ACE.Common"><HintPath>$(AceServerDir)\ACE.Common.dll</HintPath><Private>false</Private></Reference>
</ItemGroup>
</Project>