mirror of
https://github.com/perfect-dark-pc-port/perfect_dark.git
synced 2026-10-23 15:52:41 +02:00
Update README.md
This commit is contained in:
1 parent
30b8400d86
commit
368021201b
1 file changed
+39
-11
@@ -2,22 +2,36 @@
|
|||||||
|
|
||||||
This repository contains a work-in-progress port of the [Perfect Dark decompilation](https://github.com/n64decomp/perfect_dark) to modern platforms.
|
This repository contains a work-in-progress port of the [Perfect Dark decompilation](https://github.com/n64decomp/perfect_dark) to modern platforms.
|
||||||
|
|
||||||
To run the port, you must already have a Perfect Dark ROM, specifically the ntsc-final/revision 1 version
|
To run the port, you must already have a Perfect Dark ROM, specifically one of the following:
|
||||||
(md5 `e03b088b6ac9e0080440efed07c1e40f`).
|
* `ntsc-final`/`US V1.1`/`US Rev 1` (md5 `e03b088b6ac9e0080440efed07c1e40f`).
|
||||||
|
**This is the recommended version to use**.
|
||||||
|
Called `NTSC version 8.7 final` on the boot screen.
|
||||||
|
* `ntsc-1.0`/`US V1.0` (md5 `7f4171b0c8d17815be37913f535e4e93`).
|
||||||
|
Technically supported, but not recommended.
|
||||||
|
Called `NTSC version 8.7 final` on the boot screen as well.
|
||||||
|
* `jpn-final` (md5 `538d2b75945eae069b29c46193e74790`).
|
||||||
|
Technically supported, but requires a separate custom-built executable.
|
||||||
|
Called `JPN version 8.9 final` on the boot screen.
|
||||||
|
|
||||||
## Status
|
## Status
|
||||||
|
|
||||||
Currently only 32-bit platforms are supported, namely x86 Windows and Linux.
|
The game is in a mostly functional state, with both singleplayer and split-screen multiplayer modes fully working.
|
||||||
|
There are minor graphics- and gameplay-related issues, and possibly occasional crashes.
|
||||||
|
|
||||||
|
**The following extra features are implemented:**
|
||||||
|
* mouselook;
|
||||||
|
* dual analog controller support;
|
||||||
|
* widescreen resolution support;
|
||||||
|
* configurable field of view;
|
||||||
|
* 60 FPS support, including fixes for some framerate-related issues;
|
||||||
|
* fixes for a couple original bugs and crashes;
|
||||||
|
* basic mod support, currently enough to load a few custom levels;
|
||||||
|
* slightly expanded memory heap size.
|
||||||
|
|
||||||
|
Currently only 32-bit platforms are supported, namely x86 Windows and Linux.
|
||||||
Note that 32-bit binaries will still work on 64-bit versions of those platforms,
|
Note that 32-bit binaries will still work on 64-bit versions of those platforms,
|
||||||
though you might have to install some additional libraries.
|
though you might have to install some additional libraries.
|
||||||
|
|
||||||
The game is in a somewhat functional but probably unstable state.
|
|
||||||
There are major graphical issues, minor audio issues and possibly other issues.
|
|
||||||
|
|
||||||
There are currently no "extra features" implemented
|
|
||||||
except for janky mouselook, arbitrary resolution support (with partial widescreen support), some extra controls
|
|
||||||
and somewhat expanded heap size.
|
|
||||||
|
|
||||||
## Download
|
## Download
|
||||||
|
|
||||||
Latest [automatic builds](https://github.com/fgsfdsfgs/perfect_dark/actions) for supported platforms:
|
Latest [automatic builds](https://github.com/fgsfdsfgs/perfect_dark/actions) for supported platforms:
|
||||||
@@ -26,12 +40,16 @@ Latest [automatic builds](https://github.com/fgsfdsfgs/perfect_dark/actions) for
|
|||||||
|
|
||||||
## Running
|
## Running
|
||||||
|
|
||||||
You must already have a Perfect Dark ROM to run the game, as specified above.
|
You must already have a Perfect Dark ROM to run the game, as specified above.
|
||||||
|
|
||||||
1. Create a directory named `data` next to `pd.exe`.
|
1. Create a directory named `data` next to `pd.exe`.
|
||||||
2. Put your Perfect Dark ROM named `pd.ntsc-final.z64` into it.
|
2. Put your Perfect Dark ROM named `pd.ntsc-final.z64` into it.
|
||||||
3. Run `pd.exe`.
|
3. Run `pd.exe`.
|
||||||
|
|
||||||
|
Additional information can be found in the [wiki](https://github.com/fgsfdsfgs/perfect_dark/wiki).
|
||||||
|
|
||||||
|
A GPU supporting OpenGL 3.0 or above is required to run the port.
|
||||||
|
|
||||||
## Controls
|
## Controls
|
||||||
|
|
||||||
1964GEPD-style and Xbox-style bindings are implemented.
|
1964GEPD-style and Xbox-style bindings are implemented.
|
||||||
@@ -40,6 +58,9 @@ N64 pad buttons X and Y (or `X_BUTTON`, `Y_BUTTON` in the code) refer to the res
|
|||||||
|
|
||||||
Support for one controller, two-stick configurations are enabled for 1.2.
|
Support for one controller, two-stick configurations are enabled for 1.2.
|
||||||
|
|
||||||
|
Note that the mouse only controls player 1.
|
||||||
|
|
||||||
|
Controls can be rebound in `pd.ini`. Default control scheme is as follows:
|
||||||
|
|
||||||
| Action | Keyboard and mouse | Xbox pad | N64 pad |
|
| Action | Keyboard and mouse | Xbox pad | N64 pad |
|
||||||
| - | - | - | - |
|
| - | - | - | - |
|
||||||
@@ -80,6 +101,11 @@ Support for one controller, two-stick configurations are enabled for 1.2.
|
|||||||
Currently only `i686-linux` and `i686-windows` are supported, using `gcc -m32` and `i686-w64-mingw32-gcc` as compilers, respectively.
|
Currently only `i686-linux` and `i686-windows` are supported, using `gcc -m32` and `i686-w64-mingw32-gcc` as compilers, respectively.
|
||||||
Alternate compilers can be specified by passing `TOOLCHAIN=i686-whatever-` as a command line argument.
|
Alternate compilers can be specified by passing `TOOLCHAIN=i686-whatever-` as a command line argument.
|
||||||
|
|
||||||
|
For both platforms you can optionally specify `ROMID=jpn-final` on the `make` command line to build the JPN executable.
|
||||||
|
You will need to provide a `jpn-final` ROM for that, named `pd.jpn-final.z64`.
|
||||||
|
|
||||||
|
It might be possible to build a 32-bit ARM executable, but this has not been tested.
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
* the original [decompilation project](https://github.com/n64decomp/perfect_dark) authors;
|
* the original [decompilation project](https://github.com/n64decomp/perfect_dark) authors;
|
||||||
@@ -87,4 +113,6 @@ Alternate compilers can be specified by passing `TOOLCHAIN=i686-whatever-` as a
|
|||||||
* [sm64-port](https://github.com/sm64-port/sm64-port) authors for the audio mixer and some other changes;
|
* [sm64-port](https://github.com/sm64-port/sm64-port) authors for the audio mixer and some other changes;
|
||||||
* [Ship of Harkinian team](https://github.com/Kenix3/libultraship/tree/main/src/graphic/Fast3D), Emill and MaikelChan for the libultraship version of fast3d that this port uses;
|
* [Ship of Harkinian team](https://github.com/Kenix3/libultraship/tree/main/src/graphic/Fast3D), Emill and MaikelChan for the libultraship version of fast3d that this port uses;
|
||||||
* lieff for [minimp3](https://github.com/lieff/minimp3);
|
* lieff for [minimp3](https://github.com/lieff/minimp3);
|
||||||
|
* Mouse Injector and 1964GEPD authors for some of the 60FPS- and mouselook-related fixes;
|
||||||
|
* everyone who has submitted pull requests and issues to this repository and tested the port;
|
||||||
* probably more I'm forgetting.
|
* probably more I'm forgetting.
|
||||||
Reference in new issue
Block a user