[1.4.4.9] TerrariaPatcher (plugins and more!)

Doesn't seem to work for me, or anyone else it seems. Maybe we have to re-patch?
Well yea of course you have to repatch it lol
Let me lay it out simply:
  1. You have patched your Terraria 1.3.0.5 with TerrariaPatcher.
  2. You update Terraria to 1.3.0.6. Now your Terraria is no longer modified.
  3. Patch Terraria 1.3.0.6 with TerrariaPatcher. Now your Terraria is modified.
1.3.0.6 was just released about 30 minutes ago. And I still have VS 2010, lol. I just... like it better :p.

(I can't find .NET Framework 4.5 in the 'target framework' in VS 2010, even though I have it installed, that's why)
There's a workaround in here but you should probably just upgrade: http://stackoverflow.com/questions/12390175/targeting-net-framework-4-5-via-visual-studio-2010

Hmm... I'm having trouble compiling the source code. What exactly are the steps to doing that? I'm testing out my addition of an NPCLoot() hook xD.

More info:
It's telling me that Terraria.Map.MapHelper is inaccessible due to its protection level, but I see you've got a 'MakeTypePublic' thingy. I tried adding 'using Terraria.Map;' to the top of Teleport.cs, but that doesn't work.

Am I missing something?

Also it's telling me there are doubled Guid/ComVisible/etc attributes... Am I not supposed to include the Plugins folder in the solution?
I just committed some code to the GitHub for the NPCLoot hook. You can use it to do your plugin. It will require some clever coding to get your desired behavior.. :) good luck. If you don't figure it out I'll do it later tonight.
 
Last edited:
I just committed some code to the GitHub for the NPCLoot hook. You can use it to do your plugin. It will require some clever coding to get your desired behavior.. :) good luck. If you don't figure it out I'll do it later tonight.

Lol, I just made almost the exact same code. And then I realized that NPCLoot() is void... So wouldn't the OnNPCLoot() method in Loader.cs be void as well?

EDIT: Oh, also... Would the OnNPCLoot part in the Plugins() method in Terraria.cs have the 'Brfalse_S, firstInstr' line? It seems to me like it wouldn't...

Correct me if I'm wrong; I'm still learning this Mono.Cecil stuff.
 
Last edited:
i had TerrariaPatcher since 1.3.0.5,
and when i try to patch Terraria 1.3.0.6 with the patcher, i try to load up Terraria and it crashes with this message:
7uzx4v

can you please help me?
 
What exactly does roll best prefixes do? I tried reforging but it is the same.

Nevermind, did not realize terraria had updated, again.
 
ah it may be give me a moment and i will check
[DOUBLEPOST=1437427255,1437427058][/DOUBLEPOST]

it worked totally my fault thanx smarty :D
It even gives you a warning telling you not to restore a backup if the version is old... Sheesh.
kgSzsm2.png


Lol, I just made almost the exact same code. And then I realized that NPCLoot() is void... So wouldn't the OnNPCLoot() method in Loader.cs be void as well?

EDIT: Oh, also... Would the OnNPCLoot part in the Plugins() method in Terraria.cs have the 'Brfalse_S, firstInstr' line? It seems to me like it wouldn't...

Correct me if I'm wrong; I'm still learning this Mono.Cecil stuff.
No the code I have written for you is correct.
Code:
Ldarg_0 - loads this on to the stack
Call Loader.OnNPCLoot - calls Loader.OnNPCLoot(this)
Brfalse_S - jumps past the ret instruction if the OnNPCLoot method returned false
Ret - return from the function early

So the point is that if you return true from any of the OnNPCLoot event handlers, the rest of the NPCLoot method is skipped. So you can return true and then no loot will be dropped. Or you can return false and the NPCLoot method will continue as per usual.

v1.2.0.6: Added plugin support for IPluginNPCLoot.
Fixed NPC plugin to work when spawning negative IDs (special slimes).
 
Last edited:
Is this stuff Windows 8 Compatible?
I've been trying to launch the game, I've followed every instruction and all I'm getting is "Please launch the game from your Steam Client".
 
Is this stuff Windows 8 Compatible?
I've been trying to launch the game, I've followed every instruction and all I'm getting is "Please launch the game from your Steam Client".
Run Steam as administrator. Then run Terraria.

Terraria never loads up when i try to lauch it. instead, it crashes and tells me random stuff, what do i do?
Geee, sounds like you've encountered a bug or perhaps user error!.. All kidding aside, I need more information than that before I can help you.
 
Run Steam as administrator. Then run Terraria.


Geee, sounds like you've encountered a bug or perhaps user error!.. All kidding aside, I need more information than that before I can help you.
I did so.
And in doing so, I found out after removing the patcher from Terraria's cache, the problem still persists.
I have uninstalled and reinstalled Terraria multiple times. It's still giving me the same message.
 
Terraria is taking quite long to load now. Weird, didn't do it last update : o)

EDIT: Seems like it's not your patcher's fault, but the game's fault.
EDIT 2: Now the plugins are all giving out errors; (An asembly with the same indentity "Newtonsoft.json, Version=6.0.0.0... bla bla bla I guess you can pretty much guess it and it says at PluginLoader.Loader.load(String name, String[] references, String[] sources) and a bunch of stuff)
EDIT 3: Tried reinstalling Terraria, verifying cache, that multiple times, still can't the plugins to work.
 
Last edited:
7uzx4v


Geee, sounds like you've encountered a bug or perhaps user error!.. All kidding aside, I need more information than that before I can help you.
here is the thing i got when i tried to run Terraria, i can't see the image, and i hope you can.
the bad news is i can play with the Patcher without Plugins if i disabled that checkmark :merchantsad:
EDIT: i can be such a fail sometimes -.- didn't get the quote right
The Picture if you can't see the image: http://prntscr.com/7uzx4v
you could also use that if you can't HEY! i found some random text! :DDD see the image.
 
Last edited:
Success! The Drop Rate plugin works! I just have to add all the drops manually, since doesn't seem to work to just call NPCLoot() (it crashes the game, probably because it becomes recursive xD).

I'll get back to you when it's finished.

EDIT: It's finished. Where should I upload it to if I don't have a github account?

Hang on, I do have a github account xD. Lemme see what I can do...
 
Last edited:
Back
Top Bottom