Yo les rasta,
J'ai voulu lancer un thread consacré au mod XmedSys pour ArmA III parce qu'il est pas forcément facile à appréhender, il y a peu de documentation et le créateur, X39 parle assez mal anglais et que les échelles ne sont à priori pas toujours cohérentes.
Ce qui est par contre plutôt chouette c'est que X39 est assez réactif aux demandes et aux bugs qu'il sait et/ou peut résoudre.
Pourtant, un peu configurer, il peut être intéressant.
D'abord, les liens :
Pour le lancer, il faut avoir les trois mods, Xlib, XactionUi et XmedSys, mais tout regroupé dans un même dossier marche aussi bien.
Il y a 3 variables,
- la "santé" ("health") qui influe sur le tremblement général, qui va de 100% - En forme, à 0% - forts tremblements.
- La "douleur" ("pain") qui influe sur la coloration de l'écran et sur le flou de la vision qui va de 0% - En forme, à 100%, vision rouge et floue.
- Le "sang" ("Blood"), qui descend en cas de blessure et de saignement. A 0%, c'est la mort, à 20% (de base) c'est le coma.
Il y a ensuite les objets :
- Les bandages qui arrêtent le saignement
- Le tourniquet, qui arrête le saignement, mais augmente la "douleur", diminue la "santé" et force la marche.
- Les blood bags qui remontent le niveau de "sang"
- Les Medkits, qui soignent les jambes cassées et remontent le niveau de "santé"
- La morphine, qui diminue la "douleur", avec possibilité d'overdose (artefacts visuels)
- L'epinephrine, pour réveiller les copains dans le coma
- Le défibrilateurs pour ranimer les copains en arrêt cardiaques.
- Les Earplugs, pour ne pas devenir sourd (c'est nouveau et pas tout à fait au point)
Un soldat blessé peut soit rester alerte, mais saigner avoir de la "douleur" et sa "santé" entamée. Il peut aussi avoir les jambes cassées (position allongée et immobile).
Il peut être évanoui (vision noire, pas de possibilité d'action) ou dans le coma, idem qu'évanoui pour le joueur.
Il y a donc tout plein de variables à modifier qui se situent dans le fichier "x39_medsys_scripting.pbo" à décompiler, puis dans "\MedicSystem\Functions\initModVariables.sqf"
Voici donc les variables, la plupart parlent d'elles-même, d'autre sont plus floues, voire même absurdes. Il y a quelques explications sur le wiki mais il faut quand même faire des tests soit même pour comprendre un peu.
Il s'agit des variables de la v0.3.4 (on joue actuellement avec la 0.3.3 sur le serveur)
//AllowedToEdit Variables
assignVariable_STR("X39_MedSys_var_UsingEventSyste m", false) - ???
assignVariable_STR("X39_MedSys_var_DamageMultiplic ator", 1.5)
assignVariable_STR("X39_MedSys_var_Legs_DamageBefo reProneOnly", 7) - Actuellement 3, de base : 0.5
assignVariable_STR("X39_MedSys_var_Legs_DamageMult iplicator", 2)
assignVariable_STR("X39_MedSys_var_Legs_AllowBroke nLegs", true)
assignVariable_STR("X39_MedSys_var_Head_DamageMult iplicator", 5) - de base : 1, ça n'a pas l'air de marcher correctement, peut-être faut-il réduire ?
assignVariable_STR("X39_MedSys_var_Head_HeadShotDe athLimit", 1) - La limite de dommage que peut supporter la "tête".
assignVariable_STR("X39_MedSys_var_Head_HeadShotFa keKilling", true) - Un tir dans la tête vous fait tomber dans le coma directement et uniquement.
assignVariable_STR("X39_MedSys_var_Generic_DamageB eforeKnockOut", 4) - dégats sur 10 avant évanouissements dont on se réveille seul
assignVariable_STR("X39_MedSys_var_Generic_DamageB eforePermaKnockOut", 6) - Dégats sur 10 avant évanouissement qui nécessite de l'épinéphrine
assignVariable_STR("X39_MedSys_var_Generic_DamageB eforeDead", 8) //dégats sur 10 avant coma
assignVariable_STR("X39_MedSys_var_Bleeding_BloodL ossPerTickModificator", 1)
assignVariable_STR("X39_MedSys_var_Bleeding_Starti ngBlood", 6000) - Quantité de sang de base
assignVariable_STR("X39_MedSys_var_Action_CheckUni t_OutputRealValues", true) - True donne des résultats en nombres, false donne des diagnostics en phrase.
assignVariable_STR("X39_MedSys_var_Bleeding_StartB loodAtMinDamageValueX", 0.1) - Cap de dégats avant saignement (sur 1 ou sur 10 ?)
assignVariable_STR("X39_MedSys_var_Bleeding_KnockO utBloodLimit", X39_MedSys_var_Bleeding_StartingBlood * 0.5) - Valeur de "sang" en dessous de laquelle on tombe dans le coma
assignVariable_STR("X39_MedSys_var_LifeTime", 300) - Temps disponible pour réanimation
assignVariable_STR("X39_MedSys_var_PreventGuiOpeni ng", false) - ???
assignVariable_STR("X39_MedSys_var_BandageBleeding Heal", 3) - Valeur de réduction de saignement des bandages.
assignVariable_STR("X39_MedSys_var_BloodPackValue" , X39_MedSys_var_Bleeding_StartingBlood * 0.25) - Taille des bloodbags
assignVariable_STR("X39_MedSys_var_Healing_Bandage HealValue", 0.1) - Valeur de diminution de la valeur "Santé" quand on applique un bandage, sur 10
assignVariable_STR("X39_MedSys_var_Healing_BloodPa ckValue", 0.2) - Idem pour blood bag
assignVariable_STR("X39_MedSys_var_Healing_MedKitV alue", 5) - Idem pour medkit
assignVariable_STR("X39_MedSys_var_Display_TimeBef oreRespawnAvailable_NormalKnockout", 5) - Temps avant que le bouton "respawn" ne soit sectionnable en étant évanoui
assignVariable_STR("X39_MedSys_var_Display_TimeBef oreRespawnAvailable_Death", X39_MedSys_var_LifeTime / 100) Idem, mais dans le coma
assignVariable_STR("X39_MedSys_var_Display_BlackOu t_MaxFade", 0.5)
assignVariable_STR("X39_MedSys_var_Display_BlackOu t_FadeManipulator", 0.025)
assignVariable_STR("X39_MedSys_var_Display_BlackOu t_FadeTime_Value", 10)
assignVariable_STR("X39_MedSys_var_Display_BlackOu t_FadeTime_RandomMinMax", 10)
assignVariable_STR("X39_MedSys_var_Display_Overlay _EnableHealthView", false) - Affiche la croix de vie sur le Hud (en fait désactivé dans le userconfig)
assignVariable_STR("X39_MedSys_var_Display_Overlay _EnableBoodView", false) - Idem
assignVariable_STR("X39_MedSys_var_Display_Overlay _EnableLegView", true) - Idem
assignVariable_STR("X39_MedSys_var_Display_Overlay _EnableTourniquetView", true) - Idem
assignVariable_STR("X39_MedSys_var_Display_Overlay _EnableMorphineView", true) - Idem
assignVariable_STR("X39_MedSys_var_Bleeding_Tourni quet_DamagePerTick", 0.1) - Valeur de dommage qu'apporte le tourniquet par tick, sur 10.
assignVariable_STR("X39_MedSys_var_Force_CamShake" , true)
assignVariable_STR("X39_MedSys_var_Bleeding_Allow" , true) - Active ou non le saignement
assignVariable_STR("X39_MedSys_var_Pain_Allow", true) - Active ou non la douleur
assignVariable_STR("X39_MedSys_var_Pain_AllowHealt hOvercharge", true) - Active ou non la surcharge de "santé"
assignVariable_STR("X39_MedSys_var_Pain_AllowMorph ineOverdoseEffect", true) - Active ou non l'overdose de morphine
assignVariable_STR("X39_MedSys_var_Pain_MorphineAl soHeals", true) - Active ou non le fait que la morphine soigne aussi.
assignVariable_STR("X39_MedSys_var_Pain_MaxHealthO vercharge", 1) - ???
assignVariable_STR("X39_MedSys_var_Pain_HealthOver chargeEffectManipulator", 1) - ???
assignVariable_STR("X39_MedSys_var_Pain_Modificato r", 1) - ???
assignVariable_STR("X39_MedSys_var_Pain_MorphineHe alValue", 3) - Valeur de réduction de la "douleur" par la morphine, sur 10
assignVariable_STR("X39_MedSys_var_Pain_MorphineHp HealValue", 0.5) - ???
assignVariable_STR("X39_MedSys_var_Pain_MorphineEf fectReducedPerTick", 0.01) - Diminution par seconde de l'effet d'overdose de morphine.
assignVariable_STR("X39_MedSys_var_Pain_ReductionP erTick", 0) - Réduction de la douleur
assignVariable_STR("X39_MedSys_var_Pain_minPainToM axPain", 10) - Douleur maximum, possibilité d'aller plus haut ???
assignVariable_STR("X39_MedSys_var_Pain_ColorCorre ctions", true)
assignVariable_STR("X39_MedSys_var_Pain_Blur", true)
assignVariable_STR("X39_MedSys_var_Pain_RedScreen" , true)
assignVariable_STR("X39_MedSys_var_Pain_GreyScreen ", true)
assignVariable_STR("X39_MedSys_var_Pain_GreyScreen Manipulator", 1)
assignVariable_STR("X39_MedSys_var_pain_ColorInver sion", true)
assignVariable_STR("X39_MedSys_var_pain_ChromAberr ation", true)
assignVariable_STR("X39_MedSys_var_Pain_disableZer oingOnReceive", false)
assignVariable_STR("X39_MedSys_var_Pain_MaxBlur", 2) - Flou max quand "douleur"
assignVariable_STR("X39_MedSys_var_Bleeding_maxBle eding", 10) - % max de saignement ???
assignVariable_STR("X39_MedSys_var_maxDamage", 10) - Dommage maximum encaissable.
assignVariable_STR("X39_MedSys_var_HpRegenOverTime _Allow", false) - Régénération de la "santé" ???
assignVariable_STR("X39_MedSys_var_HpRegenOverTime _MaxRegen", 0.20)
assignVariable_STR("X39_MedSys_var_HpRegenOverTime _RegenPerTick", 0.001)
assignVariable_STR("X39_MedSys_var_HpRegenOverTime _OnlyRegenWhenNotBleeding", true)
assignVariable_STR("X39_MedSys_var_KnockOut_MinTim eBetweenTempKnockOuts", 30) - Temps minimum entre les évanouissements (de base : 300)
assignVariable_STR("X39_MedSys_var_KnockOut_enable ChatWhenKnockedOut", true)
assignVariable_STR("X39_MedSys_var_KnockOut_enable EscMenuWhenKnockedOut", true)
assignVariable_STR("X39_MedSys_var_KnockOut_showRe spawnButton", true)
assignVariable_STR("X39_MedSys_var_KnockOut_showAb ortButton", true)
assignVariable_STR("X39_MedSys_var_Limitations_Max Heal", 0.3)
assignVariable_STR("X39_MedSys_var_Limitations_all owHealingLegsInField", true)
assignVariable_STR("X39_MedSys_var_Limitations_all owBloodTransfusionInField", true)
assignVariable_STR("X39_MedSys_var_Limitations_all owHealingHeadInField", true)
assignVariable_STR("X39_MedSys_var_Limitations_ser viceProviderRange", 10)
assignVariable_STR("X39_MedSys_var_Limitations_ena ble", false)
assignVariable_STR("X39_MedSys_var_Hearing_enable" , true) - Active ou non la possibilité de rendre sourd. Pour l'instant uniquement des sons du jeu, la compatibilité avec Task Force Arrowhead Radio ne devrait pas tarder !
assignVariable_STR("X39_MedSys_var_Hearing_Multipl icator", 1) - ???
assignVariable_STR("X39_MedSys_var_Hearing_CureVal ue", -0.006) - Temps avant de retrouver l'ouïe normale.
assignVariable_STR("X39_MedSys_var_KillUnitWhenMax DamageReached", true) - Active ou non la possibilité de mourir définitivement.
assignVariable_STR("X39_MedSys_var_allowSpeedLimit ations", true) - Active ou non les limitations de vitesse (tourniquet notamment)
assignVariable_STR("X39_MedSys_var_allowSpeedLimit ations_forceWalkAtXDamage", 3.5) - Active la marche forcée au un certain niveau de dommage (n'a pas l'air de marcher, c'est tout nouveau).
Ajout de la 0.3.5 :
assignVariable_STR("X39_MedSys_var_Hearing_earPlug ManipulationValue", 0.2) - Réduit le volume sonore de 20% lors du port des bouchons d'oreille
assignVariable_STR("X39_MedSys_var_enableDrag", true) - Autorise (ou non) de tirer des unités
assignVariable_STR("X39_MedSys_var_enableCarry", true) - Autoriser (ou non) de porter des unités
Si vous voulez tester sur un unité (dans le VTS par exemple), il faut entrer la commande "call X39_MedSys_fnc_initializeUnit" et "[_spawn] call X39_MedSys_fnc_initializeUnit" dans le VTS.
J'essayerais de compléter une prochaine, il est tard pour le moment.
Edit : Maj 0.3.5