|
Aufbau von
Attachment-Files
Zu jedem Spritefile (*s16) für Wesen im Ordner Images gehört
eine gleichlautende Attachment-Datei im Ordner Body
Data. Die Dateiendung ist *.att.
a00j.s16 im Ordner Images entspricht
also a00j.att im Ordner Body Data.
Attachment Dateien und Spritefiles stehen in
engem Zusammenhang miteinander, denn die Attachmentfiles
definieren, wo die einzelnen Körperteile aneinander
festgemacht (attached) sind. Oder anders gesagt:
Das Spiel muß wissen, wie es die vielen Einzelbilder
für die Körperteile (Spritefiles) zusammenfügen
soll. Dieses Wissen bezieht es aus den entsprechenden
Angaben in den Attachmentfiles. a00j aus unserem
Beispiel definiert also, bei welchen Koordinaten
der Kopf eines männlichen Pixie Norns im Babyalter
in den unterschiedlichen Stellungen (poses) erscheinen
und dargestellt werden soll. Die Darstellung erfolgt
also durch Auslesen des Spritefiles, die Platzierung
durch Auslesen des entsprechenden Attachmentfiles.
|
Die Attachment-Datei a00j, mit einem
Texteditor geöffnet, zeigt euch
eine Reihenfolge von Koordinatenangaben
für die verschiedenen Stellungen
des Kopfes
|

|
|

|
Und hier seht ihr, was ihr euch unter
den Koordinatensequenzen einer Attachment-Datei
vorstellen müßt. Die Abbildung
zeigt die Attachmentpunkte (Koordinaten)
für den Körperteil "body"
in der Frontalansicht, also die Ansatzstellen
für Kopf, Oberarme, Oberschenkel
und Schwanzansatz am Rumpf.
|
|
Besonderheiten im Zusammenhang mit Attachmentfiles
|
Wenn nun den Spritefiles für neue Rassen
keine Attachment-Dateien mitgegeben wurde, greift
das Spiel automatisch auf die installierten Attachment-Dateien
der Rasse auf dem vorherigen Slot zurück, wenn
es für die neue Rasse keine findet. Das funktioniert
aber nur, wenn im Slotbereich vorher eine Rasse
installiert ist, deren Sprites in ihren Abmessungen
nicht von der neu installierten Rasse abweichen.
Um diesen Mechanismus zu verstehen, stellt ihr
euch am besten so einen Slotbereich als Schiene
vor, auf der die Einzel-Slots von A-Z angeordnet
sind.
|
Slotbereich Norns
|
A
|
B
|
C
|
D
|
E
|
F
|
usw
|
|
installierte Sprites
|
A-Norns
NornSprites mit Standard- abmessungen
|
B-Norns
NornSprites mit Standard- abmessungen
|
C-Ettins
EttinSprites mit Standard- abmessungen
|
D-Ettins
EttinSprites mit Standard- abmessungen
|
Scorpio- Norns
Sprites mit völlig
neuen Abmessungen
|
F-Norns
NornSprites mit Standard- abmessungen
|
-
|
|
installierte Attachment (atts)
|
Standard Norn- atts
|
keine eigenen atts
|
keine eigenen atts
|
Standard Ettin- atts
umgeschrieben nach Slot Norn D
|
neue atts
|
keine eigenen atts
|
-
|
|
Darstellung erfolgt
|
korrekt
|
korrekt
denn Spiel greift zurück auf
die atts auf Slot A; das sind Standard-atts
und sie passen daher für die B-Norns
|
fehlerhaft
denn das Spiel greift
zurück auf die Norn atts auf Slot
A und die passen nicht für Ettins
|
korrekt
|
korrekt
|
fehlerhaft
denn Spiel greift
zurück auf die Scorpio atts auf
Slot E und die passen nicht für
die F Norns
|
-
|
Ähnlich verhält es sich, wenn innerhalb
einer Rasse nicht für alle Altersstufen, für
die es Sprites gibt, Attachmentdateien vorhanden
sind. Fehlen also z.B. die korrespondierenden Attachmentfiles
zu den Sprites für die Altersstufe "adult/erwachsen",
so wird das Wesen "gestaucht" dargestellt,
weil das Spiel dann weiterhin die atts für
die Altersstufe "adolescent/Vorpubertät"
hernimmt. Deren Koordinaten sind jedoch auf die
kleineren Abmessungen der entsprechenden Bilddateien
definiert (Wesen in der Vorpubertät sind
kleiner, als Erwachsene) Die folgende Abbildung
zeigt einen Norn in der Altersstufe "adult".
Es waren jedoch nur Attachmentdateien für die
Altersstufe "embryo/baby" vorhanden. Der
Norn erscheint "gestaucht", weil die Koordinatenpunkte
für "baby" nicht mit den Abmessungen
der Bilddateien für "adult" zusammenpassen.

Zu fehlerhafter Darstellung kann es auch in
folgenden Fällen kommen:
- Es handelt sich um eine Rasse, die sich
in der Größe nicht verändert.
Der Rasse wurde zwar der komplette Satz Spritefiles
mitgegeben, aber nur Attachment Files für
die Altersstufe "Baby". In diesem Fall
greift das Spiel beim Wechsel der Altersstufen
auf die Body Data der Babys zurück.
Dies
funktioniert, solange auf diesem Slot nicht
vorher etwas anderes installiert war. Nehmen
wir aber an, vor der Installation dieser Rasse
war auf dem gleichen Slot eine Rasse installiert,
deren Sprites die Größe verändern,
und die deshalb auch Body Data für alle
Altersstufen mitgebracht hat. In diesem Fall
werden nicht alle Attachmentfiles der vorherigen
Rasse überschrieben. Beim Wechsel der Altersstufe
kommt es zu Darstellungsfehlern, da dann auf die
verbliebenen Attachmentfiles der Rasse zugegriffen
wird, die vorher dort installiert war.
- Es wird eine neue Rasse hergestellt, bei
der beim Erstellen die Größe der
Originalbilder verändert wird. (z.B. um
Flügel an den Rumpf zu hängen oder
die Ohren zu vergrößern) In diesem
Fall wird bei der Verwendung der Standard-Atts
die Darstellung fehlerhaft, weil durch die veränderten
Abmessungen der einzelnen Bilder die Ansatzpunkte
der Körperteile an einer anderen Stelle
des Bildes im Bezug zum Bildrand sind.
Wer also eine neue Rasse kreiert, der sollte sich die Mühe machen, den neuen Sprites auch einen kompletten Satz Attachmentfiles mitzugeben, denn man kann nie wissen, wer auf dem vorausgehenden Slot einzieht,
bzw was der jeweilige Spieler auf dem Slot dieser
Rasse vorher installiert hatte ;-)
|