User:Barometz/Sandbox

Mod Calls
Mod Calls are special functions provided by tModLoader that mod creators can use to interact with the Thorium Mod in certain ways. They are accessible through Mod.Call and a given call name; for more details, see the tModLoader wiki. This page lists the mod call functions Thorium Mod currently adds, along with examples and what they are used for.

Important Information

 * A Thorium Mod Mod.Call will never raise an exception that propagates beyond the call. If an internal exception occurs, it will be logged (client/server.log) and the call will return null.
 * Mod.Calls that have primitive return types (bool, int etc.) can still return null as mentioned above, see the examples for handling such cases.
 * Mod.Calls that have no return value will return true if the operation/s was/were successful.
 * For best results, add  into your mod's build.txt so that the calls return their true value regardless of mod update order.
 * For example, Thorium Mod updates many of it's Player values in the ModPlayer.PostUpdateEquips hook. Accessing these values in hooks that run prior to this will return a possibly "outdated" value. Accessing them inside the hook will only return a guaranteed "final" value if  is added. Accessing them in a later hook (such as ModPlayer.PostUpdate) will work regardless, but may limit you otherwise.

Examples
TODO: Showcase the following cases
 * No-return call
 * Return call with handling via casts
 * ValueTuple call

Returns the tile coordinate boundaries for the Aquatic Depths generated on world creation.

Parameters

 * None.

Return value

 * Rectangle consisting of the boundary's upper-left coordinates on the world map, along with its width and height. Note the Aquatic Depths are only generated after the "Micro Biomes" vanilla step, and calling GetAquaticDepthsBounds before will return Rectangle.Empty.

Returns the tile coordinate boundaries for the Blood Chamber generated on world creation.

Parameters

 * None.

Return value

 * Rectangle consisting of the boundary's upper-left coordinates on the world map, along with its width and height. Note the Blood Chamber is only generated after the "Micro Biomes" vanilla step, and calling GetBloodChamberBounds before will return Rectangle.Empty.

Returns the world coordinates for the Blood Altar generated on world creation, which the Grim Pointer points to.

Parameters

 * None.

Return value

 * Vector2 of the Blood Altar's coordinates on the world. Note the Blood Altar is only generated after the "Micro Biomes" vanilla step, and calling GetBloodAltarPosition before will return -Vector2.One.

Registers a modded Item (preferably a spear) to the SpearItemIDCache, allowing it to function with the Silver Spear Tip, Molten Spear Tip, and Crystal Spear Tip. You cannot add a vanilla or Thorium Mod Item to this.

Parameters

 * int representing the Item type to be registered to the cache.

Return value

 * bool which is true if the addition was successful; else, it is false.

Checks if the inputted Item is registered to SpearItemIDCache.

Parameters

 * int representing the Item type to check.

Return value

 * bool which is true if it is registered; else, it is false.

Registers a custom Projectile (preferably a thrown flail projectile) to the FlailProjectileIDCache, allowing it to function with the Iron Flail-Core, Cursed Flail-Core, and Vile Flail-Core. You cannot add a vanilla or Thorium Mod Item to this.

Parameters

 * int representing the Projectile type to be registered to the cache.

Return value

 * bool which is true if the addition was successful; else, it is false.

Checks if the inputted Projectile is registered to FlailProjectileIDCache.

Parameters

 * int representing the Projectile type to check.

Return value

 * bool which is true if it is registered; else, it is false.

Registers a custom Item (preferably a weapon from the Martian Madness event) to the MartianItemIDCache, allowing it to benefit from Conduit armor's damage bonus to martian weapons. You cannot add a vanilla or Thorium Mod Item to this.

Parameters

 * int representing the Item type to be registered to the cache.

Return value

 * bool which is true if the addition was successful; else, it is false.

Checks if the inputted Item is registered to MartianItemIDCache.

Parameters

 * int representing the Item type to check.

Return value

 * bool which is true if it is registered; else, it is false.

Checks if the inputted Item is a Bard weapon.

Parameters

 * int representing the Item type to check.

Return value

 * ValueTuple with the values:
 * Item1: bool which is true if it is of the BardItem type and has a damage value greater than 0; else, it is false.
 * Item2: byte representing the instrument type the BardItem belongs to.

Checks if the inputted Projectile belongs to a Bard weapon.

Parameters

 * int representing the Projectile type to check.

Return value

 * ValueTuple with the values:
 * Item1: bool which is true if it is of the BardProjectile type; else, it is false.
 * Item2: byte representing the instrument type the BardProjectile belongs to.

Checks if the player is in or close to the Aquatic Depths biome for its respective enemies to spawn.

Parameters

 * Player to check its biome for.

Return value

 * bool which is true if the player is in or close to the biome; else, it is false.

Checks if the player is in or close to the Granite Cave biome for its respective enemies to spawn. ''This is an "extension" of vanilla since it is lacking such a variable in its code. Use this if you want to avoid setting up the biome detection yourself.''

Parameters

 * Player to check its biome for.

Return value

 * bool which is true if the player is in or close to the biome; else, it is false.

Checks if the player is in or close to the Marble Cave biome for its respective enemies to spawn. ''This is an "extension" of vanilla since it is lacking such a variable in its code. Use this if you want to avoid setting up the biome detection yourself.''

Parameters

 * Player to check its biome for.

Return value

 * bool which is true if the player is in or close to the biome; else, it is false.

Adds to the player's symphonic damage multiplier by a provided amount (i.e. +=).

Parameters

 * Player that will have its symphonic damage increased.
 * float value to increase the player's symphonic damage multiplier by.

Return value

 * None.

Multiplies to the player's symphonic damage multiplier by a provided amount (i.e. *=).

Parameters

 * Player that will have its symphonic damage increased.
 * float value to multiply the player's symphonic damage multiplier by.

Return value

 * None.

Adds a flat symphonic damage bonus calculated after the normal damage formula.

Parameters

 * Player that will have its symphonic damage increased.
 * int value to add flat symphonic damage by.

Return value

 * None.

Adds to the player's symphonic critical strike chance by a provided amount.

Parameters

 * Player that will have its symphonic critical strike chance increased.
 * int value to increase the player's symphonic critical strike chance by.

Return value

 * None.

Adds to the player's symphonic playing speed by a provided amount.

Parameters

 * Player that will have its symphonic playing speed increased.
 * float value to increase the player's symphonic playing speed by.

Return value

 * None.

Adds to the player's empowerment range by a provided amount.

Parameters

 * Player that will have its empowerment range increased.
 * int value to increase the player's empowerment range by.

Return value

 * None.

Adds to the player's empowerment duration by a provided amount.

Parameters

 * Player that will have its empowerment duration increased.
 * short value to increase the player's empowerment duration by.

Return value

 * None.

Adds to the player's maximum inspiration by a provided amount.

Parameters

 * Player that will have its maximum inspiration increased.
 * int value to increase the player's maximum inspiration by.

Return value

 * None.

Returns the player's symphonic damage bonuses.

Parameters

 * Player to check symphonic damage bonuses.

Return value

 * ValueTuple with the values:
 * Item1: float representing the player's base symphonic damage multiplier (symphonicDamage).
 * Item2: float representing the player's additional symphonic damage multiplier (symphonicDamageMult).
 * Item3: int representing the player's additional flat symphonic damage bonus (flatSymphonicDamage).

Returns the player's symphonic critical strike chance.

Parameters

 * Player to check symphonic critical strike chance.

Return value

 * int representing the player's symphonic critical chance.

Returns the player's symphonic playing speed.

Parameters

 * Player to check symphonic playing speed.

Return value

 * float representing the player's symphonic playing speed.

Adds to the player's radiant damage multiplier by a provided amount (i.e. +=).

Parameters

 * Player that will have its radiant damage increased.
 * float value to increase the player's radiant damage multiplier by.

Return value

 * None.

Adds a flat radiant damage bonus calculated after the normal damage formula.

Parameters

 * Player that will have its radiant damage increased.
 * int value to add flat radiant damage by.

Return value

 * None.

Adds to the player's radiant critical strike chance by a provided amount.

Parameters

 * Player that will have its radiant critical strike chance increased.
 * int value to increase the player's radiant critical strike chance by.

Adds to the player's bonus healing by a provided amount.

Parameters

 * Player that will have its bonus healing increased.
 * int value to increase the player's bonus healing amount by.

Return value

 * None.

Adds to the player's radiant use speed by a provided amount.

Parameters

 * Player that will have its radiant use speed increased.
 * float value to increase the player's radiant use speed by.

Return value

 * None.

Returns the player's radiant damage bonuses.

Parameters

 * Player to check radiant damage bonuses.

Return value

 * ValueTuple with the values:
 * Item1: float representing the player's base radiant damage multiplier (radiantBoost).
 * Item2: float representing the player's additional radiant damage multiplier (always returns 1f).
 * Item3: int representing the player's additional flat radiant damage bonus (flatRadiantDamage).

Returns the player's symphonic critical strike chance.

Aliases

 * GetRadiantCrit

Parameters

 * Player to check symphonic critical strike chance.

Return value

 * int representing the player's symphonic critical chance.

Returns the player's bonus healing.

Aliases

 * GetHealBonus

Parameters

 * Player to check bonus healing.

Return value

 * int representing the player's bonus healing.

Returns the player's radiant use speed.

Parameters

 * Player to check radiant use speed.

Return value

 * float representing the player's radiant use speed.

Adds to the player's Life Recovery by a provided amount (i.e. +=).

Parameters

 * Player that will have its life recovery increased.
 * int value to increase the player's life recovery by.

Return value

 * None.

Adds to the player's amount of ticks substracted from LifeRecoveryIntervalDefault to reduce the Life Recovery interval by a provided amount (i.e. +=).

Parameters

 * Player that will have its life recovery timer reduced.
 * int value to reduce the player's life recovery timer by.

Return value

 * None.

Returns the player's Life Recovery.

Parameters

 * Player to check life recovery.

Return value

 * int representing the player's life recovery.

Returns the player's Life Recovery interval in ticks.

Parameters

 * Player to check life recovery interval.

Return value

 * int representing the player's life recovery interval in ticks.

-

-

This page documents modding content that offers some form of compatibility with the Thorium Mod, including new items or displaying information relating to Thorium content.

Ancients Awakened
Ancients Awakened is a large-scale content mod featuring a wide variety of new enemies and biomes.

With the Thorium Mod enabled:
 * 4 new Healer scythes are added.

Fargo's Mutant Mod
Fargo's Mutant Mod is a quality-of-life mod that adds a number of content for added convenience, including Town NPCs that sell summoning items and alternative crafting recipes to obtain rare or non-replenishable items.

With the Thorium Mod enabled:
 * The Mutant NPC sells all Thorium boss summoning items after the player defeats the boss for the first time.
 * Additionally, he sells 2 new items that manually summon Viscount and Abyssion, The Forgotten One without the need of a Blood Altar or defeating Aquatic Hallucinations.
 * A number of alternative recipes are added for Thorium. See this page for a full list.

Fargo's Soul Mod
Fargo's Soul Mod is a content mod that adds a variety of craftable accessories, including Enchantments, which provide an armor's set bonus as an accessory. Additionally, it adds a new difficulty mode, Eternity Mode, which provides a number of changes to enemies and bosses.

With the Thorium Mod enabled:
 * Enchantments for every Thorium armor set are added, as well as Forces that combine various Enchantments. See this page for a full list.
 * 4 new craftable accessories that provide benefits to the Healer and Bard classes respectively.

GRealm
GRealm is a content mod featuring a variety of new weapons, as well as enemies related to its custom event, The Horde.

With the Thorium Mod enabled:
 * 1 new Healer scythe is added.
 * The Miner NPC sells Thorium Bars, Magma Bars, Aquaite Bars, Lodestone Ingots, Valadium Ingots, and Illumite Ingots.
 * A number of undead-related weapons gain a 25% damage increase from the Ribmail, Pelvic, and Soulbone armor set bonuses:


 * The Bent Zombie Arm additionally fires 50% faster.
 * The Grave Buster additionally costs half as much mana and has its base critical strike chance doubled to 8%.
 * The Bone Reaper and Bone Baton additionally gain 5 armor penetration and cause healing spells to heal an additional 2 life while held.
 * The Bone Flayer Tail additionally gains the ability to release fireballs while thrown.


 * Biters, Grave Limbs, Abominations, and Festering Walkers can spawn in The Horde event.
 * The Gamma Blade, Instinct Charm, and Fragment of Dust items' crafting recipes are changed to include Thorium items.

Litho's Armory
Litho's Armory is a small-scale content mod that focuses on adding a large amount of weapons.

With the Thorium Mod enabled:
 * Over ? new items are added.

More Figures Mod
The More Figures Mod is a small-scale furniture content mod based on the Chad's Furniture Mod, focusing on adding collectible boss figures from other mods.

With the Thorium Mod enabled:
 * Boss figure furniture items are added for each Thorium boss, crafted from their respective trophies.

Orchid Mod
Orchid Mod is a small-scale content mod that primarily adds a new structure underground to allow for a smoother start, as well as a new class, the Shaman, which provide short empowerments that consequently affect other weapons and equipment.

With the Thorium Mod enabled:
 * Over 30 new items related to the Shaman class are added, including weapons at all points of the game and a new armor set crafted from a material dropped by the Viscount. See this page for a full list.

Boss Checklist
Boss Checklist is an informational mod that displays a checklist of bosses, as well as other features including possible drops and records.

With the Thorium Mod enabled:
 * Thorium bosses are included in the checklist.

Calamity Mod
Calamity Mod is a large-scale content mod that features a huge number of new bosses and weapons.

With the Thorium Mod enabled:
 * The Glimmering Gemfish item gains the chance to drop Pearl, Opal, and Onyx.
 * The Stuffed Fish item gains the chance to drop Marine Kelp and Marine Kelp Seeds.
 * The Main Planetoid chest adds Marine Kelp Planter Boxes to its contents.
 * A configuration option is added that increases the total health of Thorium's bosses as well as provide varying levels of damage reduction while the Revengeance or Death Modes are enabled. For more information, see this page.

Census
Census is an informational mod that displays missing Town NPCs in the housing panel, as well as their spawning conditions.

With the Thorium Mod enabled:
 * Thorium Town NPCs are included in the list.

Recipe Browser
Recipe Browser is an informational mod that displays all possible recipes, along with other features such as filtering options.

With the Thorium Mod enabled:
 * 2 item categories, for Healer and Bard items, are added.

WeaponOut
WeaponOut is a mod that visually displays the player's currently held item. Additionally, it adds a number of items.

With the Thorium Mod enabled:
 * The Perihelion Emblem accessory's crafting recipe is changed to use Thorium Thrower items.