dMZX Forums: MZX 2.90 ZIP-based file formats -> Archived Requests -> Tracker

Jump to content

Report ID 467 Title MZX 2.90 ZIP-based file formats
Product Archived Requests Status Implemented (Severity 5 - Critical)
Version 2.90 Fixed in GIT

  • (2 Pages)
  • +
  • 1
  • 2
  • Cannot start a new Issue
  • Closed Issue This issue is locked

Report ID #467: MZX 2.90 ZIP-based file formats

#1 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,895
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 31 May 2012 - 06:51 PM

To squash issues like this and this (at least from 2.85 onward, sorry huntdrak), and also to let minor format updates be slipped in without structural changes, I intend to change the world format... once and for all... :evil:/>/>

<xml etc>
<mzxml version="255">
  <world version="25A" save="false">
    ...
    <library>
      <source />
      <bytecode />
    </library>
    <programs>
      <program>
        <name />
        <source />
        <bytecode />
      </program>
    </programs>

    <boards>
      <board id="0" position="0">
        <name><![cdata[Super "MZX" Land]]></name>
        <rle2 id="underId">
          <![cdata[...]]>
        </rle2>
        ...
        <robots>
          <robot id="1" x="10" y="20">
            ...(see global)...
          </robot>
          ...
        </robots>
        <scrolls />
        <sensors />
        <savedata>
          <rle2 id="underId">...</rle2>
        </savedata>
      </board>
    </boards>

    <robot id="0" x="-1" y="-1">
      <name><![cdata[GLOBAL]]></name>
      <source><![cdata[...]]></source>
      <bytecode><![cdata[...]]></bytecode>
      <labels>
        <label name="touch" position="0" zapped="false" />
      </labels>
      ...
      <savedata>
        <var name="loop_count" v="-581" />
        ...
      </savedata>
    </robot>

    <savedata>
      <var name="bi_mesg_status" v="1" />
      <counters>
        <ctr name="particle13x" v="59" />
        ...
      </counters>
      <strings>
        <str name="$message"><![cdata["Hello world!"]]></str>
        ...
      </strings>
      <sprites y_order="0">
        <spr id="0" x="20" y="30" w="35" h="18" cw="35" ch="18" cx="0" cy="0" vlayer="1" overlaid="0" />
        ...
      </sprites>
      <vlayer size="32768" width="256" height="128">
        <rle2 id="vlayer">...</rle2>
        <rle2 id="vlayer_color">...</rle2>
      </vlayer>
    </savedata>
  </world>
</mzxml>


<xml>
<mzxml version="255">
  <board>
  </board>
</mzxml>


Obviously doesn't include everything, but gives a general idea. The programs/library stuff is WAAAYYY down the line. The world file size will inflate but the end result in terms of validation and flexibility will be desirable vs. the binary format. I chatted with ajs and essentially got approval on this but I want to know what everyone else thinks as well.
"Let's just say I'm a GOOD hacker, AND virus maker. I'm sure you wouldn't like to pay for another PC would you?"

xx̊y (OST) - HELLQUEST (OST) - Zeux I: Labyrinth of Zeux (OST) (DOS OST)
w/ Lancer-X and/or asgromo: Pandora's Gate - Thanatos Insignia - no True(n) - For Elise OST
MegaZeux: Online Help File - Keycode Guide - Joystick Guide - Official GIT Repository


  • (2 Pages)
  • +
  • 1
  • 2
 
  • Cannot start a new Issue
  • Closed Issue This issue is locked

Replies (20 - 20)

#21 User is offline  
Lachesis 

  • the pinnacle of human emotion
  • Group: DigiStaff
  • Posts: 3,895
  • Joined: 17-July 04
  • Gender:Female
  • Location:Sealand

Posted 29 June 2017 - 06:50 AM

Moving to: Archived Requests


  • (2 Pages)
  • +
  • 1
  • 2
  • Cannot start a new Issue
  • Closed Issue This issue is locked

0 User(s) are reading this issue
0 Guests and 0 Anonymous Users


Powered by IP.Tracker 1.3.2 © 2025  IPS, Inc.