Giter Club home page Giter Club logo

tmodloader's Introduction

tModLoader, a Terraria modding API Build Status Discord

tModLoader (TML) is an open-source, community-driven, modification and expansion of the Terraria game that makes it possible to make and play mods. TML expands your Terraria adventures with new content to explore created by the Terraria community! TML allows players to create and play Terraria mods and is designed in such a way so that you can play alone or together with friends, with one mod or with multiple mods: choose to play however you like! It is however required that all your friends also install TML if you want to play together; vanilla users can't play with TML users. Find the instructions below to learn how to install TML.

Note: the code on this GitHub repository will be ahead of the current released version.

Instructions

Want to play or create mods? Or do you want to contribute to tModLoader perhaps? Click the text that applies to you.

I am a player (Play mods)

I am a developer (Create mods)

I am a contributor (Help create tModLoader)

Support us

First and foremost, TML is largely a community endeavor: built by the community; used by the community. Without all the contributions people in the community have made over the years, TML would not be in the state it is in. TML is a free-to-use modification of the game and will stay that way. However, if you would like to buy us a coffee, or maybe even multiple, you can choose to pledge some money to support us financially. We'd like to kindly express once again that TML was not created to create a profit. All of the core team members continue their best efforts to improve and maintain TML despite their real-life obligations, free of charge or any request from the community.

The preferred method of supporting the core team is by choosing a pledge through Patreon. All of the money donated this way is equally shared amongst the core members to those who wish to receive part of it. This truly is the right way to support us financially if you want to do so. By becoming a patron you can receive a special role on our Discord server if desired. You should be able to couple your Discord account to your Patreon account and automatically receive your role.

If you do not want to use a Patreon subscription, you should contact one of the core team members through the Discord server to find an appropriate method of supporting us. Thanks again!

Get in touch

If you would like to contact us or TML users, it's best to join our Discord server. To use Discord you will need to register a new account on their website.

Contributors

Core team

TML is largely created and maintained by a core team of contributors: Blushiemagic, Chicken-Bones, Jopojelly, Jofairden, Mirsario and Solxanich

This project exists in its current state thanks to all the people who have contributed:

License

TML is licensed under the MIT license

tmodloader's People

Contributors

absoluteaquarian avatar agrair avatar antirhinnum avatar basicallyiamfox avatar blushiemagic avatar chicken-bones avatar chik3r avatar cyrillya avatar dariodaf avatar darklight66 avatar destructor-ben avatar direwolf420 avatar exterminatorx99 avatar ishigh1 avatar itorius avatar javidpack avatar jofairden avatar metacinnabar avatar mirsario avatar mutantwafflez avatar pixelnando avatar rartrin avatar razzsg avatar realagrair avatar rijam avatar solxanich avatar steviegt6 avatar thomasthepencil avatar ved-s avatar wolf-igmc4 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tmodloader's Issues

Linux and OSX Open AL Sound Issues

Explained in detail (as much as he could find, anyway) by wuli1986 here:
Terraria forum post on tModLoader thread

wuli1986 experiences this problem on Linux, and I on OSX. The issue is that, after playing the game for a while, sounds eventually stop being loaded correctly (or something) and fail to play, leading to many annoyances. This does not happen in the vanilla game, and occurs independently of enabled mods. Apparently, this issue is not new; according to wuli1986, it's been there as far back as 0.7.x at the least.

Query 3 Failure

While publishing an update Query3 failed:

"Replacing with new version!
File is valid....
Query3 failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's display name) and pressing the tWiki Search key (default L), can be changed in' at line 1"

Here is the string in my description.txt
"This mod was created to make it much easier and faster to search the official Terraria Wiki for information about the many items added in game.

You can use the search function by hovering over an item in your inventory or hovering over a monster (showing it's display name) and pressing the tWiki Search key (default L), can be changed in the Mod Controls menu. All links will be opened in your default web browser."

I'm assuming the query was too long? I changed it to this and it worked:
"You can search the Terraria Wiki by hovering over an item in your inventory or hovering over a monster in the world and pressing the tWiki keybinding (default L, can be changed in the Mod Controls menu). All links will be opened in your default web browser."

Cant get it on mac

I download the file than open and put terraria into the vanilla file but when i run the code it does nothing

Tmodloader SteamID

The GoG version of tmodloader doesnt ask the user on the GUI to put their steamID like it asks for the passphrase It also does not tell the user that they can manually input it in the config.json file on the error that pop ups later.

If you follow the GUI's instructions after inputting the passphrase and pressing publish you get this error

Validate Credentials Query failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'and passphrase = '(not at all my passphrase actually is way longer)'= at line 1

It would be nice if the GUI asked you for the stemid as it does for the passphrase and the error for not having it (properly) specified would be nice if it was easier to understand to most users and provided aid in how to fix the issue.

Thank you.

Error!

yeah... so I compile a mod I am working on and... It gives me the error:

ErrorSo103: The name 'ItemID Does not exist.

This is the file that the error is in:
GouhlLegs.zip

Thank you and please tell me how to fix, because I have no idea how.

HitWire/TripWire hooks

It could be useful to have PreHitWire and PostHitWire hooks, which are triggered before and afrer the method Wiring.HitWire respectively.
They could be used for instance by mechanisms that emit a wire pulse in response to a wire pulse themselves or by mechanisms which need to run before or after all other mechanisms.

Converting ExampleBullet to a Grenade

I want to change the attributes of the ExampleBullet, so that it behaves likea Grenade when colliding with tiles, I was thinking about using the Aitype so that it behaves like Aitype 16 but failed misserably while doing this, can you help me? thanks

Crash when downloading mods

When downloading a mod from the mod browser, I sometimes get a crash. This time, I thought to look at terraria's crash log.

This is what it recorded:


10/23/2016 8:23:08 AM
System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
  at System.Collections.Generic.List`1+Enumerator[Terraria.UI.UIElement].MoveNext () [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.GameContent.UI.Elements.UIList+UIInnerList.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.ModLoader.UI.UIModBrowser.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UserInterface.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch, Microsoft.Xna.Framework.GameTime time) [0x00000] in <filename unknown>:0 
  at Terraria.Main.DrawMenu (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 
  at Terraria.Main.do_Draw (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 
  at Terraria.Main.Draw (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 

Placing sand consumes inventory but sand does not place

When trying to drop sand into place, my qty goes down but nothing places. If I stand below and build the blocks upward, it works fine.
http://images.akamai.steamusercontent.com/ugc/254840656028138539/CB2AF2EFA93F7D48426118C39B5BC5C0DAC71924/

I'v also noticed that when mining silt or slush, hitting the bottom block causes the whole stack to disappear and nothing appears in your inventory. It looks like something wrong with the falling block mechanic.

Grappling Hooks

O, how I have looked. I have found bits and pieces, but never any complete code that I could look at just to figure out what the heck is going on with it. I need some code to make a Custom Grappling Hook. I found projectile ID's and AI's, but never any concrete code to help me learn. Please Help

Best Wishes,

Python

Mod Browser Crashing - Object Reference Error

Within a few seconds of being opened, the mod browser crashes.

The following output is shown in ModLoader/Logs/Runtime Error.txt:

Object reference not set to an instance of an object
  at Terraria.ModLoader.UI.UIMessageBox.DrawSelf (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.DrawChildren (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UIElement.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch) [0x00000] in <filename unknown>:0 
  at Terraria.UI.UserInterface.Draw (Microsoft.Xna.Framework.Graphics.SpriteBatch spriteBatch, Microsoft.Xna.Framework.GameTime time) [0x00000] in <filename unknown>:0 
  at Terraria.Main.DrawMenu (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 
  at Terraria.Main.do_Draw (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 
  at Terraria.Main.DoDraw (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <filename unknown>:0 

Huge Dupe Bug

Multiplayer in version 0.7.1.1

Chests allow duplication of items when using the loot all button. I'm pretty sure this is being caused by the server. The way it works is you put a bunch of separate stacks of items in a chest, hit loot all, you get all the items but when you close the chest and reopen it all but the first slot of items are in the chest AND in your inventory. This can be replicated numerous times with natural and player placed chests. Seems like a sync issue, server doesn't realize you pressed loot all or something. Not exactly sure.

License

Why don't you have a license? If you think that if you have no license means that you grant unlimited rights to distribute, modfy, etc. then you're wrong. That's why CC0 or The Unlicense were created. If that sounds offensive, than sorry, I didn't mean to be offensive.

No hook to PortalHelper

Any chance we can get a hook or some way to modify Terraria.GameContent/PortalHelper.cs?

Awhile ago I had made some modifications to this file to allow portals to handle projectiles and enemies, and this required me to add some code into PortalHelper.cs. Would allowing a hook into this file make this possible?

As a side question- I also had to make some modifications to Projectile.cs in order to make the projectiles work properly with portals. Maybe I'm just not seeing it, or maybe it's just not possible, but is there any way to add properties to already created projectiles? For instance, in Projectile.cs, a list of variables exist for each projectile, such as aiStyle, knockBack, maxPenetrate, etc. Is it possible to add a property here and then have it set within the SetDefaults method?

Thanks in advance.

ExampleMod's reference to Terraria code is broken.

Considering ExampleMod is in /ExampleMod (/ being this repo), the reference should be ../src/tModLoader/Terraria.csproj.

It isn't, it's ../../../../../../VideoGameHacking/Terraria/tModLoader/src/tModLoader/Terraria.csproj.

It's obviosously for where @JavidPack put his folders (git blame), but it should really be more generic.

Expanding ModNPC SetChatButtons & OnChatButtonClicked

At the current moment, the ModNPC class only allows you to define two Chat options, where most of the time the first of which is set as a "Shop", leaving you with only one other option to define. This is very limiting in many circumstances.

My suggestion is to make a minor adjustment to these two methods.

For SetChatButtons, change it from (ref string button, ref string button2) to (ref string[] buttons). A more viable limit could then be applied (5 - 6 should be optimal). For OnChatButtonClicked, it would change from (bool firstButton, ref bool isShop) to (int buttonIndex, ref bool isShop).

This would open up a lot more in terms of NPC functionality for modders and custom town bots.

Mod browser backend vulnerability: HTTP request crafting with bogus Steam IDs

By recreating the code of here and here and crafing HTTP requests with 'fake' steam IDs (such as 76561198141581923 or 76561198025023640), it is possible to upload (or replace) a mod while pretending to be someone else.

Mods contain executable code, so this can be misused to inject malware (easily developped, as the CLR isn't as restrictive as, say, Lua) into the mod, and with the amount of downloads per day for all mods combined, it would make quite a high-valued botnet. The malware can take over other mods published to the backend by the user, too, to infect even more users.

modlist console option

This request was from the forum:

tmodloader server humble request :

  • either remove the "clear console screen" action while starting up a server
  • either add a console command such as : "modlist" which would invoke the list of mods currently running on a server

thanks for listening.

tModLoader Building Issue

So I've been trying to build my mods that I have created but every time I try I get an error (error will be at the bottom), and this doesn't just happen with my mods it happens with other mods as well, I've tried building the Example Mod as well but I always get the same error.
If could help, please do.

Error:
error CS1703: An assembly with the same identity 'Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' has already been imported. Try removing one of the duplicate references.

error CS1704: An assembly with the same simple name 'Steamworks.NET, Version=7.0.0.0, Culture=neutral, PublicKeyToken=null has already been imported. Try removing one of the references or sign them to enable side-by-side.

P.S. I don't know anyway to open .dll files to try make them side-by-side, I've even tried removing them from the Terraria Directory but I just get more errors saying that it can't find that file.

Dissapearing Mobs Fix Discomfirmation

Hi! I am an user of your (awesome :D) modding thing. Anyhow, I looked on your forum page about the mod, and I saw that you had a known server bugs section. I the bug you still didn't know about if it was still working is still not fixed. I just wanted to give you a disconfirmation (not fixed), as I use the server .exe file with my two friends. I open the port, and they join. As for the bug, only some enemies disappear but others stay. I am using the Tremor mod and Thorium mod, and mobs from both mods can disappear, but some still stay. It seems like NPC's can see and still attack the invisible mobs, but summons cannot. I think I only saw it once, but I think that if a NPC hits it first, it will stay. I am not certain. I only saw it once, and it never happened as my summons kept on attacking first from then on. There was another occasion where a mob disappeared, but then it hit me (it a spot it should of been) and came back. It only happened once. I am using the current version of each mod.

Thank you for looking at this. I wish you good luck with your homework. Have a nice day! :)

Projectiles that do not have a sprite will often look wrong

If a projectile is only supposed to have particles for a visual, it will look really odd.
Sometimes it seems well handled, like for the water bolt that has a little spinning blue thing that does not cause too much visual pollution.
Sometimes it goes funny, for example the wand of sparking shoots rotating sticks.
Aaand sometimes it goes really wrong, i.e with the Purify spell from Thorium, that literally just shoots a 4-block-sized blue-purple blinking square.

I guess this is due to the recent changes in how projectiles are handled, but it really get ugly sometimes.

Hook for server console commands

Forum Suggestion:

Whilst its been mentioned. Can we have more options on the server controller? I used to use a server controller that gave access to starting season events or starting invasions and such.
Any chance this could get added to Tmodloader as it helps when making a fun server/Video series

Crash when ExampleChest is left clicked with Lava Bucket

ExampleChest seems to cause a crash when left clicked with a Lava Bucket.
I couldn't find any crash log to submit.

Steps to reproduce:

  1. Download and build ExampleMod
  2. Place down an ExampleChest and place some items inside it
  3. Left click the ExampleChest with a bucket of lava

Tested with tModLoader 0.8.3.2, Terraria 1.3.2.1 and ExampleMod 0.8.3 from the tModLoader Forums page

Sounds and Music stop working after a while

I am currently playing Terraria with the tModLoader and the Thorium mod, my first time playing a modded Terraria. I found a strange problem after roughly ten minutes of playing, where new songs and sound effects do not load/play. Songs and sound effects already loaded into memory continue to work.

Closing the game and then quitting seems to correct the issue.

Additional Info:

  • My operating system is 64bit Ubuntu 16.04 "Xenial Xerus"
  • I'm using the Steam version of Terraria
  • tModLoader was installed manually, as the installation .jar file threw an error.
  • Terraria install folder: /home/USER/.steam/steam/steamapps/common/Terraria

Linux version 0.8 does not load

I saw a couple of people on the forum thread mention this issue, but, there being so few of us (modded-Terraria-Linux-players), any discussion of Linux issues on there is probably going to be lost in the sea of other comments. I also figured GitHub is probably a better place to discuss technical issues, anyway, so here we go!

I'm on Arch Linux x86_64 (with an Nvidia card, if that matters). As the other posters said, trying to launch tModLoader now results in the game crashing immediately after the Re-Logic loading screen. I think that's when the mod-loading status messages would be shown? Since I wanted to make sure that none of the old mods caused issues, I emptied out the Mods, Players, and Worlds folder before ever trying to start v0.8, so I think we can rule those out as possible causes.

Here's the terminal output from steam when trying to launch Terraria (I also get the same result and output when attempting to launch the game directly from the command line):

Setting breakpad minidump AppID = 105600
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198025017831 [API loaded no]
OpenGL Device: GeForce GTX 970/PCIe/SSE2
OpenGL Driver: 4.5.0 NVIDIA 361.28
OpenGL Vendor: NVIDIA Corporation
MojoShader Profile: glsl120
Using EXT_swap_control_tear VSync!
Using EXT_swap_control_tear VSync!
Resolution changed to: 1920x1018.
Using EXT_swap_control_tear VSync!
Stacktrace:

  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) System.Reflection.MethodBase.GetMethodBodyInternal (intptr) <0xffffffff>
  at System.Reflection.MethodBase.GetMethodBody (intptr) <0x00013>
  at System.Reflection.MonoMethod.GetMethodBody () <0x00017>
  at Terraria.Program.ForceJITOnAssembly (System.Reflection.Assembly) <0x000b9>
  at Terraria.Program.ForceLoadAssembly (System.Reflection.Assembly,bool) <0x00013>
  at Terraria.Program/<>c.<LaunchGame>b__7_0 () <0x00017>
  at (wrapper delegate-invoke) <Module>.invoke_void__this__ () <0xffffffff>
  at Terraria.Main.DrawMenu (Microsoft.Xna.Framework.GameTime) <0x007fe>
  at Terraria.Main.do_Draw (Microsoft.Xna.Framework.GameTime) <0x0b0bf>
  at Terraria.Main.Draw (Microsoft.Xna.Framework.GameTime) <0x0001b>
  at Microsoft.Xna.Framework.Game.Tick () <0x007bb>
  at Microsoft.Xna.Framework.SDL2_GamePlatform.RunLoop () <0x00763>
  at Microsoft.Xna.Framework.Game.Run () <0x000cd>
  at Terraria.Program.LaunchGame (string[]) <0x0023f>
  at Terraria.LinuxLaunch.Main (string[]) <0x00033>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(+0xcb624) [0xf7422624]
        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(+0x11e758) [0xf7475758]
        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(+0x29dae) [0xf7380dae]
        linux-gate.so.1(__kernel_rt_sigreturn+0) [0xf771dbd0]
        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(mono_method_body_get_object+0x1f2) [0xf7545cf2]
        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(+0x1553d4) [0xf74ac3d4]
        [0xcae0f25c]
        [0xcae0f20c]
        [0xcae0f1d0]
        [0xe73dbf5a]
        [0xe73dbe64]
        [0xe73dbc60]
        [0xcc11f683]
        [0xe74197ff]
        [0xcae1d0c0]
        [0xcc10a55c]
        [0xdba32a9c]
        [0xdba31e1c]
        [0xe9e63336]
        [0xf7321fb0]
        [0xf731edf4]
        [0xf731eeb6]
        /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0(+0x29753) [0xf7380753]

Debug info from gdb:

ptrace: Operation not permitted.
No threads.

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

./Terraria: line 38: 22023 Aborted                 (core dumped) ./${BASENAME}.bin.${ext} $@

Everything up until the "Stacktrace:" line is just regular Steam/Terraria output. Unfortunately(?), none of the methods named in the stacktrace directly involve the modloader, which could make this harder to pin down.

I did run the coredump through gdb, but the output was less than helpful:

(gdb) bt
#0  0xf77b4be9 in __kernel_vsyscall ()
#1  0xf722dc49 in raise () from /usr/lib32/libc.so.6
#2  0xf722f1a7 in abort () from /usr/lib32/libc.so.6
#3  0xf7482756 in ?? () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#4  0xf74d5758 in ?? () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#5  0xf73e0dae in ?? () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#6  <signal handler called>
#7  0xf75a5cf2 in mono_method_body_get_object () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#8  0xf750c3d4 in ?? () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#9  0xe61f8f34 in ?? ()
#10 0xe61f8ee4 in ?? ()
#11 0xe61f8ec8 in ?? ()
#12 0xe61edf5a in ?? ()
#13 0xe61ede64 in ?? ()
#14 0xe61edc60 in ?? ()
#15 0xcc324683 in ?? ()
#16 0xe61c77ff in ?? ()
#17 0xc960b0c0 in ?? ()
#18 0xcc30f55c in ?? ()
#19 0xde627284 in ?? ()
#20 0xde62665c in ?? ()
#21 0xe90912ce in ?? ()
#22 0xf41c5ed8 in ?? ()
#23 0xf41b8df4 in ?? ()
#24 0xf41b8eb6 in ?? ()
#25 0xf73e0753 in ?? () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#26 0xf759441b in mono_runtime_invoke () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#27 0xf7598b81 in mono_runtime_exec_main () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#28 0xf759abc0 in mono_runtime_run_main () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#29 0xf7452f02 in mono_jit_exec () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#30 0xf74547cd in mono_main () from /home/wuli/.local/share/Steam/steamapps/common/Terraria/lib/libmonosgen-2.0.so.0
#31 0x08049008 in main ()

Same memory addresses, of course, from the unhelpful ??(). If you happen to have (or can create) a debug-enabled version of the linux launcher, I'd be happy to test it and see if we can't get some more useful symbols in the stacktrace. I was going to build one myself, but despite some frustratingly intense efforts, I simply could not get tModLoader to compile on my machine--and I realize you say up front that Windows is needed for that, but I don't have a Window box easily available and, hey, I had to try! It's mainly that the 'setup' program won't run, I think. Neither through native mono nor WINE. I can decompile Terraria just fine on my own--the result of which I've been using for mod development--but I end up with a very different format than your setup program produces, apparently, and the patches won't apply. Although, full disclosure, I'm not a .Net developer in the slightest, and making a mod for Terraria was my first time using C#, so it's entirely possible that I'm missing something.

But this is a bit of a tangent, sorry. Back on the main topic, I'm going to see if I can manage to squeeze something more helpful from the program. If you need more information from me or help with testing something, just let me know.

Linux Servers

I'm coming into this knowing nothing of modded terraria (Friend is trying to get me to host), I understand that insofar there is only a windows server?

Extra placeholders for missing modded content

I know that very, VERY important parts of modded content are already placeholder'd when missing, and restored when the mod comes back. I just thought I'd throw out there a note of things one still loses upon disabling and reenabling a mod:

  • Prefixes on items, except (for some reason) accessories in 1-6th slots. Accessories in modded slots still lose their prefixes
  • Walls
  • Modded armor on mannequins
  • Townfolk (yes they come back slowly, but when you test things on vanilla and come back to a whole modpack, it can take several in-game days to get them all back)

So... yeah. Here's a list for reference. I guess it's not major, but the more we keep content when temporarily removing a mod, the better amirite?

Bosses and NPCs

So originally I was noticing that NPCs weren't spawning and bosses don't always spawn when using a boss calling item. This only applies to modded by the way. Anyways originally it was only happening with the Tremor mod, but now it has expanded to many other mods. Weird interactions with NPCs and Mobs. Not sure 100% if its the mods or tModLoader, my assumption is that it is a combination but mostly on the way the mod is using certain hooks for npcs, bosses, and mobs. Anyways I thought I would put this here just as an FYI. I really think tModLoader is amazing, you guys are creating a proper modding API for Terraria.

Feature: List date mod was updated last

One small convenience feature would be if the Mod Browser would list the date which a mod was last updated, so that it's easier to tell how current a mod is.

ModBrowser Unsupported For OSx Users

So, i found tModLoader a couple of days ago and i found that the ModBrowser does not seem to work for osx users. I know this is a osx issue because other users seem to have the ModBrowser work for them. Is this a client side issue (As in I did something wrong)" or is it for all Osx users. If so, is there a fix?

Lag with wrapped text in mod descriptions

When viewing a mod description where the text wraps to the next line (because there wasn't a newline character and it would've gone out of the box otherwise) the framerate drops significantly. This is compounded the more text wrapping exists in the mod description.

Descriptions that use newline characters to avoid this do not experience this issue.

Projectile problem

My projectile does not hit NPCs, so i cant use:

  • OnHitNPC
  • ModifyHitNPC
  • Projectile.NewProjectile (can i use this in projectiles code?)
    It just goes through the NPC and nothing happens.

Also...
I cant modify the damage of the projectile (when it eventually hit by using the damage from "the gun")

GlobalTile Drop Hook not working for tombstones (tile entity)

Since Tombstone aren't killed the same way, we cannot return false to prevent them from dropping their item.

Code used:
public override bool Drop(int i, int j, int type)
{
if (type == TileID.Tombstones)
return false; //It will return false, but still drop the item
else
return true;
}

Modbrowser

me, and several other users, have noticed that when loading up modbrowser in version 1.3.2 tmodloader vrsion 0.8.3.1, the game crashes, and we cannot figure out if there is a way to fix it

Server wont work with normal port forwarding

When I port forward, I can host a normal terraria server on my PC, but when i try to host a tmodloader server, everyone who tries to connect just gets stuck at the connecting to screen. The only way I've found that works is using hamachi, i'm not sure why it works, and my friends can't get hamachi.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.