Suchen
 
 

Ergebnisse in:
 


Rechercher Fortgeschrittene Suche

Die neuesten Themen
» Problem mit Snowleos Raubtierhaus Pack für Zoo Tycoon 2
Di Okt 03, 2017 2:49 pm von Tschensman

» Übersetzung und alte Downloads
Fr Sep 01, 2017 7:11 pm von STAEBCHEN

» Mustang
So Jul 23, 2017 2:48 am von Forumotion

» Probleme mit Downloads
Sa Jun 24, 2017 3:15 pm von Killerzahn

» Snowleos Zoo Equipment
So Jun 11, 2017 6:20 pm von Tschensman

» CARNIVORA
Mo Mai 02, 2016 10:10 pm von Forumotion

» Andere Zoo Tycoon 2 Seiten und Download Seiten
So März 27, 2016 9:30 pm von Okami

» Hack Platzbedarf
So März 27, 2016 7:27 pm von Okami

» Frei Platzierbare Mods
So März 27, 2016 7:18 pm von Okami

» Karminspint
Di Jan 05, 2016 10:50 am von RedTiger

November 2017
MoDiMiDoFrSaSo
  12345
6789101112
13141516171819
20212223242526
27282930   

Kalender Kalender

Schlüsselwörter

tycoon  carnivora  Platzbedarf  reptilia  lemur  

Die am häufigsten getaggten Mitglieder


Neue Alterstufen coden (FORTGESCHRITTENE)

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten

Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:25 pm

Standardmäßig haben Zootycoon-Tiere zwei Altersstufen: Young und Adult. Solange ein Muttertier einen Nachkommen hat, der ein Young ist, gilt sie dem Spiel nicht als Fortpflanzungsfähig. Wenn das Tier vorn Young nach Adult wechselt, wird es selbst geschlechtesreif. Gleichzeigtig kann die Mutter wieder träctig werden.

Mit dem natürlichen Fortpflanzungszyklus und Heranwachsen eines Tieres hat das bei kaum einer Tierart etwas zu tun. Aber es ist möglich, weitere Altersstufen einzubauen. Bei vielen neueren Download-Tieren und Remakes gibt es das bereits. Hier haben die Designer zusätzlich die Stufe Juvenile für halbwüchsige Tiere hinzugefügt. Juvenile ist so gecodet, dass das Muttertier auch wieder trächtig werden kann, selbst wenn das vorherige Jungtier selbst noch nicht erwachsen sind.

Es sind aber auch noch mehr Altersstufen möglich.

In diesem Thread möchte ich erklären, wie man eine neue Altersstufe codet. Außerdem gibt es einige Vorschläge, wie man die Altersstufen für verschiedene Tiergruppen strukturieren kann.


Wo ihr die Dateien findet, in denen ihr das neue Coding einarbeiten müsste, erfahrt ihr hier.

Wie ihr die Dateien bearbeitet, erfahrt ihr hier.
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:25 pm

Das Coding für die Altersstufen befindet sich in der Datei

TIERNAME.tsk

Im Beispiel nehmen wir die TSK der Addax-Antilope.

Als Ausgangsmaterial verwendet ihr das Coding für den Wechsel von Young zu Adult.
Für den Wechsel sind drei Templates notwenig, die zusammengehören.

Das Template Puberty
Code:
<BFAITaskTemplate Name="Puberty" TaskDelayMin="60" TaskDelayMax="60" UniqueID="Addax:Puberty">

Das Template Age_F
Code:
<BFAITaskTemplate Name="Age_F" UniqueID="Addax:Age_F">

Das Template Age_M
Code:
<BFAITaskTemplate Name="Age_M" UniqueID="Addax:Age_M">
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:26 pm

Für jeden Wechsel zu einer Altersstufe braucht das Tier einen Template-Satz.
Standardmäßig haben haben die Tiere diesen einen Satz für den Wechsel von Young zu Adult.
Für ein Tier mit einer zusätzlichen Altersstufe benötigt ihr ein zweites Template mit einem entsprechenden Coding.

1. Template-Satz für den Wechsle von Young zu Juvenile

1. Sucht den Template-Satz in der TSK.

2. Ändert den Namen Puberty in GrowJuvenile (Manche codern verweden als Benennung auch puberty1. WIE ihr das Template nennt, ist egal. Aber so erkennt ihr leichter, wozu das Coding da ist.)

Code:
<BFAITaskTemplate Name="GrowJuvenile" TaskDelayMin="60" TaskDelayMax="60" UniqueID="Addax:Puberty">

3. In diesem Coding

Code:
<Subjects>
            <Addax_Young/>
            <Qualifiers_AND inWater_OR_onLand="true" lifespan="GE 4.17"/>
        </Subjects>

findet ihr bei lifespan="GE" den Zahlenwert, der angibt, in welchem Lebensalter das Tier in die neue Altersstufe wechseln soll. Hier müsst ihr euren gewünschten Wert eingeben. Wie ihr die Wert ermittelt, findet ihr hier.

4. In allen drei Templates findet ihr an mehreren Stellen den Eintrag Age. Andert Age ebenfalls in GrowJuvenile.

5. In den GrowJuvenile_F und _M-Templates müsst ihr nun noch das Ziel ändern. Das Tier soll sich in ein Juveniles verwandeln, also muss dies als Ziel angegeben werden.

Andert im GrowJuvenile_F-Template

Code:
<ZTBehMorph morphTargetEntityType="Addax_Adult_F" morphScale="true" morphPeriod="10" initScale="0.4"/>
in
Code:
<ZTBehMorph morphTargetEntityType="Addax_Juvenile_F" morphScale="true" morphPeriod="10" initScale="0.4"/>

und im GrowJuvenile_M-Template

Code:
<ZTBehMorph morphTargetEntityType="Addax_Adult_M" morphScale="true" morphPeriod="10" initScale="0.4"/>
in
Code:
<ZTBehMorph morphTargetEntityType="Addax_Juvenile_M" morphScale="true" morphPeriod="10" initScale="0.4"/>

Damit habt ihr den Wechsel von Young zu Juvenile.
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:29 pm

2. Template-Satz für den Wechsel von Juvenile zu Adult

1. Kopiert den kompletten Template-Satz, also die drei Templates GrowJuvenile, GrowJuvenile_F und GrowJuvenile_M und fügt es unter dem ersten Template-Satz ein.

2. Ändert in allen drei Templates GrowJuvenile in GrowAdult.

Jetzt müsst ihr die Subjects aller drei Templates ändern. Das Subject bezeichnet die Individuen, die das Coding betrifft. Im ersten Template Satz war das Subject die Young, denn das Jungtier sollte sich in ein juvenile Tier verwandeln. Hier soll sich das juvenile Tier in ein adultes verwandeln.

3. Ändert im GrowAdult-Template

Code:
<Subjects>
            <Addax_Young/>
            <Qualifiers_AND inWater_OR_onLand="true" lifespan="GE 4.17"/>
        </Subjects>
in
Code:
<Subjects>
            <Addax_Juvenile/>
            <Qualifiers_AND inWater_OR_onLand="true" lifespan="GE 4.17"/>
        </Subjects>

4. Gebt hier bei lifespan außerdem das Lebensalter an, in dem das Tier in den Adult-Status wechseln soll.

5. Ändert im GrowAdult_F-Template

Code:
<Subjects>
            <Addax_Young_F/>
            <Qualifiers inWater_OR_onLand="true"/>
        </Subjects>
in
Code:
<Subjects>
            <Addax_Juvenile_F/>
            <Qualifiers inWater_OR_onLand="true"/>
        </Subjects>

6. Ändert im GrowAdult_M-Template

Code:
<Subjects>
            <Addax_Young_M/>
            <Qualifiers inWater_OR_onLand="true"/>
        </Subjects>
in
Code:
<Subjects>
            <Addax_Juvenile_M/>
            <Qualifiers inWater_OR_onLand="true"/>
        </Subjects>

7. Nun müsst ihr auch noch das Ziel der Verwandlung ändern. Aus dem Juvenile soll ein Adult werden. Ändert in den GrowJuvenile_F und _M-Templates

Code:
<ZTBehMorph morphTargetEntityType="Addax_Juvenile_F" morphScale="true" morphPeriod="10" initScale="0.4"/>
in
Code:
<ZTBehMorph morphTargetEntityType="Addax_Adult_F" morphScale="true" morphPeriod="10" initScale="0.4"/>
und
Code:
<ZTBehMorph morphTargetEntityType="Addax_Juvenile_M" morphScale="true" morphPeriod="10" initScale="0.4"/>
in
Code:
<ZTBehMorph morphTargetEntityType="Addax_Adult_M" morphScale="true" morphPeriod="10" initScale="0.4"/>
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:29 pm

Jetzt habt ihr das Steuercoding für die Altersstufen in der TSK.

Damit das Spiel auch Tiere in diesen Altersstufen generieren kann, braucht es außerdem noch die xml-Dateien für die entsprechenden Altersstufen, also

TIERNAME_Juvenile.xml
TIERNAME_Juvenile_F.xml
und
TIERNAME_Juvenile_M.xml


Als Ausgangamaterial dazu nehmt ihr die drei Young.xmls. Zieht euch Kopien auf den Desktop.

1. Benennt die xml-Dateien in Juvenile um.

2. Ersetzt in allen drei Dateien überall Young durch Juvenile.

3. In der Juvenile.xml findet ihr die Codezeile

Code:
<BFAIEntityDataShared f_viewBonus="5" b_Adult="0" b_SmallPrey="true">

Setzt hier b_Adult="1". Dann interpretiert das Spiel die Juvenilen als Adulte, so dass das Muttertier wieder Junge kriegen kann, wenn das vorherige Jungtier juvenil wird.

4. In der Codezeile

Code:
<BFActorComponent actorfile="entities/units/animals/Addax/Addax_Juvenile_F.bfm" scale="0.4"/>

müsst ihr angeben, welche bfm und damit welches Modell das juvenile Tier verwenden soll. Der Verweis führt in dieser Form zu einer Addax_Juvenile_F.bfm. Die gibt es aber nicht.

Bei den meisten Tierarten ist das Modell des erwachsenen Weibchens am sinnvollsten. Ändert den Dateinamen entsprechend in Addax_Adult_F.bfm. Außerdem müsst ihr die Größe bei scale=" " anpassen. Das juvenile Tier sollte erkennbar kleiner sein als die Adulten.

5. Kontrolliet, ob auch ein Skin in einer der Juvenile-xmls verzeichnet ist. Auch hier steht jetzt im Dateiname Juvenile. Ändert den Namen entsprechend dem vorhandenen Skin, den das juvenile Tier verwenden soll.

6. Fügt die fertigen Juvenile.xmls in die z2f bei den übrigen xmls ein.
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:30 pm

Eigene Modelle für die neue Altersstufen

Manche Designer fertigen auch neue Modelle für die erweiterten Altersstufen an. Besonders bei Hirschen oder Antilopen ist das sinnvoll, wenn (männliche) Jungtiere kürzere Hörner, bzw. ein kleineres Geweih als die erwachsenen haben.

Ein neues Modell wird aus einem bestehenden Modell gefertigt. Dazu sind Kenntnisse über das Bearbeiten von 3D-Modellen mit Blender und Nif-Scope, notwendig.

Hat der Juvenil-Status ein eigenes Modell, benötigt er auch eine eigene TIERNAME_Juvenile.bfm. In der bfm muss dann entsprechend der Dateiname der neuen TIERNAME_Juvenile.nif eingetragen sein, sowie in der Juvenile.xml der Verweis zur TIERNAME_Juvenile.bfm.
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Mondschatten am Mi Jul 16, 2014 8:30 pm

Einige Tipps und Anregungen

  • Juveniler Status macht nicht bei jeder Tierart Sinn. Besonders bei kleinen Tieren mit kurzer Generationsfolge wie etwa Nagetiere oder kleine Raubtiere genügt der Wechsel von Young zu Adult.

  • Bei großen Tieren mit langer Generationsfolge wie Elefanten bieten sich weitere Altersstufen an. Young entspricht den Säuglingen, Juvenil den Halbwüchsigen. Dazwischen wäre noch eine Altersstufe für ältere Jungtiere möglich.

  • Die Weibchen einiger Tiere, z.B. Elefanten und Menschenaffen, haben in hohem Alter eine Menopause. Diese kann man coden, indem man nur das erste und zweite Template in der TSK verwendet und als Subject beim ersten TIERNAME_F definiert. Es genügt dann, nur eine zusätzliche Adult_F-Menopause.xml aus der Adult_F.xml zu erstellen.
    In den xmls muss dann noch ein zusätzlicher Wert definiert werden, damit die Menopause-Weibchen sich nicht mehr fortpflanzen:

    Code:
    b_Fertile=" "

    Dieser Code muss eingefügt werden

    1. In der Adult_F.xml

    Code:
    <BFAIEntityDataShared b_Male="0" b_Fertile="true" f_adoptCount="rand(1,1)"/>

    2. In der Adult_F_Menopause.xml

    Code:
    <BFAIEntityDataShared b_Male="0" b_Fertile="false" f_adoptCount="rand(1,1)"/>

    3. In der TSK im Template "InviteReproducion" bei den Qualifiers der Subjects

    Code:
    <Subjects>
                <ElephantAfrican_Adult_F/>
                <Qualifiers_AND b_Pregnant="E false" b_Fertile="true"/>
            </Subjects>
avatar
Mondschatten
Neuling
Neuling

Weiblich Anzahl der Beiträge : 59
Anmeldedatum : 06.04.14
Ort : Rheinhausen

Benutzerprofil anzeigen http://www.zoobeobachter.de

Nach oben Nach unten

Re: Neue Alterstufen coden (FORTGESCHRITTENE)

Beitrag von Gesponserte Inhalte


Gesponserte Inhalte


Nach oben Nach unten

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben

- Ähnliche Themen

 
Befugnisse in diesem Forum
Sie können in diesem Forum nicht antworten