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
217
README.md
217
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).
|
||||
The purpose of the library is to reimplement all the routines performed by the
|
||||
game and enhance the gameplay with new options.
|
||||
This is an open source implementation of the classic Tomb Raider I game. It was
|
||||
made by reverse engineering the TombATI / GLRage variant of the original game
|
||||
and replacing proprietary audio/video libraries with open source variants.
|
||||
|
||||
See the [Tomb Raider Forums
|
||||
topic](https://www.tombraiderforums.com/showthread.php?p=8286101).
|
||||
|
||||
This project is inspired by Arsunt's
|
||||
[TR2Main](https://github.com/Arsunt/TR2Main/) project.
|
||||
This project was inspired by Arsunt's
|
||||
[TR2Main](https://github.com/Arsunt/TR2Main/) project and the legacy name,
|
||||
"Tomb1Main", reflects that.
|
||||
|
||||
## Installing
|
||||
|
||||
1. Get a copy of the latest Tomb1Main release from
|
||||
[here](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).
|
||||
1. Download the latest Tomb1Main release from the GitHub releases.
|
||||
https://github.com/rr-/Tomb1Main/releases
|
||||
|
||||
To play the Unfinished Business expansion pack, launch the game with `-gold`
|
||||
command line switch:
|
||||
2. Unpack the contents to your game directory.
|
||||
Make sure you choose to overwrite existing directories and files
|
||||
(`Tomb1Main_config.json5` can remain).
|
||||
|
||||
1. Create a shortcut to `tombati.exe`
|
||||
2. Select the newly created shortcut, go to Properties
|
||||
3. At the end of the "target" field, append `-gold` so it looks something like
|
||||
3. (**Steam users / music**) The Steam version of the game does not ship with the
|
||||
music assets due to the publishers' negligence. If you have previously
|
||||
installed TombATI, you don't need to do anything. Otherwise you can download
|
||||
the music files from the link below.
|
||||
https://mega.nz/file/f9llhQAY#y0RqaMhR4ghtQ-1IFAGbHep_FCmkV8Q66bzdMWVqtuY
|
||||
**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:
|
||||
```
|
||||
(...)\tombati.exe -gold
|
||||
```
|
||||
`(...)\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
|
||||
|
||||
|
@ -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 adjustable in-game brightness
|
||||
- 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 moveable limit from 256 to 10240
|
||||
- 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...?**
|
||||
|
||||
Currently only Windows version is available, but there is some ongoing 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
|
||||
No promises here, but the game is now playable with wine (including sound
|
||||
and music) and there is planned work towards reducing the amount of
|
||||
Windows-only code.
|
||||
|
||||
## Current road map
|
||||
|
||||
Note: this section may be subject to change.
|
||||
|
||||
- [x] Reverse engineer the entire game - done!
|
||||
- [ ] Break off TombATI, ship our own .EXE rather than a .DLL
|
||||
- [x] Integrate glrage with Tomb1Main
|
||||
- [x] Replace the music player (`winmm.dll` / `libzplay.dll`) with libavcodec and SDL
|
||||
- [x] Replace the FMV player (`Dec130.dll`, `Edec.dll`, `Winplay.dll`, `Winsdec.dll` and `Winstr.dll`) with libavcodec and SDL
|
||||
- [ ] Test for performance and crash resilience
|
||||
- [ ] 2.0
|
||||
- [x] Reverse engineer the main game module
|
||||
- [x] Integrate the glrage patch
|
||||
- [x] Replace the proprietary music player with libavcodec and SDL
|
||||
- [x] Replace the proprietary FMV player with libavcodec and SDL
|
||||
- [x] Break off TombATI, ship our own .EXE rather than a .DLL
|
||||
- [ ] 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
|
||||
- [ ] Replace wgl_ext.h with cross platform variant
|
||||
- [ ] Remove HWND and HINSTANCE usages
|
||||
- [ ] ...
|
||||
- [ ] Test for performance and crash resilience
|
||||
- [ ] 3.0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue