Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
sync
  • Loading branch information
Nick007J committed Jun 25, 2021
2 parents 3b0c958 + 940d6bf commit 8a5afd0db2fa2616556ed953c5c464c6930d6f47
Showing with 18,716 additions and 7,638 deletions.
  1. +13 −0 .github/pull_request_template.md
  2. +1 −1 .github/workflows/build-cmake-conan.yml
  3. +12 −14 .github/workflows/reLCS_msvc_amd64.yml
  4. +13 −14 .github/workflows/reLCS_msvc_x86.yml
  5. +3 −1 .gitignore
  6. +4 −0 CMakeLists.txt
  7. +1 −1 README.md
  8. +284 −0 cmake/GetGitRevisionDescription.cmake
  9. +43 −0 cmake/GetGitRevisionDescription.cmake.in
  10. +933 −189 gamefiles/gamecontrollerdb.txt
  11. BIN gamefiles/models/frontend_ds2.txd
  12. BIN gamefiles/models/frontend_ds3.txd
  13. BIN gamefiles/models/frontend_ds4.txd
  14. BIN gamefiles/models/frontend_x360.txd
  15. BIN gamefiles/models/frontend_xone.txd
  16. BIN gamefiles/models/ps3btns.txd
  17. BIN gamefiles/models/x360btns.txd
  18. BIN logo.png
  19. +162 −0 logo.svg
  20. +24 −23 premake5.lua
  21. +26 −0 printHash.bat
  22. +12 −0 printHash.sh
  23. +6 −1 src/CMakeLists.txt
  24. +6 −0 src/animation/AnimBlendAssociation.cpp
  25. +1 −0 src/animation/AnimBlendAssociation.h
  26. +222 −222 src/animation/AnimManager.cpp
  27. +243 −239 src/animation/AnimationId.h
  28. +16 −21 src/audio/AudioCollision.cpp
  29. +4,267 −2,764 src/audio/AudioLogic.cpp
  30. +82 −71 src/audio/AudioManager.cpp
  31. +170 −147 src/audio/AudioManager.h
  32. +5,538 −634 src/audio/AudioSamples.h
  33. +6 −4 src/audio/AudioScriptObject.cpp
  34. +4 −4 src/audio/AudioScriptObject.h
  35. +13 −13 src/audio/DMAudio.cpp
  36. +11 −11 src/audio/DMAudio.h
  37. +405 −330 src/audio/MusicManager.cpp
  38. +30 −30 src/audio/MusicManager.h
  39. +149 −145 src/audio/{PoliceRadio.cpp → PolRadio.cpp}
  40. 0 src/audio/{PoliceRadio.h → PolRadio.h}
  41. +26 −1 src/audio/audio_enums.h
  42. +6 −20 src/audio/oal/aldlist.cpp
  43. +14 −1 src/audio/oal/aldlist.h
  44. +80 −13 src/audio/oal/channel.cpp
  45. +6 −1 src/audio/oal/channel.h
  46. +62 −34 src/audio/oal/stream.cpp
  47. +4 −1 src/audio/oal/stream.h
  48. +110 −247 src/audio/sampman.h
  49. +382 −241 src/audio/sampman_miles.cpp
  50. +31 −31 src/audio/sampman_null.cpp
  51. +559 −384 src/audio/sampman_oal.cpp
  52. +16 −16 src/audio/soundlist.h
  53. +2 −2 src/buildings/Building.cpp
  54. +2 −2 src/buildings/Building.h
  55. +2 −2 src/buildings/Treadable.cpp
  56. +2 −2 src/buildings/Treadable.h
  57. +2 −2 src/collision/ColModel.cpp
  58. +2 −2 src/collision/ColModel.h
  59. +20 −4 src/collision/Collision.cpp
  60. +4 −4 src/control/CarCtrl.cpp
  61. +9 −1 src/control/Garages.cpp
  62. +5 −5 src/control/PathFind.cpp
  63. +4 −4 src/control/PathFind.h
  64. +5 −5 src/control/Phones.cpp
  65. +19 −6 src/control/Pickups.cpp
  66. +12 −12 src/control/Replay.cpp
  67. +3 −3 src/control/RoadBlocks.cpp
  68. +2 −2 src/control/Script.cpp
  69. +1 −1 src/control/Script10.cpp
  70. +2 −2 src/control/Script2.cpp
  71. +5 −7 src/control/Script4.cpp
  72. +8 −8 src/control/Script5.cpp
  73. +3 −3 src/control/Script7.cpp
  74. +3 −3 src/control/Script8.cpp
  75. +4 −4 src/control/Script9.cpp
  76. +2 −2 src/control/SetPieces.cpp
  77. +4 −4 src/core/AnimViewer.cpp
  78. +10 −10 src/core/Cam.cpp
  79. +5 −10 src/core/Camera.cpp
  80. +1 −5 src/core/Camera.h
  81. +27 −14 src/core/CdStream.cpp
  82. +1 −1 src/core/CdStream.h
  83. +87 −30 src/core/CdStreamPosix.cpp
  84. +105 −17 src/core/ControllerConfig.cpp
  85. +4 −0 src/core/ControllerConfig.h
  86. +1 −1 src/core/FileLoader.cpp
  87. +891 −50 src/core/Frontend.cpp
  88. +29 −4 src/core/Frontend.h
  89. +1 −1 src/core/FrontendTriggers.h
  90. +1 −1 src/core/Frontend_PS2.cpp
  91. +17 −9 src/core/Game.cpp
  92. +0 −7 src/core/MenuScreens.cpp
  93. +80 −53 src/core/MenuScreensCustom.cpp
  94. +6 −0 src/core/Pad.cpp
  95. +2 −0 src/core/Pad.h
  96. +4 −2 src/core/Placeable.h
  97. +1 −1 src/core/Pools.cpp
  98. +120 −75 src/core/Radar.cpp
  99. +0 −2 src/core/References.cpp
  100. +4 −1 src/core/Ropes.cpp
  101. +63 −28 src/core/Streaming.cpp
  102. +4 −0 src/core/Streaming.h
  103. +103 −18 src/core/Timer.cpp
  104. +8 −12 src/core/Timer.h
  105. +33 −28 src/core/World.cpp
  106. +1 −0 src/core/World.h
  107. +17 −0 src/core/Zones.cpp
  108. +7 −1 src/core/common.h
  109. +43 −18 src/core/config.h
  110. +104 −5 src/core/main.cpp
  111. +19 −0 src/core/main.h
  112. +198 −70 src/core/re3.cpp
  113. +2 −2 src/entities/Dummy.cpp
  114. +2 −2 src/entities/Dummy.h
  115. +112 −38 src/entities/Entity.cpp
  116. +18 −3 src/entities/Entity.h
  117. +7 −7 src/entities/Physical.cpp
  118. +2 −0 src/extras/GitSHA1.cpp.in
  119. +1 −0 src/extras/GitSHA1.h
  120. +21 −93 src/extras/custompipes_gl.cpp
  121. +8 −0 src/extras/postfx.cpp
  122. +1 −1 src/extras/shaders/colourfilterLCS.frag
  123. +1 −1 src/extras/shaders/contrast.frag
  124. +0 −7 src/extras/shaders/make_hlsl.cmd
  125. +1 −1 src/extras/shaders/neoVehicle.vert
  126. +1 −1 src/extras/shaders/neoVehicle_VS.hlsl
  127. +1 −1 src/extras/shaders/obj/colourfilterLCS_frag.inc
  128. +1 −1 src/extras/shaders/obj/contrast_frag.inc
  129. +1 −1 src/extras/shaders/obj/neoVehicle_vert.inc
  130. +37 −0 src/fakerw/fake.cpp
  131. +4 −0 src/fakerw/rtpng.h
  132. +0 −16 src/math/Matrix.h
  133. +2 −0 src/math/VuVector.h
  134. +1 −1 src/math/maths.h
  135. +1 −0 src/modelinfo/BaseModelInfo.cpp
  136. +3 −0 src/modelinfo/ModelInfo.h
  137. +1 −0 src/objects/CutsceneObject.h
  138. +32 −10 src/objects/Object.cpp
  139. +4 −4 src/objects/Object.h
  140. +1 −1 src/objects/ParticleObject.cpp
  141. +31 −4 src/objects/Stinger.cpp
  142. +5 −5 src/peds/CopPed.cpp
  143. +1 −1 src/peds/EmergencyPed.cpp
  144. +720 −219 src/peds/Ped.cpp
  145. +68 −15 src/peds/Ped.h
  146. +317 −228 src/peds/PedAI.cpp
  147. +10 −6 src/peds/PedAttractor.cpp
  148. +3 −0 src/peds/PedDebug.cpp
  149. +216 −216 src/peds/PedFight.cpp
  150. +45 −45 src/peds/PlayerPed.cpp
  151. +44 −24 src/peds/Population.cpp
  152. +4 −0 src/render/Antennas.cpp
  153. +13 −0 src/render/Clouds.cpp
  154. +11 −3 src/render/Coronas.cpp
  155. +3 −0 src/render/Credits.cpp
  156. +28 −8 src/render/Draw.cpp
  157. +5 −1 src/render/Draw.h
  158. +2 −0 src/render/Fluff.cpp
  159. +40 −9 src/render/Font.cpp
  160. +14 −11 src/render/Font.h
  161. +4 −0 src/render/Glass.cpp
  162. +13 −10 src/render/Hud.cpp
  163. +3 −0 src/render/MBlur.cpp
  164. +2 −2 src/render/Occlusion.cpp
  165. +21 −17 src/render/Particle.cpp
  166. +2 −2 src/render/ParticleMgr.cpp
  167. +4 −0 src/render/PointLights.cpp
  168. +36 −1 src/render/Renderer.cpp
  169. +4 −0 src/render/Rubbish.cpp
  170. +11 −3 src/render/Shadows.cpp
  171. +4 −0 src/render/Skidmarks.cpp
  172. +2 −0 src/render/SpecialFX.cpp
  173. +3 −1 src/render/WaterCannon.cpp
  174. +24 −19 src/render/WaterLevel.cpp
  175. +1 −1 src/render/Weather.cpp
  176. +4 −4 src/rw/MemoryMgr.cpp
  177. +38 −0 src/rw/RwHelper.cpp
  178. +1 −0 src/rw/RwHelper.h
  179. +9 −0 src/rw/TexRead.cpp
  180. +63 −3 src/rw/VisibilityPlugins.cpp
  181. +11 −4 src/rw/VisibilityPlugins.h
  182. +3 −3 src/save/GenericGameStorage.cpp
  183. +1 −1 src/save/GenericGameStorage.h
  184. +4 −4 src/skel/crossplatform.cpp
  185. +7 −2 src/skel/crossplatform.h
  186. +328 −13 src/skel/glfw/glfw.cpp
  187. +17 −6 src/skel/win/win.cpp
  188. +4 −4 src/text/Text.cpp
  189. +40 −40 src/vehicles/Automobile.cpp
  190. +36 −36 src/vehicles/Bike.cpp
  191. +8 −8 src/vehicles/Boat.cpp
  192. +1 −1 src/vehicles/Heli.cpp
  193. +3 −3 src/vehicles/Plane.cpp
  194. +7 −7 src/vehicles/Vehicle.cpp
  195. +5 −5 src/vehicles/Vehicle.h
  196. +3 −3 src/weapons/BulletInfo.cpp
  197. +1 −1 src/weapons/Explosion.cpp
  198. +16 −12 src/weapons/Weapon.cpp
  199. +5 −0 src/weapons/WeaponEffects.cpp
  200. +1 −1 vendor/librw
@@ -0,0 +1,13 @@
As long as it's not linux/cross-platform skeleton/compatibility layer, all of the code on the repo that's not behind a preprocessor condition(like FIX_BUGS) are **completely** reversed code from original binaries.

We **don't** accept custom codes, as long as it's not wrapped via preprocessor conditions, or it's linux/cross-platform skeleton/compatibility layer.

We accept only these kinds of PRs;

- A new feature that exists in at least one of the GTAs (if it wasn't in III/VC then it doesn't have to be decompilation)
- Game, UI or UX bug fixes (if it's a fix to R* code, it should be behind FIX_BUGS)
- Platform-specific and/or unused code that's not been reversed yet
- Makes reversed code more understandable/accurate, as in "which code would produce this assembly".
- A new cross-platform skeleton/compatibility layer, or improvements to them
- Translation fixes, for languages R* supported/outsourced
- Code that increase maintainability
@@ -23,7 +23,7 @@ jobs:
# - os: 'windows-latest'
# platform: 'd3d9'
# audio: 'miles'
- os: 'ubuntu-latest'
- os: 'ubuntu-18.04'
platform: 'gl3'
gl3_gfxlib: 'glfw'
audio: 'openal'
@@ -6,13 +6,9 @@ on:
release:
types: published
env:
GLEW_VER: "2.1.0"
GLFW_VER: "3.3.2"
GLEW_BASE: "glew-2.1.0"
GLFW_BASE: "glfw-3.3.2.bin.WIN64"
GLEW_FILE: "glew-2.1.0-win32.zip"
GLFW_FILE: "glfw-3.3.2.bin.WIN64.zip"
GLEW_URL: "https://github.com/nigels-com/glew/releases/download/glew-2.1.0/glew-2.1.0-win32.zip"
GLFW_URL: "https://github.com/glfw/glfw/releases/download/3.3.2/glfw-3.3.2.bin.WIN64.zip"
jobs:
build:
@@ -27,11 +23,6 @@ jobs:
- uses: actions/checkout@v2
with:
submodules: 'true'
- if: ${{ matrix.platform }} == "win-amd64-librw_gl3_glfw-mss"
name: Download glew
uses: carlosperate/download-file-action@v1.0.3
with:
file-url: ${{env.GLEW_URL}}
- if: ${{ matrix.platform }} == "win-amd64-librw_gl3_glfw-mss"
name: Download glfw
uses: carlosperate/download-file-action@v1.0.3
@@ -40,22 +31,29 @@ jobs:
- if: ${{ matrix.platform }} == "win-amd64-librw_gl3_glfw-mss"
name: Unpack archives
run: |
7z x ${{env.GLEW_FILE}}
7z x ${{env.GLFW_FILE}}
- name: Configure build
run: |
./premake5 vs2019 --with-librw --glewdir=${{env.GLEW_BASE}} --glfwdir64=${{env.GLFW_BASE}}
./premake5 vs2019 --with-librw --glfwdir64=${{env.GLFW_BASE}}
- name: Build
run: |
msbuild -m build/reLCS.sln /property:Configuration=${{matrix.buildtype}} /property:Platform=${{matrix.platform}}
- name: Pack artifacts
# - name: Pack artifacts
# run: |
# 7z a reLCS_${{matrix.buildtype}}_${{matrix.platform}}.zip ./bin/${{matrix.platform}}/${{matrix.buildtype}}/*
- name: Move binaries to gamefiles
run: |
mv ./bin/${{matrix.platform}}/${{matrix.buildtype}}/reLCS.exe ./gamefiles/
mv ./bin/${{matrix.platform}}/${{matrix.buildtype}}/reLCS.pdb ./gamefiles/
- name: Move dynamic dependencies to gamefiles
run: |
7z a reLCS_${{matrix.buildtype}}_${{matrix.platform}}.zip ./bin/${{matrix.platform}}/${{matrix.buildtype}}/*
mv ./vendor/mpg123/dist/Win64/libmpg123-0.dll ./gamefiles/
mv ./vendor/openal-soft/dist/Win64/OpenAL32.dll ./gamefiles/
- name: Upload artifact to actions
uses: actions/upload-artifact@v2
with:
name: reLCS_${{matrix.buildtype}}_${{matrix.platform}}
path: ./bin/${{matrix.platform}}/${{matrix.buildtype}}
path: ./gamefiles/*
# - name: Upload artifact to Bintray
# uses: hpcsc/upload-bintray-docker-action@v1
# with:
@@ -6,13 +6,9 @@ on:
release:
types: published
env:
GLEW_VER: "2.1.0"
GLFW_VER: "3.3.2"
GLEW_BASE: "glew-2.1.0"
GLFW_BASE: "glfw-3.3.2.bin.WIN32"
GLEW_FILE: "glew-2.1.0-win32.zip"
GLFW_FILE: "glfw-3.3.2.bin.WIN32.zip"
GLEW_URL: "https://github.com/nigels-com/glew/releases/download/glew-2.1.0/glew-2.1.0-win32.zip"
GLFW_URL: "https://github.com/glfw/glfw/releases/download/3.3.2/glfw-3.3.2.bin.WIN32.zip"
jobs:
build:
@@ -27,11 +23,6 @@ jobs:
- uses: actions/checkout@v2
with:
submodules: 'true'
- if: ${{ matrix.platform }} == "win-x86-librw_gl3_glfw-mss"
name: Download glew
uses: carlosperate/download-file-action@v1.0.3
with:
file-url: ${{env.GLEW_URL}}
- if: ${{ matrix.platform }} == "win-x86-librw_gl3_glfw-mss"
name: Download glfw
uses: carlosperate/download-file-action@v1.0.3
@@ -40,22 +31,30 @@ jobs:
- if: ${{ matrix.platform }} == "win-x86-librw_gl3_glfw-mss"
name: Unpack archives
run: |
7z x ${{env.GLEW_FILE}}
7z x ${{env.GLFW_FILE}}
- name: Configure build
run: |
./premake5 vs2019 --with-librw --glewdir=${{env.GLEW_BASE}} --glfwdir32=${{env.GLFW_BASE}}
./premake5 vs2019 --with-librw --glfwdir32=${{env.GLFW_BASE}}
- name: Build
run: |
msbuild -m build/reLCS.sln /property:Configuration=${{matrix.buildtype}} /property:Platform=${{matrix.platform}}
- name: Pack artifacts
# - name: Pack artifacts
# run: |
# 7z a reLCS_${{matrix.buildtype}}_${{matrix.platform}}.zip ./bin/${{matrix.platform}}/${{matrix.buildtype}}/*
- name: Move binaries to gamefiles
run: |
mv ./bin/${{matrix.platform}}/${{matrix.buildtype}}/reLCS.exe ./gamefiles/
mv ./bin/${{matrix.platform}}/${{matrix.buildtype}}/reLCS.pdb ./gamefiles/
- if: contains(matrix.platform, 'oal')
name: Move dynamic dependencies to gamefiles
run: |
7z a reLCS_${{matrix.buildtype}}_${{matrix.platform}}.zip ./bin/${{matrix.platform}}/${{matrix.buildtype}}/*
mv ./vendor/mpg123/dist/Win32/libmpg123-0.dll ./gamefiles/
mv ./vendor/openal-soft/dist/Win32/OpenAL32.dll ./gamefiles/
- name: Upload artifact to actions
uses: actions/upload-artifact@v2
with:
name: reLCS_${{matrix.buildtype}}_${{matrix.platform}}
path: reLCS_${{matrix.buildtype}}_${{matrix.platform}}.zip
path: ./gamefiles/*
# - name: Upload artifact to Bintray
# uses: hpcsc/upload-bintray-docker-action@v1
# with:
@@ -357,4 +357,6 @@ sdk/

codewarrior/reVC_Data/
codewarrior/Release/
codewarrior/Debug/
codewarrior/Debug/

src/extras/GitSHA1.cpp
@@ -6,6 +6,10 @@ set(PROJECT RELCS)
project(${EXECUTABLE} C CXX)
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")

include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC GIT_SHA1 "ALLOW_LOOKING_ABOVE_CMAKE_SOURCE_DIR")
message(STATUS "Building ${CMAKE_PROJECT_NAME} GIT SHA1: ${GIT_SHA1}")

if(WIN32)
set(${PROJECT}_AUDIOS "OAL" "MSS")
else()
@@ -1,6 +1,6 @@
# reLCS
[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2FGTAmodding%2Fre3%2Fbadge%3Fref%3Dlcs&style=flat)](https://actions-badge.atrox.dev/GTAmodding/re3/goto?ref=lcs)
<a href="https://discord.gg/aKYAwCx92H"><img src="https://img.shields.io/badge/discord-join-7289DA.svg?logo=discord&longCache=true&style=flat" /></a>
<a href="https://discord.gg/ERYg58ttcE"><img src="https://img.shields.io/badge/discord-join-7289DA.svg?logo=discord&longCache=true&style=flat" /></a>

## Intro

0 comments on commit 8a5afd0

Please sign in to comment.