How would one make a 1.4 mod that marks all accessories as social slot equippable?

Lode

Terrarian
Hey,

Last time I made mods was for Morrowind, there were many methods to make them, some as simple as dropping replacement audio and texture files in a directory, or updating lists of stats of items and monsters ;)

I've never written mods for Terraria, how does one make mods for 1.4? Is tModLoader (which doesn't support 1.4) required, or are there more native ways to make mods?

My specific mod-desire is a mod that marks all accessories as equippable in the social slot, to undo the one negative thing the 1.4 update brought with it and the worse QoL it gives without any improvement in gameplay to justify this reduced QoL. How does one go about it? Is there a resource file representing all the items in which you can alter bytes with this parameter?

Thanks!
 
tModloader is not yet updated to 1.4, but they are in the process of doing so. This is definitley the easiest way to make a mod for Terraria.
The other way is to decompile the game executable yourself, work out what goes on where, change it, then recompile it. This is much much more difficult, but there are a couple of mods that work this way (though as far as I know none of those have updated to 1.4 yet).
 
I've never written mods for Terraria, how does one make mods for 1.4?

There should be a guideline at tModLoader page. The writing is plausible but it'll give an insight on what you're willing to bump yourself into.

As per my experience (and I just started with Terraria modding while having some experience with other games too), it is mandatory to:
1. Get acquainted with VBA at least a lil bit.
2. Decompile terraria.exe . No exceptions. One can't mod a thing structure of which one doesn't know.
3. Be aware that either:
3.1. You'll be unable to mod v1.4 specific content for too dam' long and your mod users will be stuck with v1.3 game or
3.2. You'll have to get few extra level ups in VBA to be able to recompile terraria.exe back (I failed at this - compilation successful but game fails to start) - which also... hinders any effort to play more than one mod at once.

(also, 'de-jure modding tools' require 5.8GB of HDD space - make some room for them beforehead)
 
There should be a guideline at tModLoader page. The writing is plausible but it'll give an insight on what you're willing to bump yourself into.

As per my experience (and I just started with Terraria modding while having some experience with other games too), it is mandatory to:
1. Get acquainted with VBA at least a lil bit.
2. Decompile terraria.exe . No exceptions. One can't mod a thing structure of which one doesn't know.
3. Be aware that either:
3.1. You'll be unable to mod v1.4 specific content for too dam' long and your mod users will be stuck with v1.3 game or
3.2. You'll have to get few extra level ups in VBA to be able to recompile terraria.exe back (I failed at this - compilation successful but game fails to start) - which also... hinders any effort to play more than one mod at once.

(also, 'de-jure modding tools' require 5.8GB of HDD space - make some room for them beforehead)
This just isn't correct at all. Firstly, Terraria is written in C# so learning VBA won't be helpful at all. Secondly you absolutely can make mods without decompiling Terraria yourself. That's the whole point of tmodloader.
The best thing to do at this point is to wait for TML to update to 1.4.
 
Messed VBA with VSC, big deal. Tend to confuse one TBA TLA with another often. It alone does not invalidate my point of view.
Can we have an example of mod which surely won't require decompiling anything?
The easiest guides list refers to stuff that is by no means 'easiest' - despite covering simpliest (for other mod tools from other games) things like adding a weapon reskin.
And OP's requesting a thing which will involve much more commitment into learning programmers mumbo-jumbo, I dare say.
 
Having the opcodes or at least classes referred on where those social slot parts are declared globally, like many other things (public static int potionDelay = 3600;) would make things easier, yet there are some pretty nasty coding segments inside ... like, multiple maxStack declarations, yet for some others its declared as a global value.

Like, who was working on the client in the very beginning and tried to switch up things in the mid?

There are some stuff, item or effect declarations which make sense, like "chaosState" and "ItemCheck_UseCombatBook" and yet we have stuff going as:
this.AddBuff(88, 360, true, false);
instead of
this.AddBuff(chaosState, 360, true, false);
...
People would kill me, if I would code in such a chaotic and confusing manner with the mainframe server on MSSQL.
 
Having the opcodes or at least classes referred on where those social slot parts are declared globally, like many other things (public static int potionDelay = 3600;) would make things easier, yet there are some pretty nasty coding segments inside ... like, multiple maxStack declarations, yet for some others its declared as a global value.

Like, who was working on the client in the very beginning and tried to switch up things in the mid?

There are some stuff, item or effect declarations which make sense, like "chaosState" and "ItemCheck_UseCombatBook" and yet we have stuff going as:
this.AddBuff(88, 360, true, false);
instead of
this.AddBuff(chaosState, 360, true, false);
...
People would kill me, if I would code in such a chaotic and confusing manner with the mainframe server on MSSQL.
Lots of declarations like that are optimised away by the compiler - decompiled code is always much worse to look at than the original source.
 
Heh, I gotta say Bethesda games (like Morrowind) are more designed to support modding from the ground up. The entire base game is in fact nothing more than a mod running on the game engine, and you can insert scripts / data files / ... in any order before, after or in between the base game's scripts.

Terraria seems to really need tModloader or decompiling indeed. I was hoping there'd at least be some data files that are easy to edit (such as with the item stats), but so it's actually all in the executable instead and not really from lists of item stats but game logic generating some of the item properties?
 
Heh, I gotta say Bethesda games (like Morrowind) are more designed to support modding from the ground up. The entire base game is in fact nothing more than a mod running on the game engine, and you can insert scripts / data files / ... in any order before, after or in between the base game's scripts.

Terraria seems to really need tModloader or decompiling indeed. I was hoping there'd at least be some data files that are easy to edit (such as with the item stats), but so it's actually all in the executable instead and not really from lists of item stats but game logic generating some of the item properties?
That's correct, it's all within the executable, apart from the assets.
 
Back
Top Bottom