OSP Ambulance V2
Guide français de OSP Ambulance Job pour DayOne WL. Cette page reformule la documentation officielle et décrit uniquement le fonctionnement en jeu.
Les réglages, touches et objets peuvent différer selon la configuration du serveur. En cas d'écart, le comportement observé sur DayOne WL prévaut.
Documentation officielle OSP Ambulance Job{ .md-button }
Présentation
Démonstration
OSP Ambulance Job est un système médical FiveM qui gère les constantes vitales, les blessures localisées, les fractures, les traitements, les brancards et le suivi hospitalier.
Voir la vidéo de présentation officielle
Installation serveur
Cette partie concerne uniquement l'administration du serveur :
- Extraire la ressource dans le dossier des ressources du serveur.
- La démarrer dans
server.cfgaprès toutes ses dépendances. - Importer les objets nécessaires dans le framework ou l'inventaire.
- Régler en priorité
config/general.lua. - Réaliser les intégrations avancées dans les fichiers ouverts, par exemple
client/client_open.lua. - Consulter la FAQ avant d'ouvrir une demande d'assistance.
Commandes et touches
| Commande | Touche par défaut | Fonction |
|---|---|---|
/medicalsystem |
O |
Ouvre l'interface médicale. |
/skelly |
K |
Affiche ou masque le schéma des blessures. |
/editskelly |
Selon la version | Déplace et redimensionne le schéma. |
/911ems |
— | Envoie une alerte aux EMS en service. |
/clearsounds |
— | Arrête les sons proches restés bloqués. |
/woundeditor |
— | Ouvre l'éditeur de blessures s'il est activé. |
Commandes réservées à l'administration :
| Commande | Fonction |
|---|---|
/ambulanceconfig |
Ouvre la configuration en jeu. |
/kill [ID] |
Force la mort du joueur indiqué. |
/revive [ID] |
Réanime le joueur indiqué. |
Les joueurs peuvent modifier les raccourcis dans les paramètres FiveM.
Utilisation en jeu
Interface médicale
Ouvrez l'interface avec O. Pour examiner une personne proche, utilisez le bouton + à gauche du nom, puis sélectionnez le patient.
Constantes vitales
| Indicateur | Interprétation en jeu |
|---|---|
| Pouls | De 0 à 250 BPM ; environ 80 BPM est considéré comme idéal. |
| Tension | Valeurs systolique et diastolique ; la plage habituelle indiquée est de 90/60 à 130/80. |
| Saturation | Une SpO2 de 95 à 100 % est considérée comme normale. |
| Température | Affichée en degrés sur les moniteurs compatibles. |
| Douleur | Évolue selon les blessures et les traitements. |
| Niveau de sang | Diminue avec les hémorragies et remonte avec la stabilisation ou une perfusion adaptée. |
États de réanimation
Quatre mécanismes existent selon la configuration :
- Dernier souffle : traiter toutes les plaies externes, suturer si nécessaire et administrer l'épinéphrine selon le protocole du serveur. Contrôler ensuite le sang, le pouls et la tension.
- RCP : pratiquer la réanimation cardio-pulmonaire sur un patient en asystolie. Selon les réglages, elle peut suffire ou devoir être associée au défibrillateur.
- Défibrillateur : connecter l'ECG, identifier le rythme et commencer avec une charge inférieure à 100 joules avant d'augmenter progressivement après un échec. Il peut être utile sur certains rythmes anormaux comme la fibrillation ventriculaire ou les torsades.
- Kit de réanimation : restaure immédiatement l'état du patient. Il constitue une solution de dernier recours, comparable à une réanimation administrative.
Certaines blessures sont déclarées non survivables. Dans ce cas, le corps peut uniquement être placé dans une housse mortuaire selon les règles RP du serveur.
Régénération
La santé, le sang et la douleur commencent à se normaliser lorsque le patient est stable :
- pouls, tension et saturation dans des limites viables ;
- aucune plaie encore ouverte ;
- une plaie déjà emballée mais restant à suturer ne bloque pas nécessairement la régénération.
Brancard
- Utilisez l'objet
stretcherpour faire apparaître le brancard. - Interagissez avec lui par la cible ou l'interface textuelle pour le prendre.
- Appuyez sur
Epour le poser.
| Option | Effet |
|---|---|
| Prendre | Permet de déplacer le brancard, y compris avec un patient. |
| Patient dedans/dehors | Installe le joueur proche ou retire le patient présent. À proximité d'un lit médical, le patient peut être transféré directement. |
| Plier | Met le brancard à plat, notamment pour transporter une housse mortuaire. |
| Monter/descendre | Ajuste la hauteur pour le RP. |
| RCP | Permet la RCP lorsque le brancard est à plat. |
Écrans de l'hôpital
Moniteurs de soins intensifs
Les écrans placés près des lits affichent les constantes du patient connecté :
- vert : pouls et tracé ;
- rouge : tension systolique et diastolique ;
- bleu : saturation en oxygène ;
- orange : température ;
- partie basse : numéro du moniteur.
Écrans d'accueil
Les grands écrans de l'hôpital peuvent montrer le personnel en service et sa disponibilité, les patients annoncés en approche et leur heure estimée d'arrivée.
Un Code bleu se déclenche lorsqu'un moniteur détecte des constantes critiques. L'alerte indique le numéro du moniteur concerné. Sur place, interagissez avec ce moniteur pour arrêter l'alarme.
Matériel médical
| Matériel | Usage en jeu | Précaution |
|---|---|---|
| Morphine | Réduit fortement la douleur et ralentit le pouls. | Stabiliser d'abord une tension basse. Risque de dépendance et de surdose. |
| Épinéphrine | Augmente le pouls et réduit légèrement la douleur. | Surveiller le pouls et la tension après administration. |
| Propofol | Provoque une sédation rapide. | Réservé aux situations et protocoles adaptés. |
| Narcan | Neutralise une surdose d'opioïdes et peut interrompre une sédation compatible. | Ne traite pas les blessures ou la perte de sang. |
| Sang | Remonte progressivement le niveau de sang. | Vérifier impérativement la compatibilité. |
| Solution saline | Soutient le niveau de sang, en 250 ou 500 ml. | Moins efficace qu'une poche de sang ; ne ferme pas une plaie. |
| Kit de suture | Empêche une plaie traitée de se rouvrir. | Emballer la plaie avant de suturer. |
| Garrot | Stoppe temporairement une hémorragie sur un membre. | Augmente la douleur et ne constitue pas un soin définitif. |
| Pansements | Contrôlent les plaies selon leur type et leur efficacité configurée. | Choisir le pansement adapté à la blessure. |
| Sac médical | Inventaire médical portable posé dans le monde. | Récupérer le matériel après intervention. |
| Pager | Transmet des informations aux écrans de l'hôpital. | Vérifier les informations avant l'envoi. |
| Kit de réanimation | Restaure immédiatement un patient. | Solution exceptionnelle. |
| Housse mortuaire | Transporte un patient déclaré décédé. | Le joueur ne peut plus en sortir avant réapparition ou reconnexion. |
Système sanguin
Les poches de sang ne s'achètent pas : elles sont obtenues par les dons des joueurs.
Procédure de don
- Installer le donneur sur le fauteuil prévu.
- Prélever un échantillon.
- Analyser l'échantillon à la station dédiée.
- Enregistrer le groupe dans le dossier médical du donneur.
- Prélever les poches de sang total.
- Les ranger dans le réfrigérateur à sang.
- Contrôler régulièrement leur date d'expiration.
Compatibilité
| Receveur | Groupes compatibles |
|---|---|
| O- | O- |
| O+ | O-, O+ |
| A- | O-, A- |
| A+ | O-, O+, A-, A+ |
| B- | O-, B- |
| B+ | O-, O+, B-, B+ |
| AB- | O-, A-, B-, AB- |
| AB+ | Tous les groupes |
Une transfusion incompatible provoque une réaction ABO pouvant devenir mortelle dans le jeu. O- est donneur universel et AB+ receveur universel.
Radiographie et fractures
Une zone jaune foncé portant la mention Needs X-raying indique une fracture possible, même sans plaie externe. Posez une attelle adaptée pour limiter les troubles moteurs pendant le transport.
À l'hôpital :
- Installer le patient dans l'appareil de radiographie.
- Interagir avec le moniteur adjacent.
- Attendre le résultat dans l'interface médicale.
- Si l'os apparaît en rouge, traiter la fracture avec le plâtre approprié.
Schéma des blessures
/skelly ou K affiche une vue des zones blessées, accessible même sans l'interface médicale complète. Utilisez /editskelly pour déplacer le panneau et modifier sa taille, puis validez avec Entrée.
Ordonnances et maladies
| Affection | Symptômes | Contagieuse | Traitement courant |
|---|---|---|---|
| Infection respiratoire | Toux et sons de toux | Oui | Sirop contre la toux |
| Douleur aiguë | Douleur persistante | Non | Antalgique prescrit |
| Anxiété | Hausse du stress | Non | Anxiolytique |
| Insomnie | Vitesse de course réduite | Non | Mélatonine |
Médicaments disponibles : paracétamol pour une douleur faible, tramadol pour une douleur modérée, Vicodin pour une douleur forte, Xanax contre l'anxiété et mélatonine contre l'insomnie.
Pour prescrire :
- Ouvrir l'onglet Traitement du patient.
- Choisir la procédure d'ordonnance et le médicament adapté.
- Contrôler les ordonnances actives dans l'onglet Dossier.
- Le patient récupère ensuite son traitement auprès du PNJ de pharmacie ; son assurance peut modifier le prix.
Dépendances et sevrage
Le tramadol, le Vicodin et la morphine peuvent provoquer une dépendance en cas d'utilisation répétée. Une consommation excessive peut entraîner une surdose mortelle.
Le sevrage peut réduire la vitesse de déplacement, provoquer des battements audibles, une perte de santé, des vomissements ou de la fièvre. Son intensité et sa durée dépendent de la substance et de la configuration.
Éditeur de blessures
Lorsqu'il est activé par l'administration, /woundeditor permet d'ajouter ou de retirer des blessures pour une scène RP, par exemple simuler une fracture à traiter. Cette fonction est désactivée par défaut.
Utilisation développeur
Cette section résume les points d'intégration. Les signatures pouvant changer avec les versions, vérifiez toujours la référence développeur officielle.
État médical du joueur
L'export suivant lit les données médicales d'un joueur :
local playerId = GetPlayerServerId(PlayerId())
local ambulanceData = exports.osp_ambulance:GetAmbulanceData(playerId)
local pulse = ambulanceData.Pulse
Pour enregistrer l'état du joueur local :
LocalPlayer.state:set('BodyDamage', ambulanceData, true)
Pour enregistrer l'état d'un autre joueur :
TriggerServerEvent('osp_ambulance:SaveDataSv', playerId, ambulanceData)
Champs courants de BodyDamage : isDead, inLastStand, Conscious, Pulse, BloodPressure, Temp, oxygenSaturation, cardiacState, Pain, bloodType, insurvivable, BodyPartDamage.Wounds, BodyPartDamage.Bleeding, BodyPartDamage.Fractures et BodyPartDamage.BloodLevel.
Événements et exports utiles
Événements client principaux :
| Événement | Déclenchement |
|---|---|
osp_ambulance:OnPlayerDead |
Mort ou entrée en dernier souffle. |
osp_ambulance:OnPlayerDeath |
Mort complète. |
osp_ambulance:OnPlayerLastStand |
Changement de l'état de dernier souffle. |
osp_ambulance:OnPlayerSpawn |
Réanimation ou sortie d'un état de mort. |
osp_ambulance:addictionStateCl |
Apparition ou suppression d'une dépendance. |
osp_ambulance:overdoseStartCl |
Début d'une surdose. |
osp_ambulance:overdoseTreatedCl |
Traitement d'une surdose. |
Exports client principaux :
GetAmbulanceData(playerId?): litBodyDamage;isDead(): indique si le joueur local est mort ou en dernier souffle ;GetLocalAddictions(): retourne les dépendances locales ;IsOverdosing(): indique si une surdose active n'est pas traitée ;IsAddictiveDrugItem(itemName): vérifie si un objet est addictif.
Le serveur expose aussi la lecture des données, l'enregistrement d'une substance addictive, le suivi d'une prise, la lecture ou la suppression des dépendances et l'état de surdose.
Vérifier si un joueur est mort
local isDead = exports.osp_ambulance:isDead()
L'export retourne true lorsque le joueur local est mort ou en dernier souffle.
Médicament personnalisé
Copiez une entrée existante du même type dans la configuration, puis adaptez-la. Une perfusion utilise notamment :
onUse()au moment de l'utilisation ;onTick()chaque seconde pendant l'administration ;onFinish()lorsque le produit est épuisé.
Ne mélangez pas les structures : une entrée de type bandage doit conserver la structure d'un pansement, et non celle d'une perfusion.
Intégration FFA ou paintball
Dans client_open.lua, la fonction disableAllSystems() permet de neutraliser les systèmes de mort OSP pendant une session externe. Faites-lui retourner true lorsque l'export de votre ressource FFA indique qu'une session est active.
Objets d'inventaire
OSP fournit des définitions distinctes pour l'ancien et le nouveau qb-inventory, ox_inventory et ESX. Les principaux identifiants sont :
- soins :
field_dressing,elastic_bandage,quick_clot,packing_bandage,sewing_kit,tourniquet; - médicaments :
epinephrine,morphine,propofol,narcan; - perfusions :
saline250ml,saline500ml,blood500ml_<groupe>; - équipement :
stretcher,wheelchair,crutch,bodybag,ecg,medical_bag; - orthopédie :
neckbrace,neckcast,legsplint,legcast,armsplint,armcast,castsaw; - prescriptions :
prescription,cough_syrup,paracetamol,tramadol,vicodin,xanax,melatonin.
Utilisez les blocs officiels correspondant exactement à votre inventaire plutôt que de convertir manuellement leur syntaxe.
Banque de société
Dans server_open.lua, recherchez les exports qb-management ou qb-banking, puis remplacez-les par l'export d'ajout d'argent de votre système bancaire. Conservez les arguments de société et de montant attendus.
Écran de mort personnalisé
- Définir
Config.CustomDeathScreen = true. - Déclencher l'ouverture de l'écran externe dans les emplacements prévus de
client_open.lua. - Déclencher sa fermeture lors de la réanimation.
FAQ
Erreur de syntaxe dans un fichier Lua verrouillé
- Transférer l'archive ZIP, puis l'extraire directement sur le serveur.
- Éviter le transfert fichier par fichier susceptible d'altérer les ressources protégées.
- Utiliser des artifacts FiveM en version 4752 ou plus récente.
Problèmes entre joueurs ou avec l'interface médicale
- Mettre à jour les artifacts FiveM.
- Activer OneSync Infinity dans txAdmin : les state bags en dépendent.
- Fournir les journaux client et serveur lors d'une demande d'assistance.
Le garage ne fait pas apparaître les véhicules
Chaque grade EMS doit posséder une entrée correspondante dans Config.AuthorizedVehicles. Ajoutez une entrée pour chaque grade supplémentaire et vérifiez les virgules Lua.
Problèmes d'inventaire ou de framework
Réglez Config.UsedInventory sur une chaîne vide pour l'inventaire par défaut, sur 'ox' pour ox_inventory ou sur 'qs' pour qs-inventory.
Avec Qbox, retirez les ressources médicales conflictuelles qbx_ambulance et qbx_medical. Si un téléphone ou un inventaire reste bloqué après une réanimation, utilisez osp_ambulance:OnPlayerDead et osp_ambulance:OnPlayerSpawn comme événements d'intégration.
Désactiver la chute lors d'une blessure
Dans la configuration de chaque blessure concernée, réduisez ou désactivez la probabilité causeStaggering. Cette valeur représente le pourcentage de chance de déclencher le ragdoll.
Synthèse française non officielle, basée sur la documentation publique OSP Development consultée le 21 septembre 2026. Pour les configurations et extraits complets à jour, utilisez la documentation officielle liée en haut de page.