1. For issues you find with the Switch and Console releases, please follow this link and give as much detail as possible. This is the speediest way to get info to Pipeworks and get a hotfix in the works.
    Dismiss Notice

tModLoader TGM1234's Mods

Discussion in 'Released' started by thegamemaster1234, Aug 31, 2016.

  1. Hello, and welcome to my forum thread! This is for all of my mods.

    Note that any DropBox links are not always up-to-date and may contain an earlier version of the mod. If you wish to install a mod, I would recommend doing so through the Mod Browser or downloading directly from the Mod Browser database.

    Requirement for most of my mods (basically all of them right now, actually):
    ShaderLib has a github!
    Shader Library, or ShaderLib for short, is a modding library of sorts that gives modders a variety of tools
    for manipulating Terraria's shader system, also known in-game as "dyes."

    Currently, the library supports the addition of new ArmorShaderData, or "armor shaders" - the typical dyes.
    There are also a variety of "hook" lists that allow modders to apply shaders to various objects.
    At the moment, these objects include projectiles, NPCs, items (in inventory and in world), and held items (items in use).

    Also, at a more technical standpoint, the mod/library breaks the game's 255 dye limit by being cool.

    ShaderLib is required to use any mod that uses it, obviously.

    Download on the Mod Browser or here.
    Download the binaries for development here.

    Changelog:
    - 1.0: Official release.
    - 1.0.1: Fixes modded dyes not working on modded accessories (and a few vanilla ones), held item shaders now apply to items that are just being held (torches, Unicorn on a Stick), and fixes item flame shader hooks
    - 1.0.2: Re-uploaded for 0.10.0.1 (needed no changes, surprisingly)
    - 1.0.3: Fixed zoom issues (turns out it did need changes after all)
    - 2.0: Vastly reworked internals, includes Vanilla Dye Fix & 1 other feature
    - 2.0.1: Fixes bug with drawing in flipped gravity
    - 2.0.2: Fixes a drawing derp that made things blurry

    Ever wanted to dye your items? Well, now you can:
    Item Customizer now has a github! Check it out!
    This mod lets you dye your items and make really cool things, like this:
    rainbowprism.gif
    You can also rename items to your liking (this does not affect prefixes).
    As you can see in the gif, when you dye items you dye both the held item and any projectiles that the item shoots.
    The mod does not dye dusts (at least, until the tML devs get around to making global dust hooks).

    thing.png
    This is the GUI. Rename the item using the text box.
    Place any item in the right slot, and a dye in the left (unless you don't want a shader) and click the "Apply" button. (Dyes are not consumed in the process)
    Take the item(s) out and enjoy! Modded items with custom drawing or projectiles should be compatible too, provided they don't end/start the SpriteBatch (and none do that I know of).
    Any mods that add custom dyes should also work provided that they add their shaders using ShaderLib.

    Oh, yeah, and that Reset button - click it and it clears both any name change and dye from the item in the left slot. Pretty nifty, eh?

    Items also have dyed icons, so you can see the dye from your inventory!

    Craft the item to access the GUI with 5 iron/lead bars and 1 Strange Plant at an anvil. It's got the same texture as an anvil, because I'm lazy.

    Download: Mod Browser, or here

    Changelog:
    - 0.5: Inital distributed release. Pre-Mod Browser.
    - 0.6: Fixed dyes being applied to things that shouldn't be (enemy projectiles, pets...)
    - 0.7: Item icons (in inventory, world) show dye, consumables now dyeable, fix for minions, draggable GUI
    - 0.8: Improved shader drawing, check for if player is actually using item
    - 0.8.2: Fixed certain shaders looking strange on multi-frame projectiles, stopped older undyed projectiles from getting newer dyed projectiles' dyes
    - 0.9: Complete multiplayer support, UI saves items instead of deleting them, autopause support, proper child projectile detection, no NPC projectile dyeing, can customize stackable weapons (Light Disc etc.)
    - 0.9.1: After waiting for much too long, updated for Terraria 1.3.3.3.
    - 0.9.2: After waiting for a much shorter period, updated for Terraria 1.3.4/tML 0.9.
    - 0.9.3: Fixed crashes in tML 0.9.2.
    - 1.0.0: First release to be fully integrated with the new ShaderLib, fixes multiplayer rapidfire bug, and stops items losing data on reforge
    - 1.1.0: Updated for tML 0.10.0.1, featuring a revamped UI, both internally and externally
    - 1.1.1: Items don't lose names or dyes on reforge... again
    - 1.1.2: Shouldn't crash on starting multiplayer and solves the accidental shading issue at last (by throwing out all the annoying logic and using something better)
    - 2.0: Now uses ShaderLib 2.0. Fixes UI crashes in multiplayer.

    Credits:
    -Myself, for making this mod (I mean, I did put a bunch of work into this, right??)
    -The TerraUI team (@Boffin , @abluescarab) for making the TerraUI Toolkit which I used to make the GUI in this mod (well, ok, not anymore, but it was helpful in the early days!)
    -The tModLoader team for making tModLoader, of course

    Known Bugs:
    -- Sometimes I've seen a Meowmere fail to fire dyed projectiles. Re-dyeing caused it to fire correctly again. Cause unknown.
    -- There can be weird things when stacking consumables with differing names and/or dyes. This cannot be solved in a way that I am aware, so it's staying for now.
    -- Projectiles which are both friendly and hostile (such as bee hives) may get accidentally dyed if created while using a dyed item.

    Known Quirks (Not a bug, though technically speaking not a feature either):
    -- You can dye pets/armor/accessories/etc.. This will NOT cause the pet/armor/accessory/etc. to actually get dyed other than its appearance in the inventory. After all, what are the vanilla dye slots for? (Please don't post about this again...)

    Some extra dyes to play with:
    These two mods are the first of their kind: they add new dyes to the game!

    Hair Dye for Armor adds normal variants of all previously hair-exclusive dyes while
    Secret Dyes adds in dyes from unused shaders in the game's resources (some look really cool!).

    Download both from the Mod Browser.
    DropBox for Hair Dye for Armor
    DropBox for Secret Dyes

    Changelog (Hair Dye for Armor):
    - 1.0: First release
    - 1.0.1: Fixes dyes broken by changes in ShaderLib during development
    - 1.0.2: Updated for 0.10.0.1
    - 2.0: Updated for ShaderLib 2.0. Now allows equipping related hair dye instead of using new items. Old items will become unloaded items, sorry.

    Changelog (Secret Dyes):
    - 1.0: First release
    - 1.0.1: Updated for 0.10.0.1
    - 2.0: Updated for ShaderLib 2.0. Dev dye doesn't shift when changing player direction anymore.

    Making Pet Dyes Great Again:
    This mod is now a part of Shader Library. DO NOT use this anymore, it will crash!
    A very simple fix which uses the same formula that I developed for the Item Customizer mod for better shader rendering.
    What's the fix for? Well, if you've ever tried putting certain dyes on a pet, light pet, or hook, you might have noticed it looks absolutely horrid:
    old.png
    Here's what Vortex Dye on a Zephyr Fish looks like now:
    new.png
    Much better, right? This mod affects all pets, light pets, and hooks, as well as the Stardust Guardian.

    Changelog:
    - 1.0: First and likely final release. haha nope
    - 1.0.0.1: A patch which fixes potential accidental shading of unshaded projectiles which were created before the pet/light pet/hook.
    - 1.0.1: Mod now uses ShaderLib instead.
    - 1.0.2: Updated for 0.10.0.1. Actually, it didn't need to update at all, but I had to rebuild to stop tML from believing it was outdated. And increase the version number, of course.

    Download: Mod Browser or here

    Credits:
    - Same as for Item Customizer. This is basically just a segment of code from over there anyway (well, now that bit of code is in ShaderLib and this does barely anything, but yeah)

    ...don't use this, it's outdated anyway
    !!WARNING!! This mod is pretty buggy. Use at your own risk.
    World Persistence is a simple mod which makes you, NPCs, and projectiles persist when you re-enter a world.

    You won't appear back at spawn when you come back - and non-town NPCs, bosses, minions, dropped items, and debuffs stay where they are, too.

    The file is called EvilMod, and will show that during loading. Don't ask.
    Download from the Mod Browser or Dropbox.

    Changelog:
    - 1.0: Initial release.

    Known Whoop-de-doos:
    - Don't try to use this mod if there are NPCs, projectiles, or dropped items from mods that have been removed in the world. Chances are bad stuff could happen.
    - NPCs and projectiles will lose any mod data on re-entry, so prefixes from Prefixes for Enemies will disappear and dyed projectiles from Item Customizer will become un-dyed.
     
    Last edited: May 7, 2018
  2. Reserved, because this is a thing that people do for some reason in the case that the first post ran out of room somehow.
     
  3. tankedup13

    tankedup13 Golem

    seems cool, i always wanted a chloropyhte megashark....
     
  4. Lunatic Lobbyist

    Lunatic Lobbyist The Destroyer

    Holy crap... out of what I tried, I can confirm it works perfectly.

    Once I figured out I had to disable auto-pause (this is very important), it was all-systems-go. Modded weapons and spells with the appearance of unique dyes is something I've wanted for a long, long time. And yes, they tend to look as great as you'd imagine, if not better. Re-naming the items works perfectly as well from what I tried (another thing long-overdue). No problems going from one world to the next, all items stayed intact. The only thing I didn't test with yet was multiplayer. The UI works and looks great, although using the anvil itself is a bit odd. I wish you could put the anvil on the ground instead of using it directly from your inventory (unless I'm missing something), and it would be great to have a unique sprite for it. Considering everything though, it's very easy to overlook these gripes.

    Re-Logic would really benefit from incorporating your work, and it sounds like you're only just getting warmed up. As much as I love all the massive mods that add hundreds of items, NPC's, biomes etc, it's the little (yet INCREDIBLY useful) mods like this that I truly can't live without.

    Thank you.
     
    Crimwolf and thegamemaster1234 like this.
  5. @Lunatic Lobbyist Thanks for the support! If you do test multiplayer, please let me know. Especially test projectiles, since that's what I'm most worried about.

    Yeah, I was considering using a tile for the UI - the Dye Vat itself was one consideration - but I don't quite know how to do that yet (since tile UIs tend to go away when you're far away from them). In the future, this could work. (Also, allowing movement of the UI window wouldn't be bad either)

    Future mod plans are:
    - Mod that adds regular versions of currently hair-only dyes (actually, this is already done, but on my OSX partition)
    - Reviving and fixing up my Dye Utilities mod, which allows dyeing of your skin, default clothes, and hair while wearing a hat
    -- This would also include a new UI instead of the ancient cycler items, and work similarly to the item customizer's UI
    -- Either that, or I might even be able to add an entire equipment section just for that. Maybe. Not sure if it's possible.

    (PS: Don't use Hades dye. It's a vanilla issue, but it tends to look terrible on non-player sprites. To see what I mean, just slap one on a turtle pet.)
     
    Last edited: Sep 1, 2016
  6. Double post! Sorry. I'm sure it's OK for update posts though.

    Heads up: tomorrow I'm coming out with a new update for Item Customizer, which will seamlessly add some new features and fix a bug:
    - Items will show their shader both in inventory and in world (some don't look nice, but blame vanilla)
    - GUI window will be draggable
    - Consumables will be dyeable (this includes potions, throwables, etc.. Expect weirdness when stacking items with different names/dyes.)
    - Minions should now correctly be shaded (they were broken accidentally when I fixed enemy projectiles getting shaded)
     
    MountainDrew and Eli10293 like this.
  7. AXsmasher

    AXsmasher Official Terrarian

    noice I luv this mod, good stuff.
     
  8. Eli10293

    Eli10293 Spazmatism

    Just make it so items with different dyes and names are not stackable with those without
     
  9. Burst

    Burst Golem

    Oh my god! Finally blue Vampire knives or a awesome flaming Terra Blade :D Thank you soooo much
     
  10. I would, but Terraria wasn't built in a way that makes this kind of thing easy. I could set the MaxStack of the items to 1, but then if you ever separated the items you wouldn't be able to re-stack them. Also, throwing weapon projectiles often have a chance to drop themselves when they die, and I can't dye those, but at least they stack into a pre-made dyed stack well enough.

    If you guys would prefer that stackables stay undyeable, I can remove this.

    In other news, the update is, uh, up! You can get 0.7 right from your mod browser.
     
  11. How about an alternative for at least the dyeing part.
    Add an additional slot at the end of the hotbar that accepts dyes and any item you have selected will apply that dye.
    Another alternative way to above is to have dye for each hotbar slots
     
  12. Sorry, but I'd rather not. Why? Well, if I had one dye for the whole hotbar, I would complain about wanting to have multiple different dyes at once. If I then made 10 slots to satisfy this need, I would complain about how annoying it would be to have to swap out dyes in the slots every time I changed weapons just to get the correct one on. Also, where would the slots even go? Trust me, it's much more usable this way.

    Granted, your idea is basically what vanilla does for equipment slots - and being equipment, it makes sense. But these are items. Items that move around a lot.
    (also, it's probably really cool to open a chest to see a whole treasure hoard of shader items)

    ...it would also de-mote the GUI to just a renaming interface, and I don't want that :p
     
  13. slimsymuffin

    slimsymuffin Terrarian

    HELP!!! both the forum download and browser downloads are not working for me
    "page cannot be reached"
    "Unknown Mod Browser Error"
    EDIT: works Now

    BUG ALERT: 20160901171615_1.jpg
    some projectiles get coloured when using dyed item
     
    Last edited: Sep 1, 2016
  14. Oh great, did I break that again? >_<

    I've been trying for a while to find a good combination that can actually differentiate between a player's projectiles and an NPC's projectiles, but some things just can't be done.

    The Guide's projectiles are being dyed because the projectiles are owned by Main.myPlayer (you) and they are also friendly (in fact, the same projectiles as a bow firing wooden arrows would). This makes it extremely difficult to actually tell if something other than the player fired the projectile, because, in all technicalities, it might as well have been.

    I can confirm that most, if not all enemy projectiles should be excluded from dyes, however. I hope.
     
    Last edited: Sep 1, 2016
  15. slimsymuffin

    slimsymuffin Terrarian

    ok, plus I just assumed it was all of the projectiles I have ok knowledge of coding so it makes sense when you think about it but the even weirder thing is you don't have to be using the item.
     
  16. Yeah, that is true - I should probably add in a check for that and see how it goes. Right now it doesn't care whether or not you're actually using the item, just that you have it selected.
     
  17. Preview of new update:
    before - after
    old.png new.png

    Yep, I figured out why some special shaders looked absolutely terrible and fixed it for you guys!
    Now you can have that awesome Vortex Dragon you always wanted. Or a Vortex Cyan-Green Looking Death Beam.
    Or a True Solar Eruption (put solar dye on it).

    Oh, it also adds in a check for whether the player is actually using the held item for projectile shading. If this causes problems, I can remove it.
    (Basically, town NPC projectiles shouldn't get shaded now unless you're actually using the item at the same time the NPC fired the projectile)

    Changelog:
    v0.8
    - Made shaders work better in general, mostly for special shaders (solar, vortex, hades, etc.)
    - Projectiles now check whether the player is actually using the weapon before allowing themselves to be dyed.
     
    KingSora and Eli10293 like this.
  18. Eli10293

    Eli10293 Spazmatism

    If you are having trouble with dyeing projectiles that spawn projectiles have you just tying the dye the damage value that is passed on to the new projectile with the shader?
     
  19. What are you even saying o_O
    It seems you are incapable of providing sufficient grammar. Please contact me via the tModLoader Discord instead.
     
  20. New mod added! Vanilla Dye Fix is now available through both the Mod Browser and a direct DropBox link.
    Check the OP for details!