Javascript must be enabled
top

DojoCAD
v2.5.14: 2022-09-07
Source  Feedback  Bugs
Contact: Forums  Reddit  YouTube  git

Thanks: AeliosZero

What is this?

This is a tool for planning a valid Warframe Clan Dojo layout. I've tried to model the in-game room boundaries and constraints as accurately as possible.

Disclaimer

All the room boundaries have been found by in-game experiment, waypoint measurement, or straight-up guesswork. If you see a problem or if you'd like to help me determine bounds and stats for the old, discontinued rooms then please drop me a line!

Getting started

The starter Clan Hall is already added by default.

Click the button to select a category and room to add. Then drag and click where the room should be placed.

Examples

Table of Contents

Keyboard shortcut cheat sheet

  • Shift-click: Add a room to the selection
  • Shift-drag: Add an area of rooms to the selection
  • Control-Shift-drag: Add an area of rooms across all floors to the selection
  • Control-A: Select all rooms on the current floor
  • Control-Shift-A: Select all rooms in the layout, across all floors
  • Drag background: Scroll the screen
  • Control-Drag background: Autoscrolls the screen when near the edge
  • Drag room-Shift: Disable door snapping while dragging rooms
  • Drag room-Control/Command: Snap to the nearest 8m while dragging rooms
  • R: Rotate the selected rooms (works while dragging)
  • D: Duplicate the selected rooms
  • Alt-click: Delete a room or the selected rooms
  • Control-C: Copy the selected rooms
  • Control-X: Cut the selected rooms
  • Control-V: Paste the previously copied or cut rooms
  • Up arrow key: Move the view up a floor
  • Down arrow key: Move the view down a floor
  • Escape: Cancel adding/moving a room or rooms, or cancel out of any open menu

Navigation

Click and drag anywhere in the grid area to move around.

This includes clicking on a room, as long as that room isn't currently selected (see Selecting a Room).

If a room is selected and being dragged into position, then dragging near the window boundary will automatically scroll in that direction. The closer the cursor is to the window boundary the faster the scrolling.

Zooming

Use the mouse wheel to zoom in and out. The cursor marks the center point for zooming.

On a touch screen, pinch two fingers to zoom in or spread them to zoom out.

Changing Floors

The highlighted floor on the left side of the screen shows which floor is currently in view. The floor numbers start at 1 on the ground floor and go up from there. Below floor 1 is B1, and they count down from there.

Use the button above the floor listing to view the next floor up. Use the button to view the next floor down.

You can also use the up and down arrow keys to move between floors.

Click on a floor to go directly to it.

The floor listing has a maximum number of floors it will display at one time. If there is overflow on the top any/or bottom then the and/or buttons will be replaced with and/or

Floors containing rooms with errors will be highlighted in red.

Editing

Selecting a Room

Select a room by clicking on it without dragging. The currently selected room will have a blue outline around it.

You can also click on a room that's not in the current floor but visible in the background in gray to go directly to that room's floor and select it. Note that if there's a room on a floor directly above the room where you're trying to click then you will select that one instead, even if you can see the lower room through the holes in the upper one.

Multiselection

Hold the Shift key or click the button to enable multiselect mode.

While multiselect is enabled, clicking on rooms will add them to the current selection. Clicking on an already selected room will unselect it.

While multiselect is enabled, clicking and dragging will create a selection box. All rooms in the selection box will be added to the current selection when the mouse button or touch is released.

By default multiselect mode only selects rooms on the current floor. Holding both Shift and Control/Command while dragging or clicking a room will select across all floors. You will see a different multiselect icon, when multi-floor selection is enabled.

Select All

Use Control-A to select all rooms on the current floor.

Use Shift-Control-A or Shift-Command-A to select all rooms in the entire layout, across all floors.

Under the room menu, use Select All to select all rooms of the same type across the whole dojo.

Adding Rooms

Click the button to show a menu of room categories. Click one of these categories to show a menu of rooms. Click one of those rooms to add one under your cursor. Drag and drop the room to where you want to place it.

If you have already added a room once, then the menu will contain a quick option at the bottom to add another copy of the last room you added.

Clicking on the currently selected room or rooms will bring up the room menu. Click Duplicate to create a copy of the room or rooms to place somewhere else.

Hitting the D key when a room or rooms are selected will duplicate the without having to bring up the menu.

Hitting Escape while dragging a newly created room or rooms for the first time will cancel the add operation and remove the room or rooms.

Moving Rooms

After selecting one or more rooms, click again and drag on one of the selected rooms to move them.

Hold down Control/Command while dragging rooms to snap their position to the nearest 8 meters on the grid. Otherwise the rooms' positions are snapped to the nearest meter.

If you drag one room so one of its doors is close to another room's door that's facing the opposite direction, then all of your currently selected rooms will be snapped to connect those doors.

  • The zone of sensitivity with door snapping does not change with zoom. If you're having trouble snapping a room to the correct door then try zooming in.
  • You can also control the priority of door snapping by clicking a point on the room closer to a particular door when dragging.

Hold down Shift while dragging rooms to disable door snapping.

Note that Shift-dragging, Alt-dragging, and door snapping also apply to newly created or pasted rooms that are in the process of being placed for the first time.

Hitting Escape while dragging one or more rooms will cancel the operation and return the rooms to where they started.

Rotating Rooms

Clicking again on the a currently selected room will bring up a menu. Click to rotate the rooms 90 degrees.

You can also press the R key to rotate the seleted rooms. This also works while dragging the rooms.

If more than one room is selected, then all of the rooms will be rotated together. The center of rotation depends on how the rotation was triggered.

  • If the rotation was triggered from the option on the room menu, then the room that was clicked on to bring up the menu is the center or rotation.
  • If the rotation was triggered while dragging rooms, the room that was clicked to start the drag operation is the center of rotation.
  • If you're just using the R key with a set of selected rooms, then the center of rotation is the center of the rooms' combined bounding box.

Changing an Elevator's Floor

Elevators span two floors, either going up from the current floor or going down. To switch which direction an elevator is going, select only that elevator and then click again to bring up the room menu. Select to swap the direction the elevator is going.

Deleting Rooms

Clicking again on a currently selected room will bring up the room menu. Click to delete the selected room or rooms.

Press the Delete key to delete the selected rooms without having to bring up a menu.

Hold down Alt and click on an unselected room to delete it with one click.

Hold down Alt and click on an selected room to delete all selected rooms with one click.

Copy and Paste

With one or more rooms selected, click on a selected room and use the Copy option in the room menu to copy the selected rooms to an internal clipboard. You can also use Control-C.

Use the Cut option or Control-X to copy the selected room or rooms to the internal clipboard and delete the originals.

When there are rooms on the clipboard, Under the Add menu will be a Paste option. You can also use Control-P.

Deleting Everything

Click on then to start fresh.

Note that this opens as a new link, so you can use your browser's Back button to go back to your previous layout.

Undo and Redo

Click on or use Control-Z to undo your last action. Actions include moving, rotating, changing floors, adding, deleting, and changing the selection. You can continue clicking or using Control-Z to undo previous actions.

Click or use Control-Shift-Z or Control-Y to redo an action you have just undone. You can continue clicking or using Control-Shift-Z/Control-Y to redo previously undone actions.

Performing another action after undoing will clear out all the redoable actions.

You can undo a maximum of 250 actions.

Cosmetics

There are a few cosmetic options available, beyond what's in the game. They don't affect any of the core layout mechanics or rules. They are intended for making the layout easier to follow and understand.

Duplicating or copying a room will carry over any cosmetic customizations.

Colors

By default, rooms are gray like they appear in the in-game map. However, under the room menu is a Color option. This will bring up a color picker that can assign a color to all the selected rooms.

Use the three sliders to adjust the hue, saturation, and brightness.

Click Clear to reset the selected rooms back to gray.

Click Save or just close the color picker to save the color change.

Click Cancel to close the color picker and reset and changes.

Beside there are four options for selecting rooms with similar colors.

  • Select Exact: Selects all rooms in the dojo with the same hue, saturation, and brightness settings.
  • : Selects all rooms in the dojo with the same hue, regardless of other color settings.
  • : Selects all rooms in the dojo with the same saturation, regardless of other color settings.
  • : Selects all rooms in the dojo with the same brightness, regardless of other color settings.

If there are already some rooms with colors in the layout, then those colors will create markers on the saturation, and luminance sliders. Moving any slider close enough to a mark will snap to them. The snapping can be disabled by holding the shift key.

If you have multiple rooms selected that currently have different colors, then only the color parts that are modified will be changed. For example, if you have a red and a green room selected, and only adjust the brightness slider without touching hue, then the rooms will still be red and green and only their brightness will be changed.

Q: Is this entirely too much attention paid to a color picker?

A: Not for Warframe

Labels

Any room can have a label assigned to it. Under the room menu is a Label option that will bring up a label editor. It's only available if a single room is selected.

Enter the room's label in the the text box. The label can have multiple lines. It will be centered on the selected room.

Use the scale slider to change the size of the label.

Like with the color pickers, the sizes of other labels in the layout will show up as markers that the scale slider can snap to. Hold The shift key to disable snapping.

Click Clear to remove the label from the selected room.

Click Save or just close the label editor to save the label change.

Click Cancel to close the label editor and reset and changes.

If a room has a color customization then that color also applies to the label.

A room can be selected and dragged by clicking on its label.

Label Object

Under the Utility section of the Add menu there is a Label object.

The Label object does not count towards the resource totals or dojo boundaries. It allows you to place a label that's not tied to the center of a dojo room. You can place as many of these as you want.

When generating a PNG, the boundaries of the image are determined by the actual rooms and not the labels. There is a little bit of a margin, but if a label is too big, or if a label object is placed too far away from the rooms themselves, then it won't show up completely or at all.

Constraints

There are three types on constraints on room placemement: Room Resources, Room Boundaries, and Room Rules.

Room Resources

There are three constraints that affect all rooms in the Dojo:

  • Room Count: There's a hard limit of 128 rooms total.
  • Energy: Each room requires some amount of Energy. You must build Reactors to increase the available energy.
  • Capacity: Each room requires some amount of Capacity. You must build Clan Halls or other Halls to get more capacity.

The current Room count, Energy, and Capacity of your dojo is displayed in the lower left. When any of those resources is exceeded it will be highlighted in red.

Room Boundaries

If you move a room too close to another room so that their boundaries overlap then they will be highlighted in red. The dojo layout is invalid as long as there are any room boundaries overlapping.

Note that rooms on adjacent floors may also overlap boundaries. If a currently visible room is overlapping with a room on a different floor then you will see just the other room's boundary in red.

Special Note About the Dry Dock

The Dry Dock is very big. The outline and bounds visible on the Dry Dock do not extend all the way to the back of it, which extends roughly 6-7 times farther than the visible size of the Dry Dock. Boundary collisions with the entire length of the Dry Dock will still be detected, but it may not be obvious what's colliding unless you zoom out and find the Dry Dock.

Special Note About the Discontinued Rooms

The old, discontinued dojo rooms are available to place in your layout. They come with a warning icon because there are number of caveats:

Pretty much the only information I have about the discontinued rooms is from screenshots and data other players have provided.

I can take a guess at boundary dimensions. But knowing that the discontinued rooms do not follow a standard grid, my guesses are looser than usual. All I know for sure is that they do not line up with each other or the newer rooms.

I know that the Old Clan Hall provides the same energy and capacity as the starter Clan Hall, and that it's no wider than the starter Clan Hall. Everything else I'm assuming:

  • I'm assuming that the Old Reactor provides the same 25 energy as a newer reactor
  • For everything else I'm assuming they use zero energy and consume zero capacity.
  • I'm assuming all the old rooms have the height and depth of the starter Clan Hall.

Specific Room Rules

There are a handful of constraints that apply to specific rooms:

  • You need at least one Spawn Room. Possible spawn rooms are:
    • Any of the Classic Clan Halls
    • Inspiration Hall
    • Entrati Audience Chamber
    • Infested Chamber
    • Starlight Market
    • Earth Forest Chamber
    • Uranus Chamber
    See below for more on Spawn Points.
  • An Oracle is the prequisite for all the Labs
  • You can only have one of each classic Clan Hall
  • You can only have up to three Inspiration Halls
  • You can only have up to five Obstacle Course Architect rooms
  • You can only have one of each type of Barracks, and each tier Barracks is the prerequisite for the next one.
  • You can only have one Dry Dock

When a room is violating a specific rule then it will be highlighted in red.

Other Constraint Feedback

When a room is violating a resource, boundary, or rule constraint it will be highlighted in red. Clicking on the room twice to bring up the room menu. Beside the room name will be a button. Clicking on it will bring up a list of the constraints that the room is breaking.

The floor indicator along the left side of the screen will hightlight in red any floors containing rooms with constraint violations.

The menu will show buttons next to rooms that will have a constraint violation if added. This also applies to the Duplicate option in the individual room menus.

Finally, in the top bar there is a global error icon, either , , or . Click on it to bring up a list of all errors or warnings detected in the dojo.

Resources

When adding or duplicating a room, next to the energy and capacity constraints will be a resources button. Clicking this will display the resources needed to build that room, considering the current clan tier.

At the bottom of the screen, next to the total rooms, energy, and capacity, is another resources button. Clicking this will display the total resources needed to build the entire dojo, considering the current clan tier.

Clan Tier

The Clan Tier is determined by highest tier Barracks room that is present. There are five tiers:

  1. 0. Ghost (No Barracks)
  2. 1. Shadow
  3. 2. Storm
  4. 3. Mountain
  5. 4. Moon

The current Clan Tier is displayed at the bottom of the screen next to Clan Affinity and Resources.

All resources displayed will be for the current Clan Tier of the layout. Note that this will be an overestimate; you're going to build at least some of your dojo before building any Barracks.

Clan Affinity

Some of the rooms you can build provide Clan Affinity when they're built for the first time.

Clan Affinity Rooms

The 11 rooms that currently provide Clan Affinity are:

  • Oracle
  • All six labs
  • Both obstacle courses
  • Dueling Room
  • Temple of Honor

These rooms will appear with a icon in the menu until the first one is added to the layout. After that they will be added to the count at the bottom of the screen.

If you delete the last of one of these rooms then you lose the Clan Affinity for that room until it is built again.

Saving And Sharing

The current layout and view are continually saved to your browser's location bar. If you go forward or back in your browser history, then reversing that should restore the layout and view you had previously.

Sharing

A copy of the browser location is also available by clicking , then , then Copy. This will place a link to the current layout in your clipboard. Anyone can use this link to recreate your dojo layout.

Local Storage

Click , then to open Local Storage.

Use Add to add the currentl layout as a new entry in Local Storage. You will be asked to give the layout a name.

If there is an existing entry in Local Storage, then you can use to overwrite that entry with the current layout.

An existing entry can be removed with .

Click on the the Name and Date column headers to sort by that column. Clicking again will reverse the direction of the sort.

Note: Local Storage is specific to your browser instance. To share a layout with other people, or with yourself on another browser, you will have to use to share a link.

Exporting to PNG

Click then to bring up a menu for exporting your dojo layout to one or more PNG files.

  • The Scale field controls the scale of the PNG image. It's in pixels per meter. The larger the scale the bigger the image will be.
  • The Size field shows the size of the PNG(s) that will be generated.

Click Create to generate the PNG images. They will be displayed as links for you to download.

If your dojo has multiple floors then a separate image is generated for each floor. The same size and positioning is used for each floors' image, so they will line up on top of each other.

If you have a huge dojo and generate a huge image then it may take a little while for the image links to appear.

Structure Mode

Basic Mode

Basic structure checking is enabled by default. All you need to do is add a spawn point.

Spawn Point

On rooms that support being a spawn point, click on the room menu and select Set Spawn Point to designate that room as the spawn point. If another room is already designaged as the spawn point then the spawn point will be moved.

The designated spawn point room will have a marker on it.

To remove the spawn point from your layout, click on the spawn point room menu and select Remove Spawn Point. After this your layout will not have a spawn point.

Connectedness

When a spawn point is designated the dojo will be checked to make sure every room is connected to the spawn point room, either directly or indirectly through other rooms.

Rooms that are not connected to the spawn point room will be highlighted in yellow and show up as warnings.

Advanced Mode

Enable Advanced Structure Mode by clicking , then , then checking the Enabled checkbox.

A spawn point is required for Advanced Structure Mode.

When Advanced Structure Mode is enabled your dojo layout will be overlayed with green lines. This shows the internal structure of your dojo as it would exist inside the game.

Your Dojo is a Tree

Whenever you add a room do your dojo, you start with a door. The door you use to create a new room creates a parent-child relationship between the rooms on either side. The room built first is the parent, the room bult second is the child. This build order is mostly set in stone.  It's there until those room are destroyed.

If you start from any room, then the build order of its child rooms, and their child rooms, and their child rooms, etc., branch out like a tree. Computer science has a technical term for this kind of structure. It's called a "tree". Computer Science is not good at naming things.

The root of this tree is your Spawn Point. The branch that starts at your Spawn Point contains all other branches inside it.

When Advanced Structure Mode is enabled, DojoCAD will try to build the tree structure from your layout, starting with the spawn point. It will be able to do so automatically, unless your layout contains loops.

Tree Structure Display

The tree structure is shown in Advanced Structure Mode as green arrows over the doors, pointing from parent room to child room. These arrows are joined by lines through the center of each room. Each room's center is highlighted with a larger green square.

Select Branch

When Advanced Structure Mode is enabled and your layout has a valid tree structure the room menu will have a few more options for selecting rooms.

Select a single room and use Branch to select all the child rooms branching out from that room.

In-game, the branch under a room represents all the rooms that must be destroyed before that room can be destroyed, assuming your spawn point stays the same.

Select Root

Select a single room and use Root to select the path of parent rooms from that room leading back to the Spawn Point.

In-game, the root path leading leading back to the spawn point represents all the rooms that must be built before that room can be built, assuming your spawn point stays the same.

Moving the Spawn Point

If the layout has a valid tree structure, then the spawn point can be moved anywhere and it will still be a valid tree.

If the spawn point is moved from one side of a room to the other along the tree, then the branch structure for that room changes. Its previous parent becomes one of its child branches, and one of it's previous child rooms becomes its parent. This is sometimes helpful in destroying a room while preserving one of its previous child rooms, but it practice it's is pretty hard to avoid destroying tons of other rooms.

Loops

The defining characteristic of a tree is that branches don't connect again after branching out. With valid a tree there is no way to return a room you already visited without retracing your steps. You must ultimately end up at the end of a branch.

Obviously, you can build a dojo with a loop in it. So what's going on?

You'll notice that no other map in the game has loops in it. Explore the map on any in-game mission and you'll only find dead ends. There are no large-scale loops involving multiple rooms. It seems only dojos can have those.

I'm pretty sure that under the covers, it's still the same basic engine driving both mission maps and dojos. Both use tree structures to define the layout in terms of branches. However, dojos have a special kind of door that can cross between two branches. I'm calling this a Cross Branch Door because I'm not good at naming things, either.

Loop Detection

When Advanced Structure Mode is enabled, any loops detected will be shown in two ways. The rooms involved in the loop wll be as highlighted as warnings in yellow. And the doors involved in the loop will have bi-directional yellow arrows on them.

Note that if you have a complicated layout then it's possible to have a some rooms involved in more than one loop.

Most of the Advanced Structure Mode features, like selecting branches and root paths, are not available until the loops have been resolved.

Cross Branch Doors

Click on the arrow above any door to bring up a small menu. Use to force that door to be a Cross Branch Door.

Cross Branch Doors are allowed to be connected, but they are not counted when determining the tree structure of the layout.

Click on a Cross Branch Door and use to reset the Cross Branch Door setting.

Note that breaking a door connection by moving or deleting a room will also clear any Cross Branch setting that may have been on that door.

How to find cross branch doors

If you're using DojoCAD to model an existing dojo then the Cross Branch Doors are already in place in your dojo. You just have to go into the game and find where they are. This can be tedious, but it's not difficult.

When you try to destroy a room, one of two things happens:

  1. You get a prompt asking if you really want to queue the room for destruction. This means the room you're in is at the end of a branch and has no child rooms.
  2. You get a message about child components, and the option to show them in the minimap. This will highlight child rooms with blue markers on the in-game map.

Note that you don't actually have to go through with destroying the room. Just getting far enough to see one of those two prompts is good enough.

Figuring out Cross Branch doors from these two results is a bit of a puzzle, but there's a simple rule:

If you find a door that is never highlighted when trying to destroy the rooms on both sides, then that is a Cross Branch door.

Putting this into practice:

  1. Pick a room in your dojo that has a looping warning in DojoCAD, and try to destroy it. Not your Spawn Room.
  2. If you get the prompt to queue it for destruction immediately, then pick any door along the loop and go to step 4.
  3. If you get the child room prompt, then tell it to show child rooms.
  4. Follow the loop through doors with blue icons on them until you reach a room where the icon is on a console, or until you reach a room where the next door in the loop doesn't have the icon on it.
  5. Go through that door and try to destroy that room.
  6. If you get the prompt to queue it for destruction immediately, then go to step 8.
  7. If you get the child room prompt, then tell it to show child rooms. The door you just went through should not have the blue icon on it.
  8. In DojoCAD, mark that door you just went through as a Cross Branch Door.
  9. Repeat until DojoCAD doesn't show any more loops.

Steps 5, 6, and 7 may not always be necessary, but it's good to check yourself.

Once you have the tree structure from your in-game dojo mapped in DojoCAD, you can start using the Select Branch and Select Root along with spawn point manipulation to figure out the best way to destroy rooms in your dojo.

Structure Menu

There are more options available under the Structure menu after enabling it.

Find Spawn Point

If you have a big dojo or otherwise can't find the spawn point, use Find Spawn Point to automatically show your spawn point and select it.

Auto-Fix Structure

If you're designing a layout from scratch and don't want to deal with resolving loops manually, then use Auto-Fix Structure to automatically set any Cross Branch Doors necessary to resolve loops and make the structure at valid tree.

Auto-Fix Structure will try to create the shortest branches possible, according to your current Spawn Point. Shorter branches means the dojo can be completed faster and torn down faster.

If there are already some Cross Branch Doors set then they will be left alone.

Reset All Structure

To reset all the Cross Branch doors in the layout, use Reset All Structure. If there were any loops before then they will have to be resolved again.

Settings

Click then to open Settings.

Settings are stored with your browser, so opening DojoCAD again should restore the same settings you had before.

Show all Floors

By default, while viewing one floor all the other floors will be shown grayed out in the backgorund. If that gets too cluttered, or if it's lagging your browser, then that can be disabled with the Show All Floors setting.

If you have Show All Floors disabled then you can still select rooms on other floors using Ctrl-Shift-A, Ctrl-Shift-drag, and the various methods for selecting rooms of the same type or color. The other rooms will only show up when selected.

Show Map Markers

By default, the map markers for certain rooms like labs and the Dry Dock are displayed. Use the Show Map Markers setting to turn that off.

Note that this setting also applies to images generated with the PNG function.

Show Labels

Sometimes labels can clutter things up when you're editing. Use the Show Labels setting to turn off labels without removing them.

Note that this setting also applies to images generated with the PNG function. You also cannot edit labels unless Show Labels is enabled.

Dim Rooms

Sometimes bright room colors can make reading labels or looking at Advanced Structure Mode more difficult. Use the Dim Rooms setting to make the actual rooms darker.

I have to be honest. This setting is only here to make Advanced Structure Mode look cool.

Enable Rules

Use this setting to turn off rules for room limits, prerequisites, energy, and capacity. When disabled those things will not be checked and will not add errors to the rooms and the layout.

Note that this not affect collision errors, which are still checked.

Autosave

If the Autosave setting is enabled, then as you edit your layout it will be automatically saved to Local Storage under an special Autosave entry.

When you open DojoCAD with no layout in the link, it will automatically load anything currently saved as an Autosave

If you have an Autosave but you accidentally load a DojoCAD link with a layout, your original autosave will still be there in Local Storage until you actually make an edit.

Update Notes

v1.1: 2020-01-19

  • Added compression for the model string, it saves about 30-50% on the size of URLs. All old URLs will still work (thanks u/Almagnus1)
  • Added wall displays for the Dry Dock 1 floor below and 3 floors above to make it more clear that you can't build any rooms there (thanks u/Almagnus1)
  • Adjusted rules for Hall prerequisites and added a new rule to make sure you have at least one hall (Thanks u/yarl5000)
  • Fixed lower boundary for Dry Dock (thanks (PC) KCToxic)
  • Fixed boundary for Crimson Branch (thanks KingOfYou115 and u/Ramarr)
  • Fixed the constraint on Obstacle Course Architect rooms to 5 instead of 3 (thanks u/Alighierian)
  • Added some keyboard shortcuts (thanks Kisutora):
    • Pressing R will now rotate the selected room. Note that this also works while dragging the room. Absolutely do not hold the R key down it is definitely not fun at all ;)
    • Pressing D will now duplicate the selected room.
  • Did some re-measurement of room upper/lower boundaries and re-testing of combinations (thanks Zarzab)

v1.2: 2020-01-22

  • Added my best guess at the old, discontinued rooms. Note that the dimensions, bounds and stats for these rooms are speculative at best. (thanks (PC) ShadowMageAlpha, u/Ramarr)
  • Added a less severe Warning system, currently only applies to the presence of discontinued rooms
  • Added map icons for things that have map icons in-game
  • Implemented auto-scrolling when dragging a room near the boundary of the window.
  • Overhauled the menus, adding icons and close buttons and drop shadows and other cool crap.
  • Added visible door markers when moving a room.

v1.3: 2020-02-09

  • Now showing rooms that are not on the current floor in the background in gray. Selecting a room now always goes to the floor that room is on. (thanks (PC) .--._---_.--_._.-)
  • Shift-clicking a room automatically selects it for dragging, so you don't have to click every room twice to move a bunch of rooms in a row.

v1.4: 2020-02-13

  • Implemented undo/redo.
  • Updated the boundary on the Obstacle Course Architect room (thanks yodaxep)
  • Updated the Observatory with new slightly smaller bounds.
  • Added a more efficient but goofball minimal dojo example (thanks Egdot)
  • Updated the bounds on the Crimson Branch yet again and slightly updated the bounds on the Chem Lab (thanks zaza7)
  • Added the Open Space room
  • Tweaked the bounds on the Obstacle Course Architect and Open Space rooms after further testing. The Inspiration Hall now shows up on the floor above it in game.
  • Added the Entrati Audience Chamber room
  • Oh, Inspiration Halls can be spawn points
  • Apparently the Entradi Audience Chamber can also be a spawn point
  • Taking a few bites out of the starter hall bounding box (thanks wingcobob )
  • Added an ideal decorator's example layout (thanks Vash)

v1.5: 2020-10-29

  • Added room counts to all room menus. Added room and total resource displays.
  • Added the Infested Chamber after disabling all the safety features in my drawing tool.
  • Tweaked the Tenno Lab bounds (thanks ---EGG---Fantoman)
  • Fixed the ceiling bounds on the Entradi Audience Chamber and Infested Chamber (thanks gyrozco)
  • Fixed the bounds on the Orokin Lab (thanks zaza7)
  • Fixed the bounds on the Large Garden (thanks AeliosZero)
  • Removed the build dependencies between clan halls
  • Added the Starlight Market
  • The Infested Hall and Starlight Market require 5 energy instead of 2 for some reason (Thanks Smerkut)

v2.0: 2021-04-04

  • Multiselect, copy/paste
  • Labels
  • Color coding
  • Fixed the bounds on the Entrati Audience Chamber, Infested Chamber, and Starlight Market (thanks kukurbis and AeliosZero)
  • Fixed resources on the Dry Dock and Crimson Branch
  • Hue and saturation and luminance and bears, oh my
  • Adding slightly different images for the open space's and inspiration hall's appearance on adjacent floors (thanks AeliosZero)
  • Fixed the new hall height yet again. I swear I got it right this time. (thanks purzzle)

v2.1: 2021-05-14

  • Fixed a bunch of issues with selecting across floors and added more ways to do it.
  • Fixing total resources not decreasing when you delete a room (thanks flieee)
  • Fixed the Observatory bounds yet again (thanks CobaltRat)
  • Fixed a number of bugs with duplicating/copying rooms across floors (thanks Kavukamari)
  • Added the Ventkids' Bash Lab
  • Added an icon for the Ventkids' Bash Lab because I can
  • Added size slider for labels
  • Fixed the Clan Hall bounds (Thanks adrienne)
  • Fixed the Bash Lab prerequisite
  • Flip the label outline color to white when the brightness of a room's color is set low enough (Thanks adrienne)

v2.2: 2021-08-10

  • Added a spawn point marker and connectedness checking
  • Added local storage for saving layouts
  • Added settings menu with settings for showing other floors, showing map markers, and autosave
  • Added setting for showing labels

v2.3: 2021-08-31

  • Structure mode: tree display, loop checking, loop resolving, basic branch analysis
  • Fixed a bug with placing a new room or rooms so its center is exactly at (0, 0) on the grid (thanks DrLego
  • Fixed generating a PNG with structure mode enabled (thanks DrLego)
  • Fixed Bash Lab bounds (thanks deathbybolt)
  • Fixed Bash Lab bounds again, along with Elevator bounds (thanks KrauszerII)
  • Fixed Bash Lab bounds again again, along with Chem Lab and starter Clan Hall bounds (thanks Dash, apparently)
  • Fixed Bash Lab bounds again again AGAIN, and fixed the bounds on the Observatory, Elevator, and all connectors (thanks adrienne, Imperial Salamander, deathbybolt, KrauszerII, Dash, apparently, and probably a ton more)
  • Took a closer look at the Dry Dock sub-basement bounds, updated my actual dojo layout, fixed some debug stuff
  • Added an old room I've never seen before
  • Updated Barracks outline, bounds are still the same.

v2.4: 2022-01-15

  • Added a Clan Affinity room rounter (thanks Vash)
  • Made a massive but almost unnoticeable optimization to scrolling/zooming
  • increased the maximum zoom out, allowing more finer-grained zooms in the URL
  • Shortening big numbers in the layout stats section at the bottom
  • Added an extra, barely noticeable bounding box for the second floor of the Temple of Honor (thanks id)
  • Re-measured literally everything and updated the bounds on eight rooms, including the Bash Lab which has tiny bounding box just for the light tunnel, and the Duelling Room which is just slightly, slightly less than square (thanks CookiesRUs and Dash, apparently)
  • Added Earth Forest Chamber and Uranus Chamber.
  • Oops doing a little XSS cleansing on the label text

v2.5: 2022-02-12

  • Added Clan Tier tracker, broke Barracks into four separate rooms because there actually is a difference.
  • Fixed the ceiling level on the Forest Chamber (thanks ZiuNto)
  • Since you can't put anything immediately above it, added an image for the floor above the Forest Chamber.
  • Fixed seams in the Structure Mode tree lines on 6-door and 10-door halls that literally only I would notice. It was bugging me, okay?
  • Fixed the bounds on the Obstacle Course Architect and updated the display on the Open Space, the former is shorter than the latter by 2m (thanks ZiuNto)
  • Oh, you can't use the Tree room, Uranus room, or the freaking Starlight Market as spawn rooms. Because of reasons. (thanks BabyKurama's B.U.A)
  • Fixed the bounds on the Tenno Lab (thanks MostlyRhyme)
  • Updated bounds on the Dry Dock by being a crazy person
  • Added Kuva Asteroid and Orokin Tower Chamber, fixed ceiling bounds on the other halls
  • Updated bounds on the starter Clan Hall (thanks manuelando)
  • Adjusted bounds on the Open Space (thanks ZiuNto)
  • Adjusted front bounds on the Open Space by one freakin' meter (thanks 5184)
  • Adjusted vertical bounds on the Open Space and Obstacle Course Architect's entrance halls (thanks Strayspark7)
  • Added a visual marker for the piece of glass on the Starlight Market that clips into the adjacent room (thanks XHADgaming)
  • Noticed my testbed was broken and had to adjust the bounds on the Open Space, Obstacle Course Architect, Elevator, and Observatory
  • Removed the piece of glass on the Starlight Market that clips into the adjacent room, because apparently all I had to do to get that fixed was put it in DojoCAD

To Do

  • Smaller, binary layout format for links
  • Option to set Cross Branch Doors automatically as new rooms are added.
  • Build order analysis
    • Optimal steps for building a layout from scratch
    • Optimal steps for tearing down a layout
    • Optimal steps for changing from one layout to another
  • More metadata
    • Maybe find some place to cram in decoration capacity
    • Maybe think about possibly considering throwing clan research data in here in some way perhaps
  • Add some actions for the error menus, i.e. clicking on the "Oracle is required" error creates an Oracle room to place.
  • Level of detail image sets for zoom levels
  • World peace

Known Issues

  • Pop-up menus have issues fitting itself entirely inside the screen sometimes.
  • If you're on a phone, the UI doesn't fit very well in landscape mode.
  • In Mobile Chrome you can still hide the URL bar and mess up the layout.
  • There are still some z-index issues, basically visible as a room you're dragging appearing to go underneath other rooms.
  • Similarly, there are issues with trying to select a room that's within the bounding box of another room
  • Clicking an internal link in the Help section in Chrome will flicker the screen, because some things in Chrome are very stupid. Possibly this also happens in mobile Safari, too.
  • Speaking of Safari, it pops when you switch floors to a floor with rooms off the screen.
  • PNGs exported with Safari look like ass.
  • Color coding doesn't work when generating PNGs on Safari.
  • Safari is really, really slow with a large dojo.
  • Don't use Safari
  • You can't click anywhere on the color slider to select a color, you have to drag the button.
  • The Local Storage listing doesn't have a scrollbar, so you can add more entries than the screen can contain.
  • There's some rare bug with connecting rooms where it doesn't register that it's connected, but I haven't been able to track it down.
0 0 0
0