Page 1 of 1

Seltani Development Question

PostPosted: Fri Mar 23, 2018 4:41 pm
by jmp12
I'd like to look through the sourcecode of Tworld, the opensource engine behind the Seltani multiplayer hypertext game that Belford created as a fan spinoff from Uru, to try and work up some additions to the engine to make age writing easier. I'm working on some ages for the game and while I think I could create most everything I'd like to create, (if not everything,) without such additions, I think it might be more eloquent and more helpful for other developers to add some features to the engine.

I'm curious whether it is possible to set up an instance of the Tworld server on a personal windows or linux computer? I've set up an apache server on a personal ubuntu machine before, so I know it's possible to do similar things, but it looks like Tworld is made to run on a different webserver than Apache, (unless I'm misunderstanding how it works, which I may be.) I'm trying to decide on the best way to set up an environment to develop additions to the code and test them out before bothering Belford with them, and I wondered if anyone might have any advice.

I have a GitHub account. I'm hoping Belford is around somewhere to let me know whether he's still working on the project at all, or whether he'd be interested in looking at any changes offered and considering merging them into the main Tworld project so the features could be added to Seltani?

Re: Seltani Development Question

PostPosted: Fri Mar 23, 2018 8:16 pm
by Deledrius
It appears to use Tornado as the webserver, so as long as you want to test and develop on a system that can install Python and those modules listed in requirements, I don't know of anything else that would stop you. I haven't tried myself so I can't be sure, and you may need to tweak the configuration, but I doubt you'll run into any issues.

Re: Seltani Development Question

PostPosted: Sat Mar 24, 2018 7:41 pm
by belford
Hi!

Deledrius is correct. You need to install MongoDB, Python3, and the appropriate Python modules (Tornado, PyMongo, Motor). This should be straightforward on Mac (using Homebrew) or Linux (using whatever package manager the Linux uses). The sample tworld.conf is set to use port 4000, so it won't collide with Apache. You'd test by visiting http://localhost:4000/ .

The problem: I haven't updated the code in several years, so the code is built around out-of-date versions of everything. I apologize for this, but I'm not likely to go back to updating tworld any time soon. Nor am I going to have time to test and accept patches. Feel free to fork the repository and mess around, though.

Re: Seltani Development Question

PostPosted: Sat Mar 24, 2018 7:43 pm
by belford
For reference, the Python package list on the seltani.net server looks like:

Code: Select all
$ pip3 list
certifi (14.05.14)
chardet (2.2.1)
colorama (0.2.5)
command-not-found (0.3)
greenlet (0.4.5)
html5lib (0.999)
language-selector (0.1)
motor (0.1)
pip (1.5.4)
pycurl (7.19.3)
pygobject (3.12.0)
pymongo (2.5.2)
python-apt (0.9.3.5ubuntu2)
requests (2.2.1)
setuptools (3.3)
six (1.5.2)
tornado (3.1.1)
ufw (0.34-rc-0ubuntu2)
unattended-upgrades (0.1)
urllib3 (1.7.1)
wheel (0.24.0)

Re: Seltani Development Question

PostPosted: Sat Mar 24, 2018 8:41 pm
by belford
Footnote: it should work on Windows too, I just don't know anything about installing Python or Mongo on Windows.

Re: Seltani Development Question

PostPosted: Sat Mar 24, 2018 8:58 pm
by Deledrius
belford wrote:Footnote: it should work on Windows too, I just don't know anything about installing Python or Mongo on Windows.

It's usually fairly painless as long as you can use pip for everything (they finally include it now by default).

Re: Seltani Development Question

PostPosted: Fri Mar 30, 2018 8:47 am
by jmp12
belford wrote:The problem: I haven't updated the code in several years, so the code is built around out-of-date versions of everything. I apologize for this, but I'm not likely to go back to updating tworld any time soon. Nor am I going to have time to test and accept patches. Feel free to fork the repository and mess around, though.


Thank you for letting me know! I understand, part of the reason I posted was to see if you might be available to accept patches or if you'd moved on to other things. I know it's an old project, at this point. I shall mess around some all the same. :)

Re: Seltani Development Question

PostPosted: Fri Mar 30, 2018 9:57 am
by belford
Glad to see someone messing with it!