Jenkins Software

Preprocessor directives
In RakNetDefines.h: Recompile with these set to enable or disable blocks of code.
  • /// Define __GET_TIME_64BIT to have RakNet::TimeMS use a 64, rather than 32 bit value. A 32 bit value will overflow after about 5 weeks.
    /// However, this doubles the bandwidth use for sending times, so don't do it unless you have a reason to.
    /// Comment out if you are using the iPod Touch TG. See http://www.jenkinssoftware.com/forum/index.php?topic=2717.0
    /// This must be the same on all systems, or they won't connect
    #define __GET_TIME_64BIT 1
  • // Define _FILE_AND_LINE_ to "",0 if you want to strip out file and line info for memory tracking from the EXE
    #define _FILE_AND_LINE_ __FILE__,__LINE__
  • /// Define __BITSTREAM_NATIVE_END to NOT support endian swapping in the BitStream class. This is faster and is what you should use
    /// unless you actually plan to have different endianness systems connect to each other
    /// Enabled by default.
    // #define __BITSTREAM_NATIVE_END
  • /// Maximum (stack) size to use with _alloca before using new and delete instead.
    #define MAX_ALLOCA_STACK_ALLOCATION 1048576
  • // Use WaitForSingleObject instead of sleep.
    // Defining it plays nicer with other systems, and uses less CPU, but gives worse RakNet performance
    // Undefining it uses more CPU time, but is more responsive and faster.
    #define USE_WAIT_FOR_MULTIPLE_EVENTS
  • /// Uncomment to use RakMemoryOverride for custom memory tracking
    /// See RakMemoryOverride.h.
    #define _USE_RAK_MEMORY_OVERRIDE 1
  • /// If defined, OpenSSL is enabled for the class TCPInterface
    /// This is necessary to use the SendEmail class with Google POP servers
    /// Note that OpenSSL carries its own license restrictions that you should be aware of. If you don't agree, don't enable this define
    /// This also requires that you enable header search paths to DependentExtensions\openssl-0.9.8g
    // #define OPEN_SSL_CLIENT_SUPPORT
  • /// Threshold at which to do a malloc / free rather than pushing data onto a fixed stack for the bitstream class
    /// Arbitrary size, just picking something likely to be larger than most packets
    #define BITSTREAM_STACK_ALLOCATION_SIZE 256
  • // Redefine if you want to disable or change the target for debug RAKNET_DEBUG_PRINTF
    #define RAKNET_DEBUG_PRINTF printf
  • // Enable to support peer to peer with NetworkIDs. Disable to save memory if doing client/server only
    #define NETWORK_ID_SUPPORTS_PEER_TO_PEER 1
  • // Maximum number of local IP addresses supported
    #define MAXIMUM_NUMBER_OF_INTERNAL_IDS 10
  • /// This controls the amount of memory used per connection. If more than this many datagrams are sent without an ack, then the ack has no effect
    #define DATAGRAM_MESSAGE_ID_ARRAY_LENGTH 512
  • /// This is the maximum number of reliable user messages the system will track to unresponsive systems
    /// A good value is the maximum number of reliable messages you will send over 10 seconds
    #define RESEND_BUFFER_ARRAY_LENGTH 512
    #define RESEND_BUFFER_ARRAY_MASK 511
  • /// Uncomment if you want to link in the DLMalloc library to use with RakMemoryOverride
    // #define _LINK_DL_MALLOC

Defining __BITSTREAM_NATIVE_END in .net 2003
(You could also just modify RakNetDefinesOverrides.h)
See Also
Index