defines.c 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. // All defines in this file are added from C++ side
  2. // It simply exists for documentation purposes
  3. #ifdef DOXYGEN
  4. /**
  5. * \defgroup Defines Defines
  6. * \desc static defines
  7. * @{
  8. */
  9. /*!
  10. \brief Define filled in with the current Major and Minor version (e.g. DAYZ_1_16)
  11. */
  12. #define DAYZ_X_XX
  13. /*!
  14. \brief Enabled when game is in Buldozer mode
  15. */
  16. #define BULDOZER
  17. /*!
  18. \brief Enabled when script is compiled for Workbench
  19. */
  20. #define WORKBENCH
  21. /*!
  22. \note Present for server builds
  23. */
  24. #define NO_GUI
  25. /*!
  26. \note Present for server builds
  27. */
  28. #define NO_GUI_INGAME
  29. /*!
  30. \note Enabled via '-doScriptLogs=1' in launch parameters
  31. */
  32. #define ENABLE_LOGGING
  33. /*!
  34. \note Enabled via '-logToFile=1' in launch parameters. Default '1' on internal and '0' on retail
  35. */
  36. #define LOG_TO_FILE
  37. /*!
  38. \note Enabled via '-logToScript=1' in launch parameters. Default '1' on internal and '0' on retail
  39. */
  40. #define LOG_TO_SCRIPT
  41. /*!
  42. \note Enabled via '-logToRpt=1' in launch parameters. Default '0' on internal and '0' on retail
  43. */
  44. #define LOG_TO_RPT
  45. /*!
  46. \note Work in progress feature flag to prevent cursor from being hijacked by the game. Original intention was only DEVELOPER_DIAG but the fix later introduced problems in retail.
  47. */
  48. #define FEATURE_CURSOR
  49. /*!
  50. \note Work in progress feature flag for the new reconciliation for players.
  51. */
  52. #define FEATURE_NETWORK_RECONCILIATION
  53. /**
  54. * \defgroup BuildDefines Build defines
  55. * \desc Defines for different builds
  56. * @{
  57. */
  58. /*!
  59. \brief Define present in Diag builds
  60. */
  61. #define DIAG
  62. /*!
  63. \note A build is always either DEVELOPER or RELEASE, one is always active
  64. */
  65. #define DEVELOPER
  66. /*!
  67. \note includes Diag
  68. */
  69. #define RELEASE
  70. /*!
  71. \brief DIAG || DEVELOPER
  72. */
  73. #define DIAG_DEVELOPER
  74. /*!
  75. \brief Define present in Experimental builds
  76. */
  77. #define BUILD_EXPERIMENTAL
  78. /** @}*/
  79. /**
  80. * \defgroup ServerDefines Server defines
  81. * \desc Defines for dedicated server code
  82. * \note Only defined when CGame.IsDedicatedServer equals true
  83. * \note The platforms mentioned are the client platform, for game platform use PLATFORM defines
  84. * @{
  85. */
  86. /*!
  87. \brief Define always present on dedicated servers
  88. \note Should be preferred over using CGame.IsDedicatedServer when possible
  89. */
  90. #define SERVER
  91. /*!
  92. \warning This is defined for Linux servers as well, as it targets Windows clients
  93. \note A server is always either FOR_WINDOWS, FOR_X1 or FOR_PS4
  94. */
  95. #define SERVER_FOR_WINDOWS
  96. /*!
  97. \note A server is always either FOR_WINDOWS, FOR_X1 or FOR_PS4
  98. */
  99. #define SERVER_FOR_X1
  100. /*!
  101. \note A server is always either FOR_WINDOWS, FOR_X1 or FOR_PS4
  102. */
  103. #define SERVER_FOR_PS4
  104. /*!
  105. \brief SERVER_FOR_X1 || SERVER_FOR_PS4
  106. */
  107. #define SERVER_FOR_CONSOLE
  108. /** @}*/
  109. /**
  110. * \defgroup PlatformDefines Platform defines
  111. * \desc Defines for platform the build is built for
  112. * @{
  113. */
  114. #define PLATFORM_LINUX
  115. #define PLATFORM_WINDOWS
  116. #define PLATFORM_XBOX
  117. #define PLATFORM_PS4
  118. /*!
  119. \brief PLATFORM_XBOX || PLATFORM_PS4
  120. */
  121. #define PLATFORM_CONSOLE
  122. /** @}*/
  123. /** @}*/
  124. #endif