Introducing: Terrasavr!

Terrasavr

Hello again. It've been a short while, but I have some news - today I'm proud to present you with... Terrasavr! Terrasavr is a web-based profile viewer & editor for Terraria (video game). You can either take a look at it from that last link, or read the full post for more details.

When

Just recently - as you may know, I've added FileReference support into OpenFL-bitfive some time ago, which means that one can now use file dialogs to exchange files with user in HTML5 applications. Provided that I wanted to verify that new features work as intended in most cases, it was a logical choice to actually make something to use it. So I've settled with a project that requires a bit of file operations, a bit of cryptography (Terraria profiles are AES-encrypted), and some UI elements as well. So a week of morning work later, there goes this.

Why

Well... because, I can. Also, should you look at existing profile viewers/editors for Terraria, most of them are written in C#, do not have that much of a comfortable UI, and are generally not particularly up to par. So I've decided to make something that would be a change - look good, stay functional, and work everywhere.

How

One of things I find particularly annoying in tools of this kind is the dependency on other tools or documentation - even if there's a built-in item search function, you still cannot efficiently compare items without looking at wiki (which can be outdated) or loading up the game (which takes time).
At the same time, Terraria (application itself) features an external interface, which can be used by applications for multiple purposes. So I've made a small separate C# tool that would poll the game for item information and then write down significant parts for later use in Haxe app.
For one, results are amusing - application displays pretty much the same set of data that actual game does, sometimes even more:

Comparison of information shown by Terraria and Terrasavr

Item search itself is also kept intuitive, displaying results as you type in a familiar form:

Terraria item search in Terrasavr

And, just in case you don't even know what you're searching for, there is a library of items, both by categories and by index:

Terraria item browsing in Terrasavr

And, of course, there's the usual functionality of adding/removing items, tweaking prefixes, changing player names & modes, and whatnot. Everything is kept more or less intuitive and matches style of game fairly well.

Technology-wise, Terrasavr is made with Haxe + OpenFL, and is compiled into JavaScript+HTML5 application with use of my OpenFL-bitfive. Source will probably be available later on, once I'll clean things up to a point when it would no longer be possible to scare children with some sections of code.

Check it out!

Related posts:

135 thoughts on “Introducing: Terrasavr!

  1. can u post a vid of how you edit and save the characters because when i use the terrasavr it doesn’t save to the character
    im not sure if im doing it wrong or it could be something else

  2. Do you have a facebook page or account on the Terrarai wiki, so I can message you some questions about problems I might have? 😀 Thanks for making this, by the way 😀

    • As I have it stated on About page, I’m best reached via Twitter, VK, or email. I have a profile on TerrariaOnline too, if that helps. TO topic can also be a good source of help – I answered a bunch of questions there.

  3. ive used terrasavr for a while, but for the past week or so, when i try to save a player file, it continuously tries to save several (about 16 last i checked) files. i have to close all of the open browser windows to stop it from attempting to save. and i cant fix it. HELP!!
    p.s.: when i was able to use it, it was awesome

    • I will. I can’t say, how fast (effort needed depends a lot on changes that devs make), but last time I managed to update the program in under 3 days or so.

  4. great job man, it worked and it’s the only working one i can find, plus it works great
    THANKS. Keep up the good work.

  5. Can anyone give me a written tutorial on how to use this? Every time I try, I manage to corrupt the profile I try to do. I wanted to get something good on my best person, bam, it got corrupted. I tried changing the download to (example) Sero.plr then putting it in the folder and it didnt work. I tried making it .plr and making it just say Sero. Nothing. Help D:

  6. I don’t know why but every time I save my file, it always ends up as a download which is just titled “download”. No .plr file or anything. Just download. And that download won’t even do anything. Somebody help?

    • You can download the SWF file for Flash version (right click the link, “Save As…”) and open that locally via Flash Player or the browser of choice. There may be a proper downloadable version in the future, but that would take a fair of extra resources to develop.

  7. I was wondering if you could add pages of weapons and armors, like the current “Accessories” section and it’s sub section system. It would speed things up a bit.
    Also, sorting by tier or rarity would be nice.

    • Most of armor items can be found in “Materials” category. I might give them an explicit category in future. Added a weapons category in today’s update, I think it includes all weapons of any particular interest.

      • Alright, thank you.
        Is there a way you could make a console save editor variant? There is a modder on the Elipse program, so if you can, would you look into it?

        • I can’t tell much on the console versions of the game – I don’t own any of those, and neither I do own any of applicable consoles.
          Looking around, it seems like the format is not that different, but I’d need lots of savefiles (along with information on what is stored in them) to test loading and people to test saving, apart of time to write the actual code.
          Also would probably risk getting in trouble due to official policy strictly forbidding modding and savegame editing.
          Tricky stuff.

          • ah. pesky game devs telling us the “right” way to have fun…

  8. I was thinking if you’re ever going to add support to mods that are avaible for Terraria, cause I can’t live without this, and if it had Mod Support, it would be awesome (for real it would). Another good thing to add would be item descriptions (maybe even recipes?).

    I’m not sure what would the hardship to do it, but I would be very glad if you could do it (and I’m pretty sure other people would too).

    • On mod support, I’ve answered this in topic few days ago. In short, it’d indeed be nice, but very hard and impractical to do due to nature of program.

      As for descriptions/recipes – that’s another story. Program already shows most of information that game can provide on request (including in-game item descriptions). I’m thinking of making a separate tool that would show essential item info (stats, description, how to find, what to craft with, extra notes) in a convenient way, but haven’t decided on the best way to handle this yet. Storing and editing 2600+ (soon to be 3000+) snippets of information is no easy task.

      • Adding modded items information wouldn’t need you to just add the item ID and make a library for it? As well as asking for the mod creator’s permission of course? Cause you can use the inventory editor with Modded Items, but the sprite doesn’t show, nor does it show any info on it.

        • To display the item properly, editor needs to know it’s name, metadata (stored in most compact and awful format like “=d|s=1|d=6|t=17|k=2|tp=55|1=Can mine Meteorite” for gold pickaxe), and image.
          Name and metadata can only be efficiently obtained by polling a running instance of Terraria for loaded items. Should the mod do something “unusually”, it might not work for it.
          Images are currently stored sequentially (1 cell = 1 item) like this. This small monstrosity takes some time to re-generate when updating the editor for new versions of the game.
          If multiple mods have an item with same ID, it’s not possible to automatically tell which mod the item is from, so it’d also mean writing a different item data “manager” system that would allow picking “sets” of items for display.
          And then, of course, it means also keeping an eye on updates and changes to all supported mods.
          Time-consuming operations, one could say.

  9. Just some word association stuff with the tabs that will help make them easier to navigate if named differently.
    * Could you possibly rename “Stash” to either “Bank” or “Piggy Bank,” since that’s what it is?
    * Also, changing “General” to “Character” would help association, since most of the editor is about changing items, and the character’s own data isn’t about that.
    * I’d also recommend changing “Servers” to “Worlds” since that’s what most people call them.

    Other than those decidedly minor things, I love this thing, so much.

    • Currently you can only download the SWF that Flash version of the program uses and run that locally via browser / Flash Player. I plan to make an actual (executable) native version at some point, but it’s a lot of work so there’s no ETA.

    • I don’t have any kind of early access so likely within a day of when 1.3 comes out publicly. If what I’ve heard about precise time is correct (1PM EST) it’ll still be not-too-late evening for me thus I’d be able to update it within a few hours. I’ll post an update to the forum topic when that’ll happen.

    • I did – in fact within one hour of the game update going live (personal record). Try refreshing the page if it still shows 1.2.4.1 for you.
      At the moment it only displays new items (you can get them into the game by making a 1.2.4.1 character with items and loading it in-game afterwards) but I’ll fix this in the morning (+9 hours from now) — 1.3 added a bunch of new information to the character files and I’m yet to figure out what some of it actually does.

  10. A) What approximate time will the 1.3 update be finished for use?

    B) What time zone is this site in (currently in EST, but the timing doesn’t make sense.)?

  11. Any idea what I’m doing wrong? I tried the HTML version and it’s telling me “failed to load profile. The error was RangeError: Offset is outside the bounds of the Dataview. Was it a valid file?

    So i tried the flash version and it says “profile is loaded but there’s extra data in the end of file. This shouldn’t happen with valid profiles?”

    thanks for any help. Tried looking for a solution but couldn’t find anything

  12. Hi yellow. I just want to know how many times left until 1.3 editor ” Terrasavr” complete. Please respond thanks.

    • It is now fully updated for 1.3. A partial update (saving/loading done, but no UI for new slots) was made 7 hours ago (all times are GMT+2).

  13. I just want to thank you for making this. Whereas others have left their programs to rot or tried to attach strings here and there, your diligence and expertise in designing Terrasavr has truly left me amazed. The editor is absolutely fantastic in every conceivable way.

  14. If i get stuff from this and an update comes out and buffs or nerfs the item will the changes apply to the item i got from terrasavr

    • Terraria only stores “which” item each slot contains (by numbering them), what modifier it has, and how many there are (if the slot permits that) – item stats are not stored so any changes to the game will reflect on items created.

  15. i saved and did everything the tutorial told me to. But when I loaded my world it crashed my game. I saw on my character that the hack had worked, but it still crashed. is it because I Added 1.3 stuff to my 1.2.4 account

    • Adding content from the later versions of the game is an inadvisable tactic. Since the game stores the indexes for everything instead of actual stats, it has no way to tell what the new thing is exactly because it is not present in that version of the game. You should be able to load back the character in Terrasavr and remove the problematic buff(s).

      • Srry I didn’t reply I commented do disregard that but my question
        Is Should I should delete my 1.3 content I added to my charcter

        • Yes, you should remove 1.3 content if you save the character in 1.2.4.1 format. I have updated the program today to automatically display if items/buffs are incompatible with chosen version of the character and avoid saving them so that the game won’t crash on load.

Leave a Reply

Your email address will not be published. Required fields are marked *