Ankündigung

Einklappen
Keine Ankündigung bisher.

Erstellen einer TiberianDawn Mod mit Visual Studio 2019

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Erstellen einer TiberianDawn Mod mit Visual Studio 2019

    Kleines Tutorial, wie man Mods für Tiberiumkonflikt erstellen kann.

    1. Code runterladen https://github.com/electronicarts/CnC_Remastered_Collection

    Optional (für Fortgeschrittene) gleich das Repository forken (Button oben rechts in Github) und ein eigenes Repository erstellen. So können spätere offizielle patches mit "git pull" schneller reingezogen werden und andere Modder an dem Mod Code mitarbeiten. In der Windows Konsole mit "git clone https://github.com/MEINGITHUBACCOUNT...Collection.git" eine lokale Kopie erstellen und fortfahren mit 2. (Falls git nicht installiert ist https://git-scm.com/)

    2. Visual Studio Community Edition & C++ Desktop/Spiele Entwicklung Package installieren
    https://visualstudio.microsoft.com/de/vs/

    3. Windows 8.1 SDK installieren
    https://go.microsoft.com/fwlink/p/?LinkId=323507

    4. Die Projektmappe CnCRemastered.sln in Visual Studio 2019 öffnen und über "Projekt" -> "Projekt neu ausrichten" wählen damit das Projekt umgeschrieben wird auf version 2019

    5. In den Projekt Optionen WINDOWS_IGNORE_PACKING_MISMATCH eintragen unter
    Project Settings > C/C++ > Code Generation > Struct Member Alignment

    6. In TiberianDawn.rc den include "afxres.h" durch "windows.h" ersetzen

    7. Änderungen an Einheiten in UDATA.cpp machen und Projektmappe builden(erstellen)
    Als ein gutes Beispiel dient der NUKETANK den man findet wenn man im code nach PETROGLYPH_EXAMPLE_MOD . sucht.

    8. Kompilierte DLL TiberianDawn.dll aus Verzeichnis "bin/Win32" in Mods/Tiberian_Dawn/MeineMod verzeichnis kopieren

    9. JSON Konfigurationsdatei hinzufügen
    { “publishedfileid”: “”, “contentfolder”: “”, “previewfile”: “”, “visibility”: 2, “title”: “Meine Mod", “description”: “Description goes here”, “metadata”: “”, “tags”: [] }

    10. Mod im Spiel unter Optionen auswählen und testen.

  • #2
    AW: Erstellen einer TiberianDawn Mod mit Visual Studio 2019

    Hier nochmal von Bluescreen aus dem UF eine genauere Anleitung:

    1. Code runterladen https://github.com/electronicarts/Cn...red_Collection

    Optional (für Fortgeschrittene) gleich das Repository forken (Button oben rechts in Github) und ein eigenes Repository erstellen. So können spätere offizielle patches mit "git pull" schneller reingezogen werden und andere Modder können an dem Mod Code mitarbeiten. In der Windows Konsole mit "git clone https://github.com/MEINGITHUBACCOUNT...Collection.git" eine lokale Kopie erstellen und fortfahren mit 2. (Falls git nicht installiert ist https://git-scm.com/)

    2. Visual Studio Community Edition & C++ Desktop/Spiele Entwicklung Package installieren: https://visualstudio.microsoft.com/de/vs/

    3. Windows 8.1 SDK installieren: https://go.microsoft.com/fwlink/p/?LinkId=323507

    4. Die Projektmappe CnCRemastered.sln in Visual Studio 2019 öffnen und über "Projekt" -> "Projekt neu ausrichten" wählen damit das Projekt umgeschrieben wird auf version 2019

    5. In den Projekt Optionen WINDOWS_IGNORE_PACKING_MISMATCH eintragen unter

    Project Settings > C/C++ > Code Generation > Struct Member Alignment

    6. In TiberianDawn.rc den include "afxres.h" durch "windows.h" ersetzen

    7. Gewünschte Änderungen an Einheiten machen und Projektmappe builden(erstellen)

    Als ein gutes Beispiel dient der NUKETANK den man findet wenn man im code nach PETROGLYPH_EXAMPLE_MOD sucht.
    Die Werte sind auch ganz gut dokumentiert. Am interessantesten für die meisten sind wohl NAME, AMMO, STRENGTH, SIGHTRANGE, COST, SPEED, ARMOR

    Die Werte sind in folgenden Dateien konfigurierbar
    Infantrie -> IDATA.cpp
    Fahrzeuge -> UDATA.cpp
    Flugzeuge -> AADATA.cpp
    Gebäude -> BDATA.cpp
    Waffengattungen -> BBDATA.cpp
    Mauern, Overlays -> ODATA.cpp
    Animationen -> ADATA.cpp

    Die definifierten Werte der Konstanten wie z.B. MPH_KINDA_SLOW findet man im DEFINES.h

    WICHTIG! Die Reihenfolge der Werte des jeweiligen Constructors müssen gleich bleiben!

    C++:


    #ifdef PETROGLYPH_EXAMPLE_MOD

    // Nuke tank
    static UnitTypeClass const UnitNukeTank(
    UNIT_NUKE_TANK,
    TXT_HTANK, // NAME: Text name of this unit type.
    "NTNK", // NAME: Text name of this unit type.
    ANIM_ART_EXP1, // EXPLOSION: Type of explosion when destroyed.
    7, // Build level.
    STRUCTF_TEMPLE, // Building prerequisite.
    true, // Can this be a goodie surprise from a crate?
    true, // Is a leader type?
    false, // Only has eight facings?
    false, // Always use the given name for the vehicle?
    false, // Is this a typical transport vehicle?
    false, // Can it be crushed by a heavy vehicle?
    true, // Can this unit squash infantry?
    false, // Does this unit harvest Tiberium?
    false, // Is invisible to radar?
    true, // Is selectable by player?
    true, // Can it be a target for attack or move?
    false, // Is it insignificant (won't be announced)?
    false, // Is it immune to normal combat damage?
    true, // Is it equipped with a combat turret?
    false, // Fires multiple shots in quick succession?
    true, // Can it be repaired in a repair facility?
    true, // Can the player construct or order this unit?
    true, // Is there a crew inside?
    false, // Does it have a rotating radar dish?
    false, // Is there an associated firing animation?
    false, // Must the turret be in a locked down position while moving?
    true, // Does it lay tracks while moving?
    true, // Is this a gigundo-rotund-enormous unit?
    false, // Is the unit's art as "chunky" cardinal facing only?
    false, // Is the unit capable of cloaking?
    false, // Does the unit have a constant animation?
    -1, // AMMO: Number of shots it has (default).
    600, // STRENGTH: Strength (in damage points).
    6, // SIGHTRANGE: Range of sighting.
    1500, // COST: Cost to build (Credits).
    10, // SCENARIO: Starting availability scenario.
    80,80, // RISK/RWRD: Risk/reward rating values.
    HOUSEF_MULTI1|
    HOUSEF_MULTI2|
    HOUSEF_MULTI3|
    HOUSEF_MULTI4|
    HOUSEF_MULTI5|
    HOUSEF_MULTI6|
    HOUSEF_JP|
    HOUSEF_BAD, // OWNABLE: Ownable by house (bit field).
    WEAPON_NUKE_LOB,WEAPON_NONE,
    ARMOR_STEEL, // ARMOR: Armor type
    SPEED_TRACK, // MOVE: Locomotion type.
    MPH_KINDA_SLOW, // SPEED: Miles per hour.
    3, // ROT: Rate of turn (degrees per tick).
    0, // Turret center offset along body centerline.
    MISSION_HUNT // ORDERS: Default order to give new unit.
    );

    #endif PETROGLYPH_EXAMPLE_MOD
    8. Kompilierte DLL TiberianDawn.dll aus Verzeichnis "bin/Win32" in CnCRemastered/Mods/Tiberian_Dawn/MeineMod/Data verzeichnis kopieren

    9. JSON Konfigurationsdatei CnCRemastered/Mods/Tiberian_Dawn/MeineMod/ccmod.json hinzufügen

    JSON:

    {
    "name": "TestMod",
    "description": "Test",
    "author": "Tester",
    "load_order": 1,
    "version_low": 0,
    "version_high": 1,
    "game_type": "TD"
    }
    10. Mod im Spiel unter Optionen auswählen und testen.

    Kommentar

    Lädt...
    X