qo0-base
πΎ menu
πΊοΈ comments navigation
@note:
@todo:
@test: [things to test] [date]
@credits:
@xref:
π§ͺ conventions
- prefix classes with 'C' and interfaces classes 'I'
class CSomeClass;
class ISomeInterface;
- postfix structures with '_t'
struct SomeStruct_t;
- prefix enumerations with 'E'
enum ESomeEnum
- thirdparty (sdk, dependencies) macroses should be uppercase
#define SOMEMACROS
- prefix own macroses with the first filename character
#define M_SOMEMATHMACROS
π code style
- all curly braces should be on it's own line
if (true)
{
while (true)
{
// something...
}
}
- the first characters of variables must be like type
bool bSomeBool; int iSomeInt; float flSomeFloat; double dbSomeDouble;
char chSomeSymbol; const char* szSomeString (std::string too);
BYTE dSomeByte; DWORD dwSomeDword; unsigned uSomeInt + type (e.g. unsigned long ulOffset);
CSomeClass someClass; CSomeClass* pSomeClass;
- enumerations must inherit type
enum ESomeEnum : short
3.1. enumerations members should be uppercase
SOME_ENUM_MEMBER = 0
- includes paths must be separated with one slash
4.1. additional: file names preferably be lowercase
- use number literal's (uppercase)
long lSomeLong = 0L;
unsigned int uSomeOffset = 0x0; // hex
unsigned int uSomeInt = 0U;
unsigned long ulSomeLong = 0UL;
- use c++ style casts
void* pSomeHandle = const_cast<void*>(pSomeConstHandle);
int iSomeInt = static_cast<int>(flSomeFloat);
int* pSomePointer = *reinterpret_cast<int**>(pSomeAddress);
π preprocessor definitions
_DEBUG
- disable string encryption and activate external console logging (automatic switches with compilation configuration)DEBUG_CONSOLE
- activate external console logging but deactivate file logging
π§ prerequisites
β faq
how do i create a project/solution?
- project and solution files can be auto-generated with premake5, put it into same folder where
premake5.lua
is located and executepremake5 <ide>
(where<ide>
is e.g.vs2022
) command
how do i open the menu?
- menu key is HOME
how do i unload the cheat?
- panic key is END