• 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.
  • For issues you find with the Mobile 1.3 update, please follow this link and give as much detail as possible. This is the speediest way to get info to DR Studios to look at your issue. Also, some troubleshooting hints here.

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

hamstar

Steampunker
I can't have more than 21 bosses that give PP and when I try to add more, it throws me an error that is too small to read. Other than that it does nothing.
I can't make anything of that log file other than some mod (Calamity?) with a lot of textures doesn't seem to be able to load them all.

Can you attempt to screenshot the error when you get it?
 

KermitKiller

Terrarian
This seems to be the error.

[09:44:49] [1/WARN] [tML]: Silently Caught Exception:
System.InvalidCastException: Unable to cast object of type 'Rewards.Configs.NPCKillRewardValue' to type 'Terraria.ModLoader.Config.NPCDefinition'.
at System.Collections.Generic.Dictionary`2.System.Collections.IDictionary.Add(Object key, Object value)
at Terraria.ModLoader.Config.UI.DictionaryElement.AddItem()
at Terraria.ModLoader.Config.UI.CollectionElement.<OnBind>b__12_1(UIMouseEvent a, UIElement b)
at Terraria.UI.UIElement.Click(UIMouseEvent evt)
at Terraria.UI.UserInterface.Update(GameTime time)
at Terraria.Main.DoUpdate(GameTime gameTime)
at Terraria.Main.Update(GameTime gameTime)
at Microsoft.Xna.Framework.Game.Tick()
at Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
at Microsoft.Xna.Framework.GameHost.OnIdle()
at Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
at Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at Microsoft.Xna.Framework.WindowsGameHost.Run()
at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
at Terraria.Program.LaunchGame_()
at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs)
at Terraria.WindowsLaunch.Main(String[] args)
[09:44:49] [1/WARN] [tML]: Silently Caught Exception:
System.ArgumentException: The value "Rewards.Configs.NPCKillRewardValue" is not of type "Terraria.ModLoader.Config.NPCDefinition" and cannot be used in this generic collection.
Parameter name: key
at System.ThrowHelper.ThrowWrongKeyTypeArgumentException(Object key, Type targetType)
at System.Collections.Generic.Dictionary`2.System.Collections.IDictionary.Add(Object key, Object value)
at Terraria.ModLoader.Config.UI.DictionaryElement.AddItem()
at Terraria.ModLoader.Config.UI.CollectionElement.<OnBind>b__12_1(UIMouseEvent a, UIElement b)
at Terraria.UI.UIElement.Click(UIMouseEvent evt)
at Terraria.UI.UserInterface.Update(GameTime time)
at Terraria.Main.DoUpdate(GameTime gameTime)
at Terraria.Main.Update(GameTime gameTime)
at Microsoft.Xna.Framework.Game.Tick()
at Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
at Microsoft.Xna.Framework.GameHost.OnIdle()
at Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
at Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at Microsoft.Xna.Framework.WindowsGameHost.Run()
at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
at Terraria.Program.LaunchGame_()
at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs)
at Terraria.WindowsLaunch.Main(String[] args)
 

hamstar

Steampunker
This seems to be the error.

[09:44:49] [1/WARN] [tML]: Silently Caught Exception:
System.InvalidCastException: Unable to cast object of type 'Rewards.Configs.NPCKillRewardValue' to type 'Terraria.ModLoader.Config.NPCDefinition'.
at System.Collections.Generic.Dictionary`2.System.Collections.IDictionary.Add(Object key, Object value)
at Terraria.ModLoader.Config.UI.DictionaryElement.AddItem()
at Terraria.ModLoader.Config.UI.CollectionElement.<OnBind>b__12_1(UIMouseEvent a, UIElement b)
at Terraria.UI.UIElement.Click(UIMouseEvent evt)
at Terraria.UI.UserInterface.Update(GameTime time)
at Terraria.Main.DoUpdate(GameTime gameTime)
at Terraria.Main.Update(GameTime gameTime)
at Microsoft.Xna.Framework.Game.Tick()
at Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
at Microsoft.Xna.Framework.GameHost.OnIdle()
at Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
at Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at Microsoft.Xna.Framework.WindowsGameHost.Run()
at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
at Terraria.Program.LaunchGame_()
at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs)
at Terraria.WindowsLaunch.Main(String[] args)
[09:44:49] [1/WARN] [tML]: Silently Caught Exception:
System.ArgumentException: The value "Rewards.Configs.NPCKillRewardValue" is not of type "Terraria.ModLoader.Config.NPCDefinition" and cannot be used in this generic collection.
Parameter name: key
at System.ThrowHelper.ThrowWrongKeyTypeArgumentException(Object key, Type targetType)
at System.Collections.Generic.Dictionary`2.System.Collections.IDictionary.Add(Object key, Object value)
at Terraria.ModLoader.Config.UI.DictionaryElement.AddItem()
at Terraria.ModLoader.Config.UI.CollectionElement.<OnBind>b__12_1(UIMouseEvent a, UIElement b)
at Terraria.UI.UIElement.Click(UIMouseEvent evt)
at Terraria.UI.UserInterface.Update(GameTime time)
at Terraria.Main.DoUpdate(GameTime gameTime)
at Terraria.Main.Update(GameTime gameTime)
at Microsoft.Xna.Framework.Game.Tick()
at Microsoft.Xna.Framework.Game.HostIdle(Object sender, EventArgs e)
at Microsoft.Xna.Framework.GameHost.OnIdle()
at Microsoft.Xna.Framework.WindowsGameHost.RunOneFrame()
at Microsoft.Xna.Framework.WindowsGameHost.ApplicationIdle(Object sender, EventArgs e)
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at Microsoft.Xna.Framework.WindowsGameHost.Run()
at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
at Terraria.Program.LaunchGame_()
at Terraria.Program.LaunchGame(String[] args, Boolean monoArgs)
at Terraria.WindowsLaunch.Main(String[] args)
Alright, bad news, good news. Bad news first: The error is with the current TML version (v0.11.4), and we'll have to wait until the next version to see it fixed. Good news is you can still edit your config files freely, but you'll need to do so in a text editor. The file you want to edit is in the Mod Configs folder, called Rewards_RewardsPointsConfig.json. Make sure you use proper JSON format. You can check for errors using JSON Editor Online - view, edit and format JSON online
 

hamstar

Steampunker
Bro, how did i make custom bags for rewards in the newest version? (I didn't have a rewards config.json)
There'll be several new config json files, but you'll want to use the mods menu config editor option (a button on the mod in the list), unless your adding lots of shop options.
 

Xablauzero

Terrarian
There'll be several new config json files, but you'll want to use the mods menu config editor option (a button on the mod in the list), unless your adding lots of shop options.
I have an question. If The point multiplier are: 0.1, all the points given will be the ammout that i writed, right? But, how did they work, if i increase to 0.2, 0.25, 0.5, 1 and more?
 
Top Bottom