In Lvl 1, in a second array, all 1,000 entries are sorted by columns P and Q, the presumed major coordinates. This may speed up decryption.
All 14 levels have had their level files unpacked, one line per entry.
I think the lists are mostly accurate but where to place an Enter was sometimes not clear, so it came down to a judgement call by me. Data is included in the spreadsheet below:
Early results, first two numbers are the slot number, going from #1,000 through #1,999.
Third number seems to say what type of function this is: upstairs, downstairs, fire trap...
Fourth number may or may not be relevant here.
160 is for doors, numbering is from 0 to 25.
Offset 2 is always 160.
As always, offsets 10,11 give the x,y coordinates.
Offset 13 decides if door goes N:S (value = 5) or E:W (value = 10).
Offsets 21,22 handle locked doors, if values are not both 255, door is locked. It seems they direct to another line where the locks are found?
The surprise is that levers, fire traps and so on, they are considered to be located inside an impassable square of wall. From the PC's perspective at 9,30 in level 1, there is a fireball trap on the west side of the square. However the game regards that trap as being at 8,30!
We don't need encyclopedic knowledge of the workings of the level files, all we really need is enough understanding to place icons on the map.