Northfear / fallout2-ce-vita

Open source Fallout 2
Other
66 stars 2 forks source link

Fallout 2 Community Edition port for PS Vita

Install

Download fallout2-ce.vpk file and install it to your PS Vita.

Copy master.dat, critter.dat, patch000.dat, data and sound folders from the installed Fallout 2 game folder into to ux0:data/fallout2/. Copy fallout2.cfg too, if you're using non-english Fallout 2 version (or make sure that language setting is properly set in it (language=german, language=french, etc)).

FdFix plugin is required for proper suspend/resume support.

Building

Prerequisites

Build

mkdir build && cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=$VITASDK/share/vita.toolchain.cmake -DCMAKE_BUILD_TYPE=None
make

Port info

Controls

Touchpad controls

You can change the control mode of front or rear touchpad by editing ux0:data/fallout2/f2_res.ini and changing FRONT_TOUCH_MODE and REAR_TOUCH_MODE parameters.

Following touchpad modes are supported:

0 - Touchpad disabled

1 - Direct control (front touchpad only)

2 - Trackpad control

In trackpad control mode you can use double tap to "click" left mouse button in the current cursor position and triple tap to "click" right mouse button.

Other

You can change the game resolution by editing ux0:data/fallout2/f2_res.ini file and modifying SCR_WIDTH and SCR_HEIGHT parameters. Recommended resolutions are 640x480, 848x480 and 960x544.

Cursor speed can be changed with MOUSE SENSITIVITY slider in game preferences.

Fallout 2 CE is still in early stages of development, so all kinds of bugs and crashes are to be expected.

Savegames can get corrupted sometimes, so you should try saving on the different save slots to avoid losing the game progress. Rewriting the "corrupted" savegame slot might break the new savegame too. Corrupted save folder from the ux0:data/fallout2/data/SAVEGAME needs to be deleted before it's reused again.

Another Fallout 2 CE port for PS Vita (functionally the same except for different controls): https://github.com/isage/fallout2-ce

Thanks to @isage and aforementioned F2 port for help with figuring out the save game bug.

Fallout 2 Community Edition

Fallout 2 Community Edition is a fully working re-implementation of Fallout 2, with the same original gameplay, engine bugfixes, and some quality of life improvements, that works (mostly) hassle-free on multiple platforms.

Popular Fallout 2 total conversion mods are partially supported. Original versions of Nevada and Sonora (that do not rely on extended features provided by Sfall) likely work, although there is no complete walkthrough confirmation yet. Fallout 2 Restoration Project, Fallout Et Tu and Olympus 2207 are not yet supported. Other mods (particularly Resurrection and Yesterday) are not tested.

There is also Fallout Community Edition.

Installation

You must own the game to play. Purchase your copy on GOG or Steam. Download latest release or build from source. You can also check latest debug build intended for testers.

Windows

Download and copy fallout2-ce.exe to your Fallout2 folder. It serves as a drop-in replacement for fallout2.exe.

Linux

$ sudo apt install libsdl2-2.0-0

macOS

NOTE: macOS 10.11 (El Capitan) or higher is required. Runs natively on Intel-based Macs and Apple Silicon.

Android

NOTE: Fallout 2 was designed with mouse in mind. There are many controls that require precise cursor positioning, which is not possible with fingers. Current control scheme resembles trackpad usage:

  • One finger moves mouse cursor around.
  • Tap one finger for left mouse click.
  • Tap two fingers for right mouse click (switches mouse cursor mode).
  • Move two fingers to scroll current view (map view, worldmap view, inventory scrollers).

NOTE: From Android standpoint release and debug builds are different apps. Both apps require their own copy of game assets and have their own savegames. This is intentional. As a gamer just stick with release version and check for updates.

iOS

NOTE: See Android note on controls.

Configuration

The main configuration file is fallout2.cfg. There are several important settings you might need to adjust for your installation. Depending on your Fallout distribution main game assets master.dat, critter.dat, patch000.dat, and data folder might be either all lowercased, or all uppercased. You can either update master_dat, critter_dat, master_patches and critter_patches settings to match your file names, or rename files to match entries in your fallout2.cfg.

The sound folder (with music folder inside) might be located either in data folder, or be in the Fallout folder. Update music_path1 setting to match your hierarchy, usually it's data/sound/music/ or sound/music/. Make sure it matches your path exactly (so it might be SOUND/MUSIC/ if you've installed Fallout from CD). Music files themselves (with ACM extension) should be all uppercased, regardless of sound and music folders.

The second configuration file is f2_res.ini. Use it to change game window size and enable/disable fullscreen mode.

[MAIN]
SCR_WIDTH=1280
SCR_HEIGHT=720
WINDOWED=1

Recommendations:

In time this stuff will receive in-game interface, right now you have to do it manually.

The third configuration file is ddraw.ini (part of Sfall). There are dozens of options that adjust or override engine behaviour and gameplay mechanics. This file is intended for modders and advanced users. Currently only a small subset of these settings are actually implemented.

Contributing

Integrating Sfall goodies is the top priority. Quality of life updates are OK too. Please no large scale refactorings at this time as we need to reconcile changes from Reference Edition, which will make this process slow and error-prone. In any case open up an issue with your suggestion or to notify other people that something is being worked on.

Intergrating Sfall

There are literally hundreds if not thousands of fixes and features in sfall. I guess not all of them are needed in Community Edition, but for the sake of compatibility with big mods out there, let's integrate them all.

License

The source code is this repository is available under the Sustainable Use License.