-
Notifications
You must be signed in to change notification settings - Fork 32
Porting info
Information and history on the Forsaken port.
More information is also available in the Development area.
Forsaken was developed by Probe Entertainment a division of Acclaim Entertainment in 1995.
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.
It has been ported to cross platform technologies allowing it to run natively on many operating systems and architectures.
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.
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.
Forsaken originally was written for Microsoft Visual Studios but has since then been ported to numerous compilers.
See Compiling.
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.
An OpenGL3 version is also supported with some development efforts being directed towards moving the lighting system and other effects onto the GPU.
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.
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.
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.
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.
An interesting idea that we would like to support is user developed bots.
Much like c-robots and it's descendants.
There is some work towards using Blender for this purpose.