alexbatalov / fallout2-ce

Fallout 2 for modern operating systems
Other
1.66k stars 109 forks source link
c-plus-plus fallout2 game isometric

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.