Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

Repository files navigation

Panzerbrigade 21 Framework

Das Panzerbrigade 21 Framework ist eine gemeinsame technische Grundlage für Arma-3-Missionen und weitere PB21-Mods. Es stellt wiederverwendbare Einheiten, Editorgruppen, Konfigurations- und Hilfsfunktionen bereit und bündelt optionale Integrationen mit anderen Mods.

Der aktuelle Stand ist noch in Entwicklung. Diese README beschreibt den tatsächlich enthaltenen Funktionsumfang und wird bei neuen Addons oder sichtbaren Verhaltensänderungen erweitert.

Voraussetzungen

CBA_A3 und ACE3 werden vom Kern-Addon benötigt. ACE wird für die Selbstinteraktionen verwendet, CBA für Extended Event Handlers, Einstellungen und Netzwerkereignisse.

ACRE2 ist im aktuellen Framework keine technische Pflichtabhängigkeit. Missionen oder andere PB21-Mods können ACRE2 trotzdem separat voraussetzen.

Abhängigkeiten einzelner Addons

Addon Zusätzliche Voraussetzung Verhalten bei fehlender Voraussetzung
gm_selfactions Global Mobilization / GM-Charaktere und ACE Interaction Menu Das Addon wird übersprungen.
ef EF-AAV9 (EF_AAV9_C) Das Addon wird übersprungen.
it_acp_jca_mcrp ACP IT Vegetato und JCA MCRP Das Addon wird übersprungen.
shield Keine zusätzliche Mod-Abhängigkeit neben dem Framework-Kern Das Addon ist mit dem Framework-Kern nutzbar.

Enthaltene Addons

main – Kern, Fraktion und Editorinhalte

Das Kern-Addon stellt die Fraktion PB21F_BLU_F mit der Bezeichnung „PzBrig21 Framework“ bereit. Enthalten sind:

  • deutsche Bundeswehr-Einheiten für Infanterie, Führung, Sanität, Pioniere, Panzer- und Hubschrauberbesatzungen;
  • zusätzliche US-Army- und US-Marine-Einheiten;
  • Rollen- und Editorunterkategorien;
  • vorbereitete Gruppen für deutsche Infanterie, mechanisierte Kräfte und Panzerverbände;
  • die im Framework definierten Flaggen und gemeinsamen Editorressourcen.

Die Einheiten werden im Editor über die Fraktion „PzBrig21 Framework“ angeboten. Das Addon definiert keine vollständige Ausrüstungsliste für jede Mission.

common – gemeinsame Framework-Basis

common enthält gemeinsam verwendete Initialisierungs- und Funktionsbestandteile. Dazu gehören die CBA-Extended-Event-Handler sowie die gemeinsame Fahrzeug-Schild-Funktion, die vom shield-Addon verwendet wird. Es ist keine eigenständige Benutzerfunktion.

shield – Vehicle Shield und Building Shield

Das Shield-Addon stellt Schutzfunktionen und Eden-Editoroptionen bereit.

Vehicle Shield

Das Vehicle Shield begrenzt standardmäßig den Fahrzeugrumpfschaden bei 80 Prozent. Kritische Komponenten wie Motor, Treibstoffsystem, Rotoren, Geschütze oder Türme können weiterhin beschädigt oder deaktiviert werden. Eine vollständige Zerstörung durch normalen Schaden ist standardmäßig nicht freigeschaltet.

Das Shield wird über ein globales CBA-Netzwerkereignis einschließlich Join-in-Progress-Synchronisierung aktiviert. Es kann aktiviert werden:

  1. im Eden Editor über das Fahrzeugattribut „VehicleShield“;
  2. über das Zeus-/Eden-Modul „Vehicleshield hinzufügen“.

Die allgemeine Funktion besitzt optionale Parameter für Motor-, Treibstoff- und Rotorschutz, Motorschaden bei Rumpftreffern, Explosionsverhalten und zusätzliche Treffer.

Building Shield

Das Building Shield verhindert die Zerstörung der Gebäudestruktur. Trefferpunkte mit glass oder window bleiben separat behandelbar und werden nicht durch den Gebäudeschutz blockiert.

Im Eden Editor stehen zur Verfügung:

  • das Objektattribut „BuildingShield“;
  • das Objektattribut „Fenster entglasen“;
  • das Modul „Building Shield“ mit optionalem Variablennamen, Gebäudeschutz und Fensterentglasung.

Das Modul sucht ein geeignetes Terrainobjekt in der Nähe und übernimmt die Konfiguration beim Missionsstart. Der optionale Variablenname wird global in der Mission gesetzt.

Das interne Modul moduleBase ist keine zusätzliche Benutzerfunktion. Es ist eine gemeinsame, unsichtbare Basisklasse für die Shield-Module und übernimmt deren Initialisierung und Einordnung in die Modulgruppen.

gm_selfactions – konfigurierbare GM-Selbstinteraktionen

Für geeignete Global-Mobilization-Uniformen ergänzt dieses Addon einen ACE-Selbstinteraktionspunkt „PzBrig21“ mit:

  • Dienstgradauswahl;
  • Waffengattung beziehungsweise Waffenfarbe;
  • Kopfbedeckung;
  • Kopfbedeckung ab.

Die Aktionen sind nur verfügbar, wenn die aktuell getragene Uniform in der erlaubten Uniformliste steht. „Kopfbedeckung ab“ bleibt bei einer erlaubten Uniform immer verfügbar, auch wenn die konfigurierbare Kopfbedeckungsliste leer ist.

CBA-Einstellungen

Unter PB21 Framework > GM SelfActions stehen folgende Einstellungen zur Verfügung. Alle Standardwerte sind aktiviert:

Einstellung Wirkung
GM SelfActions aktiv Aktiviert oder deaktiviert den gesamten Interaktionsbereich.
Dienstgrade Blendet die Dienstgradauswahl ein oder aus.
Waffengattungen Blendet die Waffenfarbenauswahl ein oder aus.
Kopfbedeckungen Blendet die konfigurierten GM-Kopfbedeckungen ein oder aus.
Automatischer Dienstgrad Setzt beim Initialisieren den Dienstgrad anhand des Variablennamens.

Die CBA-Einstellungen steuern die sichtbaren Interaktionen. Uniformen, Kopfbedeckungen und uniformabhängige Rangfarben werden über PB21F_GM_SelfActions in der Mission konfiguriert.

Standard-Uniformen

Die Standardliste enthält aktuell:

gm_ge_army_uniform_crew_80_oli
gm_ge_army_uniform_soldier_80_oli
gm_ge_army_uniform_soldier_80_ols
gm_ge_army_uniform_pilot_oli
gm_ge_army_uniform_pilot_rolled_oli
gm_ge_army_uniform_pilot_sar
gm_ge_army_uniform_pilot_rolled_sar
gm_ge_uniform_soldier_90_flk
gm_ge_uniform_soldier_90_trp
gm_ge_uniform_soldier_rolled_90_flk
gm_ge_uniform_soldier_rolled_90_trp

Standard-Kopfbedeckungen

Die Standardauswahl umfasst Barett Jäger, Barett Grenadier, Barett Panzer, Barett Fernmelde, Feldmütze und Feldmütze Knitterfrei. „Feldmütze Knitterfrei“ ist die humorvolle Bezeichnung für die GM-Feldmütze M92.

Die Liste enthält Konfigurations-IDs. Eine ID wird nur angezeigt, wenn sie in headgearList[] eingetragen ist und die zugehörige Headgear-Klasse einen gültigen Gegenstand enthält.

Dienstgradfarben blk, wht und gld

Mannschaften, Unteroffiziere und Offiziere verwenden standardmäßig schwarze Abzeichen (blk). Brigadegeneral, Generalmajor und General verwenden standardmäßig goldene Abzeichen (gld).

Eine Uniform kann dies in UniformSettings überschreiben. Zulässige Werte sind:

  • blk – schwarz;
  • wht – weiß beziehungsweise silber;
  • gld – gold.

Die Auswahl von schwarzem oder weißem Dienstgrad richtet sich daher nach der Konfiguration der getragenen Uniform und nicht automatisch nach dem Dienstgrad. Ein missionsspezifischer Eintrag hat Vorrang vor der Frameworkvorgabe.

Automatischer Dienstgrad

Der erste Teil des Variablennamens wird als Rangkürzel verwendet. Als Trennzeichen werden - und _ unterstützt.

f-Alpha       // Feldwebel
of_Charlie    // Oberfeldwebel
otl-Bravo     // Oberstleutnant
unbekannt     // Fallback auf Schütze (s)

Bei einem unbekannten oder fehlenden Präfix wird s verwendet. Die automatische Zuweisung greift nur bei einer erlaubten GM-Uniform.

Missionskonfiguration

Ein Array in der Missionskonfiguration ersetzt die jeweilige Standardliste vollständig; die Listen werden nicht automatisch zusammengeführt.

class PB21F_GM_SelfActions
{
    uniforms[] = {
        "gm_ge_uniform_soldier_90_flk",
        "gm_ge_uniform_soldier_90_trp"
    };

    headgearList[] = {
        "Infantry",
        "FieldCapM92",
        "MissionHelmet"
    };

    class Headgear
    {
        class Infantry
        {
            displayName = "Barett Jäger (Mission)";
            item = "gm_ge_headgear_beret_grn_infantry";
            icon = "\\gm\\gm_characters\\gm_ge_characters\\data\\ui\\picture_gm_ge_headgear_beret_grn_infantry_ca";
            branch = "jgtrp";
        };

        class MissionHelmet
        {
            displayName = "Missionshelm";
            item = "MEIN_HELM_CLASSNAME";
            icon = "MEIN_ICON_PFAD";
            branch = "";
        };
    };

    class UniformSettings
    {
        class gm_ge_uniform_soldier_90_flk
        {
            rankColor = "wht";
        };
    };
};

headgearList[] = {}; lässt nur „Kopfbedeckung ab“ sichtbar. Ein leerer uniforms[]-Eintrag deaktiviert die GM-Selbstaktionen für alle Uniformen.

Bei einer bestehenden Headgear-ID können Anzeigename, Gegenstand, Icon und Waffengattung überschrieben werden. Nicht gesetzte Eigenschaften fallen auf die Frameworkdefinition zurück. branch setzt nach dem Anlegen der Kopfbedeckung automatisch die passende Waffenfarbe; branch = "" setzt keine Farbe.

radio_backpacks – Funkrucksack-Anpassung

Das Addon passt B_RadioBag_01_base_F an:

  • maximale Ladung: 120;
  • Masse: 88.4.

Da die Anpassung an der Basisklasse erfolgt, kann sie mehrere darauf basierende Funkrucksäcke betreffen.

ef – EF-AAV9-Anpassung

Wenn EF_AAV9_C geladen ist, erhöht das Framework für EF_AAV9_Base die maximale Ladung auf 18000.

it_acp_jca_mcrp – IT-Vegetato-JCA-Tragesysteme

Dieses optionale Addon ergänzt sechs sichtbare JCA-KBT-Tragesystemvarianten mit IT-Vegetato-Textur:

  • Compact;
  • CQB;
  • Crew;
  • Holster;
  • Recon;
  • Tactical.

Die Varianten benötigen die IT-Vegetato- und JCA-MCRP-Addons.

Addon- und Dateistruktur

Verzeichnis Zweck
addons/ Aktive Addons, die im normalen HEMTT-Build als PBOs gebaut werden.
optionals/ Optionale oder gesondert zu betrachtende Pakete.
extras/ Vorbereitungen, Experimente oder noch nicht standardmäßig gebaute Bestandteile.
.hemtt/ HEMTT-Projekt- und Buildkonfiguration.
mod.cpp Arma-3-Modmetadaten für den Launcher.
README.md Diese Anwender- und Entwicklerdokumentation.

Aktive Addonstruktur:

addons/
├── common
├── ef
├── gm_selfactions
├── it_acp_jca_mcrp
├── main
├── radio_backpacks
└── shield

Build und Prüfung

Das Projekt verwendet HEMTT:

hemtt check
hemtt build

Der Standardbuild baut die aktiven Addons unter addons/ als PBOs. Optionale Abhängigkeiten werden bei den betreffenden Addons mit skipWhenMissingDependencies = 1 abgefangen, damit der Framework-Kern weiter geladen werden kann.

Verwendung in Missionen

  1. Framework, CBA_A3 und ACE3 laden.
  2. Für GM-Selbstaktionen zusätzlich Global Mobilization verwenden.
  3. Die gewünschten Einheiten im Eden Editor aus der Fraktion „PzBrig21 Framework“ auswählen.
  4. Shield-Attribute oder Shield-Module nur an den gewünschten Objekten setzen.
  5. Bei Bedarf PB21F_GM_SelfActions in der Missionskonfiguration anlegen.
  6. Schaden, Fenster, Fahrzeugkomponenten und Uniformauswahl im Multiplayer testen.

Insbesondere Vehicle Shield und Building Shield sollten auf dem Server sowie für Join-in-Progress-Spieler geprüft werden.

Entwicklung und zukünftige Addons

Neue Funktionen sollen möglichst als eigenes Addon unter addons// umgesetzt werden. So bleiben optionale Abhängigkeiten und Änderungen vom Framework-Kern getrennt.

Für jedes neue Addon sollen dokumentiert werden:

  • eigener CfgPatches-Eintrag und eindeutige Addonklasse;
  • requiredAddons[] und optionale Abhängigkeiten;
  • skipWhenMissingDependencies = 1, wenn es optional ist;
  • Namespace, CBA-XEH- und Funktionsinitialisierung;
  • sichtbare Funktionen, Editorattribute, Module und CBA-Settings;
  • Missionskonfiguration einschließlich Standardwerten und Überschreibungsregeln;
  • Multiplayer- und Join-in-Progress-Verhalten;
  • bekannte Einschränkungen und Testhinweise.

Bei Listen ist ausdrücklich zu dokumentieren, ob sie ersetzt oder erweitert werden. Verändert ein Update ein bestehendes Verhalten, soll zusätzlich ein kurzer Eintrag in einer Änderungsübersicht ergänzt werden, damit Missionsbauer erkennen können, ob ihre Mission angepasst werden muss.

Dokumentationsschema für neue Addons

### addon_name – Anzeigename

Kurzbeschreibung des Zwecks.

- sichtbare Funktionen;
- Editorobjekte oder Module;
- CBA-Einstellungen;
- Missionskonfiguration;
- technische und optionale Abhängigkeiten;
- Multiplayer- und JIP-Verhalten;
- bekannte Einschränkungen.

Bekannte Grenzen

  • gm_selfactions arbeitet mit exakten Klassen- und Uniformnamen.
  • Eine Missionsliste für uniforms[] oder headgearList[] ersetzt die Framework-Standardliste vollständig.
  • Unbekannte Rangpräfixe fallen auf s zurück.
  • Der Dienstgrad wird auf dem vorgesehenen GM-Uniformmaterialslot angewendet; Uniformen mit abweichender Materialstruktur können eine eigene Anpassung benötigen.
  • Das Building Shield schützt die Gebäudestruktur, behandelt Fenster aber absichtlich separat.
  • Das Vehicle Shield verhindert standardmäßig die vollständige Zerstörung durch normalen Schaden, schützt aber nicht automatisch jede kritische Fahrzeugkomponente vor Deaktivierung.
  • Addons mit externen Abhängigkeiten sind nur aktiv, wenn die zugehörigen Klassen beim Start vorhanden sind.

Lizenz und Projektinformationen

Die Lizenz ist in LICENSE hinterlegt. Projektseite, Fehlerberichte und weitere Informationen sind in den Repository-Metadaten und im Arma-3-Modeintrag verlinkt.

Fehlerberichte sollten möglichst Framework-Version, geladene Abhängigkeiten, eine reproduzierbare Missionskonfiguration und den relevanten RPT-Ausschnitt enthalten.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages