Cyphesis-C++
Cyphesis is a WorldForge server suitable running small games. It is also designed by be used as an AI subsystem in a network of distributed servers. It includes a terrain engine based on the Mercator library, a persistence system based on PostgreSQL, and an AI engine using goal trees implemented in Python. It is the server used in most current WorldForge games.
Current releases of cyphesis use the re-written C++ core, based on the design of the original python core.
Download
The latest version is 0.6.0, which was released on Sunday the 11th of November 2012. It can be downloaded from the WorldForge download site using the links below.
To be notified of future releases by email, use the freshmeat subscription service. You can find a complete history of cyphesis releases by going to the Freshmeat.net homepage for cyphesis.
Firewall instructions - making your server accessible
- TCP 6767
- UDP 8453
- The persistent server ruleset can now be fully managed from clients.
- The administrative security model has been improved.
- The test suite has been expanded massively.
- Lots of bugs have been fixed.
- Alistair Riddoch (Current Maintainer)
- Aloril (Original Python prototype)
- Python
- PostgreSQL
- libsigc++
- GNU Readline
- termcap
- Home
- -
- About
- -
- Introduction
- -
- FAQ
- -
- Team
- -
- Newbie Guide
- -
- Getting Started
- Editing Guide
- -
- Edit
- -
- Manage
- -
- New Page
- -
- Changes
- -
- Map
- -
- Password
- -
- Deprecation
It is quite likely that once you get a server running, you will not see it in the list of running servers on the website, This is because cyphesis receives TCP network connections on port 6767, and if this port is not accessible then it will not be possible for other locations to connect, or display your server on their lists. In order for people to get access, you will have to ensure port 6767 is enabled on the firewall on the computer where cyphesis is running, and on any network devices the computer may be connected to. If you are connected to the internet using a router or gateway connected to your phone or cable line, you will need to change the settings of the router to allow connections on port 6767 of your computer. Cyphesis contacts the list of running servers on UDP port 8453, but this should work on most networks without you having to do anything. If you cannot see you server or its IP address on the list of runing servers even after you have made sure TCP port 6767 is accessible, you may need to configure your network and server to ensure UDP communication to and from report port 8453 is permitted.
It is possible you want to connect to your own server without making it accessible to the rest of the world, to experiment with world building or scripting, but you can't easily connect because it is not in the server list. If you are running the server on the same computer as you are running ember or sear, you can connect by specifying the hostame "localhost". If you need to connect to a different computer on your local network, you will need to know the name or IP address of that computer to give as the hostname, and it also may be necessary to modify the firewall settings of the server computer to allow connections on port 6767.
Changes in the latest release:
Building your own World
Authors
Compiling
In order to build cyphesis you will need to install a number of WorldForge libraries. It is recommended that you build them in the following order:
The following other software packages are required to build and run cyphesis:
Git Source
The latest source is available from our git server. The git URL is git://git.worldforge.org/cyphesis.git and you can clone in the normal way. If you are not familiar with git, try reading a git tutorial, or see the information on our git page.
Old Cyphesis Information
Cyphesis AI/ALife engine tries to achieve 'live' virtual world where NPCs have ambitions. It's core is written in C++ for optimal performance, but most of the interesting functionality is written in Python.
Python tutorial links here
| Cyphesis Homepage | General Cyphesis related things |
| Download | Latest releases. |
| TODO list | List of things where help is needed. It can be found in CVS. |
| Newbies | If you're new to Cyphesis and want to learn |
| Current Atlas | definition of the Atlas (XML) protocol |
| Old pages | An old protocol Cyphesis once used (was replaced with Atlas) |
| Cyphesis Development March 99 | Article about architecture in Cyphesis |
| Meetings | Cyphesis meetings in IRC |
| Links | Links to stuff used in Cyphesis |
| World | The Cyphesis world's physical laws and forces |
| Developer documentation and diagrams | Documentation |