diff options
Diffstat (limited to '')
-rw-r--r-- | README.md | 54 |
1 files changed, 48 insertions, 6 deletions
@@ -4,8 +4,12 @@ The aim of this project is to reverse GTA III for PC by replacing parts of the game [one by one](https://en.wikipedia.org/wiki/Ship_of_Theseus) such that we have a working game at all times. -Apparently you can download a binary of the latest version -[here](https://ci.appveyor.com/api/projects/aap/re3/artifacts/bin%2FReleaseCI%2Fre3.dll?branch=master). +Apparently you can download a binary of the latest version here: +[Debug](https://ci.appveyor.com/api/projects/aap/re3/artifacts/bin/DebugCI/re3.dll?branch=master&job=Configuration%3A+DebugCI), +[Release](https://ci.appveyor.com/api/projects/aap/re3/artifacts/bin/ReleaseCI/re3.dll?branch=master&job=Configuration%3A+ReleaseCI). + +Build status: +[![Build status](https://ci.appveyor.com/api/projects/status/hyiwgegks122h8jg?svg=true)](https://ci.appveyor.com/project/aap/re3/branch/master) Re3 starts the script main_freeroam.scm by default. Make sure you copy it to your data directory. @@ -20,6 +24,7 @@ to reverse at the time, calling the original functions is acceptable. This is a list of some things that have been reversed to some non-trivial extent. Not everything is listed, check the code. +(TODO: keep this list at least a bit up to date...) ``` CPool @@ -48,6 +53,11 @@ CPathFind CCam CParticle CParticleMgr +CPointLights +CCoronas +CAntennas +CClouds +CHud ``` # Low hanging fruit @@ -75,9 +85,12 @@ functionname(args) if(a == b){ s1; s2; + }else{ + s3; + s4; } if(x != y) - s3; + s5; } type functionname(args) @@ -85,9 +98,12 @@ type functionname(args) if (a == b) { s1; s2; + } else { + s3; + s4; } if (x != y) - s3; + s5; } ``` @@ -101,14 +117,31 @@ type functionname ( args ) s1; s2; } - if ( x != y ) + else { s3; + s4; + } + if ( x != y ) + { + s5; } } ``` -Indentation is done with TABS. +i.e. + +* Put the brace on the same line as control statements + +* Put the brace on the next line after function definitions and structs/classes + +* Put an `else` on the same line with the braces + +* Don't put braces around single statements + +* Put the function return type on a separate line + +* Indent with TABS As for the less cosmetic choices, here are some guidelines how the code should look: @@ -128,6 +161,8 @@ since `4` will be used in other places and you can't easily see where else the e * don't even think about using win32 types (`BYTE`, `WORD`, &c.) unless you're writing win32 specific code + * declare pointers like `int *ptr;`, not `int* ptr;` + * As for variable names, the original gta source code was not written in a uniform style, but here are some observations: @@ -142,3 +177,10 @@ but here are some observations: * do *not* use `dw` for `DWORD` or so, we're not programming win32 * Generally, try to make the code look as if R* could have written it + +# Environment Variables +Here you can find a list of variables that you might need to set in windows: +``` +"GTA_III_RE_DIR" * path to "gta3_re" game folder usually where this plugin run. +"GTA_III_DIR)" * path to "GTAIII" game folder. +``` |