Standalone [1.3] tModLoader - A Modding API

The system cannot find the file specified
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at Terraria.ModLoader.UI.UIErrorMessage.OpenFile(UIMouseEvent evt, UIElement listeningElement)
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)
 
Really wondering how far the mod browser can go since it would be great to have icons for mods in the mod browser and then ways to sort such as most downloads and etc.
 
Out of curiosity, is there efforts to make it so that all armors and vanity sets from mods work with mannequins?

Or is this just not fixable or am I being one of those people whose asked this question many times?
 
I am getting stuck when joining multiplayer. The client hosting is fine, but any other joining player gets stuck on "Requesting world information" and sometimes after a long time you get a "lost connection" message.

Mods:
Thorium
Calamity
Tremor
Wireless
Tinkerings
Project logic
Variable potion sickness
Spirit
Wing slot
Recipe browser
Gravestone killer
Itemtronics
What mod is this from


Please help me solve this issue.
 
Out of curiosity, is there efforts to make it so that all armors and vanity sets from mods work with mannequins?

Or is this just not fixable or am I being one of those people whose asked this question many times?

While this has been brought up multiple times I think it deserves more attention.

From my understanding there is something with vanilla Terraria that causes lots and lots of extra armors added through mods to glitch this out. Hopefully some clever person out there finds a way of re-tooling the code to circumvent this bug.
 
out of curiosity, is there a way to update mods without the mod browser? I have updated all of my mods but half of them are automatically disabled due to being for an older version of tModLoader. any suggestions? and i can't use an older tModLoader because i have mods for the new loader as well.
 
I have a problem...(Sorry for broken english btw)
So, I was messing with mod and my NPC (even the mobs) turn green...
I try everythings, disable mods, turn them on, even restarting my computer!
Noting work.
Help?
 
help i am getting this message

System.DllNotFoundException: Unable to load DLL 'CSteamworks': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at Steamworks.NativeMethods.SteamAPI_InitSafe()
at Steamworks.SteamAPI.Init()
at Terraria.Social.Steam.CoreSocialModule.Initialize()
at Terraria.Social.SocialAPI.Initialize(Nullable`1 mode)
at Terraria.Program.LaunchGame(String[] args)
and i dont know how to fix it
 
help i am getting this message

System.DllNotFoundException: Unable to load DLL 'CSteamworks': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at Steamworks.NativeMethods.SteamAPI_InitSafe()
at Steamworks.SteamAPI.Init()
at Terraria.Social.Steam.CoreSocialModule.Initialize()
at Terraria.Social.SocialAPI.Initialize(Nullable`1 mode)
at Terraria.Program.LaunchGame(String[] args)
and i dont know how to fix it
You need to run tmodloader from the terraria steam install directory.
 
Trying to make an additional (modded item) drop from the King Slime and I keep getting this error:


Drop.cs(11,22) : error CS0115: 'Fortune.Items.Drops.BossDrops.Fragment.PostNPCLoot()': no suitable method found to override

Here's my code:


namespace Fortune.Items.Drops.BossDrops
{
public class Fragment : NPC
{
public override void PostNPCLoot()
{
if(npc.type ==50) /*NPC ID*/
{
if(Main.rand.Next(1, 2) ==1) /*Chance, subtract 1.*/
{
Item.NewItem((int)npc.position.X, (int)npc.position.Y, npc.width /2, npc.height /2, ItemDef.byName["Fortune:Slimy Fragment"].type, 1, false, 0); /*Or Vanilla ID*/
}
}
}
}
}

Any help would be appreciated.
 
Trying to make an additional (modded item) drop from the King Slime and I keep getting this error:


Drop.cs(11,22) : error CS0115: 'Fortune.Items.Drops.BossDrops.Fragment.PostNPCLoot()': no suitable method found to override

Here's my code:


namespace Fortune.Items.Drops.BossDrops
{
public class Fragment : NPC
{
public override void PostNPCLoot()
{
if(npc.type ==50) /*NPC ID*/
{
if(Main.rand.Next(1, 2) ==1) /*Chance, subtract 1.*/
{
Item.NewItem((int)npc.position.X, (int)npc.position.Y, npc.width /2, npc.height /2, ItemDef.byName["Fortune:Slimy Fragment"].type, 1, false, 0); /*Or Vanilla ID*/
}
}
}
}
}

Any help would be appreciated.
Well, you probably want to extend GlobalNPC not NPC, but it's NPCLoot not PostNPCLoot.
 
Well, you probably want to extend GlobalNPC not NPC, but it's NPCLoot not PostNPCLoot.
Thanks. Getting a different error now, but I suppose that helps some. Now it says the type or namespace GlobalNPC could not be found.

Edit: took out Global again, left NPCLoot, got this:

Drop.cs(11,24) : error CS0506: 'Fortune.Items.Drops.BossDrops.Fragment.NPCLoot()': cannot override inherited member 'Terraria.NPC.NPCLoot()' because it is not marked virtual, abstract, or override

I made a small change in one document that helped get rid of around seven errors in this one.
And if I remove 'override' I end up with this error:

Drop.cs(11,24) : error CS0506: 'Fortune.Items.Drops.BossDrops.Fragment.NPCLoot()': cannot override inherited member 'Terraria.NPC.NPCLoot()' because it is not marked virtual, abstract, or override
[/SPOILER

Here's my code again:

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Xna.Framework;
using Terraria;

namespace Fortune.Items.Drops.BossDrops
{
public class Fragment : NPC
{
public override void NPCLoot()
{
if(npc.type ==50) /*NPC ID*/
{
if(Main.rand.Next(1, 2) ==1) /*Chance, subtract 1.*/
{
Item.NewItem((int)npc.position.X, (int)npc.position.Y, npc.width /2, npc.height /2, ItemDef.byName["Fortune:Slimy Fragment"].type, 1, false, 0); /*Or Vanilla ID*/
}
}
}
}
}

As you can probably tell, I don't really know what I'm doing, I mean, I get where the error points to, and have a basic understanding of coding, but am still completely new to this, sorry about that.
 
Last edited:
Thanks. Getting a different error now, but I suppose that helps some. Now it says the type or namespace GlobalNPC could not be found.

Edit: took out Global again, left NPCLoot, got this:

Drop.cs(11,24) : error CS0506: 'Fortune.Items.Drops.BossDrops.Fragment.NPCLoot()': cannot override inherited member 'Terraria.NPC.NPCLoot()' because it is not marked virtual, abstract, or override
Well, if a type or namespace can't be found, you need the using statement. Look in ExampleMod for GlobalNPC, but as a hint: using Terraria.ModLoader.
 
Well, if a type or namespace can't be found, you need the using statement. Look in ExampleMod for GlobalNPC, but as a hint: using Terraria.ModLoader.

Moved some files, rewrote the code and am getting, I believe, one final error. I appear to have the pathing wrong for finding a mod item for a recipe in a sword. Here's the error, and here's the path for the file. Any tips?

Error:
Documents\My Games\Terraria\ModLoader\Mod Sources\Fortune\Items\Weapons\Guardian's Demise.cs(32,33) : error CS0117: 'Terraria.ModLoader.ModItem' does not contain a definition for 'SlimyFragment'

Path wished:
C:\Users\[USERNAME]\Documents\My Games\Terraria\ModLoader\Mod Sources\Fortune\Items\Drops\BossDrops\SlimyFragment.cs

For now, removing the item from the recipe, and reloading.

EDIT: OMG IT WORKED. Still hoping to get some help with the pathing because it's important for the mod, but at least I can test if the drop works.
 
Last edited:
Moved some files, rewrote the code and am getting, I believe, one final error. I appear to have the pathing wrong for finding a mod item for a recipe in a sword. Here's the error, and here's the path for the file. Any tips?

Error:
Documents\My Games\Terraria\ModLoader\Mod Sources\Fortune\Items\Weapons\Guardian's Demise.cs(32,33) : error CS0117: 'Terraria.ModLoader.ModItem' does not contain a definition for 'SlimyFragment'

Path wished:
C:\Users\[USERNAME]\Documents\My Games\Terraria\ModLoader\Mod Sources\Fortune\Items\Drops\BossDrops\SlimyFragment.cs

For now, removing the item from the recipe, and reloading.

EDIT: OMG IT WORKED. Still hoping to get some help with the pathing because it's important for the mod, but at least I can test if the drop works.
Well, why would ModItem have a variable called SlimyFragment? Maybe you should look at ExampleMod, there are plenty of examples of how to access the ID for a mod item, but from your previous post it looks like you have some TAPI code or something.
[doublepost=1490849929,1490849815][/doublepost]Also, a reminder to those asking more involved questions, please come to the Discord channel, it's hard to talk you through hard things in forum posts.

https://discord.me/tmodloader
 
Back
Top Bottom