mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-16 09:34:08 +00:00
The NexusDashboard-parity dashboard (dDashboardServer) and everything built on it on the experimental branch: accounts, characters, properties and moderation tools, permissions shared with in-game slash commands, economy reports, World 3D and property 3D views with client scenery, scheduled events (features, vanity changes, live events, announcements, restarts), vanity files and events, the CDClient browser, the message inspector with saved captures, chat filter tools, community challenges, live ops, the AI moderator helper, and the server-side changes they need. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
49 lines
2.0 KiB
C++
49 lines
2.0 KiB
C++
#pragma once
|
|
|
|
// Economy reports: coin/U-score/item flows, transfers between players, item tracing and duplicate scans
|
|
void RegisterReportRoutes();
|
|
|
|
#include "json.hpp"
|
|
|
|
#include <functional>
|
|
#include <string>
|
|
|
|
/**
|
|
* Scan every character and unclaimed mail for duplicated object ids in the background; the result is also what the
|
|
* Duplicates tab shows. done runs on the main thread. Returns false if a scan is already running.
|
|
*/
|
|
bool StartDuplicateScan(std::function<void(const nlohmann::json& scan, const std::string& error)> done);
|
|
|
|
#include <cstdint>
|
|
#include <optional>
|
|
|
|
// A zone's terrain as the map reports use it (heights quantized to 16 bits, base64), cached; nullopt without a client
|
|
std::optional<std::string> ZoneTerrainJson(uint32_t zoneId);
|
|
|
|
#include "Raw.h"
|
|
|
|
// A zone's terrain file (.raw) read whole, as its .luz names it; nullopt without client files or when it's damaged
|
|
std::optional<Raw::Raw> ZoneRaw(uint32_t zoneId);
|
|
|
|
// Every terrain chunk of a zone as the client draws it (heights, textures, color and blend maps); nullopt without files
|
|
std::optional<std::string> ZoneTerrainChunksJson(uint32_t zoneId);
|
|
|
|
/**
|
|
* The rest of a zone's terrain file, for the 3D world view's terrain layers: per chunk (in ZoneTerrainChunksJson's
|
|
* order) the scene of each terrain cell, plus the scenes found with their names from the .luz, the game's scene colors
|
|
* and their share of the terrain. Cached; nullopt without files.
|
|
*/
|
|
std::optional<std::string> ZoneTerrainLayersJson(uint32_t zoneId);
|
|
|
|
// A terrain texture (mapTextureResource ID) as a PNG
|
|
std::optional<std::string> TerrainTextureFile(uint32_t textureId);
|
|
|
|
// A zone's property build areas (outline and height limit) from its .luz; nullopt without client files
|
|
std::optional<nlohmann::json> ZonePropertyAreasJson(uint32_t zoneId);
|
|
|
|
// Where a player can be put in a zone: [{name, lot, x, y, z}] from its scene files; nullopt without client files
|
|
std::optional<nlohmann::json> ZoneSpawnPointsJson(uint32_t zoneId);
|
|
|
|
// Economy source id (as a string) -> name, for labelling flows
|
|
nlohmann::json EconomySourceNames();
|