Yes, you definitely know your programming skill, Moribundus. I appreciate your insights into what can happen and avoid pitfalls to run into. Does DB use TCP or UDP, hybrid?

That is a good question which I never looked into to be honest. DB can make a game over the NET or play LAN.
I know of these basic commands. Now the TB messaging I was going to do is going to run into a problem in the 3D real time combat. I was going to send very basic messages between only two people to start, so that lossy packets will not be a problem, since there really is not a whole lot of data going through. I need to look into this!
It can handle both TCP and UDP. I seen this plugin that seems to go more for the TCP route. Says its easy to use. I can trust this persons free code or make my own.
Sadly, I think the company is going to ditch DX9 of DB pro and go with DX10 Pro integrated with Microsoft's method of changing every five years (rather annoying). MS seems to lend alot of free support to DB. It is on their website for making games, MS seems to promote this Dark Basic stuff. It is where I found it years ago.
------------------------
Multisync
Multisync is a multiplayer plugin designed for DarkBASIC Professional, utilizing the TCP protocol and the client/server networking model. It is best used in games where it is important that data isn't lost, as the TCP protocol makes sure data is always delivered to its recipient. This means that the range of games it is useful for is large, ranging from simple card games to complex RTS games.
It is very easy to use, and requires minimum networking knowledge.Features:
Windows Firewall integration.
Easy client/server setup.
Easily manageable client ID's.
Supports most standard datatypes: byte, word, long(dword), integer, float, string.
Informative error reporting.
Stable and robust.
------------------------------
SEND NET MESSAGE FLOAT Player Number, Float Value
SEND NET MESSAGE INTEGER Player Number, Integer Value
SEND NET MESSAGE MEMBLOCK Player Number, Memblock Number
SEND NET MESSAGE MEMBLOCK Player Number, Memblock Number, Guarentee Packet
SEND NET MESSAGE STRING Player Number, String
Return Value = NET MESSAGE INTEGER()
Return Value = NET MESSAGE FLOAT()
Return Value = NET MESSAGE STRING$()
NET MESSAGE MEMBLOCK Memblock Number
PERFORM CHECKLIST FOR NET CONNECTIONS
PERFORM CHECKLIST FOR NET SESSIONS
CREATE NET GAME Gamename, Playername, Number Of Players
CREATE NET GAME Gamename, Playername, Number Of Players, Flag
FREE NET GAME
JOIN NET GAME Session Number, Playername
SET NET CONNECTION Connection Number
SET NET CONNECTION Connection Number, Address Data
PERFORM CHECKLIST FOR NET PLAYERS
FREE NET PLAYER Player Number
GET NET MESSAGE
Return Value = NET GAME EXISTS()
Return Value = NET GAME NOW HOSTING()
Return Value = NET GAME LOST()
CREATE NET PLAYER Playername
Return Value = CREATE NET PLAYER(Playername)
Return Value = NET MESSAGE EXISTS()
Return Value = NET MESSAGE PLAYER FROM()
Return Value = NET MESSAGE PLAYER TO()
Return Value = NET MESSAGE TYPE()
Return Value = NET PLAYER DESTROYED()
Return Value = NET PLAYER CREATED()
SEND NET MESSAGE BITMAP Player Number, Bitmap Number, Guarentee Packet
SEND NET MESSAGE SOUND Player Number, Sound Number, Guarentee Packet
SEND NET MESSAGE MESH Player Number, Mesh Number, Guarentee Packet
NET MESSAGE SOUND Sound Number
NET MESSAGE BITMAP Bitmap Number
NET MESSAGE IMAGE Image Number
NET MESSAGE MESH Mesh Number
SEND NET MESSAGE IMAGE Player Number, Image Number, Guarentee Packet