Projet
Projet🎮 de Refonte duAdmin Menu Adminv2.1 - Arma 3 Altis Life
Auteur: ProtoMehka
Version: 2.0
📋 Vue d'ensemble
Modernisation complète du menu admin accessible depuis le menu inventaire (Y), avec ajout de fonctionnalités avancées et système de logging en base de données.
🏗️ Structure Actuelle
Fichiers Principaux
Interface:admin_menu.Altis/dialog/admin_menu.hpp(IDD 2900)Contrôleur:admin_menu.Altis/core/admin/fn_adminMenu.sqfOuverture:admin_menu.Altis/core/pmenu/fn_p_openMenu.sqfInventaire:admin_menu.Altis/dialog/player_inv.hppConfiguration:admin_menu.Altis/Functions.hpp(déclarations fonctions)Remote Exec:admin_menu.Altis/CfgRemoteExec.hpp(whitelist sécurité)
Fonctionnalités Existantes (Framework 5.0 de base)
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
| ||||
|
Nouvelles Fonctionnalités Ajoutées v2.0
| ||||
| ||||
| ||||
|
Niveaux d'Administration
0 = Joueur normal
1 = Support (GetID + Query uniquement)
2 = Modérateur (+ Compensate)
3 = Admin (+ Spectate + Teleport)
4 = Super Admin (+ TpHere, GodMode, Freeze, Markers)
5 = Owner (+ Debug, accès total)
Note: Les niveaux dans le code diffèrent légèrement de la documentation initiale.
🎨 Modifications Planifiées
1. Interface Modernisée ✅ TERMINÉ
Design moderne avec dégradés et transparenceOrganisation en onglets (Joueurs / Actions / Objets / Serveur)Zone de recherche de joueurs avec bouton "RECHERCHER"Affichage amélioré des informations joueur (Steam ID, faction, véhicule, position, distance, cash, banque)Mini-map interactive avec mise à jour en temps réelMarqueurs sur la map pour le joueur sélectionnéResponsive design avec SafeZoneSystème de requête financière via remoteExecSuppression des boutons "Get ID" et "Query Player" (infos déjà affichées automatiquement)
2. Nouvelles Fonctionnalités
Gestion Joueurs
Kick Player- Expulser un joueurBan Player- Bannir un joueur (temporaire/permanent)Heal Player- Soigner un joueurRevive Player- Réanimer un joueurStrip Weapons- Retirer les armesGive Money- Donner de l'argentSet Admin Level- Modifier le niveau adminTeleport To Player- Se téléporter vers un joueurSpectate Camera- Amélioration de la caméra spectateur
Gestion Objets/Véhicules
Repair Object- Réparer objet ciblé (cursorObject)Delete Object- Supprimer objet ciblé (cursorObject)Refuel Vehicle- Ravitailler véhiculeFlip Vehicle- Retourner véhiculeList Player Vehicles- Voir véhicules d'un joueurSpawn Vehicle- Faire apparaître un véhicule
Serveur
Server Messages- Messages serveur personnalisésRestart Warnings- Avertissements de restartAdmin Chat- Chat entre adminsView Admin Logs- Consulter les logs in-gameServer Statistics- Stats serveur en temps réel
Utilitaires
Weather Control- Contrôle météoTime Control- Contrôle heureCleanup Dead- Nettoyer les corps/véhiculesToggle Invisibility- Invisibilité adminNo Recoil- Désactiver le recul
3. Système de Logging
Base de Données
Table admin_logs avec:
ID de log (auto-increment)TimestampAdmin (Steam ID + nom)Action effectuéeCible (joueur/véhicule)Détails (JSON pour données supplémentaires)IP adminServeur
Actions Loggées
Toutes les actions admin (kick, ban, tp, godmode, etc.)Modifications de base de donnéesCompensations donnéesChangements de niveau adminMessages serveur envoyés
🗄️ Base de Données
Nouvelle Table: admin_logs
CREATE TABLE IF NOT EXISTS `admin_logs` (
`id` INT NOT NULL AUTO_INCREMENT,
`timestamp` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`admin_pid` VARCHAR(17) NOT NULL,
`admin_name` VARCHAR(32) NOT NULL,
`action` VARCHAR(64) NOT NULL,
`target_pid` VARCHAR(17) DEFAULT NULL,
`target_name` VARCHAR(32) DEFAULT NULL,
`details` TEXT,
`admin_ip` VARCHAR(45) DEFAULT NULL,
`server_id` VARCHAR(32) DEFAULT NULL,
PRIMARY KEY (`id`),
INDEX `index_admin` (`admin_pid`),
INDEX `index_action` (`action`),
INDEX `index_timestamp` (`timestamp`),
CONSTRAINT `FK_admin_logs_admin` FOREIGN KEY (`admin_pid`)
REFERENCES `players` (`pid`)
ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Table Bans (optionnel)
CREATE TABLE IF NOT EXISTS `admin_bans` (
`id` INT NOT NULL AUTO_INCREMENT,
`pid` VARCHAR(17) NOT NULL,
`player_name` VARCHAR(32) NOT NULL,
`banned_by` VARCHAR(17) NOT NULL,
`reason` TEXT NOT NULL,
`ban_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`expire_time` TIMESTAMP NULL DEFAULT NULL,
`active` TINYINT NOT NULL DEFAULT 1,
PRIMARY KEY (`id`),
INDEX `index_pid` (`pid`),
INDEX `index_active` (`active`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
📝 Nouveaux Fichiers Créés v2.0
Core Functions ✅ CRÉÉS
Dialogs ✅ CRÉÉ
Fichiers à Créer (Phases Futures)
Server Functions
life_server/Functions/Admin/fn_logAdminAction.sqflife_server/Functions/Admin/fn_kickPlayer.sqflife_server/Functions/Admin/fn_banPlayer.sqflife_server/Functions/Admin/fn_getAdminLogs.sqf
🔧 Fichiers à Modifier
Configuration
Existants
🚀 Commandes Utiles
Base de Données
-- Créer la table de logs
SOURCE admin_logs_table.sql;
-- Voir les dernières actions admin
SELECT * FROM admin_logs ORDER BY timestamp DESC LIMIT 50;
-- Actions d'un admin spécifique
SELECT * FROM admin_logs WHERE admin_pid = '76561198XXXXXXXX' ORDER BY timestamp DESC;
-- Actions par type
SELECT action, COUNT(*) as count FROM admin_logs GROUP BY action ORDER BY count DESC;
-- Rechercher dans les logs
SELECT * FROM admin_logs WHERE details LIKE '%recherche%';
SQF Testing
// Tester le niveau admin
hint format["Admin Level: %1", life_adminlevel];
// Forcer ouverture menu admin
createDialog "life_admin_menu_new";
// Logger une action (test)
["test_action", player, "Test de logging"] call life_fnc_adminLog;
// Voir variables globales admin
hint str [life_god, life_markers, life_adminlevel];
Compilation
# Créer le PBO
armake build admin_menu admin_menu.pbo
# Extraire le PBO
armake unpack admin_menu.pbo admin_menu_extracted/
🔍 Analyse de l'Existant (Complétée)
Architecture Actuelle
Structure Client (admin_menu.Altis/):
core/admin/ # 10 fonctions admin
├── fn_adminCompensate.sqf
├── fn_adminDebugCon.sqf
├── fn_adminFreeze.sqf
├── fn_adminGetID.sqf
├── fn_adminGodMode.sqf
├── fn_adminID.sqf
├── fn_adminInfo.sqf
├── fn_adminMarkers.sqf
├── fn_adminMenu.sqf # Contrôleur principal
├── fn_adminQuery.sqf
├── fn_adminSpectate.sqf
├── fn_adminTeleport.sqf
└── fn_adminTpHere.sqf
dialog/
└── admin_menu.hpp # Interface IDD 2900
Structure Serveur (life_server/):
Functions/
├── Actions/
├── Gangs/
├── Housing/
├── Jail/
├── MySQL/ # Fonctions DB importantes
├── PlayTime/
├── Systems/
└── WantedSystem/
functions.sqf # Définitions fonctions publiques
⚠️ PROBLÈME MAJEUR IDENTIFIÉ: Aucun système de logging actuellement en place!
Points Critiques
Aucun Logging: Toutes les commandes admin sontNON LOGGÉESfn_adminCompensate.sqf: Donne de l'argent sans tracefn_adminFreeze.sqf: Freeze joueur sans logfn_adminGodMode.sqf: Active godmode localement uniquementfn_adminTeleport.sqf: Téléportation non tracée
Architecture Client-Side: La majorité des fonctions sont côté client uniquementPas de validation serveurRisque de manipulationPas de centralisation des logs
Communication Client↔Server:UtiliseremoteExecCallpour les fonctions critiquesSécurisé viaCfgRemoteExec.hpp(whitelist)Fonctions serveur limitées (TON_fnc_getID, TON_fnc_player_query)
Base de Données:Tableadmin_logscréée dansaltislife.sql✅MAIS: Aucune fonction serveur pour y écrire ❌Aucune fonction côté client pour déclencher le logging ❌
📊 Progression
Phase 1: Analyse & Infrastructure ✅
Analyse structure existanteIdentification de toutes les commandes admin (10 fonctions)Audit système de logging (résultat:aucun logging)Documentation architecture actuelleCréation fonction de logging générique serveurCréation fonction wrapper logging clientConfiguration CfgRemoteExec pour nouvelles fonctions
Phase 2: Implémentation Logging Prioritaire 🔥
Fonction serveur:TON_fnc_logAdminAction(life_server)Fonction client:life_fnc_adminLog(wrapper)Modifier toutes les 10 fonctions existantes pour loggerTester logging en DB pour chaque commande
Phase 3: Interface Modernisée ✅
Design nouveau dialog admin_menu_new.hppCréation fn_adminMenuNew.sqf (contrôleur principal)Système d'onglets (Joueurs / Actions / Véhicules / Serveur)Recherche joueurs avec filtres (Cop/Civ/EMS/All)Affichage position joueur sur mini-map en temps réelConfiguration centralisée des permissions (Config_Admin.hpp)Interface responsive avec SafeZoneDesign moderne avec couleurs par factionBoutons dynamiques selon admin_level
Phase 4: Nouvelles Fonctionnalités ⏳
Gestion joueurs (kick, ban, heal, revive, etc.)Gestion véhicules (repair, delete, spawn)Contrôles serveur (messages, restart warnings)Utilitaires admin (invisibility, weather, time)
Phase 5: Visualisation Logs ⏳
Interface visualisation logs in-gameFiltres par admin/action/dateExport logsDashboard stats
Phase 6: Tests & Déploiement ⏳
Tests unitairesTests en condition réelleDocumentation utilisateurFormation admins
⚠️ Notes Importantes
Sécurité
✅ Toujours vérifierlife_adminlevelavant exécution✅ Utiliser CfgRemoteExec pour whitelist les fonctions✅ Logger TOUTES les actions admin sensibles✅ Valider inputs utilisateur (SQL injection, etc.)✅ Chiffrer les IDs dans les logs si nécessaire
Performance
⚡ Limiter fréquence refresh liste joueurs⚡ Pagination pour les logs (max 100 par page)⚡ Cache pour requêtes fréquentes⚡ Async pour requêtes DB lourdes
Compatibilité
🔄 Maintenir compatibilité ascendante🔄 Tester avec versions Arma 3 différentes🔄 Vérifier compatibilité extDB3🔄 Documenter breaking changes
📚 Ressources
Documentation
Outils
Arma 3 Tools (Publisher, Font Config, etc.)GUI Editor in-gameextDB3 Latest versionMySQL Workbench
🔄 Changelog
Version 1.0.0 - En développement
✨ Nouvelle interface moderne✨ 15+ nouvelles fonctionnalités admin✨ Système de logging complet en BDD✨ Viewer de logs in-game✨ Organisation en onglets🐛 Corrections bugs existants
📋 Résumé Exécutif
État Actuel
✅ Framework Altis Life 5.0 (AsYetUntitled) installé✅ 10 fonctions admin de base fonctionnelles✅ Tableadmin_logscréée en base de données✅NOUVELLE INTERFACE ADMIN v2.0 créée- Moderne, onglets, mini-map, recherche✅ Système de configuration des permissions centralisé❌Logging non implémenté- prochaine étape prioritaire
Priorités
🔥 URGENT: Implémenter le système de logging pour surveiller les modos✅ TERMINÉ: Interface modernisée avec onglets, recherche, mini-map ✨✨ EN COURS: Ajouter nouvelles fonctionnalités (kick, ban, heal, etc.)
Prochaines Étapes Recommandées
Créer fonction serveur de logging (TON_fnc_logAdminAction)Créer wrapper client (life_fnc_adminLog)Modifier les 10 fonctions existantes pour appeler le loggerTester le système de loggingDesigner nouvelle interface moderne
Dernière mise à jourDate: 2025-10-04
Développeur: ProtoMehka10
Framework: Altis Life 5.0 (AsYetUntitled)
Statut: Phase 3 (Interface) ✅ Complétée | Phase 2 (Logging) ⏳ À faire0+
🎉📖 NOUVEAUTÉSDescription
Interface admin moderne et épurée pour serveurs Altis Life, avec système d'onglets, mini-map interactive, recherche de joueurs et permissions configurables via fichier de configuration centralisé.
✨ Fonctionnalités
🎨 Interface Admin v2.0
✨ Fonctionnalités ImplémentéesModerne
Interface Moderne:
- Design épuré avec thème sombre et accents bleus
- Interface responsive avec SafeZone
Bouton4de fermeture (X) rouge intuitifCouleurs par faction (Bleu=Cop, Vert=Civ, Orange=EMS)
Système d'Ongletsonglets:
4 onglets:Joueurs / Actions /VéhiculesObjets / Serveur- Navigation intuitive avec mise en surbrillance
BoutonsLayoutdynamiquesoptimisé:selonListel'ongletjoueursactifcompacte, Permissionsgrandefiltréescarte,parzoneadmin_levelactionsautomatiquementavec dropdown
Liste🔍
des Joueurs:
Affichage en temps réel de tous les joueurs connectésTri alphabétique automatiqueCode couleur par factionCompteur de joueurs
Recherche et Filtres:
- Barre de recherche par nom de joueur
4Trifiltresalphabétiquerapides: TOUS / COP / CIV / EMSautomatiqueBoutonCodedecouleurrechercheparavecfactionicône(Bleu=Cop,🔍Vert=Civ, Filtrage instantanéOrange=EMS)
Informations🗺️
Joueur:
Nom et Steam IDFaction avec code couleurVéhicule actuel ou "À pied"Position GPS (coordonnées)Distance par rapport à l'adminInfos financières (en cours de développement)
Mini-Map Interactive:
- Affichage temps réel de la position du joueur sélectionné
- Centrage automatique sur le joueur
- Marqueur rouge avec nom
du joueur - Mise à jour
en temps réel (toutes les 2secondes)secondes ZoomGrandeettailledéplacementpour Marqueurmeilleures'efface après 30 secondesvisibilité
Gestion📊
desInformations Permissions:
- Nom et Steam ID
- Faction avec code couleur
- Véhicule actuel
- Position GPS (coordonnées)
- Distance par rapport à l'admin
- Argent (Cash et Banque) - Récupération depuis la BDD via requête SQL
⚙️ Système de Permissions
- Configuration centralisée dans
config/Config_Admin.hpp Facile5àniveauxmodifieradminsans(Supporttoucher→auOwner)- Menu déroulant dynamique avec bouton EXÉCUTER
- Couleurs par niveau
admin:de🟢 Vert = Support (niveau 1)permission🔵BoutonsBleuaffichésclairuniquement=selonModérateurle(niveau2)🔵 Bleu = Admin (niveau 3)🟠 Orange = Super Admin (niveau 4)🔴 Rouge = Owner (niveau 5)
admin
📁🎯 FichiersGestionnaire Créésd'Objets
Configuration:
Détectionconfig/Config_Admin.hpp-d'itemsConfigurationaudessolpermissions(WeaponHolder)etdanscommandesun rayon personnalisable (1-50m)- Affichage du contenu détaillé (armes, chargeurs, items, sacs)
- Flèche 3D rouge pointant vers l'item sélectionné
- Suppression individuelle d'items (les autres restent au sol)
- Suppression automatique du conteneur s'il devient vide
Interface:
🔧 Logging
Toutesdialog/admin_menu_new.hpp-lesNouveauactionsdialogadminmodernesont loguées en base de données- Interface de visualisation des logs supprimée (
IDDlogging29000)backend préservé) - Traçabilité complète des actions administratives
Fonctions:
- Structure
admin_menu.Altis/ ├── config/ │ └── Config_Admin.hpp # ⚙️ Configuration centralisée ├── dialog/ │ ├── admin_menu.hpp # 🎨 Interface principale │ ├── server_message.hpp # 💬 Dialog message serveur │ └── object_manager.hpp # 🎯 Dialog gestionnaire d'objets └── core/admin/fn_adminMenuNew.├── fn_adminMenu.sqf-# 🎮 Contrôleur principal core/admin/├── fn_adminMenuTabChange.sqf-# 📑 Gestiondesongletsonglets+ core/admin/dropdown ├── fn_adminRefreshList.sqf-#Rafraîchissement📋listeListe joueurscore/admin/├── fn_adminSearchPlayer.sqf-# 🔍 Recherchede├──joueurscore/admin/fn_adminFilterPlayers.sqf- Filtres par factioncore/admin/fn_adminPlayerSelected.sqf-#Sélectionℹ️joueurInfos + mini-map
📁
🚀 Installation Rapide
1️⃣ Copier les fichiers
✅ config/Config_Admin.hpp
✅ dialog/admin_menu.hpp
✅ dialog/server_message.hpp
✅ dialog/object_manager.hpp
✅ core/admin/fn_admin*.sqf (28 fichiers)
Serveur (life_server):
✅ Functions/Admin/fn_getPlayerFinances.sqf
✅ Functions/Admin/fn_logAdminAction.sqf
2️⃣ Modifier Config_Master.hpp
Ajouter tout en haut de la section des includes (après class Life_Settings):
#include "Config_Admin.hpp"
3️⃣ Modifier Functions.hpp -(Client)
class desAdmin nouvelles{
file = "core\admin";
// ... fonctions dialog/existantes conservées ...
// Admin Menu v2.1
class adminMenu {};
class adminMenuTabChange {};
class adminRefreshList {};
class adminSearchPlayer {};
class adminPlayerSelected {};
class adminRepairObject {};
class adminDeleteObject {};
class adminQueryFinances {};
class adminReceiveFinances {};
class adminServerMsg {};
class adminSendServerMsg {};
class adminBroadcastMsg {};
class adminSpectate {};
class adminTpHere {};
class adminFreeze {};
class adminGodMode {};
class adminObjectManager {};
class adminObjectRefresh {};
class adminObjectSelect {};
class adminObjectDelete {};
};
4️⃣ Modifier MasterHandler.hpp
#include "admin_menu.hpp"
#include "server_message.hpp"
#include "object_manager.hpp"
5️⃣ InclusionModifier duconfig.cpp nouveau(Serveur)
class Admin {
file = "\life_server\Functions\Admin";
class getPlayerFinances {};
class logAdminAction {};
};
6️⃣ Modifier CfgRemoteExec.hpp (Client)
Client functions:
dialog/F(life_fnc_adminQueryFinances,CLIENT)
F(life_fnc_adminReceiveFinances,CLIENT)
F(life_fnc_adminBroadcastMsg,CLIENT)
Server functions:
F(TON_fnc_getPlayerFinances,SERVER)
F(TON_fnc_logAdminAction,SERVER)
7️⃣ Modifier player_inv.hpp -(Client)
Bouton adminIDC menu2021:
onButtonClick à= jour"closeDialog core/pmenu/fn_p_openMenu.sqf0; createDialog ""life_admin_menu"";";
- Commentaires ajoutés
🚀8️⃣ CommentBase Utiliserde données
⚙️ Configuration
desAjouter Permissionsune Commande
ÉditezÉditer config/Config_Admin.hpp pour:
Ajouter/retirer des commandesModifier les niveaux requisRéorganiser les ongletsPersonnaliser les couleurs
Exemple::
class Commands {
list[] = {
{"HealMa Player"Commande", "life_fnc_adminHeal"life_fnc_maFonction", 3, "players"}
// Nom affiché | Fonction à appeler | Niveau min (1-5) | Onglet
};
};
Onglets Disponibles
"players"→ Onglet Joueurs"actions"→ Onglet Actions"objects"→ Onglet Objets"server"→ Onglet Serveur
Dropdown / Boutons
Modifier dans Config_Admin.hpp:
class DropdownSettings {
maxButtonsBeforeDropdown = 0; // 0 = Toujours dropdown, 999 = Toujours boutons
};
📊🎯 RésuméNiveaux desAdmin
| Niveau | Nom | Couleur | Permissions |
|---|---|---|---|
| 1 | Support | 🟢 Vert | Infos joueurs |
| 2 | Modérateur | 🔵 Bleu clair | + Compensate |
| 3 | Admin | 🔵 Bleu | + Spectate, Teleport, Repair Object, Object Manager |
| 4 | Super Admin | 🟠 Orange | + TpHere, GodMode, Freeze, Delete Object, Server Message |
| 5 | Owner | 🔴 Rouge | Accès total (Debug Console) |
🔧 Compatibilité
- ✅ Altis Life 5.0 (
OctobreAsYetUntitled) - ✅ Frameworks Altis Life compatibles
- ✅ Arma 3 (dernière version)
- ⚠️ Requiert adaptation mineure pour frameworks custom
🛠️ Troubleshooting
✅Le Terminémenu -ne Phases'ouvre 1: Interface Moderniséepas
Fichiers✅ CréésVérifier life_adminlevel >= 1
✅ Vérifier includes dans MasterHandler.hpp et Config_Master.hpp
Liste de joueurs vide
✅ Vérifier logs [ADMIN REFRESH] dans le RPT
✅ Tester hint str (12):count playableUnits);
Aucune commande affichée
✅ Vérifier que Config_Admin.hpp est bien inclus dans Config_Master.hpp
✅ Vérifier les logs [ADMIN MENU] pour voir si les commandes sont chargées
ClientPlus (admin_menu.Altis)de détails: CONFIG_ADMIN_GUIDE.md
Serveur (life_server):
14. Functions/Admin/fn_getPlayerFinances.sqf - Requête SQL SELECT cash, bankacc FROM players WHERE pid='...'
Fichiers Modifiés (6):
Client:
Functions.hpp- Ajout de 11 déclarations de fonctionsCfgRemoteExec.hpp- Autorisation remoteExec (3 client, 1 serveur)dialog/admin_menu_new.hpp- Onglet "VEHICULES" → "OBJETS", ajustement hauteur liste joueurscore/admin/fn_adminMarkers.sqf- Correction erreur "Suspending not allowed" (spawn wrapper)core/admin/fn_adminCompensate.sqf- Correction erreur "Suspending not allowed" (spawn wrapper)
Serveur:
6. life_server/config.cpp - Ajout classe Admin avec fn_getPlayerFinances
Fonctionnalités:
✅ Interface à 4 onglets: Joueurs / Actions / Objets / Serveur✅ Recherche de joueurs en temps réel avec bouton "RECHERCHER"✅ Mini-map interactive avec marqueur rouge et mise à jour auto (2s)✅ Affichage infos joueur: Nom, Steam ID, Faction, Véhicule, Position, Distance✅Système de requête financière- Cash et Banque récupérés via remoteExec client→client✅ Boutons dynamiques selon niveau admin (couleurs par niveau)✅ Suppression des boutons redondants "Get ID" et "Query Player"✅ Actions sur objets: Repair Object (niveau 3) et Delete Object (niveau 4)✅Server Message(niveau 4) - Envoyer messages broadcast à tous les joueurs✅View Logs(niveau 3) - Placeholder pour consultation logs admin (BDD à implémenter)✅ Correction bugs: superposition boutons, affichage recherche, hauteur liste, markers
Corrections de Bugs:
✅ Bouton recherche invisible → Changé emoji en texte "RECHERCHER" + largeur 0.07✅ Boutons superposés au changement d'onglet →ctrlDeleteau lieu dectrlShow false✅ Infos financières ne s'affichaient jamais → Requête SQL serveur avecDB_fnc_asyncCall✅ Liste joueurs trop haute → Position Y: 0.27→0.28, Hauteur: 0.5→0.48✅ Erreur "Suspending not allowed" dans fn_adminMarkers → Wrapperspawn
Architecture Technique:
Infos Financières (Client → Client):
Admin → Joueur cible:fn_adminPlayerSelectedenvoie requête vialife_fnc_adminQueryFinancesJoueur cible:Lit ses variables localesCASHetBANK(macroscript_macros.hpp)Joueur cible → Admin:Renvoie vialife_fnc_adminReceiveFinancesAdmin:Affiche avec formatagelife_fnc_numberText
Server Message (Admin → Tous):
Admin:Ouvre dialog BIS_fnc_guiMessage pour saisir le messageAdmin → Tous:Broadcast vialife_fnc_adminBroadcastMsg(remoteExec RCLIENT)Tous les clients:Affichage titleText + systemChat + son notification
🔄 En Cours - Phase 2: Système de Logging
Statut: Prévu mais non démarré
Tableadmin_logsen base de donnéesdropdown-
FonctionConfigurationgénériquecentraliséede(Config_Admin.hpp) - Server Message broadcast
- Repair/Delete Object
- Informations financières via SQL
- Logging
automatique de toutes lesactions admin en BDD -
InterfaceLayoutdeoptimiséconsultation(listedescompacte,logsgrandein-game
📅 Prévu - Phase 3: Nouvelles Commandes
Fonctionnalités à développer:
Kick/Ban joueurscarte)-
Heal/ReviveTextesjoueursagrandis pour meilleure lisibilité -
GestionModevéhiculesspectateuravancéecompatible TFAR (spawn,détectionrefuel, flip)automatique) -
MessagesGestionnaireserveurd'objets✅avecImplémentésuppression individuelle d'items -
ContrôleCorrectionsmétéo/heure Admin chatView Logsbugs (placeholder)TP✅Here,BaseFreeze,crééeGod Mode)
🎯📄 Prochaines Étapes RecommandéesLicence
- d'utilisation et de modification.
Crédit apprécié mais non obligatoire.
🙏 Crédits
TestsAuteur:ApprofondisProtoMehka Framework: Altis Life 5.0 (AsYetUntitled) Date: Octobre 2024 -ValiderJanviertoutes2025
📞 Support
- 📖 Guide de configuration
- 🗄️ Configuration BDD
- 🔍 Vérifier les
fonctionnalitésfichierssur serveur de test Logging System- Implémenter le système de logs en base de donnéesNouvelles Commandes- Ajouter kick, ban, heal, reviveDocumentation- Créer guide utilisateurRPT pouradminsOptimisation- Vérifier performanceserreurs avec50+filtresjoueurs[ADMIN MENU]et[ADMIN REFRESH]
Libre
DernièreVersion mise à jour:2.1 Octobre- 2024Janvier Auteur: ProtoMehka
Version: 2.02025