first commit

This commit is contained in:
Colin-Joel Scupin
2026-08-05 01:29:39 +02:00
commit 86d4bcdc37
85 changed files with 7706 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
# Architektur
## Ressourcen
### devx_core
Serverautoritative Spieler-Sessions, Identifier, Geld, Callbacks und
Positionsspeicherung. Andere DevX-Ressourcen greifen ausschließlich über
Exports und validierte Serverevents auf Sitzungsdaten zu.
### devx_characters
Charakterliste, Erstellung, Auswahl und manueller Spawn. Der Spieler wird
nicht vom Basic-Gamemode automatisch gespawnt.
### devx_banking
Konten, Kontonummern, Überweisungen und Transaktionshistorie. Geldoperationen
werden serialisiert, damit zwei gleichzeitige Buchungen ein Konto nicht
überziehen.
### devx_housing
Kaufbare Objekte. Mehrere Wohnungen können denselben GTA-Innenraum benutzen,
weil jeder Eigentümer beim Betreten in einen eigenen OneSync-Routing-Bucket
verschoben wird.
### devx_hud
Eigene kleine NUI für Charaktername, Bargeld und Kontostand. Die Minimap wird
nach dem Spawn dauerhaft eingeblendet.
### devx_phone
Eigene, originale NUI. In v0.1 zeigt sie Charakter- und Bankdaten. Kontakte,
Nachrichten und Anrufe sind für spätere Versionen vorbereitet.
## Vertrauensgrenzen
- Der Client darf niemals Kontostände, Eigentum oder Charakterbesitz festlegen.
- Jeder Charakterzugriff wird gegen die FiveM-`license:` des Spielers geprüft.
- Beträge werden auf Ganzzahlen, Positivität und Obergrenzen geprüft.
- Wohnungskäufe und Bankbuchungen besitzen serverseitige Sperren.
- NUI ist nur Darstellung; alle fachlichen Entscheidungen trifft der Server.
## Erweiterungsprinzip
Neue Systeme erhalten eine eigene Ressource und verwenden Core-Exports.
Beispiele:
```lua
local player = exports.devx_core:GetPlayer(source)
local ok = exports.devx_core:RemoveCash(source, 100, 'Kauf')
```
Für Datenbankzugriffe stets Platzhalter verwenden; niemals SQL-Strings mit
ungeprüften Clientwerten zusammensetzen.
## Charaktervorschau und Begrüßungssequenz
`devx_characters` erzeugt für die Auswahl einen lokalen, nicht synchronisierten
Vorschau-Ped und eine Skriptkamera. Der echte Spieler bleibt währenddessen
unsichtbar und eingefroren. Neue Charaktere starten einmalig am Flughafen.
Fahrer, Fahrzeug, Dialoge und Fahrt laufen clientseitig; der erfolgreiche
Abschluss wird serverseitig im Charakterfeld `metadata` gespeichert.
+16
View File
@@ -0,0 +1,16 @@
# Gitea und txAdmin DevX RP v0.4.3
```bash
git add .
git commit -m "DevX RP framework v0.4.3"
git push
```
In Gitea ein Release mit Tag `v0.4.3` erstellen und
`release/devx-rp-server-v0.4.3.zip` als Asset anhängen.
In txAdmin die Raw-URL zur `recipe.yaml` verwenden:
```text
https://git.devx-studios.de/c.scupin/devx-rp/raw/branch/main/recipe.yaml
```
+40
View File
@@ -0,0 +1,40 @@
# Roadmap
## v0.2 Charakter und Einstieg
- [x] klassische Charakterauswahl und 3D-Vorschau
- [x] einmalige Begrüßungsfahrt mit NPC
- [ ] Aussehen-/Kleidungseditor
- [ ] Hunger, Durst und Gesundheit
- [ ] Inventar, Items und Shops
- [ ] vollständiges Todes-/Respawn-System
- [ ] Ausweis, Führerschein und Dokumente
## v0.3 Fahrzeuge und Wohnungen
- Fahrzeugbesitz, Schlüssel und Garagen
- Mietwohnungen und Nebenkosten
- Wohnungslager, Möbel und Gäste
- mehrere Apartment-Innenraumtypen
- Makler- und Verwaltungsoberfläche
## v0.4 Smartphone
- Telefonnummern
- Kontakte und Chatnachrichten
- Banking-App
- Firmen-App
- native Telefonanimation und Prop
- optionale Sprach-/Anrufintegration
## v0.5 Wirtschaft und Jobs
- eigenes Jobsystem
- IT-Systemhaus-Karriere
- Firmenkonten, Angestellte und Gehälter
- Finanzamt, Steuern, Rechnungen und Verträge
- legale und illegale Aufträge
## Vor öffentlichem Betrieb
- Integrationstests
- Migrationen mit Versionsnummern
- Rate-Limits und Audit-Log
- Backups und Wiederherstellungstest
- Performanceprofiling mit vielen Spielern
- Datenschutz- und Regelwerksprüfung