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:
Item search itself is also kept intuitive, displaying results as you type in a familiar form:
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:
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)
Hi. I don’t know what to do. I have Terraria and a character but I have gone into ‘my games’ folder then ‘terraria’ folder then ‘players’ folder then ‘name’ folder but there is nothing there so I can’t use terrasavr on my character. Pls help. :_(
If there are no PLR files in the Players folder, disabling Steam Cloud may help.
Also I try to run this on android and it work completely normal :)
Excuese me, can we add or remove NPC’s from our world using terrasavr?
NPCs are stored in the world file so you would want to use TEdit for that.
Hi there. I’ve recently been using Terrasavr more easily view my research progress on my character in a slightly easier way than in-game.
I was wondering if it might be at all possible to export a list of a characters current research progress to a .csv or similar file?
I know it’s an incredibly niche thing, but it would absolutely make my day if it is possible.
Thank you for all your excellent work on this project.
Hello! This had been on my mind lately, but I’ve not decided how exactly to handle this yet – I think the best would be to have a tool where you give it your PLR and then it shows you items split up by category, though with Terrasavr categories there would still be a lot that are uncategorized.
Hi, I have a problem with my player’s profile, it is happening like 5 times and the same with the world. What happens is that every time I use the character more than 3 or 2 days, all the save files are deleted, including the controls and achievements, I don’t know if it is because the game is pirated or because the game has a problem per se. I don’t know if someone is going through the same thing but this frustrates me.
I don’t know where you would ask for technical support with a pirated copy, but I don’t think this is a good place.
xd
Will you realese flash 1.4.0.5 terrasavr?
I have answered this earlier: https://yal.cc/terrasavr/comment-page-4/#comment-552407
hello, I have a doubt, sometimes when I enter the site some items do not appear, their icon is invisible, and when I went to the site today, only a bunch of letters and scrambled symbols appeared, making it impossible to use the editor, I’m accessing it on my cell phone (I’m sorry if my English isn’t that good, I’m from Brazil and I’m using the translator, I really admire your work)
Hello, “hard refreshing” the page should fix scrambled text – you can find instructions specific to your device by that term. For comparison, on desktop computers it’s usually Ctrl+Shift+R.
Missing icons usually mean that the device runs out of memory, which is a broader problem with just how many items Terraria has. I’m not sure if I can pack them substantially tighter than they are now / what the “danger threshold” for this is.
HEY! YOU GUYS ARE DOING A GREAT JOB!
BUT I HAVE A SMALL QUESTION, WILL THIS WEBSITE EVER SHUT DOWN OR NOT? WILL IT BE HERE FOREVER? PLEASE NEVER SHUT THIS BEATIFUL WEBSITE.
Nothing lasts forever (be it websites or people that make them), but I don’t think I’ll be retiring Terrasavr any time soon.
please make an executable file… so that it will be easier for us to download and use it forever! hope you understand.
There is an executable file on itch.io. I have offered an offline-friendly version for a more than a few years now.
and is it the last update for the program? will there be any more updates?
will there be any more updates in the executable file?
The executable file automatically grabs the most recent version from the website and continues to display that when the website is down.
are you saying that executable file updates itself whenever new update comes?
Yes – as the itch.io description says.
why do i lose my map progression whenever I use terrasavr? i need helpp
You are probably saving under a different file name – the game stores minimap data in a folder next to the player file, named the same as the file.
i have the same issue, and the folder has the same name than the player file, what can i do? when I save the new player.plr, i directly overwrite it over the one i already had, it is impossible for it to be saved with a different name than the map folder, so what would be the problem? pls i need help with this
As it goes with these things, if I knew what the problem is, it would already be in the FAQ. But very few people had this issue over the years and I have never seen it myself.
Hey uh, there’s an error when I’m trying to my character with the latest version of Terraria which is 1.4.0.5. It says “Failed to load profile. The error was
Range Error: Offset is outside the bounds of the DataView
Was it a valid character file?
Hello, this is now fixed.
I am still getting the same error.
Try force-refreshing (Ctrl+Shift+R) – it should display June 5 on the bottom of starting page.
You are right. Problem was with browsers cache. Thank you!
And thank you for your great work! Best of luck in your endeavours!
There gonna be an update for the patches that dropped so far? Can’t load my current character file right now.
Now there is. Apparently the new update (which added breaking changes) released just after I went to bed yesterday. Not the most European-friendly timing.
hah, fair enough. thanks dude.
Terraria has released an update as of today, now Terrasavr returns the error; “Failed to load profile. RangeError: Offset is outside the bounds of the DataView. Was it a valid character file?”
Online and offline editors give the same error; current Terraria version 1.4.0.5 as of June 4th 2020.
Hello, I have now released a new update that fixes that.
Just wanted to come back to say thank you very much for your hard work and vigilance with the updates! You’re awesome :D
Hi, just wondering if you might update the flash version as well.
I’m asking because it can be quite handy on low-end computers, or when offline.
I have released a revamped offline-friendly version shortly after updating for 1.4. Considering that no one had used the web-based Flash version for a while now (according to Google Analytics, in 2018-2019 it served less than 0.1% of total visits to Terrasavr, planking completely later in 2019) and the revamped offline-friendly version is able to both auto-update and show the last loaded version if there is no connection / my website is offline, I’m not sure if trying to make the Flash version compile again is going to be worthwhile.
I didn’t even know there WAS an offline version; I’ve used the Flash version since I first found it years ago. Still, no reason not to use the offline version if it’s easier on the creator, and Flash is… yeah.
Would I be able to see the source code? I’m really really interested in this project!
I published the general player format reader/writer in past: https://gist.github.com/YellowAfterlife/ced985a0d2f770c37b07
Hey, since the 1.4 update there seems to be a new option in Terrsavr for editing the number “Bartender quests”. I have played the game a bunch of times, and never seen such quests, or anything related to them. Is this some information on the character data that you decided to allow us to change (that dosen’t seem to be in the game yet/has no use) or is it something new that i have missed in the game?
If I remember right, this is something to do with Dungeon Defenders crossover events, probably the innkeeper.
Hey,
Just found this tool while looking for some way to view the plr files. Looks really good and goes way beyond my use case :)
Wondering if you’d be able to help me out with something though. I wanna write a script that reads the plr file, then pushes it as json to some server where I’d store snapshots of characters in DB.
The main use case is so that my friends and I can work on our characters in single player, when we can’t do multiplayer, and we’d be able to keep an eye on each others progress so we don’t go too far ahead.
Also it would be pretty cool to make some graphs and stuff using the historical data of the character snapshots :P
TLDR; Is there any way I could get my hands on the source code to build a command line tool to read the plr files?
Thanks :)
You can add Terraria/Terraria server executable as a reference in a .NET/.NET Core project and use the built-in Player class directly; I suspect that I would be able to make a CLI version of Terrasavr that’s platform-agnostic (e.g. Neko VM) relatively easily so do shoot me an email if that doesn’t work out.
Can you use Terrasavr for the Ps4 or Ps3 cloud upload method that way? or is the save editing and modding stacks and such not possible with the Ps4 method?
Ik some ppl and players in ps4 Terraria are walking around with Modded stacks of stuff like 33000 or 99999, as i’ve seen them in screenshots and added in items normally not obtainable, like the Red Potion which kills you
So even if ps4 method isnt possible wouldn’t a ps3 one be doable?
For PS4, if you were to somehow get your save files, they might load in Terrasavr – I hear that 1.3 on PS4 had been brought in line with PC version. Can’t test though – no console here. PS3 version uses an old-style file format made by 505 games that cannot be loaded in Terrasavr.
Currently trying this I have my plr file from my ps4 edition but seems to crash the website when I try to open the save. Any thoughts?
Hard to tell! If you can email me a sample file, I can take a peek – perhaps the format is slightly different, or it is encrypted.
would it be possible to have an item data modifier for example:changing the damage of the copper sword directly with numbers or changing it without using modifier
It is not possible using save file editing alone – the game simply doesn’t store that kind of information in them (only “which” item it is and which of supported modifiers it has). An ~2015 mini-mod that I made was updated for use with TerraPatcher, though I don’t believe that is 1.4 compatible yet.
Is there a way to edit a character to automatically unlock all research? It would be super useful.
Not yet – if you have a character with a bunch of different things researched, please email me a PLR file to use as reference.
Does Terrasvr have the recent vanity items from the contest? Or have those not been released?
Terrasavr should have every accessible item. Check Terranion for item IDs, or “Items by ID” categories in Terrasavr.
Is there going to be an update for the 1.4 updates?
It’s updated now.
Are you gonna update Terrasavar?, with the new “Journeys End” 1.4 final update?
So I did.
THANK YOU!!!!!!!!!!!!!!!!!!!!!!!!! I’M SO EXCITED!
Will this work on mobile?
It does, see docs.
How do you add buffs to a character in Terraria in PC?
Using the buffs tab. See documentation
I like it!
I definitely like this new editor!
(Also I am the guy I saw you in Person, remember?)
So how do I add extra items to my inventory?
(in person? An amazing feat if true, you’d have to tell me where that was)
Have you already familiarized yourself with the documentation that explains everything in detail?
Yes. It said I needed a file for the Library. Did I do anything wrong? How do I do it the right way?
You pick a library on the right (or use search), you add an item from the library to your inventory, you save your character file via Save Player. Buttons for saving/loading libraries let you create custom sets of items for quick access (e.g. if you have a number of favorite building materials)
Ok thanks!
Terrasavr isn’t working. Whenever I save it on mobile and import it to characters, the characters don’t appear when I enter the game.
If you are on iOS, you will need to either update to iOS>=13, or use a file manager (allegedly, Documents can do that too) to rename the saved files to name.plr and replace your original plr by downloaded one, as a bug in older versions of Safari results in downloaded files being saved as .dms instead (on specific versions, also losing the name of the file)