Skip to content

Instantly share code, notes, and snippets.

constexpr unsigned int Joaat(const char* str)
{
if (str == nullptr || *str == '\0')
return 0;
unsigned int hash = 0;
for (unsigned long long i = 0; str[i] != '\0'; ++i)
{
unsigned char b = static_cast<unsigned char>(str[i]);
if (b >= 'A' && b <= 'Z')

Overview

RAGE code provides and supports basic functionality that all projects at Rockstar San Diego can build on. However, no one game takes advantage of all of RAGE’s capabilities. RAGE is intended to provide a cross-platform abstraction layer for many common pieces of functionality that most games will require. Each specific game should select only the RAGE functionality that they need. In turn, RAGE should not contain game-specific code.

RAGE is not intended to be a complete "turn-key" game development engine, though as more general-purpose elements are migrated from games down into RAGE, it could move in this direction.

The qualification for code being part of RAGE is that it provide functionality which most projects need, at least as a starting point. It is strongly recommended that projects link directly with the RAGE modules, rather than taking copies of the RAGE code and putting their own version into their project-specific code hierarchy. RAGE shares nuts-and-bolts functionality, production to

void main()
{
l_U4 = 0.40000000;
l_U5 = 0;
l_U9 = 0;
l_U11 = 0;
l_U12 = 0;
l_U46 = 0;
l_U47 = 0;
l_U48 = 0;