Griatch
c8ff1754fc
Explicitly warning and disabling IPv6-format interfaces. It's coming in Twisted, but the exact status is a bit hard to determine - and it's definitely not available for only one older revision of Twisted. So disabling. We'll revisit this down the road when Twisted support is more prevalent. This closes Issue 260.
2012-10-14 22:32:05 +02:00
Griatch
592bc26b99
Added remote function call abilities to AMP protocol, courtesy of patch by user Shell.
...
This allows for Server to call functions on Portal and vice-versa. Some rewrites and
cleanup done before applying /Griatch.
2012-10-14 11:53:34 +02:00
Griatch
a4adc035f2
Last commit introduced a silly typo. Fixed.
2012-09-30 16:08:00 +02:00
Griatch
57de91a234
Added an AttributeError check in perm_above lockfunc, to catch instances of checking permissions before player logged in.
2012-09-30 16:01:21 +02:00
Griatch
3c87b66624
Set AMP interface strings to listen to local interfaces only by default. Also added AMP_INTERFACE setting. Resolves Issue 257.
2012-09-28 22:40:12 +02:00
lagos
965be0a84f
Fixes for Chrome clients of webclient.
...
webclient.py now maintains a mapping of suid->single request as opposed to a mapp of
suid->list of requests. Since the evennia_webclient.js client only has one valid
request outstanding at all times, this should be safe.
2012-09-27 23:16:09 -07:00
Griatch
b2028511f5
Fixing a bug with not calling the disconnect hook when killing the client uncleanly. Resolves Issue 258. Thanks to user Zeta142125 for the help.
2012-09-25 07:53:11 +02:00
Griatch
d535d77811
Restructed terminal output from Server and Portal to allow external plugin-services to cleanly add their info at startup.
2012-09-22 23:18:29 +02:00
Griatch
93d95377ce
Shifting ProcPool out of src and into a contrib, using the service plugin system.
2012-09-22 20:40:30 +02:00
Griatch
83fa9397d5
Added a plugin system for server and portal. This allows for plugging in your own services without having to edit any modules in src/server/. Also made some various cleanups and fixes.
2012-09-18 22:52:33 +02:00
Griatch
21137cc830
Run Migrations! Added a is_connected field to Players to be able to more conveniently access online status from out-of-process (resolves issue 251). Also cleaned up and added features to the default website.
2012-09-17 19:19:20 +02:00
Griatch
d1e0836d23
Minor fix to evaluate with _return in ProcPool execution.
2012-09-03 23:47:50 +02:00
Griatch
ffcf4b3c2f
Added cache-resyncing to ProcPool. This makes sure to update all affected object caches
...
whenever the subprocess returns (this is potentially not good enough for long-running scripts,
will have to ponder that one). Made ProcPool work with MySQL (where it works much better). Tested and fixed many
small bugs.
2012-09-03 01:11:14 +02:00
Griatch
e25ac1e46b
Changed run_async to properly relay remote error messages to the user-supplied errback.
2012-09-02 16:14:08 +02:00
Griatch
af99a80b4b
Added procpool functionality for sending arbitrary data over the wire (including
...
nested databaseobjects). Rules are similar to Attribute saving.
Adding a missing component to the procpool setup.
2012-09-02 12:53:11 +02:00
Griatch
f5a889e40c
Added new process-pool runner based on AMPoule (integrated into Evennia).
...
This allows e.g. utils.utils.run_async to offload long-running functions
to a completely different subprocess entirely, offering real parallelism.
Implementation is still experimental, notably not all objects can be
transferred safely across the wire; also there is no concept of
updating caches yet - so adding an object from the subprocess side
will not be known in the main thread yet (since caches cannot yet tell
the underlying database has changed).
2012-09-02 10:10:22 +02:00
Griatch
ca0920e635
Added "raw_string" (unformatted, no stripping) as a property on commands, inspired by work by user Kelketek.
2012-06-23 11:03:16 +02:00
Griatch
f0f240b7ce
Fixed a bug in sessionhandler that erroneously caused Portal sessions to not be deleted properly at user @quit. This caused the session to be copied back to the Server side after a reload (caused "ghost" connections in e.g. the "who" command). Resolves Issue 244.
2012-06-20 23:48:19 +02:00
Griatch
9e2ad59663
Added a fix for running with postgresql-psycopg2. This does not actually resolve the problem as much as circumvent it, so I'm not marking Issue 115 as closed just yet.
2012-06-16 14:51:22 +02:00
Griatch
f15e26c54a
Fix of migration to remove a bogus FATAL error during migration. This also fixes a one error in the chain of errors reported by postgresql databases (those still fail on a latter point, alas).
2012-06-14 21:10:40 +02:00
Griatch
4c849ec351
Cleaned and updated the i18n strings for various server-core system. Removed i18n for all strings that are only visible on stdout or in logs. Still missing i18n on certain specific things such as model field help and attribute warnings. Updated Swedish translation to match.
2012-06-14 02:43:35 +02:00
Griatch
80da420ee7
Merge, with input and tweaks from discussion with lagos and Kelketek in irc.
2012-06-13 01:36:59 +02:00
Kelketek
9290cf2c0c
Fixed an issue where improper substitution would cause extra newline
...
characters for MCCP clients. This made them effectively press return twice
on each command.
2012-06-12 17:51:10 -05:00
Griatch
d3ee5a565b
Added a loader to the server that automatically detects changes in default cmdsets and typeclasses (like when you change them in settings.py),
...
loops over all objects in the database and updates the places were the old default was set. This will make it more intuitive to overload the default locations (which is the natural thing to do after all). After this update, just make sure to @reload your server once before editing your settings.py; this will store the old settings for you, so they change-detection can work subsequently.
2012-05-19 12:36:11 +02:00
Griatch
8ad4f4a9fc
Changed player.search to only search for players explicitly.
...
Added a MuxCommandOOC class to handle the OOC commands in a more uniform way.
Fixed the @ic/@ooc and page commands. Resolves issue 233. Resolves issue 234.
2012-05-17 19:42:37 +02:00
Griatch
96e95ca525
Raised Python requirement to 2.6+. Some spurious work on the mdsp support.
2012-05-05 23:52:13 +02:00
Griatch
c49fbd7d99
Removed 'with' statement; it's available in Python2.5, but one needs to use the future import to do that, so easiest to remove it. Resolves issue 230.
2012-05-04 10:03:41 +02:00
Griatch
e82ccc72ae
Removing the resync step for doing a server reset - this should act pretty much like a shutdown.
2012-05-01 14:27:59 +02:00
Griatch
94477b8340
Updated the reload and shutdown mecanism to avoid a loop when shutting down from inside the game. Made sure to have server sync correctly with portal at @reload (some session info were lost before). Some other cleanups.
2012-05-01 14:19:54 +02:00
Griatch
571c7a3cab
Some more cleanups.
2012-04-29 21:17:14 +02:00
Griatch
1feb3a80a5
Some minor cleanups here and there.
2012-04-29 12:35:21 +02:00
Griatch
ed6def0c88
Made XTERM256 properly range between 0-5 (it was erroneously capped at 1-5 which mean the darkest values
...
of the colour cube were unreachable).
Fixed some issues with the lock caching.
2012-04-29 01:26:10 +02:00
Griatch
3091587e33
Added a timeout to the attribute caching; the system will now clean cache at regular intervals once it pass a certain size defined in settings.
2012-04-28 00:37:36 +02:00
Griatch
6e08c011a1
Further caching and optimization, making some operations noticeable faster in the end.
2012-04-26 17:47:25 +02:00
Griatch
8c3b49e704
Changed how the Typeclass system returns errors. Instead of echoing typeclass erros to the MUD-info channel (which is not only not only very spammy for everyone but also very hard to make clean so as to avoid recursion at a stage of typeclass failing), the system instead stores a property on itself called 'typeclass_last_errmsg' that holds eventual errors. This means that the task of reporting errors does not fall on the typeclass system itself but on the calling methods, as it should be. So src.utils.create.create_* functions now takes a new optional keyword "report_to" that holds an object to receive errors. If this keyword is given, the function msg():es that object with the error and returns None as before. If report_to is not set however, the create_* methods now return an Exception containing the error text. All default commands have been changed to accomodate for this behaviour, which allows for much more control over errors.
...
Also, the default ADMIN_MEDIA static files changed location in Django 1.4. The initial_setup function now accounts for this.
2012-04-21 16:15:37 +02:00
Griatch
91ec33b9a7
Fixed a spurious error happening with mud clients not properly implementing TTYPE negotiating (sending strings instead of numbers to identify their abilities).
2012-04-15 19:53:03 +02:00
Griatch
6501f30cbc
Fixed an elusive bug in utils.get_variable_from_module() that caused the connection screen to sometimes not load properly, due to the imported modules being erroneously extracted and used.
2012-04-15 19:05:50 +02:00
Griatch
9475fbd0d9
Fixing a bug happening if connecting with plain telnet caused by the TTYPE handshake not being properly handled. Also made color default for telnet, hopefully all terminals should handle color by now?
2012-04-12 23:39:22 +02:00
Griatch
4b56d5a3a4
Fixed a bug that caused the webclient input line to suddenly reset every three minutes. Thanks to use "lusid" for supplying the hint on fixing this one! Also added a more consistent way of parsing the incoming address.
2012-04-01 22:52:12 +02:00
Griatch
ad63abee39
Admin-media symlinking sometimes fail under virtualenv. Catching the error and giving a warning instead.
2012-04-01 19:07:34 +02:00
Griatch
d44dd92b5f
Continuing to make more methods _private to simplify API.
2012-03-31 16:09:48 +02:00
Griatch
45c5be8468
More whitespace cleanup.
2012-03-30 23:57:04 +02:00
Griatch
82a10903d1
Added more comments to help exploration through the ev interface.
2012-03-29 19:42:08 +02:00
Griatch
06566c3e8f
Changed the way server reports logged-in/unlogged-in sessions to the log file.
2012-03-28 21:42:06 +02:00
Griatch
9409f835bc
Fixing an error with the @reload resulting from removing the conf/ modules.
2012-03-25 22:35:33 +02:00
Griatch
734edbb761
Fixing a lingering bug with removing the conf modules.
2012-03-25 19:57:08 +02:00
Griatch
e042366f31
Removed the conf/ modules, putting them into conf/examples instead, in line with other API changes. The gamesrc/ folder is now completely empty and all new modules have to be added explicitly.
2012-03-25 19:52:51 +02:00
Griatch
0d01462077
Adding a new API system to Evennia. This centralizes all access of the evennia driver through a single module "ev". Importing ev one should be able to access (and also importantly, easily explore) Evennia's API much easier. This API goes a long way to "flatten" the structure so that one doesn't need to remember how to find some method in a deeply nested subdirectory.
...
As part of this work, I have also written full listings of all available properties on Typeclassed objects (including those inherited in various ways). Should hopefully make things easier to find.
One can of course still import things directly from src/ as before. But this is a first step towards removing the "base" objects in game/gamesrc and instead making those accessible through the core API.
2012-03-24 23:02:45 +01:00
Griatch
8ada50fcb7
Adding more lenient checks of TTYPE to avoid a visible traceback. The error with TTYPE utf-8 tracebacks seems to be in an older version of tintin++, newer versions don't show this behaviour. Older versions of tintin++ will display one Huh? (with logged traceback) after which everything will work. This is reported in issue 219.
2012-03-21 19:56:04 +01:00
Griatch
309c03ce43
Added at_server_start() and at_server_stop() hooks to allow users to safely initialize their custom systems whenever the server restarts.
2012-03-07 20:32:04 +01:00