PDA

Vollständige Version anzeigen : [Tutorial] SDK und Einheiten verändern


Nimphelos
15-10-2007, 18:16
Ich habs selber heute geschafft, mit dem SDK klarzukommen, da EA sehr unverständlich ist. Da hab ich mich dazu entschlossen, ein Tutorial zu schreiben.

Auf geht’s!

Am Anfang braucht ihr das SDK 2.0, das findet ihr hier: SDK 2.0 (http://www.commandandconquer.com/community/mods/default.aspx)

Ihr installiert das einfach in euren TW Ordner.

Damit das SDK auch geht, braucht ihr 4 weitere Dateien. Die sind Wichtig!

.NET Framework v2.0 (http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5&displaylang=en)
Visual C++ 2005 SP1 (http://www.microsoft.com/downloads/details.aspx?FamilyID=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en)
ANTLR (http://www.antlr2.org/download/antlr-2.7.7.msi)
Mvp.Xml (http://www.codeplex.com/MVPXML/Release/ProjectReleases.aspx?ReleaseId=931)

.NET Framework v2.0 und Visual C++ 2005 SP1 müsst ihr einfach nur installieren.

antlr.runtime.dll und antlr.astframe.dll und Mvp.Xml.dll müsst ihr in den L:/Programme/Electronic Arts/Command & Conquer 3/MOD SDK/Tools/ kopieren!

(L: für Laufwerk)

So wenn das alles geschehen ist, versuchen wir nun die SampleMod zu Kompilieren, um zu testen ob es klappt.
Dazu geht ihr auf Start -> Alle Programme (Programme) -> Zuberhör -> Eingabeaufforderung.

Dann gebt ihr erst euer Laufwerk ein, auf dem TW installiert ist. C: D: E: usw.
Dann müsst ihr (zumindest hab ich das so) weitermachen.
cd Programme
cd Electronic Arts
cd „Command & Conquer 3“ (wichtig sind die „“, weil das „&“ sonst als Teilbefehl gewertet wird.)
cd MOD SDK

Dann gebt ihr nur noch "BuildMod EuerMod" ein (In dem fall SampleMod) und wartet ein Moment.

Sobald es fertig ist wird in Eigene Dateien/Command & Conquer 3 Tiberium Wars/mods der Ordner „SampleMod“ erscheinen, falls die datei mehr als 5kb hat habt ihr alles richtig gemacht. :)

Dann müsst ihr noch im Ordner eine "irgendwas.skudef" erstellen. Indem ihr das reinschreibt.

mod-game 1.8
add-big modname.big



Um das Spiel zu starten must ihr die "Command & Conquer 3 Tiberium Wars Zentrale" öffen und dann auf Spiele-Browser gehen. Dann auf Mods und dann eure Mod auswählen und starten.

Eigene Anfangs-Mod erstellen (Einfach: Einfache Einheitenänderung)

Als erstes müsst ihr unter L:/Programme/Electronic Arts/Command & Conquer 3/MOD SDK/Mods/ , einen Ordner erstellen. Wir nehmen mal in unserem Falle "Blub". Darin den Ordner: "data". Da erstellt ihr erstmal die Mod.xml

In der kommt das Rein:

<?xml version="1.0" encoding="UTF-8"?>
<AssetDeclaration xmlns="uri:ea.com:eala:asset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Tags></Tags>
<Includes>
<Include type="reference" source="DATA:static.xml"/>
<Include type="reference" source="DATA:global.xml"/>


<Include type="all" source="DATA:Blub/Data/Tiberium/TiberiumCrystal.xml"/>
<Include type="all" source="DATA:Blub/Data/Tiberium/TiberiumCrystalBlue.xml"/>
<Include type="all" source="DATA:Blub/Data/GDI/Units/GDIPredator.xml"/>
<Include type="all" source="DATA:Blub/Data/Armor.xml"/>
<Include type="all" source="DATA:Blub/Data/Weapon.xml"/>
<Include type="all" source="DATA:Blub/Data/Locomotor.xml"/>



</Includes>

</AssetDeclaration>



Das nur vom Aufbau her, wie es in der Beispielmod ist.

Diese Datei sagt dem Compiler, was er machen soll. Die ist für jede Mod wichtig, da muss jede veränderte Datei erwähnt werden muss. Als Beispiel werden wir den Predator stärker, schneller machen und ihn mehr Leben geben und wir geben ihm ein MG. Dazu suchen wir uns unter dem Ordner L:/Programme/Electronic Arts/Command & Conquer 3/MOD SDK/CnC3Xml/GlobalData die benötigten Dateien. Die heißt: "Weapon.xml".
Locomotor.xml und Armor.xml sind auch in der angehängten Datei drin. Probiert einfach ein wenig aus. Die Begriffe solltet ihr verstehen. Englisch ist das A und O beim Modden. Die Weapon.xml kommt in unserem data Ordner, wo auch die Mod.xml drin ist.
Jetzt fehlt nur noch die Datei für den Predator, die findet ihr unter L:/Programme/Electronic Arts/Command & Conquer 3/MOD SDK/CnC3Xml/GDI/Units/GDIPredator.xml
Die kopiert ihr unter eurem data Ordner. Macht am besten zur Übersicht den Ordner "GDI" und darunter den Ordner "Units", da kopiert ihr die GDIPredator.xml rein.

Alle xml´s, die ihr kopiert, müssen auf "Nicht Schreibgeschützt" gestellt werden!

Wir öffnen die "GDIPredator.xml" und ändern ein paar Daten.

Die Begriffe könnt ihr auch im Editor suchen, das wird auch empfolen, da die meisten Dateien sehr sehr lang sind.

Wir ändern z.B.:

BuildCost="1100"
BuildTime="11"


<LocomotorSet
Locomotor="GDIPredatorTankLocomotor"
Condition="NORMAL"
Speed="60.0" />


<ActiveBody
id="ModuleTag_Body"
MaxHealth="3400" />


In:

BuildCost="500"
BuildTime="5"


<LocomotorSet
Locomotor="GDIPredatorTankLocomotor"
Condition="NORMAL"
Speed="100.0" />


<ActiveBody
id="ModuleTag_Body"
MaxHealth="5000" />


Somit kostet er weniger, wird schneller gebaut und ist schneller.

Dann öffnen wir die Weapon.xml und ändern da etwas.

<Weapon
Ordering="PRIMARY_WEAPON"
Template="GDIPredatorTankCannon" />
<Weapon
Ordering="PRIMARY_WEAPON"
Template="GDIPredatorTankRailgun"
ObjectStatus="WEAPON_UPGRADED_01" />

In:

<Weapon
Ordering="PRIMARY_WEAPON"
Template="GDIPredatorTankCannon" />
<Weapon
Ordering="PRIMARY_WEAPON"
Template="GDIPredatorTankRailgun"
ObjectStatus="WEAPON_UPGRADED_01" />
<Weapon
Ordering="PRIMARY_WEAPON"
Template="GDIAPCAutoCannon" />


Da hab ich einfach die MG vom BMT genommen.

Wir stärken nun die Predator Kanone.

Dazu öffnen wir die Weapon.xml.

Wir ändern:
<WeaponTemplate
id="GDIPredatorTankCannon"
Name="GDIPredatorTankCannon"
AttackRange="300.0"
MinTargetPitch="-15d"
MaxTargetPitch="15d"
WeaponSpeed="1000"
WeaponRecoil="5d"
RadiusDamageAffects="ALLIES ENEMIES NEUTRALS"
ShotsPerBarrel="1"
ClipSize="1"
ReAcquireDetailType="POST_FIRE"
ProjectileCollidesWith="ALLIES ENEMIES NEUTRAL STRUCTURES WALLS"
FireFX="FX_PredTankGun"
FireVeteranFX="FX_PredTankGunHeroic"
CanFireWhileMoving="true" >

<FiringDuration
MinSeconds="0.3s"
MaxSeconds="0.3s" />

<ClipReloadTime
MinSeconds="1.9s"
MaxSeconds="2.1s" />


<DamageNugget
Damage="400.0"
DelayTimeSeconds="0.0s"
DamageType="CANNON"
DamageFXType="GDI_CANNON"
DeathType="NORMAL" />



In:

<WeaponTemplate
id="GDIPredatorTankCannon"
Name="GDIPredatorTankCannon"
AttackRange="400.0"
MinTargetPitch="-15d"
MaxTargetPitch="15d"
WeaponSpeed="2500"
WeaponRecoil="5d"
RadiusDamageAffects="ALLIES ENEMIES NEUTRALS"
ShotsPerBarrel="1"
ClipSize="1"
ReAcquireDetailType="POST_FIRE"
ProjectileCollidesWith="ALLIES ENEMIES NEUTRAL STRUCTURES WALLS"
FireFX="FX_PredTankGun"
FireVeteranFX="FX_PredTankGunHeroic"
CanFireWhileMoving="true" >

<FiringDuration
MinSeconds="0.3s"
MaxSeconds="0.3s" />

<ClipReloadTime
MinSeconds="1s"
MaxSeconds="1s" />


<DamageNugget
Damage="800.0"
DelayTimeSeconds="0.0s"
DamageType="CANNON"
DamageFXType="GDI_CANNON"
DeathType="NORMAL" />



Dadurch schiesst die Waffe schneller,weiter und stärker.

Wie man den Tiberium-Wert verrändert.

Dazu kopiert man von L:/Programme/Electronic Arts/Command & Conquer 3/MOD SDK/CnC3Xml/Tiberium/ die Dateien TiberiumCrystal.xml und TiberiumCrystalBlue.xml in euren data Ordner.

Dann öffnet man das und sucht nach:

ValuePerBox="12" Für Grünes
ValuePerBox="24" Für Blaues

Wir verringern den Wert um 50 % in:

ValuePerBox="6" Für Grünes
ValuePerBox="12" Für Blaues

So. Jetzt schreibt ihr eure Mod.xml, beispiel wie oben.

Für die Mod.str schrib ich morgen was. :dead: Ich habe fertig.

Nicht so sehr auf fehler achten :P Ist sehr lang.

Hoffe es hat euch gefallen und es hilft euch.
Morgen werde ich noch die Dateien hochladen.

Nimphelos :)


EDIT!:Hier die angehängte Datei :D

Der Predator wurde sehr imba. Kostet 5000 wird in 50 Sec gebaut. Kann auch nur einmal gebaut werden. Kriegt nur schaden von Raketen und hinten 500% mehr :dead: Dafür ist das Upgrade schwach.

Und noch ein kleines extra mit dem Schallemitter :dead: Mir war langweilig.
Ist aber auch nichts besonderes.

EDIT 2:

Dank Baracuda hab ich noch kurz ein paar fehler verbessert :)

Danke !

Matze I
16-10-2007, 08:05
N1. war bestimmt n haufen Arbeit :)


cd Programme
cd Electronic Arts
cd „Command & Conquer 3“ (wichtig sind die „“, weil das „&“ sonst als Teilbefehl gewertet wird.)
cd MOD SDK

Sagen wir´s eher so,das nach CD muss den pfad in den MOD SDK Ordner geben.
Bei mir war´s
cd Spiele
cd Tiberium Wars
cd MOD SDK

(achtet auf groß-Kleinschreibung....)

Ansonsten hats bei mir (mit deiner hife) ja irgendwie funktioniert. :)


man kan auch gleich D:\ cd "Spiele\Tiberium Wars\MOD SDK" nehmen

nodsite
16-10-2007, 15:50
:gf: HI @all
könnt ihr mir sagen was da schief gelaufen ist? PLZ

http://img89.imageshack.us/img89/161/65513992bk3.jpg

evl kann jemand mal aufschreiben, wie ich es eingeben muß

Sven
16-10-2007, 15:54
Tja, DOS Kenntnisse sind nie verkehrt, ne? :p :D
Jeder cd Befehl muss als eigenständige Zeile erfolgen - außerdem müssen Verzeichnisnamen die Leerzeichen enthalten in " eingeschlossen werden:
cd Spiele -> [Enter]
cd "Tiberium Wars" -> [Enter]
cd "MOD SDK" -> [Enter]

ach so, und natürlich kommt es drauf an wo das Spiel installiert ist.
Bei mir würde das nämlich zB so aussehen:
L:
cd games
cd tw
cd "Mod SDK"

oder schneller:
L:
cd "games\tw\ModSDK"

Chriz
17-10-2007, 00:14
du kannst auch eifnach nur einmal cd machen und das verzeichnis mit Anführunszeichen hinterschreiben.

Oder für die ganze faulen: Macht ne Verknüpfung zur buildmod.bat und hängt bei "Ziel" einfach den Modnamen als Parameter dran. ;)

nodsite
17-10-2007, 11:36
Jo THX
habs so wie die faulen gemacht :D

Der Ordner wurde erstellt und ich bin den nächsten Schritten von Nimphelos bis zu
den Änderungen am Predator gefolgt.
Ingame war davon jedenfalls nicht viel zusehen, sprich es hat noch nicht gefunzt.

werd ich mich aber nachher nochmal dran versuchen

Darkwolf
17-10-2007, 15:30
irgendwie klappt das mit den änderungen ingame bei mir auch noch ned so wirklich... später nochmal versuchen.

Tyranos
10-11-2007, 16:17
Ich verstehe nicht wie man diese Datei "irgendwas.skudef" erstellt.
Mit "Rechtsklick --> Neu" geht das ja wohl kaum...
Kann mir wer helfen?

EDIT:

Problem hat isch wohl gerade erledigt. Habe die "CNC3_german_1.9.SkuDef" aus dem TW Ordner genommen und sie umbenannt.

Sven
10-11-2007, 16:22
Nimm einen brauchbaren Texteditor (zB UltraEdit32), erstelle damit eine neue Datei, schreib rein, was rein gehört und speichere sie unter irgendwas.skudef ab.
Wenn du Notepad nimmst, kann es sein, dass du die Datei nur als .txt speichern kannst, benenne sie dann später einfach um.

Tyranos
10-11-2007, 17:54
Hab das zuerst auch so gemacht. Hab jetzt aber bemerkt, dass ich da was falsch eingegeben hab. Nun geht's;)

Danke für die Hilfe


EDIT:

So, hab ez mal ein bisschen rumprobiert. Hab unter anderem dem APC nun 3 statt 1 Transportslots gegeben. Leider kann ich aber nur wieder 1 Squad ausladen nachdem ich 3 hineingeschickt habe (mit dem "Evakuierungs-Befehl versteht sich).
Ausserdem möchte ich gerne das Signaturen-Upgrade der Venoms dahingehend verändern, dass diese nach Erforschen die Venoms tarnt.

Weiss wer wie das geht?

P.S. Ja ich weiss, das mit den Venoms ist voll imba, aber ist ja auch eine reine Fun-Mod:D