feat: Upgrade server with HyNB v2.4 modular architecture, minigames, admin GM web panel, companion summons, and car radio

This commit is contained in:
CAtlas0784 committed 2026-10-29 02:44:24 +07:00
1 parent 74e2963a12
commit 3e5adf1dc5
1571 files changed
+336468 -6348

No files matched your search

+9 -1
View File
@@ -1,22 +1,30 @@
using Ananta.SDK.Logging;
using Ananta.Server.App;
using Ananta.Server.ClientData.Client4229938;
using Ananta.Server.Configuration;
using Ananta.Server.Protocol.Client4229938;
var (config, configPath) = PrivateServerConfigLoader.Load();
PrivateServerConfigStore.Initialize(config, configPath);
// Hot reload: editing config/private-server.json takes effect without a restart (see MetroGadget).
PrivateServerConfigStore.EnableAutoReload();
// Start the console mirror before the first application log line. Run-All supplies the same
// run id/files to the Node proxy, so both processes land in one console-latest/archive pair.
RuntimeLogs.Initialize(
PrivateServerConfigStore.ResolveProjectPath(config.Logging.Directory),
Environment.GetEnvironmentVariable("Ananta_RUN_ID"),
Environment.GetEnvironmentVariable("DRMK_RUN_ID"),
config.Logging.Console.Enabled,
config.Logging.Packets.Enabled,
config.Logging.Packets.IncludeHex,
config.Logging.Packets.IncludeDecoded,
config.Logging.Packets.MaxBodyBytes);
// Optional economy tables (mall / drops / gacha pools). Loading them here puts the import summary
// in the startup log instead of on the first draw or purchase.
EconomyConfigRepository.Warmup();
TalentTreeRepository.Warmup();
using var shutdown = new CancellationTokenSource();
Console.CancelKeyPress += (_, e) =>