tModLoader

tModLoader

1,051 ratings
Achievement Mod
4
3
9
4
4
2
2
2
   
Award
Favorite
Favorited
Unfavorite
Mod Side: Client
tModLoader Version: 1.4.3, 1.4.4
File Size
Posted
Updated
111.774 KB
2 Feb, 2023 @ 5:21pm
25 May, 2023 @ 10:36am
8 Change Notes ( view )

Subscribe to download
Achievement Mod

Description
Allows you to unlock achievements like in vanilla and allows other mods to add achievements.
Contains configuration options like having separate achievements for each player.
Adds the /achievement command which you can use to give/take/reset achievements.
Usage:
/achievement clear
/achievement grant [achievement name]
/achievement revoke [achievement name]

You can also type /achievement unlockvanilla to unlock all vanilla achievements.

Your achievements are saved to a json file which can be found in a folder called AchievementData.
The folder is found in the same place that your player and world folders are located.

For Developers:

If you are a developer and want to add an achievement use Mod.Call in PostSetupContent

Mod.Call("AddAchievement", this (reference to your mod),
Name of your achievement (string, don't put spaces),
Achievement Category (Terraria.Achievements.AchievementCategory),
Texture path (string, the texture should be 128x64, it will contain the unlocked and locked sprite of the achievement),
Custom border texture path (string, can be null, if you add a texture it should be 72x72),
Show progress bar (bool), Show achievement card (bool), Achievement card order (float), Conditions (string array))

Example:

if (ModLoader.TryGetMod("TMLAchievements", out Mod mod))
mod.Call("AddAchievement", this, "AchievementName", AchievementCategory.Collector, "YourMod/Assets/Textures/Achievement", null, false, false, 2.5f, new string[] { "Collect_" + ItemID.RodofDiscord });

This will create an achievement which you unlock by collecting a Rod of Discord

Setting show progress bar to true will show how many conditions are completed.

Achievement card order is the order of your achievement if you set show achievement card to true
The achievement Timber!! has an order of 1, while Champion of Terraria (Defeat the moon lord) has an order of 36
Setting the order will allow you put the achievement in the correct place in terms of progression.

How to add conditons:
To add a condition you simply add a string in the conditions array.
If you want to add a item condition add the string "Collect_" + the item id. Example: "Collect_" + ItemID.RodofDiscord
If you want to add a craft item condition add the string "Craft_" + the item id. Example: "Craft_" + ItemID.OnyxBlaster
If you want to add a mine tile condition add the string "Mine_" + the tile id. Example: "Mine_" + TileID.GrayBrick
If you want to add a kill npc condition add the string "Kill_" + the npc id. Example: "Kill_" + NPCID.Mimic

If you want a custom condition do "Event_ExampleEvent". Use Mod.Call("Event", "ExampleEvent"); to complete the condition.

If you want a custom value condition do "ValueEvent_ExampleValue_100". If the value reaches 100 the condition is completed. Use Mod.Call("ValueEvent", "ExampleValue", 1f); change the value by 1

Complete Example:
new string[] { "Collect_" + ItemID.AbigailsFlower, "Craft_" + ItemID.GoldenDelight, "Kill_" + NPCID.PurpleSlime }

To complete the achievement with those conditions you will need to collect abigails flower, craft a golden delight, and kill a purple slime.

Finally you will need to add an entry in the localization file of your mod for your achievement name and description.

You can type /achievement debuglist if you want the names of all achievements (including modded ones). Typing the command will print the names of all achievements to your client.log file.

You can modify this to create a texture for your achievement.

https://i.imgur.com/sO6F6Mg.png
Originally posted by tModLoader:
Developed By metalkingpig
118 Comments
§C137—backer§ 17 Dec @ 3:41am 
Hello author, may I ask how this mod is implemented? I would like to modify the achievement information of the original game. How should I proceed?@metalkingpig
Frisbee 10 Oct @ 3:23am 
I looooooooooooooooooooooooove love love LOVE this mod. I can finally play modded Terraria while still getting those nice succulent achievements
SK64 23 Aug @ 2:41pm 
what mods use this one?
GhostReconLu 18 Aug @ 10:02am 
UPDATE PLEASE!!!
LeoVargen 16 Aug @ 3:05am 
how do i open some console or what it is
Kite 4 Aug @ 12:12am 
so, im pretty stupid ngl (brain is confuzzled) will this allow me to unlock vanilla achievos that carry over to vanilla terraria? It always urks me if I fight a vanlilla boss I havent fought yet and dont get the achievo for it. or is this just ingame gui achievo's ?
テクノモンキーDJ 31 Jul @ 4:14am 
The best quality of life mod
xxxx 28 Jul @ 10:52am 
how are you supposed to use this?
Not_H3nry 21 Jul @ 12:28am 
it won't work when i say "/achievement clear"
Nick 11 Jul @ 12:39pm 
For all who are having issues downloading this mod:

1) Download tModLoader
2) Unsubscribe and then resubscribe to this mod.
3) Party on Wayne.:steamhappy: