Skip to content

Veldrath Server

KungRaseri edited this page Apr 11, 2026 · 1 revision

Veldrath Server

Technology: ASP.NET Core (.NET 10) + SignalR + EF Core

Running

# Start Postgres first
docker compose up postgres -d

dotnet run --project Veldrath.Server

Architecture

All game operations flow through GameHub → MediatR → RealmEngine.Core handlers. The hub broadcasts results to SignalR groups (one group per zone).

API Endpoints

Endpoint Description
POST /api/auth/register Register a new player account
POST /api/auth/login Log in, receive JWT + refresh token
GET /api/characters List characters for authenticated player
POST /api/characters Create a new character
DELETE /api/characters/{id} Delete a character
GET /api/zones List all zones with online player counts (public)
GET /api/zones/{id} Get zone details with online player count (public)
GET /api/zones/by-region/{regionId} List zones in a specific region (public)
GET /api/regions List all regions ordered by level (public)
GET /api/regions/{id} Get region details (public)
GET /api/regions/{id}/connections Get adjacent regions (public)
GET /api/worlds List all worlds (public)
GET /api/worlds/{id} Get world details (public)

Hub Methods (GameHub)

Method Milestone Description
SelectCharacter M1 ✅ Load character, validate JWT
EnterZone M2 ✅ Join zone, join SignalR group
LeaveZone M2 ✅ Leave zone, leave group
Attack M3 🔲 Combat action
UseAbility M3 🔲 Ability activation
Flee M3 🔲 Flee from combat
PickUpItem M4 🔲 Pick up world item
EquipItem M4 🔲 Equip from inventory
LevelUp M4 🔲 Acknowledge level-up broadcast
TalkToNpc M5 🔲 Begin NPC dialogue
AcceptQuest M5 🔲 Accept a quest
CompleteQuest M5 🔲 Turn in a quest
BuyFromShop M5 🔲 Purchase item from merchant
SellToShop M5 🔲 Sell item to merchant

Clone this wiki locally