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!
also:
Flash version
(if default one doesn't work)
Documentation
(if you are feeling lost)

Related posts:

313 thoughts on “Introducing: Terrasavr!

  1. I wanna use your tool to make a similar one for Calamity /Thorium
    (asking for permission and/or tips :P)

    • Tips: don’t do it like this – a tModLoader character editor should be a tModLoader mod, otherwise you’ll have to update it whenever any of the supported mods updates

    • This used to be more complicated, but these days you can take a peck at Terraria.Player.LoadPlayer method in Terraria.exe using ILSpy or dnSpy.

  2. i have a problem, when i save my player.plr and run the game, for some reason this loss my minimap progress and a have to rediscover it all again, what can be the issue?

  3. Hey, Yellow! Kinda wanted to bring to your attention that 1.4.0.1 made it so that Terrarian can get Legendary modifier/prefix, which isn’t the same as “general” one for all melees. Putting 81 on Terrarian results in loss of it as the game just removes it upon entering a world, while there is the one that specifically works for Terrarian, but it’s nowhere on the “user-friendly” prefix list (Terrasavr shows it as “?”). Would it be possible to have it implemented, or it’s really very minor thing? Just curious, is all. Thanks :)
    Info: “General” one is ID 81, Terrarian-specific is ID 84.

    • That’s strange – a prefix for a single item..?

      You can click on the number next to prefix name and edit it that way for now.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.