Created
April 19, 2017 02:58
-
-
Save towerofnix/fa0fe5e6974ce099eb2e197afb0aeb07 to your computer and use it in GitHub Desktop.
just making this file public so the work isn't necessarily lost to the void of an individual person's forgetfulness.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Level Format | |
Levels are made of objects. Object data is stored under <level>, as an array of | |
arrays. The top-level delimiter (between object arrays) is "|" (pipe symbol); | |
within object arrays, the delimiter is "," (comma). As an example: | |
3,150,30|1,0,0 | |
..is equivalent to this array: | |
[[3, 150, 30], [1, 0, 0]] | |
The project XML document format is defined in CreatorProject.buildDocument | |
alongside the converse buildProject decode function. | |
The <level> contents format is defined in Creator.levels.exportEnvironmentData. | |
The term "environment" refers to the objects stored in a level. | |
Each environment object follows this format: | |
ID, XPOS, -YPOS[, ROTATION[, TILEID[, graphics stuff ] ] ] | |
Coordinate Grid | |
The object grid is more or less a cartesian coordinate system. Each object has | |
an X and Y position (its "coordinate"), which represents where it is placed in | |
the scene. | |
The X value determines its position on the X axis, which runs from left to | |
right. The X value of 30 denotes 30 units right from the center. | |
The Y value determines its position on the Y axis, which runs from top to | |
bottom. Note, however, that in the save format, an object's Y position is the | |
opposite of its actual game value. If an object's saved Y value is 30, it is | |
really positioned at -30 on the Y axis, which is 30 units above the center. | |
The positioning of tile-like objects along the "snap" grid may best be | |
described with a diagram of a number line: | |
-180 -120 -60 0 +60 +90 +180 | |
|---*---|---*---|---*---|---*---|---*---|---*---| | |
-150 -90 -30 +30 +90 +150 | |
Each tick line in the diagram (pipe symbols: "|") mark the visible edge of two | |
tiles. Stars ("*") mark the actual coordinate of tiles. In simpler terms, a | |
tile's coordinate values are physically placed in the center of the displayed | |
shape (not on a corner). | |
Most tiles have a physical size of 60x60 units. Large Tiles also have | |
coordinates that represent their centers; since they are twice the size of | |
normal tiles, their center is offset respectively. Where a normal tile may be | |
positioned at (30, 90, 150) a Large Tile may be positioned at (60, 180, 300). | |
List of Objects | |
Following this paragraph is a list of objects and their format, sorted by | |
object ID. It only contains objects from the categories "Blocks & Tiles", | |
"Walls & Decoration", and "Switches & Doors" currently; and is only guaranteed | |
to be up to dat through to the date of April 18, 2017. | |
- [1, XPOS, YPOS] Player | |
- [3, XPOS, YPOS] Floor | |
- [5, XPOS, YPOS, 0, TILEID] Tile | |
- [6, XPOS, YPOS, 0, TILEID] RampTile (slope top -> right) | |
- [7, XPOS, YPOS, 0, TILEID] RampTile (slope top -> left) | |
- [8, XPOS, YPOS, 0, TILEID] StairTile (slope top -> right) | |
- [9, XPOS, YPOS, 0, TILEID] StairTile (slope top -> left) | |
- [10, XPOS, YPOS, 0, TILEID] BackWall | |
- [11, XPOS, YPOS, 0, TILEID] BackWindow (triangle) | |
- [12, XPOS, YPOS, 0, TILEID] BackWindow (circle) | |
- [13, XPOS, YPOS, 0, TILEID] BackWall (alternate style) | |
- [14, XPOS, YPOS] BackLight | |
- [15, XPOS, YPOS] Water | |
- [16, XPOS, YPOS] WaterTop | |
- [17, XPOS, YPOS] Log | |
- [18, XPOS, YPOS] Bouncer | |
- [19, XPOS, YPOS] IceBlock | |
- [20, XPOS, YPOS] WeakFloor | |
- [21, XPOS, YPOS] Sandblock | |
- [22, XPOS, YPOS] LamWall (black style 1) | |
- [23, XPOS, YPOS] LamWall (black style 2) | |
- [24, XPOS, YPOS] LamWall (black style 3) | |
- [25, XPOS, YPOS] LamWall (black style 4) | |
- [26, XPOS, YPOS] LamWall (brown style 1) | |
- [27, XPOS, YPOS] LamWall (brown style 2) | |
- [28, XPOS, YPOS] LamWall (brown style 3) | |
- [29, XPOS, YPOS] LamWall (brown style 4) | |
- [30, XPOS, YPOS] LamWall (red style 1) | |
- [31, XPOS, YPOS] LamWall (red style 2) | |
- [32, XPOS, YPOS] LamWall (red style 3) | |
- [33, XPOS, YPOS] LamWall (red style 4) | |
- [34, XPOS, YPOS] TechWall (style 1) | |
- [35, XPOS, YPOS] TechWall (style 2) | |
- [36, XPOS, YPOS] LEDWall (style 1) | |
- [37, XPOS, YPOS] LEDWall (style 2) | |
- [38, XPOS, YPOS] LEDWall (style 3) | |
- [39, XPOS, YPOS] LEDWall (style 4) | |
- [40, XPOS, YPOS] Statue (1x3, "metal"-style) | |
- [41, XPOS, YPOS] Statue (2x2, "stone"-style) | |
- [42, XPOS, YPOS] Statue (1x3, "stone"-style) | |
- [43, XPOS, YPOS] Sign ("DANGER - CRITICAL - RAD LEVEL OVER LIMIT") | |
- [44, XPOS, YPOS] Sign ("DRINK - ZANPO") | |
- [45, XPOS, YPOS] Sign ("right arrows"-style) | |
- [46, XPOS, YPOS] Sign ("left arrows"-style) | |
- [47, XPOS, YPOS] Meltblock | |
- [48, XPOS, YPOS] NearLight | |
- [49, XPOS, YPOS] Ladder | |
- [50, XPOS, YPOS] Slider | |
- [51, XPOS, YPOS] Elevator | |
- [52, XPOS, YPOS] Dynamo | |
- [53, XPOS, YPOS] Windmill (clockwise) | |
- [54, XPOS, YPOS] Windmill (counter-clockwise) | |
- [55, XPOS, YPOS] Gear (clockwise) | |
- [56, XPOS, YPOS] Gear (counter-clockwise) | |
- [57, XPOS, YPOS] BigGear (clockwise) | |
- [58, XPOS, YPOS] BigGear (counter-clockwise) | |
- [59, XPOS, YPOS] Rod | |
- [60, XPOS, YPOS] TriGear | |
- [61, XPOS, YPOS] Teleporter (green) | |
- [62, XPOS, YPOS] Teleporter (orange) | |
- [63, XPOS, YPOS] Teleporter (purple) | |
- [64, XPOS, YPOS] Crate | |
- [68, XPOS, YPOS] Large Water | |
- [69, XPOS, YPOS] GoldPanel (style 1) | |
- [70, XPOS, YPOS] GoldPanel (style 2) | |
- [71, XPOS, YPOS] CyberPanel (style 1) | |
- [72, XPOS, YPOS] CyberPanel (style 2) | |
- [73, XPOS, YPOS] Wire Wall | |
- [74, XPOS, YPOS] HotWire Wall | |
- [75, XPOS, YPOS] Angular Wall | |
- [76, XPOS, YPOS] Rainbow Wall | |
- [77, XPOS, YPOS] Aqua Wall | |
- [78, XPOS, YPOS] Rock Pile (slope top -> left) | |
- [79, XPOS, YPOS] Rock Pile (slope top -> right) | |
- [80, XPOS, YPOS[, ROTATION]] Tunnel ("dirt"-style) | |
- [81, XPOS, YPOS[, ROTATION]] Tunnel Corner ("dirt"-style) | |
- [82, XPOS, YPOS[, ROTATION]] Tunnel Junction (3-way) ("dirt"-style) | |
- [83, XPOS, YPOS[, ROTATION]] Tunnel Junction (4-way) ("dirt"-style) | |
- [84, XPOS, YPOS[, ROTATION]] Tunnel End ("dirt"-style) | |
- [85, XPOS, YPOS[, ROTATION]] Tunnel ("blue"-style) | |
- [86, XPOS, YPOS[, ROTATION]] Tunnel Corner ("blue"-style) | |
- [87, XPOS, YPOS[, ROTATION]] Tunnel Junction (3-way) ("blue"-style) | |
- [88, XPOS, YPOS[, ROTATION]] Tunnel Junction (4-way) ("blue"-style) | |
- [89, XPOS, YPOS[, ROTATION]] Tunnel End ("blue"-style) | |
- [90, XPOS, YPOS, 0, TILEID] Large Tile | |
- [91, XPOS, YPOS, 0, TILEID] LargeBack | |
- [92, XPOS, YPOS, 0, TILEID] LargeWindow | |
- [115, XPOS, YPOS] TorchLight | |
- [116, XPOS, YPOS] TikiTorch | |
- [117, XPOS, YPOS] BackWall (3x2) | |
- [218, XPOS, YPOS] Big Elevator | |
- [219, XPOS, YPOS] 2way Platform | |
- [250, XPOS, YPOS] AutoDoor | |
- [251, XPOS, YPOS] TouchDoor | |
- [252, XPOS, YPOS] TouchFloor | |
- [253, XPOS, YPOS] BlueKey | |
- [254, XPOS, YPOS] GreenKey | |
- [255, XPOS, YPOS] YellowKey | |
- [256, XPOS, YPOS[, ROTATION]] BlueDoor | |
- [257, XPOS, YPOS[, ROTATION]] GreenDoor | |
- [258, XPOS, YPOS[, ROTATION]] YellowDoor | |
- [259, XPOS, YPOS] BlueSwitch | |
- [260, XPOS, YPOS] BlueRing | |
- [261, XPOS, YPOS] GreenSwitch | |
- [262, XPOS, YPOS] GreenRing | |
- [263, XPOS, YPOS] YellowSwitch | |
- [264, XPOS, YPOS] YellowRing | |
- [265, XPOS, YPOS] PermSwitch (green) | |
- [266, XPOS, YPOS] PermBlock (green) | |
- [267, XPOS, YPOS] PermSwitch (orange) | |
- [268, XPOS, YPOS] PermBlock (orange) | |
- [269, XPOS, YPOS] Level Door (style 1) | |
- [270, XPOS, YPOS] Level Door (style 2) | |
- [271, XPOS, YPOS] Level Door (style 3) | |
- [272, XPOS, YPOS] Level Door (style 4) | |
- [273, XPOS, YPOS] Level Door (style 5) | |
- [274, XPOS, YPOS] Level Door (style 6) | |
- [275, XPOS, YPOS] RemoteSwitch | |
- [276, XPOS, YPOS] MagicSwitch | |
- [277, XPOS, YPOS] OneWayDoor | |
- [278, XPOS, YPOS, ROTATION, 0, 0, 0, 0, , TARGET_X_OFF, TARGET_Y_OFF] Closer | |
- [279, XPOS, YPOS] PurpleDoor | |
- [280, XPOS, YPOS] TrapDoor (fall-only) | |
- [281, XPOS, YPOS] TrapDoor (jump-only) | |
- [282, XPOS, YPOS] FakeDoor | |
- [283, XPOS, YPOS] PurpleKey | |
- [284, XPOS, YPOS] InvisibleSwitch | |
- [285, XPOS, YPOS, 0, TILEID, 0, 0, 0, , TARGET_X_OFF, TARGET_Y_OFF] BurstTile | |
- [286, XPOS, YPOS] CaveIn | |
- [287, XPOS, YPOS] Cinderblock | |
- [288, XPOS, YPOS[, 0, 0, 0, 0, 0, TEXT]] Inscription | |
- [289, XPOS, YPOS] WoodPost | |
- [351, XPOS, YPOS[, 0, 0, 0, 0, 0, TEXT]] Wizard | |
- [352, XPOS, YPOS[, 0, 0, 0, 0, 0, TEXT]] General | |
- [353, XPOS, YPOS[, 0, 0, 0, 0, 0, TEXT]] Owl | |
- [401, XPOS, YPOS] Brick (2x1 "blue"-themed) | |
- [402, XPOS, YPOS] Brick (2x2 "blue"-themed) | |
- [403, XPOS, YPOS] Brick (3x1 "blue"-themed) | |
- [404, XPOS, YPOS] Brick (2x2 "grey"-themed) | |
- [405, XPOS, YPOS] Brick (2x2 "dark grey"-themed) | |
- [406, XPOS, YPOS] Brick (2x2 "grey red"-themed) | |
- [407, XPOS, YPOS] Brick (2x1 "grass"-themed) | |
- [408, XPOS, YPOS] Brick (2x2 "dirt panel"-themed) | |
- [409, XPOS, YPOS] Brick (2x2 "dirt"-themed) | |
- [410, XPOS, YPOS] Brick (3x1 "grass"-themed) | |
- [411, XPOS, YPOS] Brick (2x1 "neon"-themed) | |
- [412, XPOS, YPOS] Brick (2x2 "neon"-themed) | |
- [413, XPOS, YPOS] Brick (3x1 "neon"-themed) | |
- [451, XPOS, YPOS] Lava | |
- [452, XPOS, YPOS] LavaTop | |
- [456, XPOS, YPOS, 0, TILEID] RampTile (slope bottom -> right) | |
- [457, XPOS, YPOS, 0, TILEID] RampTile (slope bottom -> left) | |
- [501, XPOS, YPOS] BackBrick ("blue"-themed) | |
- [502, XPOS, YPOS] BackBrick ("grey"-themed) | |
- [503, XPOS, YPOS] BackBrick ("dirt"-themed) | |
- [504, XPOS, YPOS] BackBrick ("neon"-themed) | |
- [601, XPOS, YPOS] FrontPlant (2x2) | |
- [602, XPOS, YPOS] Plant | |
- [603, XPOS, YPOS] FrontPlant (1x2) | |
- [604, XPOS, YPOS] FrontGrass | |
- [605, XPOS, YPOS] Grass | |
- [606, XPOS, YPOS] Etching (style 1) | |
- [607, XPOS, YPOS] Etching (style 2) | |
- [608, XPOS, YPOS] FrontStatue | |
- [609, XPOS, YPOS] FrontScreen | |
- [610, XPOS, YPOS] Skulls | |
- [611, XPOS, YPOS] SpiderWeb (style 1) | |
- [612, XPOS, YPOS] Window | |
- [613, XPOS, YPOS[, ROTATION]] Truss | |
- [614, XPOS, YPOS] Waterspout (style 1) | |
- [615, XPOS, YPOS] Waterspout (style 2) | |
- [616, XPOS, YPOS] Waterspout (style 3) | |
- [617, XPOS, YPOS] SpiderWeb (style 2) | |
- [618, XPOS, YPOS] WoodPostBehind | |
- [800, XPOS, YPOS, 0, 0, GRAPHICS..] TextureBlock | |
- [801, XPOS, YPOS, 0, 0, GRAPHICS..] TextureWall | |
Ideas | |
Perhaps a rotated Elevator? | |
A rotated TikiTorch? | |
Can other things (not Wizards, Owls, etc) talk? | |
Multiple player objects? | |
Rotated MagicSwitch? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment