Freeciv is an open source multiplayer strategy game, released under the GNU General Public License.  The Alpha Centauri Porting Project aims to incorporate features from Firaxis Games' Sid Meier's Alpha CentauriTM.

FreecivAC
Distribution License:  GNU General Public License
Current Stable Version:  1.10.0  * (N.B. May 2000, very old)
Current CVS:  Available here
Latest Freeciv patches:  24th July 2003 *
Hosting:  SourceForge project page
* Start the server with options "-r ./data/smac.serv" or similar.
Copyright © 2000-3 Freeciv Alpha Centauri Porting Team.

Welcome

This is a project to incorporate features from Sid Meier's Alpha Centauri into the Freeciv code-base. FreecivAC is not a game based on Freeciv, nor is it a fork of the Freeciv code. It is simply a collection of improvements and generalisations to the Freeciv source code to enable a SMAC mode (in the default mode it should be indistinguishable from standard Freeciv).

We need help! If you wish to volunteer for anything, subscribe to the mailing list and let us know what you would like to do.

We currently require people to take responisibility for the following aspects:

  • More appropriate in-game graphics.
  • Psi combat.
  • Specialist civilian types (e.g. Librarians, Transcendi).
  • Drone riots (more specifically, nerve stapling).
  • Governors.
  • Alien artifacts.
  • Teaching the AI how to deal with the new generalised rules.
  • Secret Projects.
  • Probe teams.
  • Keeping the freeciv clients (other than the GTK+ client) compatible.
  • Anything else you think we might need...

Already under active development is the code needed for native life-forms, the AC tech tree, social engineering, compound unit types, AC terrain improvements, water bases, generalised improvements and faction borders. These portions are in various stages of completeness.

All the current developers use Linux variants on x86 and Alpha platforms which are therefore semi-officially supported. We are eager to encourage uses of other platforms (notably Solaris and BeOS) to test out this code and let us know whether it works, or fix it and provide the patches.

We would like to see a FreecivAC metaserver, but perhaps the FreecivAC code is a bit too young.

Screenshots of the latest CVS version of FreecivAC:
Government type selection
Design workshop

Further Information

FreecivAC is hosted at SourceForge. Please refer to the FreecivAC project page for file releases, bug tracking, news postings, etc.

A FreecivAC FAQ is being knocked together. In the mean-time you are welcome to join the FreecivAC mailing list.

To subscribe, visit the list subscription page. To post to the list, send mail to freecivac-devel@lists.sourceforge.net.

Bug Submission

FreecivAC is still under heavy development, and certainly far from bug free. At the present time, the only bugs we are really interested in are those which cause crashes. If the stable distribution crashes, then we have missed something. If you find such a bug, please use the bug tracking system to report it. Be sure to include details of your system, the version of FreecivAC that you are using and instructions for reproducing the crash.

Distribution

Freeciv and this derivative are distributed under the GNU General Public License.

The current FreecivAC code is available by CVS. We wouldn't ever guarantee that this code will work correctly, but all the newly added features will be present. To download, follow the commands below:-
  1. Log in to CVS:-
    cvs -d:pserver:anonymous@cvs.freecivac.sourceforge.net:/cvsroot/freecivac login   (when prompted for a password, just press the Enter key)
  2. Obtain the latest code:-
    cvs -z3 -d:pserver:anonymous@cvs.freecivac.sourceforge.net:/cvsroot/freecivac co freecivac

If, on the other hand, you already have checked out the FreecivAC code, the following command (from within the earlier-created freecivac directory) should be sufficient to get an updated copy:-

cvs -z3 update -dP

Alternatively, FreecivAC is available as a set of patches to Freeciv itself. These patches are made periodically against the Freeciv CVS tree, but should also apply without too much modification to later CVS snapshots, available from the Freeciv web site. Note that the patches should work either when applied singly, or all together.

FreecivAC CVS is generally fairly similar or identical to Freeciv CVS plus the most recent set of patches.

The most recent set of patches, below, was made against Freeciv CVS as recently as July 24th, 2003.

AC-base-20030724.patch
FreecivAC support code, documentation, and rulesets.
impr-gen-20030724.patch
Code for generalised improvements.
newcompounds-20030724.patch
Code for compound governments and compound units. N.B. Must be applied after the AC-base and impr-gen patches.
newborders-semifog-20030724.patch (PR#1870)
Converts the "omniscient" borders in Freeciv to "semi-fogged". (See doc/README.borders-semifog.)
calendar-20030724.patch (PR#1871)
Generalised calendars, based on Andi Payn's original patch.

Generalised improvements code is currently (July 24th, 2003) being considered for inclusion into Freeciv proper; to aid in the review process the main patch has been split into a collection of smaller patches. In order for them to apply properly, they should be applied in the same order as listed here. (Patches that have been submitted to the Freeciv bug tracking system are listed with their PR numbers.)

N.B. As this collection of patches is generally more up to date than the complete impr-gen patch, above, you can download a convenience Perl script to apply the lot of them in order here. (You'll need to download this script again, or edit it manually, whenever any of the patches change.)

neweff-implement-update-v11.patch
Adds or removes effects when improvements are built, transferred or sold.
neweff-iterator-v6.patch
Code for iterating over all effects currently active in a given location.
numbuildings-v2.patch
Removes the old Freeciv "must always have the same number of buildings" restriction.
effect-update-defer-v10.patch (PR#1094)
Reduces clientside calculation of effects, by reducing multiple effect updates that occur between turns to only one per turn.
effect-city-bonuses-v14.patch (PR#1143)
Implements happiness, pollution, shield production, trade, tax, science and luxury bonuses for cities.
effect-citydlg-happiness-v4.patch (PR#1144)
Generalises the GTK+ and GTK2 client city dialogs' "Happiness" tab to use ruleset-defined effects.
effect-tile-bonuses-v10.patch
Implements shield production, trade and food bonuses for worked city tiles.
effect-unit-mods-v11.patch
Implements veteran and veteran-after-combat effects, repair (e.g. from Barracks or from the United Nations Wonder) and airlifts.
effect-boost-research-v12.patch
Implements the Give_Imm_Adv and Adv_Parasite effects (e.g. Darwin's Voyage and Great Library).
effect-corrupt-revolt-v5.patch
Implements the Reduce_Corrupt and Revolt_Dist effects (e.g. effect of the Courthouse).
effect-upgrades-v11.patch
Implements the various unit upgrade effects (so covers Leonardo's Workshop).
effect-global-city-v41.patch
Implements some city-specific effects and others that act on a global scale; i.e. Upkeep_Free (A.Smith's), Size_Unlimit (Aqueduct, Sewer), Growth_Food (Granary), Nuke_Proof (SDI), Have_Embassies (Marco Polo), Reveal_Map and Reveal_Cities (Apollo). Also adds full support for the Enable_Space (Apollo) and Enable_Nuke (Manhattan) effects.
effect-combat-v7.patch
Generalises combat by implementing the Unit_Defend and Unit_No_Lose_Pop effects.
effect-govchange-v4.patch
Implements the No_Anarchy and Any_Government government change effects.
impr-gen-readme-v7.patch
Adds a file which briefly explains the structure, features, and limitations of impr-gen.
effect-no-sink-deep-v3.patch
Implements the No_Sink_Deep (Lighthouse) effect.
effect-spy-resistant-v3.patch
Implements the Spy_Resistant (City Walls, Palace) effect.
helpdata-v4.patch
Removes the old hardcoded help texts for the Barracks, Aqueduct/Sewer, and Manhattan Project.
effect-palace-walls-v9.patch
Hacks the current tests for B_PALACE and B_CITY improvements so that they at least use reasonably representative buildings.
destroyed-effects-v20.patch
Preserves the effects of buildings with the "survives" field set, even after the buildings are destroyed (e.g. Apollo, Manhattan). N.B. Incomplete: the server can recover these effects from a savegame, but the client only gets partial information.
effect-unit-v20.patch
Generalises the existing unit class code so that units can be members of multiple classes. A "class" includes the unit movetype and flags, plus user-specified types. Unit types can now use impr-gen effects; thus the old Pikemen/Horse/AEGIS flags, plus the "some governments can build veteran Diplomats" behaviour, are replaced by effects specified in units.ruleset. Finally, initial support is added for impr-gen effects of governments.
effect-nationgov-v11.patch
Extends impr-gen effects to nations and government types.
effect-outside-v10.patch
Adds an "outside" flag to impr-gen effects. This changes the behaviour of some effects; if outside is 0, they affect units within cities only, while if 1, they affect units in the field too. This is also used to change the behaviour of the Science and Tax bonus effects. (Fixes the previously erroneous behaviour of the Great Wall, which increased the defence strength of units in the field, rather than just those in cities.)
effect-cost-v2.patch
Adds Building_Cost and Unit_Cost effects, which alter the cost of building city improvements and units in specific cities.

Old impr-gen patches (no longer pertinent to current CVS) can be found here.

Who to contact

www.freeciv.org FreecivAC Project www.linuxgames.com www.happypenguin.org Hosted by SourceForge Valid HTML 4.01 Transitional

All trademarks on this page are probably owned by their respective companies. You can insert your own favourite disclaimer here.