Freeciv

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Freeciv
Freeciv Web Logo.png
'cause civilization should be free
Freeciv-2.1.0-beta3-sdl slack11.0.png
Freeciv 2.1.0-beta3, with the SDL client
Developer(s) The Freeciv project
Initial release 5 January 1996; 18 years ago (1996-01-05)
Stable release 2.4.3 + 2.3.5 / 12 August 2014; 2 months ago (2014-08-12)
Development status Active
Written in C, Lua
Operating system Unix-like, Windows, more
Available in 33 languages (some incomplete)
Type Turn-based strategy video games
License GPLv2
Website http://www.freeciv.org/

Freeciv is a single, and multiplayer, turn-based strategy game for workstations and personal computers inspired by the proprietary Sid Meier's Civilization series. It is available for most desktop computer operating systems. Released under the GNU General Public License, Freeciv is free and open source software. The game's default settings are closest to Civilization II, in both gameplay and graphics (including the units and the isometric grid).

Players take the role of tribal leaders in 4000 B.C. who must guide their peoples through the centuries. Over time, new technologies are discovered, which allow the construction of new city buildings and the deployment of new units. Players can wage war on one another or form diplomatic relationships.

The game ends when one civilization has eradicated all others or accomplished the goal of space colonization, or at a given deadline. If more than one civilization remains at the deadline, the player with the highest score wins. Points are awarded for the size of a civilization, its wealth, and cultural and scientific advances.

History[edit]

At the Computer Science department at Aarhus University, three students, avid players of XPilot and of Sid Meier's Civilization, which was a stand-alone PC game for MS-DOS, decided to find out whether the two could be fused into an X-based multiplayer Civilization-like strategy game.[1] The students—Peter Unold, Claus Leth Gregersen and Allan Ove Kjeldbjerg—started development in November 1995; the first playable version was released in January, 1996, with bugfixing and small enhancements until April.[2][3] The rules of the game were close to Civilization, while the client/server architecture was basically that of XPilot.

A Freeciv game with full world map revealed (Freeciv version 1.11.5, GTK+ client, tinydent tileset, islands map generator).

For the developers, Freeciv 1.0 was a successful proof of concept, but a rather boring game, so they went back to XPilot. But Freeciv was already playable and addictive enough to pick up other students as players, bugfixers and feature extenders.[4] It was useful enough to be picked up by popular Linux distributions, e.g. Debian.[5] Designed to be portable, it was ported to many platforms, which helped its survival.

In 1998, computer players were added[6] that could soon beat newcomers to the game with ease, using only minor forms of cheating. The game grew in popularity. A public server was installed that hosted games permanently, archiving them and publishing a post-game analysis webpage including per-player statistics and an animated map replay.[7][8][9]

Subsequent 1.x releases improved the GUI, improved the gameplay, and added many small features, without causing a major change to how the game was best played. Incessant city building turned out to be a critical success factor; developing larger cities did not appear worthwhile. As many regular players reached excellent gaming skills, diplomacy became essential, so team games slowly started to replace free-for-all games from around 2002.

Version 2.0, released in 2005, changed the game significantly: by modifying various costs and benefits and adding some new game elements it made it worthwhile for players to develop only a few large cities, full trade routes, and advanced technologies. This necessitated a distinct phase of rapturing under relatively peaceful conditions; hence, games were almost always played in teams and typically took longer to finish when compared to 1.x games.

In 2006 TCP and UDP port number 5556 was assigned to Freeciv by IANA.[10]

Freeciv is described as an example in The Art of Unix Programming.[11] Some studies and courses use Freeciv as a platform for experimenting with the design and programming of intelligent agents.[12][13][14][15][16]

Design[edit]

hex tileset in version 2.0

Freeciv is very configurable, down to the specific rules, so it can be played in Freeciv (default) mode, Civilization mode, Civilization II mode, or a custom mode. One or several players act as game administrators and can configure the game rules. Typically modified rules are:

  • Number of players required before the game can be started. The maximum number of players is 126 in the latest version of Freeciv.
  • Speed of technological development
  • Whether there should be computer controlled players
  • Whether (computer controlled) barbarians should invade player settlements
  • How close cities can be built to one another
  • How continents and islands are generated and distributed over the map
  • The map size, where the maximum map size is 2,048,000 map tiles (128,000 before 2.4.0)
  • Map topology (rectangular or hexagonal tiling; whether it wraps horizontally and/or vertically)

In order to play a game of Freeciv, a user must start up a Freeciv client and connect it to a Freeciv server. Initially, the server is in pre-game phase; in this phase, clients can connect and game configuration parameters can be changed. At some point, the server may be ordered to start a game; in response, it creates game players (nations) and the game map, and assigns every player to either a Freeciv client or a computer player, as specified by the configuration. From that point on, the game will run until it ends or is terminated; the server can never get back into pre-game state.

The user can also start a game directly from the client: this automatically starts a Freeciv server, connects to it and starts the game.

Features[edit]

Simplified Chinese in version 2.1

Freeciv's graphics system is configurable: originally, map display was always in overhead mode (like in Civ I),[17] isometric mode (like in Civ II) and optionally hexagonal tiling (like in Civ V) were added later. In both modes, look can be further customized by switching to an alternative set of graphics (called a tileset). The sounds can be replaced as well.

Freeciv supports human-to-human multiplayer gameplay and artificial intelligence (AI) computer players. While the game is turn based, human players move simultaneously. The AI players move separately, partly at the start of a turn, partly at the end.

In releases before 2.0, AI players could not engage in diplomatic relationships with human players. Under the current release, AI players will engage in a very predictable, rules-based diplomacy.

Version 2.2.0 includes a map editor, termed Civworld. It can create new scenarios, as well as edit the map currently being played. Basic scripting is available with Freeciv, but is not available in Civworld.[18]

There are different clients available SDL, GTK+ (version3) and Xaw3D[19]

Version 2.3 increases the limit of players from 30 to 126.

Availability[edit]

Freeciv.net web client running on browser
Greatturn Earth World rendering - match GT05
Greatturn registration interface
Greatturn voting system

Originally developed on IRIX, Freeciv has been ported to many different operating systems: it is distributed with many Linux distributions, offers installers for Microsoft Windows, and has been known to run on Mac OS X, MorphOS, Solaris, Ultrix, QNX, OS/2, Cygwin, AmigaOS, AROS, RISC OS, Maemo, ZETA, SkyOS, various BSDs, and smartphones and tablets running Android.[20]

As of version 2.4 Mac OS X and Windows versions older than Windows XP are not more supported.

Ports and variants[edit]

Freeciv-web[edit]

Freeciv-web is a version of Freeciv playable online in any modern web browser. The game is a fork of the Freeciv project, with the goal of redesigning the desktop game into a version which can be played online. The game's default settings are closest to Civilization II, both in gameplay and graphics (including the units and the isometric grid). The proposal to create a web-version of Freeciv was made 6 April 2007 on the Freeciv mailing lists, and documented on the Freeciv.org wiki.[21]

Freeciv-web is free and open source software. The Freeciv C server is released under the GNU General Public License, while the Freeciv-web client is released under the GNU Affero General Public License. Freeciv-web supports human-to-human multiplayer gameplay and artificial intelligence (AI) computer players. Its features are similar to the Freeciv C client, although not all of the user-interface has been ported from the C client yet.

Freeciv-web can be played online at play.freeciv.org.[22] It was previously known and available at Freeciv.net.[23] All the features required to play a full game of Freeciv are in place, including rendering of an isometric map, technology research, and many dialogs for managing cities, units and other players. The game also supports scenario-games, and includes maps of the world, North America, France, Italy, Japan and the Iberian peninsula. While the game is turn based, human players move simultaneously. The AI players move separately, partly at the start of a turn, partly at the end.

Freeciv-web can be played in any web browser which supports the HTML5 standards. In particular, the game uses the Canvas element and WebSocket which are part of the HTML 5 standard.[24] Unlike many other browser-based online games, it does not depend on the proprietary Flash plug-in. Freeciv-web is supported by Mozilla Firefox, Google Chrome, Opera, Safari and Internet Explorer. The canvas support in Freeciv-web has been used to benchmark HTML5 canvas performance.[25]

Longturn and Greatturn[edit]

Freeciv Longturn and Greatturn are specialized extensions of Freeciv featuring daylong game turns with large amounts of human opponents per map, allowing for optimal timing to build up strategic plans and readapt them to the circumstances of each turn. Matches can last anytime from a few weeks to months, and commonly involve 20 to 30 players in each one.[26][27][28]

Longturn's first game, now called LT0, started around 2004 on the Polish Civilization fanpage civ.org.pl. It was decided that the game is a bit too slow paced, so a new "3X movement" ruleset was devised - basically, all units had their movement points and vision radius tripled.[29] As of September 2014, the latest game was LT33.[30] Greatturn's first game, GT00, started in January 2013. As of September 2014, the most recent game was GT11 and the Greatturn community generally uses "2X movement."[31] Around July 1, 2014, the Greatturn website and servers were taken offline by its administrator. The website and game data were acquired from the previous administrator and the website was restored around September 10, 2014.[32]

Longturn and Greatturn are strongly focused on online communication. For example, Greatturn provides a website where each player can create and manage a personal private forum and select the membership allowed to access it for reading or writing messages. This infrastructure paves the ground for maximal cooperation between players allowing the arrangement of complex tactics and diplomacy.

Contrarily to the classic Freeciv, the settings of each match are not determined from within the server hosting the match. Rather, in Greatturn any parameter definition or other proposition is published to the website via the Greatturn voting system for public consideration and approbation; this allows everybody to participate to decisions and doesn't force polls to conclude in a rush. In Longturn, although a polls system was previously used, changes to settings or rulesets are now discussed in the Longturn forum.[33]

References[edit]

  1. ^ "Freeciv:In the Beginning". Freeciv.wikia.com. 2007-01-19. Retrieved 2009-04-14. 
  2. ^ "Freeciv 1.0a source code (1996)]; see DESIGN". 
  3. ^ "Freeciv 1.0k source code (1996); see CHANGES". 
  4. ^ "''Building Freeciv: An Open Source Strategy Game'', by Howard Wen, on linuxdevcenter.com, Nov 21, 2001". Linuxdevcenter.com. Retrieved 2009-04-14. 
  5. ^ "the Debian change log for Freeciv". Retrieved 2009-04-14. 
  6. ^ "README.AI (r4421)". 
  7. ^ "Pubserver". Retrieved 2011-11-28. 
  8. ^ "old snapshots of civserver.freeciv.org (archive.org Wayback Machine)". Retrieved 2011-11-29. 
  9. ^ "old snapshots of pubserver.freeciv.org archive (archive.org Wayback Machine)". Retrieved 2011-11-29. 
  10. ^ "Service Name and Transport Protocol Port Number Registry". IANA. 2006-01. Retrieved 2014.  Check date values in: |date= (help)
  11. ^ Eric S. Raymond (2003). "Case Study: Freeciv Data Files". The Art of Unix Programming. faqs.org. chapters 6+7. ISBN 0-13-142901-9. Retrieved 2014-01-26. 
  12. ^ Ashok K. Goel; Joshua Jones (2011). "Metareasoning for Self-Adaptation in Intelligent Agents". Metareasoning - Thinking about thinking. Chapter 10. 
  13. ^ Patrick Ulam; Joshua Jones; Ashok K. Goel (2008). "Combining Model-Based Meta-Reasoning and Reinforcement Learning for Adapting Game Playing Agents". 
  14. ^ Ian Watson; Damir Azhar; Yachu Yang; Wei Pan; Gary Chen (2005). "Optimization in Strategy Games: Using Genetic Algorithms to Optimize City Development in FreeCiv". 
  15. ^ Brian Schwab (2009). AI Game Engine Programming. pp. 234–240. 
  16. ^ T. Lau, University of Washington (1999). "CSE 590AG: Applications of Artificial Intelligence". 
  17. ^ "a review on Free Games Net (1998)". Free-games-net.com. Retrieved 2009-04-14. 
  18. ^ "Freeciv Editor Page". Wikia. Retrieved 2010-02-23. 
  19. ^ "Debian -- Package Search Results -- freeciv-client-". 
  20. ^ "Freeciv". Google play. 
  21. ^ "Freeciv web client documentation on freeciv.wikia.org.". The Freeciv Project. Retrieved 2010-02-14. 
  22. ^ "Play.freeciv.org". Freeciv.org. Retrieved 2013-05-09. 
  23. ^ Freeciv.net, archived from the original on 2011-07-23 
  24. ^ "Freeciv.net on canvasdemos.com". canvasdemos.com. 2010-01-19. 
  25. ^ "Freeciv As Benchmark of HTML5 Canvas Javascript Performance". Slashdot.org. 2010-01-28. 
  26. ^ "Greatturn presentation page". Archived from the original on 2014-05-17. 
  27. ^ "Greatturn introduction (Spanish)". 
  28. ^ "Longturn website". 
  29. ^ "Longturn introduction page". 
  30. ^ "Longturn games list". 
  31. ^ "Greatturn match archive". Archived from the original on 2014-03-15. [dead link]
  32. ^ ""Under New Management" - Civland Freeciv Forum". 2014-09-10. Retrieved 2014. 
  33. ^ ""No more polls" - Longturn forum". 

External links[edit]