Duke4.net Forums: Different .MAP versions - Duke4.net Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Different .MAP versions  "What is the difference between the different .MAP versions"

#1

Hello, i've been coding a generic build engine tool in Fennel/Lua and i can currently parse duke/shadowwarrior/ionfury/witchhaven maps. I have noticed with the ionfury stuff that the map version can vary between 7,8 & 9. I can find details about v6, and the difference between v7 and v8, but i can't find anything about v9.

Does anyone have any links to information on v9 .MAP files? The seem to parse correctly, but i dont know whats changed if anything.
0

#2

 parlortricks, on 27 July 2022 - 07:31 PM, said:

Hello, i've been coding a generic build engine tool in Fennel/Lua and i can currently parse duke/shadowwarrior/ionfury/witchhaven maps. I have noticed with the ionfury stuff that the map version can vary between 7,8 & 9. I can find details about v6, and the difference between v7 and v8, but i can't find anything about v9.

Does anyone have any links to information on v9 .MAP files? The seem to parse correctly, but i dont know whats changed if anything.

Map version 7 is the original Duke 1.5 format.
Map version 8 has extended limits (MAXSECTORS increased from 1024 to 4096, MAXWALLS from 8192 to 16384, MAXSPRITES from 4096 to 16384).
Map version 9 uses TROR features.

I believe the editor dynamically determines which format is required when saving.

There is also Map version 10, which can be enabled through compile-time options, and actually stores the map as a text file, rather than a binary.
It is unfinished and unmaintained however, has probably never been used. It will hence likely be removed or replaced.
0

#3

 Doom64hunter, on 28 July 2022 - 01:52 AM, said:

Map version 7 is the original Duke 1.5 format.
Map version 8 has extended limits (MAXSECTORS increased from 1024 to 4096, MAXWALLS from 8192 to 16384, MAXSPRITES from 4096 to 16384).
Map version 9 uses TROR features.

I believe the editor dynamically determines which format is required when saving.

There is also Map version 10, which can be enabled through compile-time options, and actually stores the map as a text file, rather than a binary.
It is unfinished and unmaintained however, has probably never been used. It will hence likely be removed or replaced.


Thanks for that, helps understand. Side note i also noticed that Tekwars v6 has v7 limits...
0

#4

Build MAP format kept considerably changing even while games for it were already being in development, so Ken had to write CONVMAP# utilities for his early map formats until settled on version 7. You can read his changelogs and other notes in BUILD.TXT and BUILD2.TXT supplied with the source code, pretty curious stuff. For example, version 5 has introduced floor/ceilingpal, visibility and lotag/hitag/extra parameters (there was just a single tag for everything prior to that). Also, there were two nextsector's and nextwall's until version 6.

However, versions 8 and 9 (which were adopted only after the source code was released) are kind of "unofficial" extensions and virtially identical to 7, except that they support extended limits, and also TROR feature in version 9 (that employs more cstat flags and can reuse wall lotags and extra's to store upper/lower wall indices). Thus, a map that is saved with a version of 8 or 9 but does not make use of extended limits or TROR could be safely read by legacy v7 tools, although such maps are normally saved as v7 to assure compatibility.

There is also a 'blend' parameter for sprites that utilizes a previously unused padding byte and has seen some heavy use in Ion Fury.

It should be noted that Blood maps are stored in a somewhat different way which is not fully documented, as Monolith has introduced its own extensions to the format and also some encryption going on. Nonetheless, the core feature set is the same as in version 7, and maps can be safely read while skipping the Blood-specific "extra" structures. There are some notes on how to read Blood maps available on ReBUILD project page.

https://wiki.eduke32...ki/Cstat_(wall)
https://wiki.eduke32.../wiki/Floorstat
The "YAX" and "TROR" flags are specific to version 9, though the overall structure has remained the same.

This post has been edited by Jan Satcitananda: 30 July 2022 - 07:29 AM

3

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options