└── README.md /README.md: -------------------------------------------------------------------------------- 1 | README below copied from 2 | 3 | This repo contains a repack of the porting which inludes all the GTA III game files, you don't need to own the game on PC, just extract the archvive on the 3DS and play. 4 | 5 | - [re3-3ds-Repack.tar.xz](https://github.com/GNU-Pattor-Team/re3-3DS/releases/latest) 6 | 7 | --- 8 | 9 | ## Intro 10 | 11 | This is a WIP port of the re3 project to nintendo 3ds. 12 | Only new 3ds is supported. An old 3ds port might be possible but I'm not going to try. 13 | This release is more suited for developers as I haven't really made anything convenient or easy. 14 | 15 | There are four seperate 3dsx files: 16 | re3.3dsx, re3-stereo.3dsx, 17 | re3-txd.3dsx, re3-stereo-txd.3dsx. 18 | 19 | bonus files: 20 | miami.3ds miami-stereo.3dsx. 21 | 22 | The re3-*-txd builds do texture compression on your 3DS and generate a TXD.IMG / TXD.DIR. 23 | The vanilla builds re3.3dsx, re3-stereo.3dsx assume you have converted the game files to a native format using txdcnv (provided). 24 | The miami.3ds files haven't really been tested in a while and they only do texture conversion on the 3ds (might take literally a day lmao). 25 | 26 | There is no CIA version. 27 | 28 | GTA3 has reached a certain level of stability that it worth sharing, however consider this an alpha WIP. 29 | Vice City is also working, but has more serious bugs. 30 | 31 | ## Caveats/Bugs (many) 32 | 33 | - Menus and loading screens are blurry (easy fix but its not important). 34 | 35 | - Fonts are fucked due to mip-map generation. This is a recent regression from implementing txdcnv. 36 | 37 | - Material FX environment mapping isn't accurate. Cars are very shiny. Shinier than the mobile port :DDD. 38 | 39 | - Dynamic lighting (directional lights) is broken. I think it has to due with floating point accuracy. This has driven me crazy and I've almost given up as it works with every test program I write. 40 | 41 | - Skinned geometry is jagged / glitchy, I suspect it has to do with floating point accuracy. Looks pretty funny though. 42 | 43 | - There is a black roads glitch, which I presume has to do with blending. 44 | 45 | - MP3 playback slows things down (the audio thread runs on the primary app-core). 46 | 47 | - pager/text messaging is unreadable. 48 | 49 | - bottom screen is not in use... yet. 50 | 51 | - I've only play-tested the first third of the game. 52 | 53 | ## Install: 54 | 55 | ### Prerequisites: 56 | - you will need to be able to read instructions. 57 | - you will need the PC version of GTA III. (other versions might work). 58 | 59 | ### Procedure: 60 | Texture conversion: 61 | You need to use txdcnv to convert the game files to native formats. 62 | Create a directory for the output files. 63 | I have only built txdcnv for Linux x86-64, sorry about that, you will have to use re3-txd.3dsx or compile from source. 64 | 65 | ./txdcnv [gta3 root] [output root]. 66 | 67 | The [output root] will now look like: 68 | .: 69 | models txd 70 | 71 | ./models: 72 | fonts.txd generic.txd gta3.img menu.txd particle.txd 73 | frontend.txd gta3.DIR hud.txd MISC.TXD 74 | 75 | ./txd: 76 | LOADSC0.TXD LOADSC15.TXD LOADSC20.TXD LOADSC2.TXD LOADSC8.TXD SPLASH2.TXD 77 | LOADSC10.TXD LOADSC16.TXD LOADSC21.TXD LOADSC3.TXD LOADSC9.TXD SPLASH3.TXD 78 | LOADSC11.TXD LOADSC17.TXD LOADSC22.TXD LOADSC4.TXD mainsc1.txd 79 | LOADSC12.TXD LOADSC18.TXD LOADSC23.TXD LOADSC5.TXD mainsc2.txd 80 | LOADSC13.TXD LOADSC19.TXD LOADSC24.TXD LOADSC6.TXD NEWS.TXD 81 | LOADSC14.TXD LOADSC1.TXD LOADSC25.TXD LOADSC7.TXD SPLASH1.TXD 82 | 83 | Mipmaps are actually 100% necessary. 84 | They drastically improve performance and memory management. 85 | Older versions did this on the 3ds but it took too long. 86 | 87 | ### Updating game directory 88 | 89 | You will overwrite the files in [Game root] with these modified files. 90 | Copy the files from [Output root] to [Game root]. 91 | From (this archive) src/gamefiles copy "data" and "TEXT" to the [Output root]. 92 | This will overwrite PARTICLE.CFG and various GXT files. 93 | 94 | ### 3ds File system 95 | The game files are stored in a hard-coded directory on your 3ds. 96 | Create the directory 'sdmc:/3ds/re3'. (or sdmc:/3ds/miami for VC) 97 | 98 | You can copy the contents of [Game root] to /3ds/re3, 99 | but if your a bit more OCD you only need the following directories: 100 | 101 | sdmc:/3ds/re3/anim 102 | sdmc:/3ds/re3/audio 103 | sdmc:/3ds/re3/data 104 | sdmc:/3ds/re3/models 105 | sdmc:/3ds/re3/mp3 106 | sdmc:/3ds/re3/skins 107 | sdmc:/3ds/re3/txd 108 | 109 | ### Music files 110 | Copy .wav|.mp3 to sdmc:/3ds/re3/mp3. 111 | Sorry .ogg isn't supported, but would be very easy to enable. 112 | 113 | ### Install 3dsx 114 | 115 | Copy re3.3dsx and re3-stereo.3dsx to sdmc:/3ds/ (or anywhere really). 116 | Launch with Homebrew launcher. 117 | 118 | To access the Free-Roam script hold [L, R, dpad-up] in the main menu. 119 | To access the Debug script hold [L, R, dpad-down] in the main menu. 120 | To access the debug menu in-game hold [L, R, dpad-down], then use the touch screen. 121 | 122 | ### Building: 123 | You only need devkitpro / devkitARM. 124 | The Makefile has only been tested on linux (devuan beowulf), but it should work on mingw/msys or cygwin. 125 | I've included all the libraries because devkitpro is a rolling release and I can't 126 | assume that future versions of the libraries won't break the build. Its a pain to manually 127 | check-out each specific version of each library. I have enough trouble with my own regressions. 128 | 129 | Make sure you environment has DEVKITPRO / DEVKITARM. 130 | $ . /etc/profile.d/devkit-env.sh 131 | $ cd re3/build 132 | $ make 133 | 134 | or for stereo set STEREO in your env. 135 | 136 | $ STEREO=1 make 137 | 138 | make upload sends to hb-menu. 139 | make debug call gdb and connects to 10.0.0.2. 140 | 141 | ### Misc notes: 142 | I'm a bit ashamed by my misuse of git. 143 | I haven't committed anything yet and all the new stuff is untracked. 144 | A good starting point for customization is in src/core/config.h. 145 | If you want to enable online texture compression enable TXD_USE_CDIMAGE. 146 | There are two versions of librw in vendor for mono and stereo rendering respectively. 147 | 3ds platform specific code is at src/skel/3ds. 148 | I can't make any promises on updates, I had to force myself to make this release and I'm getting burnt out and need a break. 149 | You should probably build from source, I haven't got the time to test the binaries and I keep making big regressions every time I improve something. 150 | 151 | ## LICENSE? REDISTRIBUTING? 152 | I dunno, the re3 team seems to re3 as public domain(?), but the libraries are GPL. 153 | Feel free to share wherever but I request that if you distribute the source code as well. 154 | At the very least please provide librw's source code, nobody will sue you for that. 155 | 156 | ## DOWNLOAD 157 | - 3DSX: https://mega.nz/file/bd0gyAJZ#3z92A6nL9ZFrjsBfIC7KRmLgL7F0_eKv50SqPNVmfAg 158 | - SOURCE: https://mega.nz/file/bF1UUSoL#S6Eby9ooGC4R6RHCD8zubykULZARnPl0rTyCplrbH-c 159 | --------------------------------------------------------------------------------