Quote: "Is DarkNet not entirely separate to DGDK 2.0?"
Yes, from what I have seen, it can function without DarkDGK. I have had success from using this product before, just not recently, (compiler errors, the ide and compiler not being able to find the resources).
I have always had problems adding pluggins and additional resources into the IDE's and compilers. After watching the video, TGD have made it pretty easy to add the existing plugins into the game engine, with the build engine .dll, and compiled into one .dll. So I decided to give the library another try. I was thrilled after it got installed, and my idea could find commands again. So I started relearning the darknet code.
Quote: "Also - where are these instructions, couldn't find them anywhere. "
I am using the tutorial "how to use darkbasic pluggins" which also Darknet is referenced. I am using a licensed version of the darknet.
http://forum.thegamecreators.com/?m=forum_view&t=196868&b=22
After recompiling the engine, the command changes the Darknet commands from mm::start() to NET_start(), its just using a wrapper for the commands, but looks like some of the commands are missing.
I was tring to convert on of the tutorials off of the darknet website, by via replacing the mm:: with NET_ when some of the commands where not in the dgk header version.
One of the missing commands was CreateInstanceProfile(); I had to stop at this point. I could not port the example.
]![ As I am writing this I am figuring the person who is doing the wrapping for the Darknet may have a few more commands to add to the header for the pluggin. I also understand Darkdgk 2.0 is in beta (which is the way 1.0 always felt). TDG Team Keep plugging away at it. I also understand these folks do this part time.
[@] I figure I will see about installing Darknet without the plug in helper to the engine. I have always had trouble linking new .dll to the ide's and compilers (my lack of understanding). So I was very excited to see how TGD did this.
I have not used Darknet for a bit, I had it workign with the old 1.0 version, learning more about class's and the "using" commands.
]?[ Got a good turtorial on Installing Mikenet onto MsVisual C 2010?
Thanks for your work on it. Thanks for sticking aorund.
PS: This is the current header for ddgk_darknet.h pluggin 2.0 RC4, note: you still got to have the MikeNet.dll installed or the commands won't even show up, they get compiled into the engine.dll
#ifndef _GDKLIB_DARKNET_H
#define _GDKLIB_DARKNET_H
#include "../core/dgdk-darkgdk.h"
int32_t NET_Start(int32_t instancesCount, int32_t threadCount);
int32_t NET_Finish(int32_t instance);
std::string NET_DNS(std::string hostname);
int32_t NET_DisableUDP(int32_t instance);
int32_t NET_GetEnabledUDP(int32_t instance);
int32_t NET_StartServer(int32_t instance, int32_t maxClients, int64_t instanceProfile);
int32_t NET_ClientJoined(int32_t instance);
int32_t NET_ClientLeft(int32_t instance);
int32_t NET_GetServerTimeout(int32_t instance);
int32_t NET_Connect(int32_t instance, std::string addressConnectTCP, int32_t portConnectTCP, std::string addressConnectUDP, int32_t portConnectUDP, int32_t timeout, int32_t blockUntilConnected, int64_t instanceProfile);
int32_t NET_PollConnect(int32_t instance);
int32_t NET_StopConnect(int32_t instance);
int32_t NET_GetClientID(int32_t instance);
int32_t NET_DisconnectClient(int32_t instance, int32_t clientID);
int32_t NET_ClientConnected(int32_t instance, int32_t clientID);
int32_t NET_GetErrorLine();
std::string NET_GetErrorOperation();
std::string NET_GetErrorCommand();
std::string NET_GetErrorFile();
int32_t NET_GetErrorCode();
std::string NET_GetErrorFull();
int32_t NET_AddInteger(int64_t packet, int32_t aInteger);
int32_t NET_AddFloat(int64_t packet, float aFloat);
int32_t NET_AddByte(int64_t packet, int32_t aByte);
int32_t NET_AddDouble(int64_t packet, double aDouble);
int32_t NET_AddString(int64_t packet, std::string aString, int32_t length, int32_t prefix);
int32_t NET_AddLongInteger(int64_t packet, int64_t aLongInteger);
int32_t NET_AddWord(int64_t packet, int32_t aWord);
int32_t NET_AddLong(int64_t packet, int32_t aLong);
int32_t NET_GetInteger(int64_t packet);
float NET_GetFloat(int64_t packet);
int32_t NET_GetByte(int64_t packet);
double NET_GetDouble(int64_t packet);
std::string NET_GetString(int64_t packet, int32_t length, int32_t nullTerminated);
int64_t NET_GetLongInteger(int64_t packet);
int32_t NET_GetWord(int64_t packet);
int32_t NET_GetLong(int64_t packet);
double NET_GetPercentTCP(int32_t instance, int32_t clientID);
int32_t NET_SendUDP(int32_t instance, int64_t packet, int32_t clientID, int32_t keepPacket, int32_t blockUntilSent);
int32_t NET_SendTCP(int32_t instance, int64_t packet, int32_t clientID, int32_t keepPacket, int32_t blockUntilSent);
int32_t NET_ReceiveTCP(int32_t instance, int64_t packet, int32_t clientID);
int32_t NET_ReceiveUDP(int32_t instance, int64_t packet, int32_t clientID, int32_t operationID);
int32_t NET_GetLogicalCPU();
int32_t NET_GetMaxClients(int32_t instance);
int32_t NET_GetMaxOperations(int32_t instance);
int32_t NET_GetReceiveSizeUDP(int32_t instance);
int32_t NET_GetThreads();
int32_t NET_GetInstanceCount();
int32_t NET_GetState(int32_t instance);
int32_t NET_GetModeUDP(int32_t instance);
int32_t NET_GetErrorMode(int32_t mode);
int32_t NET_GetErrorMode();
int32_t NET_GetLocalPortTCP(int32_t instance);
std::string NET_GetLocalAddressTCP(int32_t instance);
int32_t NET_GetLocalPortUDP(int32_t instance);
std::string NET_GetLocalAddressUDP(int32_t instance);
int32_t NET_GetConnectPortTCP(int32_t instance);
std::string NET_GetConnectAddressTCP(int32_t instance);
int32_t NET_GetConnectPortUDP(int32_t instance);
std::string NET_GetConnectAddressUDP(int32_t instance);
int32_t NET_GetClientPortTCP(int32_t instance, int32_t clientID);
std::string NET_GetClientAddressTCP(int32_t instance, int32_t clientID);
int32_t NET_GetClientPortUDP(int32_t instance, int32_t clientID);
std::string NET_GetClientAddressUDP(int32_t instance, int32_t clientID);
int64_t NET_CreatePacket();
int32_t NET_DeletePacket(int64_t packet);
int32_t NET_SetMemorySize(int64_t packet, int32_t size);
int32_t NET_GetMemorySize(int64_t packet);
int32_t NET_SetUsedSize(int64_t packet, int32_t size);
int32_t NET_GetUsedSize(int64_t packet);
int32_t NET_SetCursor(int64_t packet, int32_t cursorPosition);
int32_t NET_GetCUrsor(int64_t packet);
int32_t NET_GetOperation(int64_t packet);
int32_t NET_GetInstance(int64_t packet);
int32_t NET_GetClientFrom(int64_t packet);
int32_t NET_GetAge(int64_t packet);
int32_t NET_GetPacketRemainder(int64_t packet);
int32_t NET_ClearPacket(int64_t packet);
std::string NET_GetLocalInterface(int32_t number);
std::string NET_GetHostName();
int32_t NET_GetLocalInterfaceAmount();
int32_t NET_StartBroadcast(int32_t instance, std::string broadcastConnectToAddress, int32_t broadcastConnectToPort, int32_t sendEnabled, int32_t receiveEnabled, int64_t instanceProfile);
int64_t NET_CreateKey256(int64_t key1, int64_t key2, int64_t key3, int64_t key4);
int64_t NET_CreateKey192(int64_t key1, int64_t key2, int64_t key3);
int64_t NET_CreateKey128(int64_t key1, int64_t key2);
int32_t NET_Encrypt(int64_t packet, int64_t key, int32_t block);
int32_t NET_Decrypt(int64_t packet, int64_t key, int32_t block);
int32_t NET_DeleteKey(int64_t key);
int32_t NET_SetDecryptUDP(int32_t instance, int64_t key);
int32_t NET_ToggleAffinity(int32_t processor);
int32_t NET_SetAffinity(int32_t threadID);
int32_t NET_GetAffinity(int32_t processor);
int32_t NET_SetPriority(int32_t threadID, int32_t priority);
int32_t NET_GetPriority(int32_t threadID);
int32_t NET_EqualPacket(int64_t destination, int64_t from);
int32_t NET_AddPacket(int64_t destination, int64_t from);
int32_t NET_ComparePacket(int64_t packet1, int64_t packet2);
int32_t NET_PollNAT();
int32_t NET_StartNAT(int32_t block);
int32_t NET_FinishNAT();
int32_t NET_UpdateNAT(int32_t block);
int32_t NET_AddPortMap(std::string protocol, int32_t externalPort, int32_t internalPort, std::string internalIP, int32_t enabled, std::string description, int32_t block);
int32_t NET_GetPortMapAmount();
int32_t NET_EnablePortMap(int32_t portMapID, int32_t block);
int32_t NET_DisablePortMap(int32_t portMapID, int32_t block);
int32_t NET_SetPortMapInternalIP(int32_t portMapID, std::string internalIP, int32_t block);
int32_t NET_SetPortMapInternalPort(int32_t portMapID, int32_t internalPort, int32_t block);
int32_t NET_SetPortMapDescription(int32_t portMapID, std::string description, int32_t block);
std::string NET_GetPortMapExternalIP(int32_t portMapID);
int32_t NET_GetPortMapExternalPort(int32_t portMapID);
int32_t NET_GetPortMapInternalPort(int32_t portMapID);
std::string NET_GetPortMapProtocol(int32_t portMapID);
std::string NET_GetPortMapInternalIP(int32_t portMapID);
int32_t NET_GetPortMapEnabled(int32_t portMapID);
std::string NET_GetPortMapDescription(int32_t portMapID);
int32_t NET_DeletePortMapA(int32_t portMapID, int32_t block);
int32_t NET_DeletePortMapB(std::string protocol, int32_t externalPort, int32_t block);
int32_t NET_IsPortMap(std::string protocol, int32_t externalPort);
int32_t NET_FindPortMap(std::string protocol, int32_t externalPort);
std::string NET_GetVersion();
void NET_DisableDebug();
int32_t NET_GetDebugEnabled();
int32_t NET_GetErrorFlag();
void NET_SetErrorFlag();
void NET_ClearErrorFlag();
int32_t NET_ToggleErrorMode(int32_t mode);
int32_t NET_Erase(int64_t packet, int32_t startPosition, int32_t amount);
int32_t NET_Insert(int64_t packet, int32_t amount);
int64_t NET_CreatePacketFromPacket(int64_t fromPacket);
int64_t NET_CreatePacketFromString(std::string fromString);
int32_t NET_ComparePacketString(int64_t packet, std::string aString);
int32_t NET_ChangeMemorySize(int64_t packet, int32_t size);
int32_t NET_EqualPacketString(int64_t destination, std::string fromString);
int32_t NET_FlushReceiveTCP(int32_t instanceID, int32_t client);
int32_t NET_FlushReceiveUDP(int32_t instanceID, int32_t client);
int32_t NET_ChangeBufferSizeTCP(int32_t instance, int32_t client, int32_t size);
int32_t NET_SetAutoResizeTCP(int32_t instance, int32_t client, int32_t autoResize);
int32_t NET_GetReceiveSizeTCP(int32_t instance, int32_t clientID);
int32_t NET_GetBytesTCP(int32_t instance, int32_t client);
int32_t NET_GetHandshakeEnabledTCP(int32_t instance);
int32_t NET_GetModeTCP(int32_t instance);
int32_t NET_ShutdownClient(int32_t instance, int32_t client);
int32_t NET_GetGracefulDisconnectEnabledTCP(int32_t instance);
int32_t NET_GetSendTimeout(int32_t instance);
int32_t NET_SetSendTimeout(int32_t instance, int32_t timeout);
int32_t NET_GetStoreAmountTCP(int32_t instance, int32_t client);
int32_t NET_GetStoreAmountUDP(int32_t instance, int32_t client);
int32_t NET_GetPostFixTCP(int32_t instance, int64_t packet);
#endif /* _GDKLIB_DARKNET_H */
I was looking for a C++ version of the CubeWorld. I can't seam to find my old version (was a few years ago and on another computer, thought I hada back up). So I was looking at trying to rewrite it.
I liked Mikenet because I could run a "Server" and a "Client" on the same system, I had one running for a while, until the game crashed on a memory leak, which I could not resolve - my bad.
There are many answers but just one question" ~ Jerilith the Mad