(Code formated to be submitted for pull request) -- Indentation was off.
SAME FIX AS BEFORE
When two instances of Torque3D are running on the same network, one as a
hosted server and the other as a client, the client is unable to connect
to the server. The program now can open a socket. This was obviously a
typo. To find the error I just searched for keywords containing socket,
open, open socket, and opensocket till I found the correct file. The
other error was in how the program processed “non fatal” errors. I just
outputed the error to the main console and devised that the socket
should not be closed for a WSAEWOULDBLOCK error 10035 "It is normal for
WSAEWOULDBLOCK to be reported as the result from calling connect on a
nonblocking SOCK_STREAM socket, since some time must elapse for the
connection to be established."
Read about the WouldBlock error:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms740668(v=vs.85).aspx
Use of dbgSetParameters ( port , password ):
http://docs.garagegames.com/tge/official/content/documentation/Reference/Console%20Functions/TorqueScript_Console_Functions_2.html#dbgSetParameters_.28_port_.2C_password_.29
Added a check so if no levels are found from other modules, the default ui module will prompt the user to launch the editor to the base editor level and begin editing or return to main menu if tools are present, or inform them to double-check that there are modules with gameplay/levels and return them to the main menu in no tools available.
Also set it up so if the editor is launched while a mission isn't running, it'll automatically load to the base editor level and set up a default camera object. This way editing can be done even if no level is currently loaded.
This makes some tweaks to the engine to support this, specifically, it tweaks the hardcoded shaderpaths to defer to a pref variable, so none of the shader paths are hardcoded.
Also tweaks how post effects read in texture files, removing a bizzare filepath interpretation choice, where if the file path didn't start with "/" it forcefully appended the script's file path. This made it impossible to have images not in the same dir as the script file defining the post effect.
This was changed and the existing template's post effects tweaked for now to just add "./" to those few paths impacted, as well as the perf vars to support the non-hardcoded shader paths in the engine.
Also adds a fix to the mesh item tab in the forest editor to correct odd selection behavior that could erroneously cause selection of two items in the list when you only clicked one.