May 28, 2011

RomTerraria FAQ

This is a list of frequently asked questions about RomTerraria, along with hopefully some answers.

[Update 11/9 1:25p] Most of this FAQ is out of date due to Terraria being upgraded to v1.2.  Preview releases of RomTerraria 3.0 are located here.
What is RomTerraria?

RomTerraria is a launcher for Terraria, a new indie game being distributed via Steam.

How does RomTerraria work?

RomTerraria takes advantage of a feature of the .NET Framework where every .NET executable is also a class. When RomTerraria is launched, it instantiates a copy of the game class inside Terraria.exe, modifies some internal variables inside the class using either direct access or reflection, and then fires the appropriate methods once you hit the launch button. It also uses the GameComponent architecture inside of XNA games to hook into the Update events, but because of where base.Draw(GameTime) is called inside Terraria, an alternate solution had to be used for where I'm doing rendering.

Why does RomTerraria have to be in the same folder as Terraria.exe?

The way I'm currently binding to Terraria.exe demands it. For awhile, I was working on separating the two, but given recent interactions with the community, I'm binding it tighter to the original game executable and to Steam.

Why did you release the source code?

I wanted to show that you could modify the game without cracking the executable, decompiling it, modifying the disassembled code, then illegally distributing their code. (Note: The source is occasionally one or two minor bug-fix updates behind.)

Why do fewer enemies spawn during gameplay when I'm using widescreen resolutions?

Terraria uses the screen dimensions to determine where to spawn enemies. For stock spawn rates, launch a local multiplayer server, then connect to that server.

When will the new HUD be complete?

No current estimate. The air conditioning in my apartment went out, and even with a 20" box fan blasting my box, it still gets too hot if I use it for long periods of time. Replacement parts have been ordered, but are backordered. My A/C should be fixed by June 4.

What does "Enable Pony" do?

I've been asked this from nineteen separate countries. First, read this thread over at Shacknews. Second, realize that had been a horrible day. Third, epic troll is epic.

I'm using a pirated version of Terraria, and your launcher won't work.

Boo hoo. Buy the game. Even if I was to grant the asinine assertion that piracy for evaluation purposes was acceptable (which I'm not), the moment you start looking for enhancements, evaluation time is over.

The launcher is crashing. What should I do?

First, make sure that you have the latest version of the launcher. Second, make sure all the files are in the same folder as Terraria.exe. Third, make sure Steam is running. If all of those conditions are met, the launcher should pop up a stack trace on the screen. Hit Control-C, reply to this post, and then hit Control-V to paste the stack trace into the comment.

I turned on Infinite Goblin Invasion. After turning it off, they're still coming. What should I do?

The Infinite Goblin Invasion option keeps firing the trigger to bring on new invasions. Each invasion contains at least 100 goblins. Unfortunately, that means you'll have to kill to the end of the current invasion. Good luck.

I'm using your launcher and I'm getting an error about fontCombatText.

Upgrade to the 2.0 launcher series.

May 21, 2011


It's been far too long since I've done some code for me. I've missed it.

My personal project I was working on back in December got back-burnered to the point where it's hard to get back into it, so I'm taking some time to get into other code so when I do get back to my project, I'll be ready for it.

May 18, 2011

Terraria Trainer/Resolution Launcher

Update: 6/30/2015:

Preview version of RomTerraria 4.0 (for Terraria 1.3.x) is now available at this post.


Well, staring at JavaScript for a week drove me cross-eyed, so I spent an hour weekend or so and built a simple trainer/resolution launcher for Terraria. Requires Steam and Terraria 1.0.6. Not a source hack...wraps and calls into Terraria.

Install Launcher | Download Source | FAQs

Welcome to Shacknews, SomethingAwful, ArsTechnica, Quarter To Three, Reddit, PC Gamer, and GameFront. I can't believe over 13,000 people are using this launcher...

Screenshots: Normal Mini-map | Full World Mini-map

Note for those of you on Windows Vista/Windows 7: If you are being told that you may have an illegal copy when you don't AND you've installed Steam into Program Files AND Steam is running, right-click on the executable and run as administrator. The reason why this is happening is that when you just copy it over, it doesn't go into that folder. It goes into VirtualStore. Sorry for the extra security...blame TPB.