doc: replace outdated doc with something more appropriate
This commit is contained in:
parent
ea572cb82a
commit
73731fcf8c
2 changed files with 37 additions and 96 deletions
96
README
96
README
|
@ -1,96 +0,0 @@
|
||||||
Legacy Worlds Beta 5 source code
|
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
1. Introduction
|
|
||||||
|
|
||||||
This file contains information regarding the source code release for Legacy
|
|
||||||
Worlds Beta 5 - how the source code is organised and how it may be used.
|
|
||||||
|
|
||||||
For licensing information, please read the COPYING file. For the list of
|
|
||||||
contributors, please read the AUTHORS file. For stuff that could be done
|
|
||||||
considering one had a lot of time to waste, please read the TODO file.
|
|
||||||
|
|
||||||
The official SVN repository for the LWB5 code can be found at:
|
|
||||||
* https://lwb5.svn.deepclone.co.uk (IPv6 users)
|
|
||||||
* https://secure.nocternity.net/deepclone.co.uk/svn/lwb5/ (IPv4 users)
|
|
||||||
|
|
||||||
|
|
||||||
2. Organisation of the source code
|
|
||||||
|
|
||||||
... admin/ Administration interface scripts
|
|
||||||
... ircbot/ IRC bot
|
|
||||||
... ircbot/modules/lw/ LWB5-specific code for the IRC bot
|
|
||||||
... manual/ Source code (as XML) of the LWB5 manual
|
|
||||||
... misc/ Various optional elements
|
|
||||||
... planetgen/ Planet generator source code
|
|
||||||
... scripts/ Scripts that implement most of the game
|
|
||||||
... scripts/game/ Back-end scripts
|
|
||||||
... scripts/lib/ Core library
|
|
||||||
... scripts/site/ Web front-end
|
|
||||||
... site/ Root directory of the public part of the site
|
|
||||||
... site/static/ Images, CSS and JavaScript elements
|
|
||||||
... sql/ Database creation scripts
|
|
||||||
|
|
||||||
|
|
||||||
3. Requirements
|
|
||||||
|
|
||||||
In order to run Legacy Worlds, you will need the following software:
|
|
||||||
|
|
||||||
* Apache + PHP 5.2
|
|
||||||
* (optional) a PHP opcode cache
|
|
||||||
* PostgreSQL 8.3 or higher
|
|
||||||
* the POVRay raytracer (used for planet generation)
|
|
||||||
|
|
||||||
|
|
||||||
4. Installing and running LWB5
|
|
||||||
|
|
||||||
These instructions may be erroneous on some points, as I didn't bother to try
|
|
||||||
and re-install it myself.
|
|
||||||
|
|
||||||
* Set the database users' passwords in sql/00-init.sql
|
|
||||||
|
|
||||||
* (optional) Modify sql/30-beta5.sql to select the games that will be created
|
|
||||||
on initialisation.
|
|
||||||
|
|
||||||
* Create the database by running sql/INSTALL.sql
|
|
||||||
|
|
||||||
* Create an administrative user in the main.account table
|
|
||||||
|
|
||||||
* Create some system users for the various parts of the LWB5 backend:
|
|
||||||
** user "lwbot"; when su'd to, this user should start the IRC bot,
|
|
||||||
** user "lwticks"; when su'd to, this user should start scripts/ticks.php
|
|
||||||
** user "lwproxy"; when su'd to, this user should start scripts/proxycheck.php
|
|
||||||
|
|
||||||
* In addition to the above users, the planet picture generator should run with
|
|
||||||
privileges allowing it to write to subdirectories of site/static/beta5/pics/pl/
|
|
||||||
|
|
||||||
* Modify scripts/config.inc and scripts/legacyworlds.xml
|
|
||||||
** Also modify ircbot/bot.conf to have the bot connect to a server
|
|
||||||
|
|
||||||
* Set up the web server:
|
|
||||||
** the main site should use the site/ directory,
|
|
||||||
** the administration interface should use the admin/ directory; it should be
|
|
||||||
protected using HTTP authentication.
|
|
||||||
|
|
||||||
Once the installation is complete, it is possible to start (most of) the game
|
|
||||||
by running scripts/control.pl with the --start command line argument. However,
|
|
||||||
the planet generator script has to be started manually.
|
|
||||||
|
|
||||||
|
|
||||||
5. The misc/ subdirectory
|
|
||||||
|
|
||||||
The misc/ subdirectory contains two things:
|
|
||||||
* the source code of the MacOS dashboard widget,
|
|
||||||
* the "forums branch" patch.
|
|
||||||
|
|
||||||
The forums branch patch has been created by doing a very quick and dirty merge
|
|
||||||
of an old development branch that was mostly abandoned; it contains some
|
|
||||||
improvements on the core library - notably a class to prepare database queries
|
|
||||||
and some other improvements in the DB query API. Of course, it also includes an
|
|
||||||
incomplete rewrite of the in-game forums.
|
|
||||||
|
|
||||||
Because I had to merge the branches to generate the patch, and because I didn't
|
|
||||||
bother with testing it, the patch is likely to break a lot of things. However
|
|
||||||
it may be a good starting point for improving the LWB5 code. See the TODO file
|
|
||||||
for more information.
|
|
37
README.md
Normal file
37
README.md
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
Running LegacyWorlds Beta 5 in 2025
|
||||||
|
===================================
|
||||||
|
|
||||||
|
This repo contains an attempt at running
|
||||||
|
[LWB5](https://git.nocternity.net/tseeker/lwb5) on a modern system. It is
|
||||||
|
based on Docker Compose, using three containers:
|
||||||
|
|
||||||
|
* a PostgreSQL 17 container for the database,
|
||||||
|
* a container for the game and its administration interface,
|
||||||
|
* a final container that runs the planet picture generator.
|
||||||
|
|
||||||
|
The open proxy scanner as well as the IRC bot were removed as they do not
|
||||||
|
really make sense on the modern internet.
|
||||||
|
|
||||||
|
It is very likely to be broken in some areas because the code is outdated and,
|
||||||
|
while I fixed the most obvious problems, outdated syntax is likely to be hiding
|
||||||
|
in a few other places.
|
||||||
|
|
||||||
|
Running the game
|
||||||
|
----------------
|
||||||
|
|
||||||
|
In order to run LWB5, you have to:
|
||||||
|
- copy `docker/env.example` to `docker/.env` and edit the resulting file,
|
||||||
|
- start the application by running `docker compose up -d` inside the `docker/`
|
||||||
|
directory,
|
||||||
|
- access the administration interface, which will be exposed on port 81,
|
||||||
|
- go to the `Ticks` page in the `Server management` section,
|
||||||
|
- select the `universe` tick for the `beta5` game and run it,
|
||||||
|
- now access the game itself on port 80 and log on using the administrative
|
||||||
|
account configured in the `.env` file,
|
||||||
|
- go to `My account` and join the `Public Beta 5` game,
|
||||||
|
- go to the game's `Admin` page,
|
||||||
|
- click the `Manual update` link and wait.
|
||||||
|
|
||||||
|
Running the `universe` tick will start the planet picture generator. However, it
|
||||||
|
will take a while to run, so you'll see missing planet pictures until it's done
|
||||||
|
running.
|
Loading…
Reference in a new issue