Buildaria - Building maps just got easier! [Released]

Discussion in 'Released Mods' started by septor, Sep 14, 2011.

  1. septor

    septor Penguin

    Disclaimer (open)
    First off, before I begin, let me clarify a very fine point. I am not the original developer of Buildaria. Due to limitations in time the original developer has stated he will not be able to give Buildaria the attention that it needs. Because of this he has given me permission to take over it's development. Due to this change, a new thread was warranted. The previous thread can be found here.

    Note: Buildaria currently does not work with the 1.2 update of Terraria. I'm in the process of updating it, but due to having just had a child it's a slow process. Thank you for understanding, and sorry for any inconvenience this causes.

    Current Version: 1.8.5

    If you are having issues with launching Buildaria, please read this:
    If you are using the Terraria Game Launcher, you need to create a .gli file. If you are using v1.8.5 or higher of Buildaria a working .gli file has been provided. If you are using a lower version you need to create a new .gli file (just click the "Create .gli" button and locate Buildaria.exe).

    If you are not using the Terraria Game Launcher the only method found is to uninstall and reinstall Terraria and Buildaria.


    A wiki article on the wikia version of the Terraria wiki (whoa) about Buildaria can be gawked at here! It contains everything already in this thread, but hey, every little bit of publication is nice. :)

    If you are upgrading from 1.6.1 or lower you need to remove your Inventories.xml file otherwise you will have missing items!

    What is Buildaria?
    Buildaria is a Terraria mod (oooh!) that is geared towards map builders. It will assist you in creating adventure maps or in constructing your epic creation that you just don't have time to build normally.

    Why should I use Buildaria over another map editor or instead of doing it by hand?
    I don't know? Seriously, it's personal preference, really. TEdit is a great tool and will allow you to change things on a larger scale faster, but Buildaria allows you to fine tune things as you go.

    Couldn't I just use Buildaria to load up a character or map with a bunch of items and then play normally?
    I guess you could, but that's your deal. If you want to kill the game for yourself that is on your hands.

    Can't I use this to grief a multiplayer server?
    Steps have been taken to disable Buildaria features on a multiplayer server.

    Buildaria doesn't have [insert item here]! Wtf?!
    First off, make sure that you are using the most recent version of Buildaria. If you have upgraded and an item has been added you will need to remove your Inventories.xml file for it to show up in your inventory. If it's still not there tell me on GitHub or in this thread and I'll get it added to the next release.

    What are the controls? Features? How old is Bigfoot?
    The first two questions can be answered in the readme file or by viewing the below post. The latter question is not relevant; stop asking me.

    What about configuration? Can I customize the defaults? Chat colors?
    Yes, you certainly can. If you run Buildaria at anytime after you upgrade to 1.7.2 or higher it will generate a configuration file called BuildariaConfig.xml in the same directory that you have Buildaria located in. Follow the formats already used and you can change things to suit your needs.

    What if you move more things to the configuration file? How will my configuration file get updated to have these included?
    In short, it won't. If you want the new settings to be included you will either have to generate a new file (simply delete the old and run Buildaria again) or add them yourself. I have plans, once more things are in the config file, to throw together a small app that will allow you to more easily utilize the config file. This app will add any new settings if you don't already have them.

    If the new settings don't get auto-added, how will they work?
    All settings, regardless of them being in your configuration file or not, have built in defaults. If you miss something in your config file Buildaria will use it's core-default setting.

    So.. no more toggle-able in-game settings?
    Yes, they still exist and work exactly like they did before.

    Can I see what has changed in each version?
    Everything before 1.7 is undocumented. Everything after I took the project over can be read here.

    I have this really awesome idea! Will you add it?!
    I'll do my best! Throw your idea up on the issue tracker or in this thread and I'll see what I can do!

    What about bugs? I think I have one!
    Put them in the same place.

    I know how to code! I want to help you out, what do I need to do to be most beneficial?
    1. Create a GitHub account.
    2. Fork the project.
    3. Make changes as you see fit.
    4. Send a pull request with all the changes you want added.
    If you plan on making changes that you do not want sent it's a good idea to make a secondary branch for either your edits or for what you want sent over. GitHub has many useful help documents on how to do a lot of things. If you can't figure something out ask me and I'll do my best to help you!

    Most Recent Changes (open)

    1.8.5 (August 3rd, 2012)
    * Reminder about character's getting overwritten added to the startup screen.
    * Unlimited water and lava buckets are back! Put out that fire without Jimmy John's!
    * Included a .gli file for people who use the Terraria Game Launcher.
  2. Novate

    Novate Bone Serpent


    • The below video is from a older version, check the readme or below for the current features.
    • Joining multiplayer games is disabled while running Buildaria.
    • Any character you load while running Buildaria will have their INVENTORY ERASED AND THEIR STATS MODIFIED PERMANENTLY.
    • You could very possibly screw up your world. Make constant backups of your world or use a new world entirely.
    So make sure to use a new character for this and backup any world you may use before attempting any changes.
    What to do if you accidentally load or save over the wrong character
    -If you do manage to load the wrong character, eg a misclick, use alt+f4 to quit out of the game without saving.
    -If you accidentally save over your character search to documents/my games/terraria/players/ then replace the corresponding player.sav file which you saved over with the player.bak counterpart. Usually easiest to tell which player file you want by looking at the dates they were created.

    Old info refer to first post (open)

    Version 1.5 of buildaria in action (not my video btw, newer version features further below)

    Buildaria 1.8.5 - click the spoiler tabs below

    Current features

    • Easy-to-use selection system that supports multiple shapes, copy, paste, and an undo.
    • Toggle off hostile NPCs so they don't hinder your building.
    • Noclip mode that let's you fly around the map and through blocks for easy construction.
    • Toggle between tools that instantly destroy everything you click on or normal 100% power tools.
    • Place blocks anywhere without needing background walls or adjacent blocks.
    • Cycle forward to dawn/dusk instantly.
    • Optional god mode just in case you fall or fly into lava.
    • One second respawn if you do manage to die.
    • A trash slot - you will always have inventory room.
    • Infinite spectre boots.
    • Toggle-able light aura for easier mining.
    • Toggle-able grid for easier building.
    • Depth meter, watch, and compass active with god mode.
    • Multiple, saved, preset inventory pages with all the construction materials you'll ever need.
    • Inventories are now loaded and saved to and from an XML file, allowing you to add, remove, and customize your own inventories.
    • Color coded output chat messages to let you know what's going on... most of the time.
      • Blue - Selection/Copy/Paste/Fills/Drains.
      • Brown - Undo.
      • Yellow Orange - Load/Save inventories.
      • Red - Set spawn point.
      • Violet - Coordinate display message.
      • White - Display messages toggle.
      • Yellow - Light Me Toggles. (Imagine that's yellow ;p)
      • Cyan - Teleport messages
      • Green - All other toggles.
      • Pistachio Green - System Time Display
    • Item drops are toggle-able. Default is on.
    • All toggle-able defaults and chat output colors can be customized in an XML configuration file.
    • Teleportation System! Get to areas of your map quickly just by pressing a button (or two)!
    • Ability to set the default spawn point with the press of a button.
    • Display the current X,Y coordinates of your mouse with the press of a button.
    • Display the current system time with the press of a button.
    • Displays the World Name & Id at the press of a button (or two).


    • Right-click - Fills the current selection with whatever the current item normally fills/destroys.
    • Alt - Transforms the current selection in an ellipse (oval or circle). Also, causes Paste to paste upside-down, or flipped vertically.
    • Shift - Transforms the current selection into an outline. Works with Alt for a circle outline. Also, causes Paste to paste backwards, or flipped horizontally.
    • Ctrl-C - Copy the currently selected tiles.
    • Ctrl-V - Paste your current copy to the selected position.
    • Ctrl-Z - Undo the last selection-based modification.
    • Ctrl-Shift-S - Save Inventories to file.
    • Ctrl-Shift-O - Load Inventories from file.
    • T - Toggles item speeds.
    • G - Toggles god mode.
    • C - Toggles NPC spawning
    • P - Toggles between ghost mode. Noclip! Hold Shift to go extra fast. Hold Shift+Alt to go super extra fast!
    • N - Toggles day/night time.
    • M - Toggles item drops.
    • K - Toggles output chat messages.
    • F - Toggles a light aura for easier mining.
    • R - Toggles a 1x1 grid for easier building.
    • L - Set the currently moused-over area as the default spawn location.
    • I - Display the current X,Y location of your mouse. (displays even if message display is toggled off)
    • [ and ] - Switch inventories.
    • Ctrl-T - Displays the current time according to your computer. (displays even if message display is toggled off)
    • Alt-W - Displays the current World's Name and Id (displays even if message display is toggled off)
    • F1 through F* - Built-in Teleport Locations. See below for what they are.
    • Ctrl-F1 through Ctrl-F12 - Custom Teleport Locations. Add these to the configuration file. See below for the format to use.

    Teleportation Explained

    You can teleport to locations on your map by pressing the function (eg: F1, F2 etc) keys.
    Below is a list of built-in locations, the list will grow as more locations are added:
    • F1 - Default Spawn Location
    • F3 - Left Ocean
    • F4 - Right Ocean
    Custom locations can be set up in the configuration file and you can get to these by pressing Ctrl followed by the corresponding function key.
    Below is how you need to add them to the configuration file:

    <customTeleports> <F1>Location Name,X,Y</F1> <F2>Location Name,X,Y</F2> <F3>Location Name,X,Y</F3> <F4>Location Name,X,Y</F4> </customTeleports>

    You can obtain the X and Y integers in-game by pressing I. Anything up to F12 will be accepted and usable. If you add more (eg: F13, F14 etc) it will be ignored.

    It is very important that you follow the above syntax when entering custom locations! Failure to do so will result in Buildaria crashing!

    Items Explained

    Items Explained
    • Phaseblade - Acts as the selection tool. Click and drag to select a box area. Right-click to clear selection. Works with any phaseblade color.
    • Pickaxe - Destroys any blocks that a normal pick would destroy, only instantaneously and without range. Right-click to clear selection of pick-able tiles.
    • Hammer - The same as the pickaxe, only it acts as a hamaxe. Right-click to clear selection of hamaxe-able tiles.
    • Blocks - Works normally, only you can place multiple blocks much faster than normal. Right-click to fill.
    • Walls - Works normally, only you can place multiple walls much faster than normal.
    • Decorations - Works normally, only you can place multiple decorations much faster than normal. I do not recommend using the right-click functionality with decorations.
    • Filled Buckets - Place the contained liquid anywhere. Yes, you can fill with Right-click.
    • Empty Buckets - Removes liquid, quite obviously. Remove any liquid within the selection by Right-clicking.

    How to Install

    First navigate to here then select/follow one of the install methods explained below.

    Recommended Method:
    1. Download the installer and run it. If you do not want your inventories or configuration overwritten you need to make sure you deselect the appropriate checkboxes when selecting what to install.
    Alternative Method:
    1. Download the latest archive and extract Buildaria.exe into your Terraria folder with Terraria.exe. This is usually found here: Program Files/Steam/steamapps/common/terraria/
    2. Run Buildaria.exe!
    Build from the source - open spoiler tab
    Build from Source

    If you want to compile your own version of Buildaria follow the below steps:
      1. Download the source.
      2. Install XNA Game Studio 4.0.
      3. Open the Buildaria solution file Buildaria.sln in Visual Studio.
      4. In the Solution Explorer, expand References.
      5. Delete Terraria.
      6. Right-click References and select Add Reference....
      7. In the dialog box, click Browse and locate your Terraria.exe file inside Program Files/Steam/steamapps/common/terraria/.
      8. Build!
      9. To test your changes copy the Buildaria.exe file from bin\x86\Release to your Terraria folder: Program Files/Steam/steamapps/common/terraria/ and run it!

    If this post appears to be outdated use the readme file here:
    Until I get around to fixing it.

    AdenSword, Crocodile and _Jon like this.
  3. I love this mod, I made a custom map with it called the Trio Adventure, go check it out! :)
    polar7rulz likes this.
  4. septor

    septor Penguin

    Version 1.7.1 has been released.


    * Output chat messages are now color coded. See the readme file for a chart.
    * You can now toggle a light aura (default key: `F`).
    * Due to the above change the Mining Helmet has been replaced with Sunglasses. Sunglasses are cool.

    Download is in the OP. As a reminder, if you have any issues, feature requests, or you notice an item is missing please use the issue tracker!
  5. Novate

    Novate Bone Serpent

    Also would like to remind people that the inventories.xml file that gets generated in the terraria folder, when buildaria is first run, should be deleted if you were using a version that was missing items so that buildaria can recreate a new one when it is run again.

    This will, as it happens, reset any changes you've made to the inventories however.
  6. _Jon

    _Jon Green Slime

    I use this app a few times a week to create maps for the newer players server I host. This is a great tool and I'm very thankful you are keeping it up to date.

    In the previous thread, I saw that you questioned the value of the save / load inventories. I customize the inventory file to move things around that I use often. I do not use the save feature as I sometimes (read: every effing day) accidentally drop something and lose it - usually without realizing it. I sometimes use the load feature when I realize I have dropped something.

    (this leads to an idea - prevent items that are thrown out of inventory from being destroyed. This would require people to use the trash can, but would help me in my clumsiness. Then again, if you have other features to implement, don't waste time on something like this.)

    Also, take this suggestion as something to consider in your down time. Consider using json files for configuration data. I've been writing web / database / mobile apps in java for years. Last year I was required to learn json and hfs has it made my life of data management (non SQL) better. Compared to XML it is like butter and bricks. So if you ever have a weekend where you want to learn something new, try json and mull over what it would take to convert your app to using that.

    I am liking the increased light area.

    And it was me that wanted the insta-teleport to edges of the map / hell / dungeon / jungle, along with a way to see the map coordinates of a mouse click - again, low priority stuff.

    Thanks again for your work, I'm subscribed to this thread now. And happy.
  7. septor

    septor Penguin

    Firstly, glad you enjoy the tool. I'll do my best to keep it up to it's current awesome standards. Secondly, I appreciate all the ideas here and I'll keep track of them, but it would be 100 times easier to manage them if you threw them up on the issue tracker over at GitHub. This way we can throw back ideas on each request without resorting to 4 page long posts. If you don't want to do this, that is completely fine and I'm fine with keeping it here!

    Regarding the save/load thing -- I'm not really sure if you're praising the new change or not? You can have the same functionality that existed before if you just Ctrl+Shift+S before you Save & Exit. Since myself and scaryguy334 both were for this change and there really hasn't been any dicussion regarding the feature at all, I went ahead and did it. At some point the various internal booleans will be pulled from an external file so you will be able to switch it back to the way it was before, if that's what you want.

    Regarding the trash slot/etc -- I'm kind of on the fence about removing the trash slot. With the item drops turned off it's not really needed, but it kind of is. If you dig a lot of blocks up with item drops on and then you accidentally drop your pickaxe are you willing to cycle through all the items on the ground to get it back? I think both things are a bandaid solution that requires some further investigation. Both things are great for their own reasons, but it's a hassle in certain situations. It's the kind of issue that needs fixing but isn't at the top of the to-do list right now.

    Regarding JSON/XML -- I didn't personally add the current inventories system (with it getting saved to XML and all). I don't know about JSON, but XML is easily managed within C# so it's very easy to add/remove data from an XML file. I will look into JSON though, I'm always up for more knowledge.

    Teleporting to various locations is on my list of things to mess with. Based on what I can guess getting to the jungle may not be possible by this method based on how maps are generated. Getting to the dungeon will be easy (on a new map, or one where the old man exists) because I can just throw you at his feet (begging for mercy, you swine!). Edges of the map are also possible.

    Finally, getting the X,Y coordinates of the mouses location is coded in for 1.7.2. I hope that will suffice. :)
  8. Novate

    Novate Bone Serpent

    By default will now only load inventories on inventory switch instead of saving as well, should help out with the losing items thing since it will only save if you use the control keys to save. Plus it removes a bit of the txt clutter which is nice ^^
    If you lose an item now you only have to switch in and out of the inventory you were on to get it back!

    By coordinates of mouse click you mean something similar to how the depth meter tracks your players Y position?

    Anyway I don't really do programming as such but I can see if my logic skills can have a look.

    edit: Ah ninja'd! This is what happens when I walk away for an hour or so to have lunch and forget to refresh on return!

    Anyway keeping the inventories locked on certain items would prevent customising them to any personal preferences I think?
  9. Asgard

    Asgard Green Slime

    How do I spawn items to make maps since I can't use it for multiplayer?
  10. septor

    septor Penguin

    What do you mean? All the items are in the various inventories. You use the [ and the ] keys to switch through them. When you get to an item you want to place in a chest (for whatever reason) right click it to pull one from the stack and place it whereever you want.
  11. Asgard

    Asgard Green Slime

    Ohh, I didn't know about the '[' and ']', thanks!
  12. _Jon

    _Jon Green Slime

    Thanks for the comments guys.

    I wasn't clear on liking the save / load inventory. I use it rarely and if it is a pain internally, it isn't super valuable to me. jmo

    Finding jungle isn't critical - I realize there is no marker. It isn't that I want to be on the exact edge of the world - more like the edge of the ocean. I build a small safe house there for the players. I seem to recall that the oceans are always a specific size, so offsetting from that and letting me fall from a little ways up will work perfectly.

    I wasn't suggesting getting ride of the Buildaria Auto-trash Slot. I was just thinking that the user could put things in the Terraria Trash Slot if they wanted to get rid of them. Then it would be easier to determine if something should be auto-destroyed - if it is 'dropped' by the player, don't destroy it. However, this is assuming that when item drops are off, you are destroying an object before it gets picked up. Perhaps my understanding is off - if the auto-destroy works by first picking up an item, then putting it in the Auto-trash Slot, then ignore this idea - way too much work.

    I will use gitHub for future suggestions and this area for conversations. If I have an idea for a feature, but am not sure about it, do you want to talk about it here or is there room on gitHub to discuss a suggestion?

    @Asgard: I had the same issue. I didn't realize that the [ ]'s were used to move through *pages* of the player's inventories. The concept was foreign to my brain so it didn't register the feature. I figured it was some advanced feature I would learn later. (turns out, I did when I looked at the XML and realized how much inventory was available. That's when the light clicked that the '[' and ']' were essentially 'page up' and 'page down' inventory buttons.
  13. septor

    septor Penguin

    The trash slot works for any item picked up. It won't start deleting things until the rest of the inventory is full. Like I said, I plan on looking into more solutions for this in the future.

    scaryguy334 has given me an idea on how put the jungle as a teleportation option.

    You can discuss ideas anywhere you want. When you create an issue it allows for comments to be made about it, so that isn't a problem. If you want to just put your ideas here I am fine with that too.

    edit: Most of the ideas you've suggested have been added to the GitHub project page by scaryguy334 anyways, so feel free to add to the discussion there if you want.
  14. Novate

    Novate Bone Serpent

    I'll probably also throw the ideas upon git anyway if they get posted here, to make it easier for septor to track them.
    On that note, added a comment to the teleportation one.

    I wonder if there is a way to reverse the inventory pickup system back to how it was originally.
    Since that method was very good in conjunction with the current auto trash since anything you accidentally dropped wasn't destroyed when you repick it up.
  15. ACrispyHobo

    ACrispyHobo Green Slime

    I like the in-game level testing with god mode and all that, but I prefer the TEdit style map editor. Cool mod though.
  16. Olivki

    Olivki Green Slime

    For some reason I can't switch my inventories, i press [ and ] but nothing happens, do i need to do it in a special way?

    EDIT : Oh, nevermind..
    I was pressing the wrong button.
  17. Asgard

    Asgard Green Slime

    This programme lags a lot after a while for some reason.
  18. Novate

    Novate Bone Serpent

    Are you using the selection tool on a large area?
    That usually lags it up and can be cleared by deselecting with rightclick with bluephaseblade out.

    If it's not that i'm not sure what it could be since I havn't had lag otherwise myself.
    Don't suppose you can share what you were doing at the time/s so we can try and isolate the problem?
  19. septor

    septor Penguin

    TEdit is a very great tool, and I see no issues with using it in conjunction with Buildaria to make a great map. If you do use Buildaria, even slightly, and you notice something that would be great to have -- let us know. I don't want to try and pull people away form TEdit at all, but it would be nice for Buildaria to have the ability to do all of what TEdit does on a smaller scale.

    The selection tool, more so using it for what is was intended for long periods of time, is the only thing I can think of that could cause you lag.
  20. Asgard

    Asgard Green Slime

    Errr, I cannot find spikes inside the inventory...

Share This Page