meta données pour cette page
  •  

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
arma:createurs_de_missions:arma_reforger:systeme_arty_ia [2026/10/15 23:28] – Restauration de l’ancien wiki (arma:createurs_de_missions:arma_reforger:systeme_arty_ia, archive.org) tanin_claudearma:createurs_de_missions:arma_reforger:systeme_arty_ia [2026/10/16 00:36] (Version actuelle) – Mention de jeu retirée du titre (rubrique déjà séparée par jeu) tanin_claude
Ligne 1: Ligne 1:
 ====== Support d'artillerie par IA configurable (GDC AR Lib) ====== ====== Support d'artillerie par IA configurable (GDC AR Lib) ======
  
-<note important>Ce système est en version beta et est susceptible de rencontrer des bugs</note>+<note important>Ce système est en version bêta et est susceptible de rencontrer des bugs.</note>
  
 ==== Support artillerie par IA ou artillerie virtuelle ? ==== ==== Support artillerie par IA ou artillerie virtuelle ? ====
Ligne 7: Ligne 7:
 Il est possible - et plus simple pour le mission maker - d'utiliser le système d'artillerie virtuel. Les prefabs vanilla disponibles sont puissants et hautement configurables. Un article du wiki décrit les paramètres de ces prefabs : [[arma:createurs_de_missions:arma_reforger:parametrer_des_tirs_de_mortiers|Comment paramétrer des tirs de mortiers (virtuels)]]. Cependant, ce système a plusieurs limites, notamment le fait que les mortiers n'existant pas, ils ne peuvent pas être détruits. De plus, le système est tout-puissant : les mortiers, sauf à ce que le mission maker prenne en compte volontairement ce paramètre, n'ont pas de limite de portée. De plus, les salves de tirs sont parfois irréalistes, sauf à imaginer une batterie de 5 mortiers ou plus tirant en continu. Il est possible - et plus simple pour le mission maker - d'utiliser le système d'artillerie virtuel. Les prefabs vanilla disponibles sont puissants et hautement configurables. Un article du wiki décrit les paramètres de ces prefabs : [[arma:createurs_de_missions:arma_reforger:parametrer_des_tirs_de_mortiers|Comment paramétrer des tirs de mortiers (virtuels)]]. Cependant, ce système a plusieurs limites, notamment le fait que les mortiers n'existant pas, ils ne peuvent pas être détruits. De plus, le système est tout-puissant : les mortiers, sauf à ce que le mission maker prenne en compte volontairement ce paramètre, n'ont pas de limite de portée. De plus, les salves de tirs sont parfois irréalistes, sauf à imaginer une batterie de 5 mortiers ou plus tirant en continu.
  
-A contrario, le système de support d'artillerie par IA, est un (tout petit) peu plus long à mettre en œuvre car il faut que des mortiers et des servants soient posés ou spawnés. En outre, il est plus réaliste :+A contrario, le système de support d'artillerie par IA est un (tout petit) peu plus long à mettre en œuvre car il faut que des mortiers et des servants soient posés ou spawnés. En outre, il est plus réaliste :
  
   * le mortier ne peut pas tirer plus vite que la cadence de tir de l'IA (réglage des azimuts, chargement des obus),   * le mortier ne peut pas tirer plus vite que la cadence de tir de l'IA (réglage des azimuts, chargement des obus),
Ligne 26: Ligne 26:
 ===== Comment ça fonctionne ===== ===== Comment ça fonctionne =====
  
-Vous placez le prefab ''%%GDC_ArtilleryFireSupport.et%%'' dans la scène à l'endroit où vous voulez centrer la zone d'impact. Il référence un mortier (ou son groupe IA) via le champ **AIGroup Name**. Quand le timer ou la condition de déclenchement est remplie, il envoie au servant une série d'ordres de tir (*fire orders*) à exécuter l'un après l'autre.+Vous placez le prefab ''%%GDC_ArtilleryFireSupport.et%%'' dans la scène à l'endroit où vous voulez centrer la zone d'impact. Il référence un mortier (ou son groupe IA) via le champ **AIGroup Name**. Quand le timer ou la condition de déclenchement est remplie, il envoie au servant une série d'ordres de tir (//fire orders//) à exécuter l'un après l'autre.
  
 //[image perdue]// //[image perdue]//
Ligne 33: Ligne 33:
  
   * un nombre d'obus à tirer,   * un nombre d'obus à tirer,
-  * une zone d'impact en forme de anneau centrée sur le prefab, définie par un rayon intérieur et un rayon extérieur en mètres (rayon intérieur à ''%%0%%'' pour un disque plein, sans zone morte au centre),+  * une zone d'impact en forme d'anneau centrée sur le prefab, définie par un rayon intérieur et un rayon extérieur en mètres (rayon intérieur à ''%%0%%'' pour un disque plein, sans zone morte au centre),
   * un délai avant l'ordre suivant.   * un délai avant l'ordre suivant.
  
Ligne 56: Ligne 56:
 ^Paramètre                              ^Valeur par défaut^Description                                                                                                                                                                   ^ ^Paramètre                              ^Valeur par défaut^Description                                                                                                                                                                   ^
 |**Shot Count** (''%%m_iShotCount%%'')  |1                |Nombre d'obus pour cet ordre. Mettre ''%%-1%%'' pour un tir infini (la mission ne passe pas à l'ordre suivant).                                                               | |**Shot Count** (''%%m_iShotCount%%'')  |1                |Nombre d'obus pour cet ordre. Mettre ''%%-1%%'' pour un tir infini (la mission ne passe pas à l'ordre suivant).                                                               |
-|**Min Radius** (''%%m_fMinRadius%%'')  |80 m             |Rayon intérieur de l'anneau d'impact. Aucun obus ne tombe plus près que cette distance du centre _sauf dispersion du mortier_. 0 = disque plein (pas de zone morte au centre).| +|**Min Radius** (''%%m_fMinRadius%%'')  |80 m             |Rayon intérieur de l'anneau d'impact. Aucun obus ne tombe plus près que cette distance du centre //sauf dispersion du mortier//. 0 = disque plein (pas de zone morte au centre).| 
-|**Max Radius** (''%%m_fMaxRadius%%'')  |90 m             |Rayon extérieur de l'anneau. Aucun obus ne tombe plus loin _sauf dispersion du mortier_.                                                                                      |+|**Max Radius** (''%%m_fMaxRadius%%'')  |90 m             |Rayon extérieur de l'anneau. Aucun obus ne tombe plus loin //sauf dispersion du mortier//.                                                                                      |
 |**Delay After** (''%%m_fDelayAfter%%'')|5 s              |Délai avant l'ordre suivant. Ignoré pour le dernier ordre de la séquence.                                                                                                     | |**Delay After** (''%%m_fDelayAfter%%'')|5 s              |Délai avant l'ordre suivant. Ignoré pour le dernier ordre de la séquence.                                                                                                     |
  
Ligne 90: Ligne 90:
 Renseignez **Condition Flag** avec le nom d'un flag TMF (ex. **GO_ARTY**). La mission se déclenche dès que ce flag passe à ''%%true%%''. Renseignez **Condition Flag** avec le nom d'un flag TMF (ex. **GO_ARTY**). La mission se déclenche dès que ce flag passe à ''%%true%%''.
  
-<note tip>Avec cette approche, vous pouvez pouvez poser plusieurs prefabs de tir dans la scène et les déclencher indépendamment les uns des autres via des flags différents. La seule limite est que les positions des prefabs GDC_ArtilleryFireSupport doivent être définies à l'avance dans la scène.</note>+<note tip>Avec cette approche, vous pouvez poser plusieurs prefabs de tir dans la scène et les déclencher indépendamment les uns des autres via des flags différents. La seule limite est que les positions des prefabs GDC_ArtilleryFireSupport doivent être définies à l'avance dans la scène.</note>
  
 ===== Cas 2 — La position sur laquelle la mission de tir est spawnée n'est pas connue à l'avance ===== ===== Cas 2 — La position sur laquelle la mission de tir est spawnée n'est pas connue à l'avance =====
Ligne 127: Ligne 127:
 Même procédure que pour le cas 2, mais cette fois, renseignez le champ **AIGroup Name** du prefab dérivé avec le nom donné au mortier dans le spawner (ex. ''%%mortier_dynamique%%''). Même procédure que pour le cas 2, mais cette fois, renseignez le champ **AIGroup Name** du prefab dérivé avec le nom donné au mortier dans le spawner (ex. ''%%mortier_dynamique%%'').
  
-Spawner ensuite la mission de tir comme à l'accoutumée, en utilisant ce prefab dérivé.+Spawnez ensuite la mission de tir comme à l'accoutumée, en utilisant ce prefab dérivé.
  
 <note important>L'ordre de spawn est critique : le servant doit être monté dans le mortier **avant** que ''%%GDC_ArtilleryFireSupport%%'' tente de résoudre le groupe IA. Utilisez des flags distincts ou un délai (**Spawn Timings**) pour garantir cet ordre — le champ **Initial Delay** du prefab de tir peut aussi absorber ce délai. Si vous spawnez un groupe avec le composant ''%%TILW_VehicleCrewComponent%%'', assurez-vous que la case **No Turret Dismount** est cochée pour ce groupe.</note> <note important>L'ordre de spawn est critique : le servant doit être monté dans le mortier **avant** que ''%%GDC_ArtilleryFireSupport%%'' tente de résoudre le groupe IA. Utilisez des flags distincts ou un délai (**Spawn Timings**) pour garantir cet ordre — le champ **Initial Delay** du prefab de tir peut aussi absorber ce délai. Si vous spawnez un groupe avec le composant ''%%TILW_VehicleCrewComponent%%'', assurez-vous que la case **No Turret Dismount** est cochée pour ce groupe.</note>
Ligne 134: Ligne 134:
  
 ^                                        ^Cas 1 — Tout en éditeur                ^Cas 2 — Mission spawnée dynamiquement          ^Cas 3 — Mortier et mission de tir spawnés dynamiquement                     ^ ^                                        ^Cas 1 — Tout en éditeur                ^Cas 2 — Mission spawnée dynamiquement          ^Cas 3 — Mortier et mission de tir spawnés dynamiquement                     ^
-|TFM requis                              |Non (timer) / Oui (flag)               |Oui                                            |Oui                                                                         |+|TMF requis                              |Non (timer) / Oui (flag)               |Oui                                            |Oui                                                                         |
 |Mortier posé comment                    |Éditeur                                |Éditeur                                        |Via un spawner (''%%m_setEntityNames%%'' fixe son nom)                      | |Mortier posé comment                    |Éditeur                                |Éditeur                                        |Via un spawner (''%%m_setEntityNames%%'' fixe son nom)                      |
 |GDC_ArtilleryFireSupport posé comment   |Éditeur                                |Via un prefab dérivé + spawner                 |Via un prefab dérivé + spawner                                              | |GDC_ArtilleryFireSupport posé comment   |Éditeur                                |Via un prefab dérivé + spawner                 |Via un prefab dérivé + spawner                                              |
Ligne 140: Ligne 140:
 |Position d'impact                       |Fixée en éditeur                       |Fixée au runtime (position du spawner)         |Fixée au runtime (position du spawner)                                      | |Position d'impact                       |Fixée en éditeur                       |Fixée au runtime (position du spawner)         |Fixée au runtime (position du spawner)                                      |
 |Plusieurs missions vers la même batterie|Possible (plusieurs prefabs en éditeur)|Facile (plusieurs spawners, même prefab dérivé)|Facile (plusieurs spawners de mission, déclenchés après le spawn du mortier)| |Plusieurs missions vers la même batterie|Possible (plusieurs prefabs en éditeur)|Facile (plusieurs spawners, même prefab dérivé)|Facile (plusieurs spawners de mission, déclenchés après le spawn du mortier)|
-|Déclenchement                           |Timer ou flag TFM                      |Au spawn (flag TFM)                            |Au spawn (flag TFM, après le spawn du mortier)                              |+|Déclenchement                           |Timer ou flag TMF                      |Au spawn (flag TMF)                            |Au spawn (flag TMF, après le spawn du mortier)                              |
 |Spawner nécessaire                      |Non                                    |Oui (un par mission de tir)                    |Oui (un pour le mortier + un par mission de tir)                            | |Spawner nécessaire                      |Non                                    |Oui (un par mission de tir)                    |Oui (un pour le mortier + un par mission de tir)                            |