mirror of
https://github.com/LostArtefacts/TRX.git
synced 2025-04-28 20:58:07 +03:00
docs: update
This commit is contained in:
parent
dcf3b5b93b
commit
e5c28d5e66
1 changed files with 186 additions and 33 deletions
219
README.md
219
README.md
|
@ -1,32 +1,185 @@
|
||||||
# Tomb1Main
|
# Tomb Raider I: Community Edition
|
||||||
|
|
||||||
This is a dynamic library for the classic Tomb Raider I game (TombATI version).
|
This is an open source implementation of the classic Tomb Raider I game. It was
|
||||||
The purpose of the library is to reimplement all the routines performed by the
|
made by reverse engineering the TombATI / GLRage variant of the original game
|
||||||
game and enhance the gameplay with new options.
|
and replacing proprietary audio/video libraries with open source variants.
|
||||||
|
|
||||||
See the [Tomb Raider Forums
|
See the [Tomb Raider Forums
|
||||||
topic](https://www.tombraiderforums.com/showthread.php?p=8286101).
|
topic](https://www.tombraiderforums.com/showthread.php?p=8286101).
|
||||||
|
|
||||||
This project is inspired by Arsunt's
|
This project was inspired by Arsunt's
|
||||||
[TR2Main](https://github.com/Arsunt/TR2Main/) project.
|
[TR2Main](https://github.com/Arsunt/TR2Main/) project and the legacy name,
|
||||||
|
"Tomb1Main", reflects that.
|
||||||
|
|
||||||
## Installing
|
## Installing
|
||||||
|
|
||||||
1. Get a copy of the latest Tomb1Main release from
|
1. Download the latest Tomb1Main release from the GitHub releases.
|
||||||
[here](https://github.com/rr-/Tomb1Main/releases).
|
https://github.com/rr-/Tomb1Main/releases
|
||||||
2. Unpack the contents to your game directory. Make sure you overwrite existing
|
|
||||||
files (Tomb1Main_config.json5 can be left alone).
|
|
||||||
|
|
||||||
To play the Unfinished Business expansion pack, launch the game with `-gold`
|
2. Unpack the contents to your game directory.
|
||||||
command line switch:
|
Make sure you choose to overwrite existing directories and files
|
||||||
|
(`Tomb1Main_config.json5` can remain).
|
||||||
|
|
||||||
1. Create a shortcut to `tombati.exe`
|
3. (**Steam users / music**) The Steam version of the game does not ship with the
|
||||||
2. Select the newly created shortcut, go to Properties
|
music assets due to the publishers' negligence. If you have previously
|
||||||
3. At the end of the "target" field, append `-gold` so it looks something like
|
installed TombATI, you don't need to do anything. Otherwise you can download
|
||||||
this:
|
the music files from the link below.
|
||||||
```
|
https://mega.nz/file/f9llhQAY#y0RqaMhR4ghtQ-1IFAGbHep_FCmkV8Q66bzdMWVqtuY
|
||||||
(...)\tombati.exe -gold
|
**These assets are not a part of this project.** The legality of these is
|
||||||
```
|
disputable. The most legal way to get the music on PC is to rip the assets
|
||||||
|
yourself from a physical PlayStation disk. TombATI ships with this music by
|
||||||
|
default, which this project chooses not to do.
|
||||||
|
|
||||||
|
4. Launch `Tomb1Main.exe`.
|
||||||
|
|
||||||
|
### Unfinished Business
|
||||||
|
|
||||||
|
1. (**Steam users / Unfinished Business**) The Unfinished Business expansion
|
||||||
|
pack is freeware, however, the Steam version of the game does not ship with
|
||||||
|
it and you'll need to install it separately. If you have previously
|
||||||
|
installed TombATI, you don't need to do anything. Otherwise you can download
|
||||||
|
the expansion pack from the link below.
|
||||||
|
https://mega.nz/file/i8s0BAaD#wy3xyhuaHnco7aJKiKUV3zO6vCe86lLa3W7hWu249-M
|
||||||
|
|
||||||
|
2. Launch the game with `-gold` command line switch. A more detailed instruction:
|
||||||
|
|
||||||
|
1. Create a shortcut to `Tomb1Main.exe`.
|
||||||
|
|
||||||
|
2. Select the newly created shortcut, go to File Properties.
|
||||||
|
|
||||||
|
3. At the end of the "target" field, append `-gold` so it looks something like
|
||||||
|
this:
|
||||||
|
`(...)\Tomb1Main.exe -gold`
|
||||||
|
|
||||||
|
4. Launch the shortcut.
|
||||||
|
|
||||||
|
If you install everything correctly, your game directory should look more or
|
||||||
|
less like this (click to expand):
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<pre>
|
||||||
|
.
|
||||||
|
├── cfg
|
||||||
|
│ ├── Tomb1Main_gameflow.json5
|
||||||
|
│ ├── Tomb1Main_gameflow_ub.json5
|
||||||
|
│ ├── Tomb1Main.json5
|
||||||
|
├── data
|
||||||
|
│ ├── cat.phd
|
||||||
|
│ ├── cred0.pcx
|
||||||
|
│ ├── cred1.pcx
|
||||||
|
│ ├── cred2.pcx
|
||||||
|
│ ├── cred3.pcx
|
||||||
|
│ ├── cut1.phd
|
||||||
|
│ ├── cut2.phd
|
||||||
|
│ ├── cut3.phd
|
||||||
|
│ ├── cut4.phd
|
||||||
|
│ ├── egypt.phd
|
||||||
|
│ ├── eidospc.pcx
|
||||||
|
│ ├── eidospc.png
|
||||||
|
│ ├── end2.phd
|
||||||
|
│ ├── end.pcx
|
||||||
|
│ ├── end.phd
|
||||||
|
│ ├── gym.phd
|
||||||
|
│ ├── install.pcx
|
||||||
|
│ ├── level10a.phd
|
||||||
|
│ ├── level10b.phd
|
||||||
|
│ ├── level10c.phd
|
||||||
|
│ ├── level1.phd
|
||||||
|
│ ├── level2.phd
|
||||||
|
│ ├── level3a.phd
|
||||||
|
│ ├── level3b.phd
|
||||||
|
│ ├── level4.phd
|
||||||
|
│ ├── level5.phd
|
||||||
|
│ ├── level6.phd
|
||||||
|
│ ├── level7a.phd
|
||||||
|
│ ├── level7b.phd
|
||||||
|
│ ├── level8a.phd
|
||||||
|
│ ├── level8b.phd
|
||||||
|
│ ├── level8c.phd
|
||||||
|
│ ├── titleh.pcx
|
||||||
|
│ ├── titleh.png
|
||||||
|
│ ├── titleh_ub.png
|
||||||
|
│ └── title.phd
|
||||||
|
├── fmv
|
||||||
|
│ ├── cafe.rpl
|
||||||
|
│ ├── canyon.rpl
|
||||||
|
│ ├── core.avi
|
||||||
|
│ ├── end.rpl
|
||||||
|
│ ├── escape.rpl
|
||||||
|
│ ├── lift.rpl
|
||||||
|
│ ├── mansion.rpl
|
||||||
|
│ ├── prison.rpl
|
||||||
|
│ ├── pyramid.rpl
|
||||||
|
│ ├── snow.rpl
|
||||||
|
│ └── vision.rpl
|
||||||
|
├── music
|
||||||
|
│ ├── track02.flac
|
||||||
|
│ ├── track03.flac
|
||||||
|
│ ├── track04.flac
|
||||||
|
│ ├── track05.flac
|
||||||
|
│ ├── track06.flac
|
||||||
|
│ ├── track07.flac
|
||||||
|
│ ├── track08.flac
|
||||||
|
│ ├── track09.flac
|
||||||
|
│ ├── track10.flac
|
||||||
|
│ ├── track11.flac
|
||||||
|
│ ├── track12.flac
|
||||||
|
│ ├── track13.flac
|
||||||
|
│ ├── track14.flac
|
||||||
|
│ ├── track15.flac
|
||||||
|
│ ├── track16.flac
|
||||||
|
│ ├── track17.flac
|
||||||
|
│ ├── track18.flac
|
||||||
|
│ ├── track19.flac
|
||||||
|
│ ├── track20.flac
|
||||||
|
│ ├── track21.flac
|
||||||
|
│ ├── track22.flac
|
||||||
|
│ ├── track23.flac
|
||||||
|
│ ├── track24.flac
|
||||||
|
│ ├── track25.flac
|
||||||
|
│ ├── track26.flac
|
||||||
|
│ ├── track27.flac
|
||||||
|
│ ├── track28.flac
|
||||||
|
│ ├── track29.flac
|
||||||
|
│ ├── track30.flac
|
||||||
|
│ ├── track31.flac
|
||||||
|
│ ├── track32.flac
|
||||||
|
│ ├── track33.flac
|
||||||
|
│ ├── track34.flac
|
||||||
|
│ ├── track35.flac
|
||||||
|
│ ├── track36.flac
|
||||||
|
│ ├── track37.flac
|
||||||
|
│ ├── track38.flac
|
||||||
|
│ ├── track39.flac
|
||||||
|
│ ├── track40.flac
|
||||||
|
│ ├── track41.flac
|
||||||
|
│ ├── track42.flac
|
||||||
|
│ ├── track43.flac
|
||||||
|
│ ├── track44.flac
|
||||||
|
│ ├── track45.flac
|
||||||
|
│ ├── track46.flac
|
||||||
|
│ ├── track47.flac
|
||||||
|
│ ├── track48.flac
|
||||||
|
│ ├── track49.flac
|
||||||
|
│ ├── track50.flac
|
||||||
|
│ ├── track51.flac
|
||||||
|
│ ├── track52.flac
|
||||||
|
│ ├── track53.flac
|
||||||
|
│ ├── track54.flac
|
||||||
|
│ ├── track55.flac
|
||||||
|
│ ├── track56.flac
|
||||||
|
│ ├── track57.flac
|
||||||
|
│ ├── track58.flac
|
||||||
|
│ ├── track59.flac
|
||||||
|
│ └── track60.flac
|
||||||
|
├── shaders
|
||||||
|
│ ├── 2d.fsh
|
||||||
|
│ ├── 2d.vsh
|
||||||
|
│ ├── 3d.fsh
|
||||||
|
│ └── 3d.vsh
|
||||||
|
├── Tomb1Main.exe
|
||||||
|
</pre>
|
||||||
|
</details>
|
||||||
|
|
||||||
## Configuring
|
## Configuring
|
||||||
|
|
||||||
|
@ -94,6 +247,8 @@ Not all options are turned on by default. Refer to `Tomb1Main.json5` for details
|
||||||
- added per-level customizable fog distance
|
- added per-level customizable fog distance
|
||||||
- added adjustable in-game brightness
|
- added adjustable in-game brightness
|
||||||
- added .jpeg/.png screenshots
|
- added .jpeg/.png screenshots
|
||||||
|
- added support for HD FMVs
|
||||||
|
- added fanmade 16:9 menu backgrounds
|
||||||
- changed internal game memory limit from 3.5 MB to 16 MB
|
- changed internal game memory limit from 3.5 MB to 16 MB
|
||||||
- changed moveable limit from 256 to 10240
|
- changed moveable limit from 256 to 10240
|
||||||
- changed maximum textures from 2048 to 8192
|
- changed maximum textures from 2048 to 8192
|
||||||
|
@ -163,27 +318,25 @@ Not all options are turned on by default. Refer to `Tomb1Main.json5` for details
|
||||||
|
|
||||||
4. **Can I play this on Mac, Linux, Android...?**
|
4. **Can I play this on Mac, Linux, Android...?**
|
||||||
|
|
||||||
Currently only Windows version is available, but there is some ongoing work
|
No promises here, but the game is now playable with wine (including sound
|
||||||
towards reducing the amount of Windows-only code.
|
and music) and there is planned work towards reducing the amount of
|
||||||
|
Windows-only code.
|
||||||
5. **Do I really need to install this TombATI patch? Why not have just the .exe?**
|
|
||||||
|
|
||||||
We're currently on it! :D
|
|
||||||
|
|
||||||
## Current road map
|
## Current road map
|
||||||
|
|
||||||
Note: this section may be subject to change.
|
Note: this section may be subject to change.
|
||||||
|
|
||||||
- [x] Reverse engineer the entire game - done!
|
- [x] Reverse engineer the main game module
|
||||||
- [ ] Break off TombATI, ship our own .EXE rather than a .DLL
|
- [x] Integrate the glrage patch
|
||||||
- [x] Integrate glrage with Tomb1Main
|
- [x] Replace the proprietary music player with libavcodec and SDL
|
||||||
- [x] Replace the music player (`winmm.dll` / `libzplay.dll`) with libavcodec and SDL
|
- [x] Replace the proprietary FMV player with libavcodec and SDL
|
||||||
- [x] Replace the FMV player (`Dec130.dll`, `Edec.dll`, `Winplay.dll`, `Winsdec.dll` and `Winstr.dll`) with libavcodec and SDL
|
- [x] Break off TombATI, ship our own .EXE rather than a .DLL
|
||||||
- [ ] Test for performance and crash resilience
|
|
||||||
- [ ] 2.0
|
|
||||||
- [ ] Work on cross platform builds
|
- [ ] Work on cross platform builds
|
||||||
- [x] Replace the sample player (DirectSound) with libavcodec and SDL
|
- [x] Port DirectSound to libavcodec and SDL
|
||||||
|
- [x] Port WinMM to libavcodec and SDL
|
||||||
- [ ] Port DirectInput to SDL
|
- [ ] Port DirectInput to SDL
|
||||||
|
- [ ] Replace wgl_ext.h with cross platform variant
|
||||||
|
- [ ] Remove HWND and HINSTANCE usages
|
||||||
- [ ] ...
|
- [ ] ...
|
||||||
- [ ] Test for performance and crash resilience
|
- [ ] Test for performance and crash resilience
|
||||||
- [ ] 3.0
|
- [ ] 3.0
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue