Topic: What I suggest for the file structure
I don't know if you, almighty developers, care about what I think it should be done to the source code, but listen up, otherwise:
I think that the game should have the base/core/engine separate from the principal mod/game. For example, this is a quick folder structure:
Teeworlds
-Core
(Here all the core game files and things that can't be modded go)
-Mods
(Here you install all the mods, including the game itself, which is like a principal mod)
--Teeworlds
---Weapons
----Shotgun
(Here, all the shotgun files. A text file/lua script/whatever to indicate the properties of the weapon, such as ammo amount, graphic to use, graphic itself (shotgun.png), shotgun sounds, and every other little thing that characterizes the shotgun as such)
shotgun.txt
shotgun.png
shotgun-shot.ogg
shotgun-pickup.ogg
----(...)
---Sounds
(Sounds for the game, like button clicks, and every other miscellaneous sound that isn't a weapon sound)
---Characters
(Here, all the skins and characters one is able to choose)
---Maps
(All the maps that this mod has available for use)
----Downloaded
(Maps that servers host and clients download)
---Terrain
(Built-in graphics for maps and stuff -- I don't really know how this map thing works)
---Client
(Graphics for the client application and other needed files)
---(Any other needed folders/files for each mod to work)
Now, I really think that the source code itself should have a very similar structure, if not identical. This because today, when I decided I wanted to modify a bit my copy of the source code to implement a simple system like this of the folder-based weapon handling, I couldn't find which source file corresponded to the code I wanted to change.
So, suit yourself. I think this will really make the game look a lot cleaner, and maybe even encourage people to work on mods themselves!