Was ist MDT (FiveM): In-Game-Polizei-Computersysteme
MDT-Systeme in FiveM sind interaktive Schnittstellen, die Computerterminals von Strafverfolgungsbehörden simulieren und es Spielern ermöglichen, auf kriminelle Datenbanken zuzugreifen, Berichte einzureichen und Notdiensteinsätze innerhalb von Rollenspielservern zu verwalten.
Technische Architektur
MDTs verwenden normalerweise einen von drei Implementierungsansätzen:
1. NUI (CEF)-basiert – Am häufigsten
-- Beispiel für einen clientseitigen NUI-Trigger RegisterCommand('mdt', function() SetNuiFocus(true, true) SendNUIMessage({ type = 'open', officer = GetPlayerName(PlayerId()), badge = GetPlayerServerId(PlayerId()) }) end) -- Serverseitige Datenbankabfrage RegisterServerEvent('mdt:searchPerson') AddEventHandler('mdt:searchPerson', function(firstname, lastname) MySQL.Async.fetchAll('SELECT * FROM users WHERE firstname = @first AND lastname = @last', { ['@first'] = firstname, ['@last'] = lastname }, function(result) TriggerClientEvent('mdt:returnSearch', source, result) end) end)
2. Externe Webanwendung
- Standalone-Web-App (React/Vue.js)
- Kommuniziert über REST-API oder WebSockets
- Beispiel einer Endpunktstruktur:
// API-Endpunktbeispiel app.post('/api/mdt/warrant/create', authenticate, (req, res) => { const { suspect_id, charges, issue_officer } = req.body; // Datenbank-Einfügelogik });
3. Tablet-Ressource im Spiel
- Verwendet die Tablet-Requisite von FiveM mit benutzerdefinierter Benutzeroberfläche
- Immersiver, aber leistungsintensiver
Implementierung der Kernfunktionen
Beispiel für ein Datenbankschema:
CREATE TABLE mdt_reports (id INT AUTO_INCREMENT PRIMARY KEY, incident_id VARCHAR(10) UNIQUE, reporting_officer INT, suspects TEXT, charges TEXT, evidence TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); CREATE TABLE mdt_warrants (id INT AUTO_INCREMENT PRIMARY KEY, citizen_id INT, charges TEXT, status ENUM('active', 'readed', 'expired'), issued_by INT, issued_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
Beliebte MDT-Ressourcen
-
QBCore Framework Server (QB v4)
Ursprünglicher Preis war: $229.99$144.99Aktueller Preis ist: $144.99. -
Infinity Server (Niederländisch)
Ursprünglicher Preis war: $182.99$109.99Aktueller Preis ist: $109.99. -
JPR Telefon-System
Ursprünglicher Preis war: $120.00$70.00Aktueller Preis ist: $70.00. -
Lifeinvader PD
Ursprünglicher Preis war: $179.00$63.00Aktueller Preis ist: $63.00. -
Jobs Creator 7.0
Ursprünglicher Preis war: $100.00$60.00Aktueller Preis ist: $60.00. -
2024 Whelen Legacy MEGA-Paket
Ursprünglicher Preis war: $107.00$59.00Aktueller Preis ist: $59.00.
- ox_mdt – Leichtgewichtig, ESX/QBCore-kompatibel
- ps-mdt – Funktionsreich mit Beweissystem
- sonoran_mdt – CAD-Integration, abonnementbasiert
Integrationsanforderungen
Framework-Abhängigkeiten:
- ESX: Erfordert
es_extended,mysql-async/oxmysql - QBCore: Erfordert
qb-kern,qb-polizeijob
Berechtigungssystem:
-- Jobbasierte Zugriffskontrolle, wenn PlayerData.job.name == 'police' und PlayerData.job.grade >= 2, dann -- MDT-Zugriff zulassen, Ende
Überlegungen zur Leistung
- Zwischenspeichern häufig abgerufener Daten (Haftbefehle, BOLOs)
- Implementieren der Paginierung für große Datensätze
- Beschränken Sie Echtzeit-Updates auf wesentliche Funktionen
- Durchschnittliche Ressourcennutzung: 0,05–0,20 ms (Leerlauf), 0,50–2,00 ms (aktiv)
Häufige Implementierungsprobleme
- Datenbankverbindungspooling – Sorgen Sie für angemessene Verbindungslimits
- Bildspeicherung – Verwenden Sie ein externes CDN für Fahndungsfotos/Beweisfotos
- Echtzeit-Synchronisierung – WebSocket-Verbindungen können schwache Server überlasten
MDT-Systeme transformieren FiveM-Rollenspielserver indem realistische Tools zur Strafverfolgung über NUI-Schnittstellen bereitgestellt werden, die eine Verbindung zu Serverdatenbanken herstellen, um Strafregister, Berichte und Notfalldiensteinsätze zu verwalten.












