-
Notifications
You must be signed in to change notification settings - Fork 0
NVF
Die Byte-Reihenfolge ist Little-Endian.
Die Pixeldaten-Byte-Arrays enthalten den Index der Farbe des Pixels aus der Farbpalette als 1-Byte-Integer (unsigned). Das erste Byte entspricht der oberen linken Ecke, das letzte Byte der unteren rechten.
Die RGB-Werte der Farbdefinitionen der Palette müssen mit 4 multipliziert werden.
Keine Kompression mit gleicher Auflösung.
1 byte integer (unsigned) | NVF Typ | Header: 3 bytes |
2 byte integer (unsigned) | Anzahl der Texturen (n) | |
2 byte integer (unsigned) | Breite der Texturen | Texturenblock: 4 bytes |
2 byte integer (unsigned) | Höhe der Texturen | |
Breite*Höhe bytes | Pixeldaten 1 | Pixeldatenblock: variabel |
... | ||
Breite*Höhe bytes | Pixeldaten n | |
2 byte integer (unsigned) | Anzahl der Farben (m) | Palettengröße: 2 bytes |
1 byte integer (unsigned) | Farbe 1: Rot (* 4 = 0-255) | Palette: m * 3 bytes |
1 byte integer (unsigned) | Farbe 1: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe 1: Blau (* 4 = 0-255) | |
... | ||
1 byte integer (unsigned) | Farbe m: Rot (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Blau (* 4 = 0-255) |
Keine Kompression mit unterschiedlicher Auflösung.
1 byte integer (unsigned) | NVF Typ | Header: 3 bytes |
2 byte integer (unsigned) | Anzahl der Texturen (n) | |
2 byte integer (unsigned) | Textur 1: Breite | Texturenblock: n * 4 bytes |
2 byte integer (unsigned) | Textur 1: Höhe | |
... | ||
2 byte integer (unsigned) | Textur n: Breite | |
2 byte integer (unsigned) | Textur n: Höhe | |
Textur #1 Breite*Höhe bytes | Pixeldaten 1 | Pixeldatenblock: variabel |
... | ||
Textur #n Breite*Höhe bytes | Pixeldaten n | |
2 byte integer (unsigned) | Anzahl der Farben (m) | Palettengröße: 2 bytes |
1 byte integer (unsigned) | Farbe 1: Rot (* 4 = 0-255) | Palette: m * 3 bytes |
1 byte integer (unsigned) | Farbe 1: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe 1: Blau (* 4 = 0-255) | |
... | ||
1 byte integer (unsigned) | Farbe m: Rot (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Blau (* 4 = 0-255) |
Kompression mit gleicher Auflösung, gleiches Layout, Unterschied nur im Kompressionsalgorithmus: bei 0x02 Amiga PowerPack 2.0, bei 0x04 RLE.
1 byte integer (unsigned) | NVF Typ | Header: 3 bytes |
2 byte integer (unsigned) | Anzahl der Texturen (n) | |
2 byte integer (unsigned) | Breite der Texturen | Texturenblock: 4 bytes |
2 byte integer (unsigned) | Höhe der Texturen | |
4 byte integer (unsigned) | Kompressionsgröße 1 | Kompressionsblock: n * 4 bytes |
... | ||
4 byte integer (unsigned) | Kompressionsgröße n | |
Kompressionsgröße #1 bytes | Pixeldaten 1 | Pixeldatenblock: variabel |
... | ||
Kompressionsgröße #n bytes | Pixeldaten n | |
2 byte integer (unsigned) | Anzahl der Farben (m) | Palettengröße: 2 bytes |
1 byte integer (unsigned) | Farbe 1: Rot (* 4 = 0-255) | Palette: m * 3 bytes |
1 byte integer (unsigned) | Farbe 1: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe 1: Blau (* 4 = 0-255) | |
... | ||
1 byte integer (unsigned) | Farbe m: Rot (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Blau (* 4 = 0-255) |
Kompression mit unterschiedlicher Auflösung, gleiches Layout, Unterschied nur im Kompressionsalgorithmus: bei 0x03 Amiga PowerPack 2.0, bei 0x05 RLE.
1 byte integer (unsigned) | NVF Typ | Header: 3 bytes |
2 byte integer (unsigned) | Anzahl der Texturen (n) | |
2 byte integer (unsigned) | Textur 1: Breite | Texturenblock: n * 8 bytes |
2 byte integer (unsigned) | Textur 1: Höhe | |
4 byte integer (unsigned) | Textur 1: Kompressionsgröße | |
... | ||
2 byte integer (unsigned) | Textur n: Breite | |
2 byte integer (unsigned) | Textur n: Höhe | |
4 byte integer (unsigned) | Textur n: Kompressionsgröße | |
Textur #1 Kompressionsgröße bytes | Pixeldaten 1 | Pixeldatenblock: variabel |
... | ||
Textur #n Kompressionsgröße bytes | Pixeldaten n | |
2 byte integer (unsigned) | Anzahl der Farben (m) | Palettengröße: 2 bytes |
1 byte integer (unsigned) | Farbe 1: Rot (* 4 = 0-255) | Palette: m * 3 bytes |
1 byte integer (unsigned) | Farbe 1: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe 1: Blau (* 4 = 0-255) | |
... | ||
1 byte integer (unsigned) | Farbe m: Rot (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Grün (* 4 = 0-255) | |
1 byte integer (unsigned) | Farbe m: Blau (* 4 = 0-255) |
Beliebter Kompressions-Standard aus der Zeit der Commodore Amiga Computer. Identifiziert wird dieser Archiv-Typ von vielen Programmen über die ersten vier (Magic)Bytes ("PP20") die in den Daten der Nordlandtrilogie nicht immer intakt sind!
Simple Lauflängenkodierung bei der sich wiederholende Bytewerte in drei Byte zusammengefasst werden.
1 byte integer | RLE Identifikationsbyte (= 0x7F) |
1 byte integer (unsigned) | Anzahl der Wiederholungen |
1 byte integer | zu wiederholender Byteinhalt |
Nicht alle NVF Dateien sind vollständig, gerade bei Die Schicksalsklinge fehlen häufiger der NVF Header und/oder die Palette!
Vergleicht man die Dateigröße mit dem Offset an dem der Anzahl der Farben erwartet wird kann man bei Gleichheit feststellen, dass sich keine Farbpalette mehr am Ende der Datei befindet.
NVF Typ 0x02 verwendet von
- Gen.exe
- mit Palette: FANPRO.NVF
- ohne Palette: GENTIT.DAT, DSALOGO.DAT, HEADS.DAT
- Schickm.exe
- mit Palette: OUTRO1.NVF, OUTRO2.NVF, OUTRO3.NVF
- ohne Palette: COMPASS, GGSTS.NVF, TEMPICON, WEAPONS.NVF
- Gen.exe
- mit Palette: none
- ohne Palette: ATTIC
- Schickm.exe
- mit Palette: SKARTE.NVF
- ohne Palette: FIGHTOBJ.NVF, OBJECTS.NVF, SPELLOBJ.NVF
- Gen.exe
- mit Palette: none
- ohne Palette: none
- Schickm.exe
- mit Palette: HYGBACK.NVF
- ohne Palette: SPLASHES.DAT
- Gen.exe
- mit Palette: none
- ohne Palette: none
- Schickm.exe
- mit Palette: FACE.NVF, GUERTEL.NVF, HYGGELIK.NVF, LTURM.NVF, FACE.NVF, MARBLESL.NVF, SHIPSL.NVF, STONESL.NVF, TDIVERSE.NVF, TFLOOR1.NVF, TFLOOR2.NVF
- ohne Palette: FINGER.NVF, HOUSE1.NVF, HOUSE2.NVF, HOUSE3.NVF, HOUSE4.NVF
Achtung: Der NVF Header fehlt in diesen Dateien!
- SCHICK.DAT: SKULL.NVF (1x 320x200 Pixel, 64 Farben), KARTE.DAT (1x 320x200 Pixel, 32 Farben)
- DSAGEN.DAT: DZWERG.DAT (1x 128x184 Pixel, 32 Farben), DTHORWAL.DAT (1x 128x184 Pixel, 32 Farben), DSTREUNE.DAT (1x 128x184 Pixel, 32 Farben), DMENGE.DAT (1x 128x184 Pixel, 32 Farben), DMAGIER.DAT (1x 128x184 Pixel, 32 Farben), DKRIEGER.DAT (1x 128x184 Pixel, 32 Farben), DDRUIDE.DAT (1x 128x184 Pixel, 32 Farben), DAELF.DAT (1x 128x184 Pixel, 32 Farben), DFELF.DAT (1x 128x184 Pixel, 32 Farben), DWELF.DAT (1x 128x184 Pixel, 32 Farben), DGAUKLER.DAT (1x 128x184 Pixel, 32 Farben), DHEXE.DAT (1x 128x184 Pixel, 32 Farben), DJAEGER.DAT (1x 128x184 Pixel, 32 Farben)
Diese enthält die anderen Portraits im Spiel. Jeweils 1024 Byte umfassen ein Portrait.
Die benutzte Palette#1.
Achtung: Der NVF Header sowie die Palette fehlen in dieser Datei, sie enthält 71 32*32 Bilder.
Aus dem Spiel heraus hat das erste Bild die Nummer 0.
Alle Diskettenversionen haben nur 64 Bilder (0x00-0x3f).
00. Wache (Zwingfeste) / Wache (Daspota, Haus der Kapitäne) 01. Abenteuerin (Daspotaschatz) / Wache (Daspota) 02. Wache (Daspota) 03. Alrik Derondan / Tischler (Daspota) 04. Straßenhändler / Hjore der Schäfer / Räuber (Felsteyn-Orkanger) / Spieler (Daspota) 05. unbekannt (graue Kapuze) 06. Tempeldiener im Tempel des Güldenen 07. unbekannt (braune Robe, glühende Augen) 08. Ektor Gremob 09. Jäger (Vilnheim-Phexcaer) / Lagerhalter (Daspota) 10. Jäger (Varnheim-Daspota) / Barkeeper 11. Händler / Schmied / Hafenmeister / Schmied Daspota 12. Sturmbringer-Frau / Olimone / Käsetoast-Frau / Phex-Geweihte 13. Mann im Zeughaus / Kartenzeichner (Daspota) 14. Dramosch / Wirt (Daspota) 15. Segelmacher (Daspota) 16. Angestellter im Bankhaus von Stover Stoerrebrandt / Herbergswirt 17. Schäfer (Ljasdahl) / Pirat (Daspota) 18. Haken-Hugo (Daspota) 19. Tätowierer (Daspota) 20. Nariell 21. Ardora von Greifenfurt 22. Harika 23. Garsvik Thorfinsson 24. Erwo von Gollbrinck 25. Curian 26. Jurge Torfinsson 27. Hjore Ahrensson 28. Yasma Thinmarsdotter 29. Umbrik Siebenstein 30. Isleif Olgardsson 31. Ragna Firunjasdotter 32. Beorn Hjallasson 33. Asgrimm Thurboldsson 34. Eliane Windenbek 35. Olvir Gundridsson 36. Swafnild Egilsdotter 37. Treborn Kolberg 38. Das Einhorn 39. Algrid Trondesdotter 40. Tiomar Swafnildsson 41. Totenschädel 42. Ronja Avelljasdotter / Sonya (Daspota) / Hure (Daspota) / Fuhrfrau 43. Bettler / Einsiedler / Betrunkener (Daspota) 44. Ork 45. Das Schwarze Auge 46. Flößer in Not 47. Kutsche 48. Klein Alrik 49. Wegelagerer (Felsteyn-Orkanger) / Räuber (Phexcaer-Vilnheim) 50. Schwarzer Berg 51. Beginn des Orklandes 52. umgestürzter Baum 53. Brücke (Auplog-Varnheim; Breida-Tjoila; Orvil-Rovik) 54. Höhleneingang 55. toter Wanderer (Felsteyn-Orkanger; Nordvest-Rovamund) 56. Reiter 57. Berg (Dracheneiche) 58. Drache / Riesenlindwurm 59. Hebel in Wand 60. Skelett an Wand (Mine in Prem) 61. Hetmann Tronde Torbensson 62. Hetmann Hyggelik der Große 63. Janda / alte Frau 64. Thorwaler (später SC) 65. Gauklerin (später SC) 66. Krieger (später SC) 67. Jäger (später SC) 68. Dicker Mann 69. ängstliche Frau 70. Frau hinter TürBei den Nummern 05, 07, 50 und 59 ist mir der Ort des Auftretens im Spiel unbekannt.--Kunar 22:40, 3. Okt 2007 (CEST) Kategorie:DSA1Kategorie:DSA2Kategorie:DSA3Kategorie:Bildformat