Alliance Francophone Sudden Strike

Modding Fusion · UNITS / AVIA / LAND/DOM / ANIMAT / EXPLOSIONS

English

Réglages du moteur (misc\engine)

lang/MISC/ENGINE, lu par le jeu comme misc\engine, règle les mods de gameplay du moteur AF (HS2Engine et la Game_Dll.dll de CustomGameDLL) : couverture, survie des équipages, marche arrière, mouvement des véhicules, parachutages, infirmiers, dégâts en solo, ricochets, aviateurs abattus. Le jeu lit ce fichier une fois, au démarrage, après misc\misc.

Changer une valeur ne demande pas de nouvelle DLL. Modifiez le fichier, puis recompilez lang.aps.

Syntaxe

reverse_range_cells 12
cover_share infantry dense 30 75
cover_prone 30 60
  • Une ligne clé valeur par réglage. Un tiret en première position fait de la ligne un commentaire.
  • Clé absente : la valeur AF s’applique. Sans le fichier, le jeu se joue comme avant.
  • Valeur hors plage : le moteur la ramène à la limite la plus proche.
  • Paire incohérente : les deux clés reprennent leur valeur AF. Les paires sont cover_trees_moderate ≤ cover_trees_dense, cover_small_radius ≤ cover_massive_radius, cover_reach_cells ≤ cover_forest_reach_cells, crew_shot_wait_first_percent ≤ crew_shot_wait_max_percent, ricochet_bounce_near ≤ ricochet_bounce_far et ricochet_bounce_min_degrees ≤ ricochet_bounce_max_degrees. paradrop_scatter doit être une puissance de 2.
  • Le journal de HS2Engine note chaque valeur changée et chaque correction. La DLL de CustomGameDLL n’écrit pas de journal.
  • Multijoueur : tous les joueurs d’une partie doivent avoir le même fichier, comme pour les fiches d’unités.

Le fichier est en ASCII avec des fins de ligne CRLF. Avant de committer, lancez python3 tests/check_tuning_data.py depuis HS2Engine : il refuse les clés inconnues ou en double, les valeurs hors plage et les lignes mal formées.

Table de couverture

cover_share <unité> <zone> <dégâts %> <silhouette %> règle une case de la table, chaque % de 0 à 100. cover_prone <dégâts %> <silhouette %> s’ajoute pour un fantassin couché, n’importe où. Les zones ne s’additionnent pas : la meilleure réduction de dégâts et la meilleure réduction de silhouette comptent.

Unitéisolatedmoderatedensenarrowmassivehorizontalbuilding
infantry10 2020 5030 750 2020 4010 3020 50
weapon10 1010 3015 500 010 1515 3020 20
vehicle0 00 100 200 00 100 00 10

Zones : végétation isolée, forêt moyenne, forêt dense, décor étroit, décor massif ou colline, décor couché et cratères, maison. Unités : fantassins, armes fixes (canons, mitrailleuses), véhicules. Valeur AF de cover_prone : 30 60.

Les clés

Un tour dure 40 ms à la vitesse habituelle. Une case fait 32 px. « stock » donne la valeur du jeu d’origine quand le réglage en remplace une.

Couverture (HS2_MOD_COVER)

CléRôlePlageValeur AF
cover_trees_moderateForêt : arbres intacts sur la case de l’unité et les 8 voisines. Forêt moyenne à partir de ce nombre (1 ou 2 : végétation isolée). Au plus cover_trees_dense.1..93
cover_trees_denseForêt dense à partir de ce nombre d’arbres.1..98
cover_small_radiusDécor debout : rayon de collision (px) sous lequel il ne couvre pas. Au plus cover_massive_radius.0..2558
cover_massive_radiusRayon (px) sous lequel un décor debout est étroit, au-dessus massif.0..25516
cover_massive_widthLargeur mineure (px) de l’empreinte bloquée sous laquelle un décor est étroit.16..22432
cover_reachDistance (px) de l’unité à un décor (debout, couché, falaise) qui la couvre.0..3232
cover_wall_reachDistance (px) à un quart d’empreinte bloquée d’une maison qui couvre.0..3116
cover_vehicle_reachDistance (px) au-delà du rayon d’un véhicule (ou d’une épave) qui couvre.0..3216
cover_reach_cellsMise à couvert : cases où chercher toute couverture (stock 3). Au plus cover_forest_reach_cells.1..83
cover_forest_reach_cellsMise à couvert : cases où chercher une forêt moyenne ou dense.1..85
cover_enough_percentMise à couvert : % de silhouette réduite (fantassin debout) dès lequel toute couverture se vaut et la plus proche gagne (100 : toujours la meilleure).1..10050
cover_danger_reachMise à couvert : distance (px) à un danger (citerne, munitions…) sans destination.0..16064
cover_burst_shotsUn effet est un danger s’il crée au moins ce nombre de tirs qui blessent.1..642
cover_fragile_armorUne maison est un danger jusqu’à cette armure EXPLOSIVE.0..2552
cover_score_per_milleProtection affichée (P) : (dégâts + silhouette réduits, en %) x cette valeur / 100, plafond 1000.0..1000709
cover_cursor_strongCurseur de déplacement : bouclier plein à partir de cet ancien P sur 100.1..10049

Équipages des véhicules détruits (HS2_MOD_CREW)

CléRôlePlageValeur AF
crew_novice_percentChance (%) qu’un membre d’équipage sorte, blessé, à l’expérience 0.0..10025
crew_veteran_percentChance (%) à l’expérience maximale ; linéaire entre les deux.0..10030
crew_wound_percentBlessure la plus forte (% de la santé du type), tirée uniformément depuis 0.0..10090

Passagers des véhicules détruits (HS2_MOD_PASSENGERS)

CléRôlePlageValeur AF
passenger_novice_percentChance (%) qu’un passager sorte, blessé comme un équipage, à l’expérience 0.0..10025
passenger_veteran_percentChance (%) à l’expérience maximale ; linéaire entre les deux.0..10030

Marche arrière (HS2_MOD_REVERSE_MOVE)

CléRôlePlageValeur AF
reverse_range_cellsDistance (cases) de la destination la plus lointaine en marche arrière (stock 4).1..12612
reverse_angleMarche arrière quand le pas suivant s’écarte plus de la caisse (1/32 de tour ; stock au hasard 8..15 ; 16 : jamais).0..1611

Canons poussés (HS2_MOD_GUN_REVERSE)

CléRôlePlageValeur AF
gun_push_percentVitesse (%) d’un canon poussé canon devant (affût devant : 100) : canons, DCA, obusiers, roquettes.10..10070
gun_push_light_percentIdem pour les mitrailleuses (hmg) et les mortiers (boxer, hmortar).10..100100

Mouvement des véhicules (HS2_MOD_VEHICLE_MOTION)

CléRôlePlageValeur AF
vehicle_start_percentVitesse (%) au départ, après un arrêt ou un pivot (stock 100 : pas de rampe).10..10025
vehicle_accel_turnsTours pour passer de la vitesse de départ à la pleine vitesse.1..2506
vehicle_brake_turnsTours pour revenir de la pleine vitesse à la vitesse de départ au freinage.1..2502
vehicle_brake_pxDistance (px) avant la fin du chemin où le freinage commence (0 : pas de freinage).0..648
vehicle_roll_binsUn virage plus petit (1/32 de tour) se fait en roulant, un plus grand sur place (stock 0).0..82
vehicle_turn_percent_1Vitesse (%) à 1/32 de tour du cap.10..10080
vehicle_turn_percent_2Vitesse (%) à 2/32 de tour ou plus (jusqu’à vehicle_roll_bins).10..10060

Parachutages (HS2_MOD_PARADROP_SPREAD)

CléRôlePlageValeur AF
paradrop_scatterDispersion (px) sur chaque axe autour de l’avion (stock 32). Une puissance de 2.2..12864
paradrop_extra_ticksTops ajoutés au reloadtime entre deux sauts réussis.0..253

Équipages des chars (HS2_MOD_CREW_CYCLE)

Chars : tank, tank2, samo, apc, mzenit.

CléRôlePlageValeur AF
crew_exit_turnsTours entre deux occupants qui quittent un char (stock 0 ; 0 : arrêt).0..2500
crew_attack_crewÉquipage qu’il faut à un char pour tirer en roulant, ouvrir la trappe ou prendre les jumelles, quel que soit l’attackcrew de la fiche. Moins : tir à l’arrêt seulement (1 : arrêt).1..102
crew_switch_turnsTours d’un équipage réduit pour passer du poste de pilote au canon, et inversement (stock 0).0..25050
crew_missing_percentTemps de rechargement et de recherche de cible : % ajouté par membre manquant (stock 0).0..10025
crew_max_percentLe plus que cela atteint, en % des temps d’un équipage complet.100..1000200
crew_lone_percentTemps d’un membre seul, en % de ceux d’un équipage complet.100..1000200
crew_shot_wait_first_percentAttente de la tourelle après un tir du canon (gunshotwait), % de la fiche, avec un membre manquant.100..1000400
crew_shot_wait_step_percent% ajouté par membre manquant en plus.0..1000200
crew_shot_wait_max_percentLe plus que cela atteint (l’attente s’arrête à 254 tours). Au moins crew_shot_wait_first_percent.100..25001000

Infirmiers (HS2_MOD_MEDIC_PACE)

CléRôlePlageValeur AF
medic_container_factorFois moins de soins d’un infirmier dans une maison ou un véhicule (stock 1).1..643

Dégâts en solo (HS2_MOD_SOLO_DAMAGE)

Dégâts (% après armure) que prennent les unités du joueur en solo, par niveau. Les dégâts infligés restent ceux du multijoueur.

CléRôlePlageValeur AF
solo_taken_0TRÈS FACILE (stock 50, équipages 25, et dégâts infligés x2 avant et après armure).0..40050
solo_taken_1FACILE (stock comme TRÈS FACILE).0..40075
solo_taken_2MOYEN, la formule du multijoueur (stock 100).0..400100
solo_taken_3NORMAL (stock 200, équipages environ 400).0..400200

Ricochets (HS2_MOD_RICOCHET)

Les chances et la formule de calibre restent dans misc\misc (shot_ricochet, shot_calibre).

CléRôlePlageValeur AF
ricochet_bounce_nearVol le plus court (px) après le rebond. Au plus ricochet_bounce_far.32..1024160
ricochet_bounce_farVol le plus long (px) après le rebond.32..1024640
ricochet_bounce_min_degreesDéviation (degrés) depuis la ligne d’arrivée, à gauche ou à droite. Au plus ricochet_bounce_max_degrees.0..9015
ricochet_bounce_max_degreesDéviation la plus grande (degrés).0..9045
ricochet_bounce_speed_percentVitesse (%) de l’obus après le rebond.10..20085

Équipages des avions abattus (HS2_MOD_AIRCREW)

CléRôlePlageValeur AF
aircrew_novice_percentChance (%) qu’un membre d’équipage saute en parachute, blessé, à l’expérience 0.0..10020
aircrew_veteran_percentChance (%) à l’expérience maximale ; linéaire entre les deux.0..10040
aircrew_corner_rangeTous les 64 tours, un aviateur posé avec un ennemi à cette distance (px) et sans ami peut se rendre.0..320192
aircrew_surrender_brave_percentChance (%) de se rendre au moral maximal.0..10010
aircrew_surrender_broken_percentChance (%) au moral le plus bas ; linéaire entre les deux.0..10090