Skip to content

Porting info

chino edited this page Jan 13, 2013 · 4 revisions

Information and history on the Forsaken port.

More information is also available in the Development area.

History

Forsaken was developed by Probe Entertainment a division of Acclaim Entertainment in 1995.

Present

It is now actively maintained by the active player community.

The code base is a fork of the final patch release with various hidden features exposed, bug fixes, additions and reversals of unpopular changes that appeared in the patch (speed reduction and weapon strength changes).

We acquired the source code August 22nd 2007.

Technologies

It has been ported to cross platform technologies allowing it to run natively on many operating systems and architectures.

Platform / Inputs

The game now communicates with the operating system via SDL, which has a growing list of supported systems:

Windows, MacOSX, Linux, IPhone, the PSP, Syllable, Haiku/BeOS, OpenVMS, WebOS, MorphOS, AmigaOS, and AmigaOS 5.

There is also unofficial ports of SDL to xbox, emscripten, chrome native client, pandora hand held and many others.

Supported Platforms

Forsaken currently only supports Linux, MacOSX, and Windows/Wine.

The community is also responsible for a few patches added to Wine that allowed the original directx6 game to run perfectly!

See Download and Installation.

Building

Forsaken originally was written for Microsoft Visual Studios but has since then been ported to numerous compilers.

See Compiling.

Graphics

Rendering was ported from D3D6 to D3D9 and then OpenGL.

Note: D3D9 versions have not been released in quite some time since our main Developers use MinGW to build from unix systems and the OpenGL versions are in more active development.

See Rendering.

Shaders

An OpenGL3 version is also supported with some development efforts being directed towards moving the lighting system and other effects onto the GPU.

Stereo (3d rendering)

Forsaken now supports rendering in 3d using Anaglyphic (colored) and half resolution tricks. There is development in the works to add full resolution 1080p stereo using hdmi standards.

Audio

The game now uses OpenAL Soft for a cross platform sound API.

Although it's still based on panning and volume control to simulate the 3d environment.

Efforts are in work to soon use OpenAL's built in 3d sound support.

This has many benefits some of which are:

  • surround sound
  • doppler effects
  • environmental effects (under water)

See Sound.

Networking

ProjectX was ported to a custom, peer-to-peer library written on top of Enet.

See Networking for information on the protocol and network packets.

There is also a milestone for pushing the networking to even better performance, stability and security.

Also see the Networking FAQ for information on routers/firewalls.

Bots / AI

There has been some work done on making some better bots and it's at a level that is definitively playable in fact it's commonly added to multiplayer games because it adds some competition.

User Created Bots

An interesting idea that we would like to support is user developed bots.

Much like c-robots and it's descendants.

Level Editor

There is some work towards using Blender for this purpose.

See Level Editor and Modeling Tools

Clone this wiki locally