Make re3 relocatable
#967
Open
madebr wants to merge 4 commits from madebr/re3_conan_libsndfile
into master
pull from: madebr/re3_conan_libsndfile
merge into: mirror:master
mirror:withmorten/limits
mirror:master
mirror:lcs
mirror:miami
mirror:voodoufreak/miami
mirror:okias/dxt_on_ogl
mirror:GenkaOk/abs-function
mirror:asm95/lcs-scrollbar
mirror:ZLau92/highfps
mirror:NABN00B/master
mirror:erorcun/mpeg
mirror:alextwothousand/master
mirror:erorcun/master
mirror:alextwothousand/miami
mirror:Anarky/blur_cutscene
mirror:xeyopay170/master
mirror:Nanoposan69/master
mirror:IlDucci/miami
mirror:Tatsh/xdg
mirror:ZLau92/gamepad-dbg-menu
mirror:0x0000ff/master
mirror:Tatsh/macos-appsupport
Reviewers
Request review
No reviewers
Labels
Clear labels
Something isn't working
need for improvement or additions to documentation
This issue or pull request already exists
New feature or request
Good for newcomers
Extra attention is needed
This doesn't seem right
reLCS related
reVC related
Further information is requested
Issues happening in original game
This will not be worked on
Apply labels
bug
Something isn't working
documentation
need for improvement or additions to documentation
duplicate
This issue or pull request already exists
enhancement
New feature or request
fork idea
good first issue
Good for newcomers
help wanted
Extra attention is needed
help-desk
invalid
This doesn't seem right
is it bug or not?
lcs
reLCS related
linux
math
miami
reVC related
not our problem
openal
performance
question
Further information is requested
vanilla
Issues happening in original game
wontfix
This will not be worked on
No Label
bug
documentation
duplicate
enhancement
fork idea
good first issue
help wanted
help-desk
invalid
is it bug or not?
lcs
linux
math
miami
not our problem
openal
performance
question
vanilla
wontfix
Milestone
Set milestone
Clear milestone
No items
No Milestone
Projects
Set Project
Clear projects
No project
Assignees
Assign users
Clear assignees
No Assignees
1 Participants
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
No due date set.
Dependencies
No dependencies set.
Reference: mirror/re3#967
Reference in New Issue
There is no content yet.
Delete Branch 'madebr/re3_conan_libsndfile'
Deleting a branch is permanent. It CANNOT be undone. Continue?
No
Yes
Hello,
This pr makes re3 relocatable.
By relocatable, I mean that re3 (and its gamedata) should no longer be copied to the installation folder of gta3.
By default, it will look into the following locations (in that order):
GTA3DIR
environment variableC:\Program Files (x86)\GTA3
or the one from steam.To show why this is useful, I added NSIS installer support to the cmake script.
This allows one to install re3 in a default installation folder and run it without manual copying.
Github actions builds these installers. See https://github.com/madebr/re3/actions/runs/494487376 for an example (NSIS only works on Windows)
I had to copy CMake's NSIS template script to modify it to allow installing re3 as ordinary user (instead of requiring Administrator rights. I'll look into upstreaming those modifications.
The
FileLoader
modification fixes this:7687ce84ed/src/skel/crossplatform.cpp (L172-L173)
I haven't tested/used relocability with miles yet.
It will probaby need to be modified a bit because the
mss32.dll
won't be available inre3.exe
folder.By not defining
RELOCATABLE
, this feature is not enabled.