Zum Hauptinhalt springen

🏪 Trade Hub (Marktplatz)

Das Trade Hub ist ein vollständiges Spieler-Markwirtschaftssystem. Es ermöglicht Spielern, eigene physische Marktstände in der Welt zu mieten, diese mit Waren zu bestücken und ein passives Einkommen zu generieren, selbst wenn sie offline sind.

✨ Detaillierte Features​

  • 📍 Physische Marktstände: Jeder Stand ist ein reales Objekt in der Welt. Das Inventar ist an diesen Ort gebunden.
  • 💼 Managersystem: Als Besitzer hast du volle Kontrolle über dein Geschäft:
    • Preisgestaltung: Lege individuelle Preise für jeden Artikel fest.
    • Lagerverwaltung: Füge Waren hinzu oder entferne sie.
    • Kasse: Einnahmen landen im "Markt-Safe" und müssen manuell abgehoben werden.
  • ⏰ Zeitpläne (Öffnungszeiten): Stände können realistische Öffnungszeiten haben (z.B. 08:00 - 20:00). Außerhalb dieser Zeiten ist kein Einkauf möglich.
  • 📅 Miet-System:
    • Miete wird im Voraus für X Tage bezahlt.
    • Läuft die Miete ab, wird der Stand wieder freigegeben (Items bleiben gespeichert, müssen aber abgeholt werden).
    • Maximale Mietdauer ist konfigurierbar.
  • 🌍 Lokalisierung & Währung: Unterstützt RedM-Dollar ($) und ist komplett übersetzbar.

🎮 Anleitung: Der eigene Marktstand​

1. Einen freien Stand finden​

Suche auf der Karte oder in Städten nach Ständen, die mit "Zu vermieten" (For Rent) gekennzeichnet sind. Dies wird meist durch einen fliegenden Text über dem Stand angezeigt.

2. Mieten​

  1. Gehe zum Stand und drücke [G].
  2. Ein Menü zeigt den Tagesmietpreis (z.B. $10.00).
  3. Wähle, für wie viele Tage (1-7) du mieten möchtest.
  4. Nach Zahlung gehört der Stand dir!

3. Den Stand einrichten​

Drücke [G] an deinem Stand, um das Management-Menü zu öffnen.

Waren hinzufügen​

  1. Klicke auf den Tab "Inventar".
  2. Du siehst dein Taschen-Inventar (links) und das Stand-Inventar (rechts).
  3. Ziehe Items von deiner Tasche in den Stand.

Preise festlegen​

  1. Klicke auf ein Item im Stand-Inventar.
  2. Ein Fenster öffnet sich:
    • Preis: Lege fest, wie viel ein einzelnes Stück kostet.
    • Menge: Lege fest, wie viel du von diesem Stapel verkaufen willst (oder alles).
  3. Bestätige mit "Update".

Tipp: Achte auf die Konkurrenz! Wenn dein Nachbar Äpfel für $0.50 verkauft, solltest du nicht $5.00 verlangen.

4. Geld verdienen​

Andere Spieler ren können nun an deinen Stand kommen und [G] drücken (wenn geöffnet), um einzukaufen.

  • Sie sehen deine Waren und Preise.
  • Wenn sie kaufen, landet das Geld sofort in der Stand-Kasse.
  • Du erhältst eine Benachrichtigung (wenn online).

Geld abheben: Gehe ins Management-Menü -> Klicke auf "Geld abheben" (Withdraw), um deine Einnahmen in deine Tasche zu transferieren.


⚙️ Wichtige Konfigurationen​

Miete & Ablauf​

In der config.lua kannst du steuern, wie dynamisch der Markt ist.

Config.CheckExpiredInterval = 3600000 -- (ms) Wie oft prüft der Server auf abgelaufene Mieten? (Hier: 1 Stunde)

Config.Spots = {
{
-- ...
rentPrice = 100.0, -- Preis pro Tag
maxRentDays = 7, -- Max. Laufzeit am Stück
}
}

Öffnungszeiten erstellen​

Du kannst komplexe Zeitpläne für verschiedene Städte erstellen.

Config.Schedules = {
['blackwater_night_market'] = {
-- Ein Nachtmarkt, der nur abends offen hat
['default'] = { open = 18, close = 4 } -- 18:00 bis 04:00 Uhr morgens
},
['valentine'] = {
['Sunday'] = { open = 0, close = 0 } -- Sonntags geschlossen
}
}

SQL Datenbank​

Das System nutzt eine JSON-Spalte in der Datenbank für das Inventar. Das ist performant und flexibel. Stelle sicher, dass deine oxmysql Version aktuell ist.


📦 Admin & Troubleshooting​

Stand zwangsweise freigeben​

Wenn ein Spieler inaktiv ist, kannst du als Admin (in der Datenbank) eingreifen:

  1. Öffne Tabelle trade_hub_shops.
  2. Suche den Stand anhand der shop_id.
  3. Setze owner_identifier auf NULL.
  4. Starte das Skript neu oder warte auf den nächsten Check-Interval.

Debugging​

Setze Config.Debug = true, um in der Server-Konsole zu sehen:

  • Wer mietet was?
  • Transaktionen und Geldfluss.
  • Fehler beim Laden von Inventaren.