tModLoader Rewards - Receive (non-transferable) spendable points for game progress

hamstar

Terrarian

Rewards

v2.2.4.3

Mirror


Note: Requires Mod Helpers


This mod rewards players for game progression with Progress Points; a non-transferable currency to purchase rare, hard-to-grind items. You'll see this point score appear at the top of your screen when your inventory is open. Consult the Wayfarer town NPC for spending options (note that more purchases are unlocked as you progress the game).


Customization

You can use the Mod Helpers control panel to access mod configs, or else chat/console commands (single-player or server console only; type /help and scroll with arrow keys for list). Current list of commands:
  • rew-cheats-toggle: Toggles "cheat" mode.
  • rew-add-points: Adds PP for the current player. Requires cheat mode.
    Parameters: <PP amount>
    Example chat usage: /rew-add-points 12345

Note: Item names must be their English names when inputting custom packs. The items you receive in-game should be properly localized, though.

sdvHool.png


Source code now available. API now available (now featuring Mod.Call() bindings).


Installation

Requires tModLoader (+0.11). Copy the above .tmod file to your 'Documents/My Games/Terraria/ModLoader/Mods' folder to play.

Rewards.png

 
Last edited:
v2.2.4.3
  • Fixed player data load fail (sync issue)
v2.2.4.2
  • Fixed shop pack purchases failing (e.g. if they have boss conditions, since the tML11 update)
  • Tweaked chat commands to use replies instead of exceptions
  • Restructured some ShopPackItem code
  • Simplified player sync checks internally
v2.2.4.1
  • Fixed issue with forced reloads from internal config initizations
v2.2.4
  • Implemented CustomPlayerData to replace ModPlayer.OnEnterWorld (hopefully fixes some loading issues)
  • Modified config specify some elements as requiring reloads
v2.2.3
  • Updated for TML11.5
  • Added FloatInputElement for float config settings
  • Added ranges to some config settings
v2.2.2
  • Changed config file NpcRewards to NpcRewardsOnKill
v2.2.1.4
  • Added and made use of some copy ctors
  • Assorted tweaks to catch null crap
  • Fixed shop pack item tooltip lists
v2.2.1.3
  • Attempting fix of ModConfig error from fields with param-less CTors
v2.2.1.2
  • Fixed issue with multiplayer due to removed config sync code from previous versions
v2.2.1.1
  • Modified ShopPackDefinition to be ModConfig compatible (untested)
v2.2.1
  • Added inbox message to inform players of the config changes
  • Added range limits to config settings
  • Added labels to config settings
v2.2.0
  • Updated for TML11.4 and MH5b
  • Implemented config Reset functions
  • Implemented config change syncs (resets, cheats toggle)
  • Switched all uses of GetQualifiedName to GetUniqueKey
  • Changed uses of item and NPC names to ItemDefinition and NPCDefinition, respectively
  • Set ShopPackItem to be public
  • Set ShopPackDefinition and ShopPackItemDefinition to use public constructors
  • Fixed issue with boss kill prerequisite checks for shop loadouts
v2.1.1.1
  • Fixed possible issue with syncing players anew with servers
  • Updated occurrences of player.GetModPlayer with TmlHelpers.SafelyGetModPlayer (paranoia)
  • Restructured mod load code files
v2.1.1
  • Added different popup text for earning +PP for miniscule amounts
  • Reorganized wayfarer code files
  • Added ShopPackDefinition.GetValidatedLoadout(bool)
  • Adjusted Wayfarer's shop to properly use validated items
  • Added ResetPlayerModData API binding
  • Added DebugModePPInfo config setting (defaults true)
  • Added player info to DebugModePPInfo outputs
  • Restructured KillData files
  • Added yet more debug outputs for tracking missing kill rewards on the client
  • Set kill rewards to only transmit to clients when non-zero (saves on net traffic)
  • Added safety measures against bad local players
  • Added reset for rewards kill data after each play session
  • Silenced debug outputs of kill data saves with DebugModeKillInfo set
  • Added NaN handling for kill PP compute
  • Minor kill data save code refactoring'
  • Implemented EventSyncProtocol to compensate for clients not having adaquate updates on vanilla events
  • Updated KillData events updating for better correctness
  • Fixed minor oversight converting events flags on sync
  • Begun refactoring WorldLogic to handle events stats (instead of KillData)
  • Added debug outputs to event changes
v2.1.0.7
  • Fixed (again again and again) npc rewards for EoW syncing to client incorrectly
  • Further improved debug info
  • Added a mod recommendation
v2.1.0.6
  • Fixed issue with syncing EoW kills to clients
  • Streamlined Mod.Call
  • Added Mod recommendations
v2.1.0.5
  • Fixed issue with Mod.Call() being overly picky with commands
v2.1.0.4
  • Fixed inbox update message triggering prematurely
  • Fixed single player mode breaking (sigh!)
  • Fixed EoW not correctly giving rewards
v2.1.0.3
  • Fixed issue with server sync on player connect
  • Added WorldLogic.GetPlayerData(...) error catching for players without UIDs
  • Fixed KillDataProtocol messing up shop purchases
  • Added better sync failure error reporting
v2.1.0.2
  • Added error reporting for sync fail when opening packs
v2.1.0.1
  • Fixed issue with configs force reseting to defaults with mod reloads
  • Added major version check for MH
  • Fixed syncing obsolete settings data
v2.1.0
  • Switched from snake case to camel case
  • Updated to MH v4.2
  • Set config file loading and saving to be async
  • Adjusted player load to better inline loading and give better error alerts to odd conditions
  • Refactored to not use pass Mod reference by parameter
  • Split up Config file into Settings, Points, and Shop configs
  • Changed setting PointsDisplayColor to PointsDisplayColorRGB
  • Refactored CalculateKillReward structure
  • Added better error reporting from net code
  • Added inbox alert about updating config files
v2.0.0.1
  • Updated for MHv4
v2.0.0
  • Updated configs to use mod's versioning
  • Transitioned to new player ID format
  • Transitioned to new event type format
  • Removed 'WorldSafelyLoaded' check for initialization (no issue?)
  • Tweaked PP hover text alignment
  • Fixed player id sync issues on load (i hope)
v1.5.3.3
  • Added new pack opening error reporting
  • Attempted failsafe against load fail (kill data not syncing)
v1.5.3.2
  • Refined DataDumper output
  • Added failsafe against player loading fails server-side (laggy servers/clients?)
  • Tweaked player connect conventions
  • Wrapped player connect with AddWorlInPlayOncePromise
  • Restructured KillDataProtocol a bit
v1.5.3
  • Updated to Mod Helpers v2.0.2
  • Altered chat commands for better readability
  • Fixed MP player load bug failsafe
  • Fixed kill detect fail (REALLY dumb bug!)
v1.5.2
  • Set kill data to properly sync to clients (hopefully!)
  • Transitioned PP data to save to Mod Specific Data folder
  • Fixed SP data overriding server sync data
  • Added some error outputs
  • Minor internal restructuring
v1.5.1.11
  • Added better debug reporting for purchases
  • Slightly restructured purchases internally
v1.5.1.10
  • Fixed duplicate purchases in multiplayer
v1.5.1.9
  • Fixed issue with buying packs in MP
v1.5.1.8
  • Refactored shop pack purchasing (somewhat)
  • Added more debug output granularity (DebugModeKillInfo)
  • Assorted minor internal refactoring
v1.5.1.7
  • Added locking to kill tracking data structure (internal change only)
v1.5.1.5
  • Added failsafe against invalid PP rewards from invasions (cause still unknown)
  • Added 'Reset Configs to Defaults' button for mod control panel
v1.5.1.4
  • Attempted fix for loading crash
  • Updated to Mod helpers v1.6.4
v1.5.1.3
  • Set SharedRewards to true by default
  • Fixed shared rewards improperly syncing between players in MP
v1.5.1.1
  • Added recovery measure to remedy v1.5.0's config corruption
v1.5.1
  • Updated to Helpers v1.6.0 layout changes
  • Updated to C# 6
  • Fixed kill reward blocking npc kills
v1.5.0.2
  • Fixed shop loadout using item names instead of npc names
v1.5.0
  • Improved PP display font
  • Added ResetKills API command
  • Added NpcRewardNotGivenAfterNpcKilled config settings
  • Repriced Money Purse to 10 PP
  • Added OnPointsSpend API command
  • Attempted fix against redundant Wayfarer forced spawns
  • Added 'SuppressConfigAutoSavingOn() and Off() API functions
  • Minor internal refactoring of player loading code
v1.4.15.3
  • Fixed MP sync issue on load (prevents Packs from being purchased)
v1.4.15.2
  • Refactored player code to try to prevent incorrect kill data saving
  • Fixed typecast error in API
v1.4.15
  • Added parameter to /rewardsaddpoints and set to properly trigger hooks
  • Added some preventative measure against mod reload (and other?) crashes from improper dictionary async
  • Set to use new world data file name convention for new users of the mod (see config otherwise)
v1.4.14
  • Fixed goblin army kill status not saving properly
  • Corrected EoW default setting
  • Set EoW to reward based only on npc being a boss occurrence or not
  • Added preventative measure/fix for mod dependency load order issue
  • Now requiring HH v1.4.17
v1.4.13.1
  • Exception catcher added to attempt to stop 'zombie' NPCs
v1.4.12.3
  • Fixed OnPointsGained issue (hopefully)
v1.4.12.1
  • Added OnPointsGained API function
v1.4.11
  • Added SpawnWayfarer API command
v1.4.10
  • Minor updates for HH v1.4.8
  • Removed auto saving from API commands (saving must be explicit)
  • Minor PP default position tweak
  • Refactored net protocol layout
  • Renamed protocols
  • Spring cleaning (internally)
v1.4.8.2
  • Shifted PP display to appear just over health bar at lowest resolution
v1.4.8
  • Fixed multiplayer PP saving
  • Updated default position of PP point display (now appears next to health bar)
v1.4.7.2
  • Fixed multiplayer Wayfarer shop not acknowledging boss kills
  • Set empty shop to fallback to default loadout
v1.4.7
  • Adjusted some default pack prices
  • Assorted bug fixes and refactoring
v1.4.6.1
  • (Hopefully) fixed config load exceptions
v1.4.6
  • Fixed shop pack validation exceptions on load
  • Added config option to disable PP popups
v1.4.5
  • Added multi-lingual support (but only on a per-server basis, currently)
v1.4.4
  • Tweaked PP display (hover text indicates function)
v1.4.3
  • Added better protection against duplicate Wayfarer spawns
  • Fixed crash from invalid world file names
v1.4.1.4 2
  • Fixed Wayfarer autoload
v1.4.1.1
  • Fixed Wayfarer title
  • Fixed 'instant wayfarer' causing duplicate Wayfarer npcs
v1.4.0
  • Added config option to spawn Wayfarer immediately on map start
  • Fixed weapon sound for hard mode Wayfarer
  • Assorted small tweaks
v1.3.0
  • Set kill tracking to be entirely via. server/world for each player
  • Upgraded net protocol to use PacketProtocol
  • Added scrollable shop for the Wayfarer (>40 items)
  • Improved config file
  • Fixed shop pack boss requirement fail
  • Rebalanced default packs costs
  • Heavy refactoring
v1.2.2
  • Set config changing options (commands, API) to properly save
  • Minor refactoring
v1.2.1
  • Altered config for pack definitions to specify requisite boss by name only
  • Fixed some pack validation bugs
v1.2.0.1
  • Fixed possible multiplayer bug
v1.2.0
  • Changed npc kill data to be stored per-world (not per-player)
  • Removed KillsOfNpcOnCurrentWorld API binding
v1.1.2.3
  • Preemptive counter measure against that annoying crash/exception (assuming it rears its head again)
v1.1.2.2
  • Added a debug config option
  • Minor refactoring
  • Fixed (hopefully) possibly bug with kills failing to be recognized
v1.1.2
  • Improved /rewardsshopadd instructions
  • Refactored some internal code
  • Fixed npc weapon
  • Fixed -1 starting PP for new players
  • Fixed purchases failing (knock on wood!)
v1.1.1
  • Added cheat toggle command '/rewardscheatstoggle'
  • Fixed player data saving
  • Fixed grinding point awarding
v1.1.0.3
  • Fixed player create exception error
v1.1.0.2
  • Tweaked shop add command description
v1.1.0.1
  • Added chat commands (cheat mode only) to change shop items
  • Added API functions to change shop items
  • Added 'SaveModSetting' API function
  • Exposed API functions via Mod.Call()
  • Fixed NPC's weapon (might seem familiar)
  • Bug fixes
  • Improved description
v1.0.0
  • First release!
 

Attachments

  • Rewards v1.0.0.zip
    69.6 KB · Views: 689
  • Rewards v1.1.0.1.zip
    79.6 KB · Views: 313
  • Rewards v1.1.0.2.zip
    79.5 KB · Views: 333
  • Rewards v1.1.0.3.zip
    79.7 KB · Views: 308
  • Rewards v1.1.1.zip
    81.6 KB · Views: 307
  • Rewards v1.1.2.zip
    82.2 KB · Views: 322
  • Rewards v1.1.2.2.zip
    83.6 KB · Views: 311
  • Rewards v1.1.2.3.zip
    83.6 KB · Views: 335
  • Rewards v1.2.0.zip
    82 KB · Views: 330
  • Rewards v1.2.0.1.zip
    82 KB · Views: 348
  • Rewards v1.2.1.zip
    80.6 KB · Views: 330
  • Rewards v1.2.2.zip
    80.9 KB · Views: 326
  • Rewards v1.3.0.zip
    87.6 KB · Views: 319
  • Rewards v1.4.0.zip
    88.7 KB · Views: 305
  • Rewards v1.4.1.1.zip
    72.3 KB · Views: 331
  • Rewards v1.4.1.2.zip
    3.4 KB · Views: 286
  • Rewards v1.4.1.4.zip
    89.2 KB · Views: 337
  • Rewards v1.4.3.zip
    89.8 KB · Views: 296
  • Rewards v1.4.4.zip
    90.8 KB · Views: 356
  • Rewards v1.4.5.zip
    89.7 KB · Views: 294
  • Rewards v1.4.6.zip
    89.9 KB · Views: 298
  • Rewards v1.4.6.1.zip
    90.1 KB · Views: 406
  • Rewards v1.4.7.zip
    92.2 KB · Views: 303
  • Rewards v1.4.7.2.zip
    93.4 KB · Views: 380
  • Rewards v1.4.8.zip
    94 KB · Views: 320
  • Rewards v1.4.8.2.zip
    94.2 KB · Views: 359
  • Rewards v1.4.10.zip
    94.6 KB · Views: 310
  • Rewards v1.4.11.zip
    95.3 KB · Views: 288
  • Rewards v1.4.12.1.zip
    96.2 KB · Views: 289
  • Rewards v1.4.12.3.zip
    96.5 KB · Views: 324
  • Rewards v1.4.13.1.zip
    96.5 KB · Views: 290
  • Rewards v1.4.14.zip
    97 KB · Views: 305
  • Rewards v1.4.15.zip
    97.9 KB · Views: 267
  • Rewards v1.4.15.2.zip
    99.1 KB · Views: 312
  • Rewards v1.4.15.3.zip
    99.1 KB · Views: 315
  • Rewards v1.5.0.zip
    102.1 KB · Views: 293
  • Rewards v1.5.0.2.zip
    102.7 KB · Views: 289
  • Rewards v1.5.1.zip
    99 KB · Views: 316
  • Rewards v1.5.1.1.zip
    99 KB · Views: 286
  • Rewards v1.5.1.3.zip
    99 KB · Views: 299
  • Rewards v1.5.1.4.zip
    99.2 KB · Views: 282
  • Rewards v1.5.1.5.zip
    100.1 KB · Views: 286
  • Rewards v1.5.1.7.zip
    100.5 KB · Views: 269
  • Rewards v1.5.1.8.zip
    100.8 KB · Views: 285
  • Rewards v1.5.1.9.zip
    101 KB · Views: 278
  • Rewards v1.5.1.10.zip
    101 KB · Views: 253
  • Rewards v1.5.1.11.zip
    101.4 KB · Views: 312
  • Rewards v1.5.2.zip
    102.1 KB · Views: 290
  • Rewards v1.5.3.zip
    65.9 KB · Views: 291
  • Rewards v1.5.3.2.zip
    66.6 KB · Views: 275
  • Rewards v1.5.3.3.zip
    66.8 KB · Views: 348
  • Rewards v2.0.0.zip
    66.5 KB · Views: 335
  • Rewards v2.0.0.1.zip
    67.1 KB · Views: 361
  • Rewards v2.1.0.zip
    66.6 KB · Views: 215
  • Rewards v2.1.0.1.zip
    66.9 KB · Views: 210
  • Rewards v2.1.0.2.zip
    67.2 KB · Views: 211
  • Rewards v2.1.0.3.zip
    67.2 KB · Views: 262
  • Rewards v2.1.0.4.zip
    67.5 KB · Views: 206
  • Rewards v2.1.0.5.zip
    67.9 KB · Views: 207
  • Rewards v2.1.0.6.zip
    67.3 KB · Views: 201
  • Rewards v2.1.0.7.zip
    67.8 KB · Views: 302
  • Rewards v2.1.1.zip
    70.6 KB · Views: 278
  • Rewards v2.1.1.1.zip
    70.8 KB · Views: 376
  • Rewards v2.2.0.zip
    138.5 KB · Views: 201
  • Rewards v2.2.1.zip
    139 KB · Views: 171
  • Rewards v2.2.1.1.zip
    139.1 KB · Views: 188
  • Rewards v2.2.1.2.zip
    136.7 KB · Views: 205
  • Rewards v2.2.1.3.zip
    136.9 KB · Views: 191
  • Rewards v2.2.1.4.zip
    139.9 KB · Views: 202
  • Rewards v2.2.2.zip
    141.2 KB · Views: 229
  • Rewards v2.2.3.zip
    141.6 KB · Views: 229
  • Rewards v2.2.4.zip
    152.1 KB · Views: 169
  • Rewards v2.2.4.1.zip
    151.2 KB · Views: 170
  • Rewards v2.2.4.2.zip
    150.6 KB · Views: 193
  • Rewards v2.2.4.3.zip
    150.4 KB · Views: 862
Last edited:
Is that the good sea mod, since it is a help of weapons, armor, item, help a lot, besides you have 4 models installed and playing all the time and the truth is not easy :C but it is a good challenge :3

Es pero que sea bueno el mod, ya que igual una ayuda de armas, armaduras, item, ayuda mucho, ademas yo tengo 4 mod instalados y jugando todo al mismo tiempo y la verdad no es facil :c pero es un buen reto :3
 
Can someone make a config for Calamity, Thorium, and Crystilium? I don't really know how to work the config
 
Last edited:
I can't seem to be able to buy anything.
I just defeated the eye of cthulhu and the money purse picked my interest, however, despite having 9 PP (i guess that's the currency) i can't buy it, i right click, it dissapears, i left click, it also dissapears.

As always, to aid on the search for the trouble here is my mod list:

Rewards
Terraria Overhaul
Hamstar's Helpers
Better Bone Welder
The One Library
Portable Storage
Recipe Browser
Simple Auto Chests
Shorter Respawn Time
Where's My Items
The Luggage
Boss Checklist
Cheat Sheet
The Lunatic
More Dialouge
Low Health Beep
'The' Fixer
Yet Another Boss Health Bar
Helpful Hotkeys
WorldGen Previewer
Which Mod Is This From?
Shader Library
Dye Easy
Hair Dye for Armor
Vanilla Dye Fix
Wing Slot Upgraded
 
I can't seem to be able to buy anything.
I just defeated the eye of cthulhu and the money purse picked my interest, however, despite having 9 PP (i guess that's the currency) i can't buy it, i right click, it dissapears, i left click, it also dissapears.

As always, to aid on the search for the trouble here is my mod list:

Rewards
Terraria Overhaul
Hamstar's Helpers
Better Bone Welder
The One Library
Portable Storage
Recipe Browser
Simple Auto Chests
Shorter Respawn Time
Where's My Items
The Luggage
Boss Checklist
Cheat Sheet
The Lunatic
More Dialouge
Low Health Beep
'The' Fixer
Yet Another Boss Health Bar
Helpful Hotkeys
WorldGen Previewer
Which Mod Is This From?
Shader Library
Dye Easy
Hair Dye for Armor
Vanilla Dye Fix
Wing Slot Upgraded
v1.1.2 up (see above). Let me know if there's any more problems. This should be ready for Releases soon, and no longer a WIP.
 
Here's an even larger config file that may interest some people: https://pastebin.com/AQXy3nyM It's intended to be used across multiple playthroughs in conjunction with an upcoming mod called Reset Mode, so some of the packs won't be purchasable on your first playthrough. Prices and PP rewarded by bosses/events can, of course, be adjusted however you see fit to change how it all works, including allowing you to purchase any pack on your first playthrough.
The file also assumes that you have Infinity, Battle Rods, Teleporters Unchained, Magic Storage, and Banner Bonanza installed.
 
Last edited:
I need help ;-; , when i started my world and get the npc, all packs don't loaded, only the alucard's pack loaded, and i sayed okay, and i'm trying to code mode packs, BUT DON'T LOAD ANYTHING , and i want to put mod items, but doens't have id, i tried to add vanilla items in the config, but i get the same error, if you can help me, my error is this
upload_2018-2-10_20-33-59.png

[doublepost=1518302042,1518301974][/doublepost]
upload_2018-2-10_20-35-10.png
 
In the newest (currently) version, when you kill the WoF you should get more bags to purchase, but nothing updates, and there still are the bags that were in pre-hardmode
 
In the newest (currently) version, when you kill the WoF you should get more bags to purchase, but nothing updates, and there still are the bags that were in pre-hardmode
See if the update (above) fixes this, now.

lol but i added my own bags without boss kills, and idk what happens
Use the in-game chat commands (in single player) to add items.
 
Last edited:
I love this mod, feels almost quest/merc like, getting access to a lot of items by farming bosses for points feels good and very rewarding indeed :D
 
I'm getting reports of transient FPS lag, but I'm unable to replicate. If someone gets any for a given game, use the Hamstar Helpers issue report function to let me know.

Also, this is now out of beta. I hope.
 
I'm getting reports of transient FPS lag, but I'm unable to replicate. If someone gets any for a given game, use the Hamstar Helpers issue report function to let me know.

Also, this is now out of beta. I hope.
I Can Add My Own Bags In The Rewards Config???
 
Updated the Helpers mod to now give errors when invalid config files are present. Recommend using a JSON editor if you edit the config files by hand.

but how i get an mod id???
[doublepost=1518961511,1518961489][/doublepost]
when i try to use /hhgetitemid i can't get mod ids
What is the exact text you're using?
 
Hello, using this mod on a linux multiplayer server and it is not assigning any pp when killing bosses. Works fine in windows singleplayer and windows multiplayer.
Mods used are all of them.
 
Back
Top Bottom