Sie sind vermutlich noch nicht im Forum angemeldet - Klicken Sie hier um sich kostenlos anzumelden Impressum 
Das Forum ist read-only und nur noch zu Archivzwecken vorhanden. Neue Benutzer werden nicht mehr freigeschalten. Benutzt bitte unser aktuelles Forum: http://www.battle-planet.de/pbp/main/forum_neu.php
Sie können sich hier anmelden
Dieses Thema hat 7 Antworten
und wurde 279 mal aufgerufen
 Guides und Tutorials
mimic Offline




Beiträge: 74

08.06.2009 20:36
secondaryID Antworten

Was ist das secondaryID attribut und zu was ist es gut?

Grom Offline




Beiträge: 1.069

08.06.2009 20:43
#2 RE: secondaryID Antworten

Damit kann man einer Einheit o.ä. mehrere IDs zuweisen wenn ich zum Beispiel den alten Nashornpanzer hab und einen neuen erstelle dann könnte ich den alten mit der neuen Definition in einem neuen ID Bereich benutzen ohne den alten auf allen Karten austauschen zu müssen.

Also Id = 1 und Secondary ID = 2 dann kann ASC den Panzer unter 1 und 2 finden.

Bei Objekten machts meistens mehr sinn da Einheiten normalerweise einfach editiert werden und fertig.

mimic Offline




Beiträge: 74

08.06.2009 20:52
#3 RE: secondaryID Antworten

Na ich habe eher das Problem, dass ich die IDs der Einheiten in einen anderen ID Bereich verschiebe und Karten habe in denen die Einheiten noch im alten ID Bereich sind. Kann ich diese Karten mit Hilfe von secondaryID konvertieren? D.h.
- Id = neue ID
- secondaryID = alte ID
- Karte mit alten ID laden
- Karte neu speichern => Karte wird mit neuen IDs gespeichert?

ValHaris Offline




Beiträge: 386

08.06.2009 21:42
#4 RE: secondaryID Antworten
Die Secondary ID ist eigentlich für das fortenwickeln von Unitsets.
Mal ein Beispiel:

Es gibt im MK1 die Baueinheiten:
- Vesuvius (ID 12)
- Ant (ID 26)
- MBV (ID 85)

Wenn der Unitset-Maintainer zum Schluss käme, dass sich das nicht bewährt hat und man auch mit 1 Baueinheit auskäme, dann könnte er:
- eine neue Baueinheit 'OberBauer' erstellen (ID 123)
- bei diesem die SecondaryIDs 12, 26, 85 eintragen
- die Einheiten Vesuvius, Ant, MBV löschen.

Wird nun eine Karte oder ein Savegame geladen, die eine der gelöschten Einheiten erhält, wird stattdessen ein 'OberBauer' auf die Karte gesetzt. Speichert man die Karte ab, wird dort der SuperBauer abgespeichert und man kann nicht mehr erkenne, dass es ursprünglich unterschiedliche EinheitenTypen waren.

Damit hat man einen Mechanismus, Einheitentypen zusammenzufassen. Für ObjektTypen, Bodentypen und GebäudeTypen funktioniert das genauso.




Es gibt nun noch eine weitere Technik, um Einheiten auszutauschen: die UnitSet-Transformation bzw. MapTranslation (die beide funktionieren ähnlich).

Wieder ein Beispiel:

Gegeben ist eine Karte mit MK1-Einheiten.
Darunter ein Follow (ID 83)
Weil man eine andere Spielweise mal ausprobieren will, definiert jemand neue Einheiten, nennen wir sie MK1ha
Dort gibt es statt des Follow die Einheit 'Kastrierter Follow' (ID 6083)
Nun schreibt man in die Map-Transformation:

VehicleTranslation = [ 83 6083 ]

Lässt man diese MapTransformation über die Karte laufen, werden alle Follows gegen kastrierte Follows ausgetauscht.
Den alten Follow gibts aber weiterhin und er kann auf den anderen Karten benutzt werden. Man kann natürlich auch nach der Transformation wieder alte Follows auf die Karte setzen und die alten gegen die kastrierten kämpfen lassen.

Auch das gilt für Objekte, Gebäude und Bodentypen genauso
Tokei Ihto Offline



Beiträge: 324

09.06.2009 10:36
#5 RE: secondaryID Antworten

Da fällt mir gleich noch eine Frage ein.

Wie kann ich denn im Map-Editor feststellen, welche ID das Feld unter dem Cursor hat ?
Viele (gerade Terrain) Felder sehen sich so ähnlich, dass man nicht weiss, welches es nun genau ist.
Noch schöner wäre es, wenn ich irgend wie das Feld unterm Cursor zum aktiven Feld machen könnte, was man dann auch auf andere Felder setzen könnte.


Gruß

Tokei Ihto

GAMER Offline




Beiträge: 2.370

09.06.2009 10:40
#6 RE: secondaryID Antworten
F1 oder "H"
Obwohl F1 doch etwas hilfreicher ist bei solchen Fragen *fg*

GAMER

Spielleiter
Advanced Strategic Command
Project:BattlePlanets

Tokei Ihto Offline



Beiträge: 324

09.06.2009 10:44
#7 RE: secondaryID Antworten

Ich werde alt :-)

Sorry für die dämliche Frage.

mimic Offline




Beiträge: 74

09.06.2009 17:53
#8 RE: secondaryID Antworten

Zitat von ValHaris
Die Secondary ID ist eigentlich für das fortenwickeln von Unitsets.
Mal ein Beispiel:

Es gibt im MK1 die Baueinheiten:
- Vesuvius (ID 12)
- Ant (ID 26)
- MBV (ID 85)

Wenn der Unitset-Maintainer zum Schluss käme, dass sich das nicht bewährt hat und man auch mit 1 Baueinheit auskäme, dann könnte er:
- eine neue Baueinheit 'OberBauer' erstellen (ID 123)
- bei diesem die SecondaryIDs 12, 26, 85 eintragen
- die Einheiten Vesuvius, Ant, MBV löschen.

Wird nun eine Karte oder ein Savegame geladen, die eine der gelöschten Einheiten erhält, wird stattdessen ein 'OberBauer' auf die Karte gesetzt. Speichert man die Karte ab, wird dort der SuperBauer abgespeichert und man kann nicht mehr erkenne, dass es ursprünglich unterschiedliche EinheitenTypen waren.

Damit hat man einen Mechanismus, Einheitentypen zusammenzufassen. Für ObjektTypen, Bodentypen und GebäudeTypen funktioniert das genauso.




Es gibt nun noch eine weitere Technik, um Einheiten auszutauschen: die UnitSet-Transformation bzw. MapTranslation (die beide funktionieren ähnlich).

Wieder ein Beispiel:

Gegeben ist eine Karte mit MK1-Einheiten.
Darunter ein Follow (ID 83)
Weil man eine andere Spielweise mal ausprobieren will, definiert jemand neue Einheiten, nennen wir sie MK1ha
Dort gibt es statt des Follow die Einheit 'Kastrierter Follow' (ID 6083)
Nun schreibt man in die Map-Transformation:

VehicleTranslation = [ 83 6083 ]

Lässt man diese MapTransformation über die Karte laufen, werden alle Follows gegen kastrierte Follows ausgetauscht.
Den alten Follow gibts aber weiterhin und er kann auf den anderen Karten benutzt werden. Man kann natürlich auch nach der Transformation wieder alte Follows auf die Karte setzen und die alten gegen die kastrierten kämpfen lassen.

Auch das gilt für Objekte, Gebäude und Bodentypen genauso


Naja, mir scheint der zweite Weg, der etwas bessere zu sein, obwohl sie beide Nachteile haben:
- Die secondaryID muesste in die neuen Einheiten rein, wo sie aber eigentlich nichts zu suchen hat, da der alte ID-Bereich evakuiert werden soll. Fossilien in Form von secondaryID sind da nicht so toll.
- Die Maptransformation hat den Vorteil das sie in einer separaten Datei steht, also nach Bedarf benutzt werden kann. Der Nachteil ist, dass das alte Set geladen sein muss. Sonst oeffnet der Mapeditor die Karte erst gar nicht, was beabsichtigt ist, wie mir mbickel versichert hat.

 Sprung  
Xobor Einfach ein eigenes Forum erstellen | ©Xobor.de
Datenschutz