forked from freeciv/freeciv-web
-
Notifications
You must be signed in to change notification settings - Fork 0
Freeciv.net is an Open Source strategy game which can be played online against other players, or in single player mode against AI opponents.
License
tvon/freeciv-web
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
THE FREECIV WEB CLIENT ---------------------- This is yet another rewrite of the Freeciv web client, which will make it possible to play Freeciv in your web browser. http://www.freeciv.net This software is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE. Contact: Andreas Røsdal - andrearo@pvv.ntnu.no Overview -------- The Freeciv Web client consists of these components: * freeciv - a fork of the main Freeciv C client and server. * freeciv-proxy - a HTTP proxy which allows web client users to connect to Freeciv civservers. This proxy converts C packets to and from JSON. * freeciv-web - a Java web application for the Freeciv web client. This application is a AJAX application which consists of HTML, Javascript, images and JSP files which make up the application viewed in each user's web browser. * freeciv-img-extract - extracts the images of the Freeciv tileset, and generates a version for the web. This produces a tileset PNG and Javascript. Run this to sync with the upstream Freeciv SVN repository. * publite2 - a simple way to launch multiple civservers. * freeciv-music - contains music which can be played during the game. System Requirements ------------------- - Resin 4.0.1 - http://www.caucho.com/ - Java 1.6.0 SDK - http://java.sun.com/javase/downloads/index.jsp - Python 2.7 - http://www.python.org/ - Mysql 5.0.x - http://www.mysql.com/ - Maven 2 - http://maven.apache.org/download.html - Probably some Linux distribution. - Firefox - Firebug for debugging - http://getfirebug.com/ - Closure Compiler - http://code.google.com/intl/nb/closure/compiler/ (Bundled in source code, no need to download.) - curl-7.19.7 - http://curl.haxx.se/ - OpenSSL - http://www.openssl.org/ - nginx 0.8.33 - http://nginx.org/ - simplejson 2.1.1 optional: http://pypi.python.org/pypi/simplejson Compiling and running the Freeciv Web client --------------------------------- 1. Install the system requirements. Install Resin in /opt/resin 2. Create mysql database called 'freecivmetaserver' Import mysql dump into a MySQL database from: /publite2/mysqldump.sql.bz2 3. Build and configure freeciv-web. - Edit /freeciv-web/src/main/webapp/freecivmetaserve/php_code/settings.php.dist, rename this file to settings.php, and update values for fcdb_username and fcdb_pw to your MySQL username and password. - Edit /freeciv-web/src/main/webapp/WEB-INF/resin-web.xml.dist, rename this file to resin-web.xml, and update the values for your MySQL database. - Run 'build.sh' in the freeciv-web directory 4. Compile and install Freeciv. This involves running the following commands: cd freeciv ./autogen.sh --enable-client=no make make install (as root user) 5. Start resin with these commands: cd /opt/resin/bin ./resin.sh start 6. Start publite2: Run publite2_single.py in the publite2 directory. 7. Run the freeciv-proxy: Run run.sh in the freeciv-proxy directory. To debug, check the proxy debugging page: http://localhost/civ/status http://localhost:8082/civ/status 8. Start nginx on port 80 as root. 9. Start the web client in your browser: Point your web browser to http://localhost/ 10. Continue to play the game. FIXME: Had to add -lssl when compiling server... - create .awsAuth and change mode like this: chmod 600 .awsAuth Also: Set ulimit -n 65535 in /etc/profile and add some TCP/IP tuning in /etc/sysctrl.conf TODO: ----- - Make goto lines wrap in X direction of the map. - Show city revolt graphics - Show attack animation. - Opera 11 broken in jQuery 1.5.x. - WebGl? - Port to Python 3.2 - Show borders - Saving in the client side. - Show city tile output in city dialog. - Playback of games. - HTML5 Web Sockets.
About
Freeciv.net is an Open Source strategy game which can be played online against other players, or in single player mode against AI opponents.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C 82.3%
- JavaScript 9.5%
- C++ 2.4%
- Python 1.5%
- PHP 1.5%
- Lua 1.4%
- Other 1.4%