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
Griatch
7818ca077a
Fixed some spurious bugs.
2012-02-29 21:58:08 +01:00
Griatch
1fa5791e19
Added aggressive caching for common typeclassed variables.
2012-02-25 23:37:50 +01:00
Griatch
b99db98191
Fixed a silly typo.
2012-02-25 21:15:58 +01:00
Griatch
a0a205c945
Did some additions to the MSDP implementation. Added a first test for implementing MSDP commands, but it is not working yet.
2012-02-25 21:14:48 +01:00
Griatch
9935bff36e
Changed internal bit identifiers in AMP protocol, for compactness.
2012-02-25 19:26:54 +01:00
Griatch
6d73b05d91
Fixed a webclient issue that caused urls to loose their following whitespace.
2012-02-20 23:25:22 +01:00
Griatch
3e73529b96
Added some more instructions to the Limbo room desc, telling people they should log out and create a new, non-admin account at the login screen in order to play the tutorial_world properly.
2012-02-20 22:25:58 +01:00
Griatch
8b5f3628ab
Added info about creating the tutorial world to the Limbo desc. Also refactored some of the lock functions a bit for efficiency.
2012-02-06 21:48:50 +01:00
Griatch
cdab5a240b
Added RSS feed support to Evennia. This uses the @rss2chan command to tie a feed to an in-game channel. Updates to the feed will henceforth be echoed to the channel. The reader requires the python-feedreader package to be installed.
2012-01-28 20:12:59 +01:00
Griatch
1d40f688e5
Added the @ban and @unban commands to the default command sets, allowing an admin to filter access from users without outright deleting their accounts. The ban list is stored in the database, but the checking is not hard-coded in the server/portal, but done in the normal login command(s), meaning it can be customized easily. Also contrib/menu_login has been updated to check for banned connections.
2012-01-27 23:53:03 +01:00
Griatch
dfec9eeb7d
Started on MSDP support, although not working nor activated at this time.
2011-11-20 19:24:16 +01:00
Griatch
4cd80284c9
Implemented xterm256 colours. If not supported by client, converts to normal ANSI, as per kaViir's snippet. Integrates into Evennia's normal ansi parser and collaborates with TTYPE protocol to determine if the client supports it.
2011-11-20 14:56:07 +01:00
Griatch
fb78758356
Implemented working MCCP (data compression) and MSSP (mud-listing crawler support). Moved all user-level customization modules from gamesrc/world to gamesrc/conf to reduce clutter.
2011-11-20 11:52:01 +01:00
Griatch
a4f8019c4a
Added MCCP (compression of data stream between server-client). Not fully functioning yet, tintin++ tends to complain of compression errors after a while (the server degrades back to uncompressed mode gracefully though). MCCP is thus deactivated in the server at the moment.
2011-11-20 00:50:11 +01:00
Griatch
2104fd391b
Adding TTYPE support (allows server to query client for information such as name and capabilities, assuming the client supports ttype).
2011-11-19 19:34:00 +01:00
Griatch
af9fef14a4
Fixed so that sqlite3 is properly detected for the server to launch custom db PRAGMAs.
2011-11-13 23:15:04 +01:00
Griatch
329a13bf8a
Added more error checking to the oob function launch code.
2011-11-09 00:12:55 +01:00
Griatch
bced571805
Added api functions for implementing protocols sending out-of-band data between server and portal (e.g. like GMCP)
2011-11-08 22:54:02 +01:00
Griatch
3e8b43d222
More fixes and cleanup in wake of ic/ooc changes.
2011-11-06 23:55:24 +01:00
Griatch
55f6f5b713
Contrib: Added a new, alternative login system, using menus. Also edited the ways unlogged commands are started by the engine, by using a standardized system command name (it does not need to be "look" anymore).
2011-11-06 18:53:10 +01:00
Griatch
2b2d27ed39
Changed the way unloggedin commands work. Rather than the cmdhander having a special state for unlogged-in commands, the session itself simply stores the cmdset from settings.CMDSET_UNLOGGEDIN. Clean and efficient and also gives a lot more freedom for creating custom login mechanisms (notably it opens the door to using menu systems).
2011-11-06 17:38:29 +01:00
Griatch
70b4b559a5
Fixed a typeclass access bug in @find. Resolves issue 199.
2011-10-10 09:14:50 +02:00
Griatch
8d3817ccd4
Added at_initial_setup hook. Create a module in game/ and point to it with settings.AT_INITIAL_SETUP_HOOK_MODULE. This module must contain at function at_initial_setup(), which will be called very last in the setup procedure. If no module is given or fail to load, this will fail quietly.
2011-10-09 19:42:39 +02:00
Griatch
7f31534618
Made creation of #1 check for custom room/home assignment by hooks.
2011-10-09 18:02:43 +02:00
Griatch
ef84d3790b
Added another error message to initial_setup.py.
2011-10-09 16:44:10 +02:00
Griatch
8c6b27b5b3
Fixed a migration that failed under mysql.
2011-10-05 21:49:43 +02:00
Griatch
23cd9e31b1
Restructured the way typeclasses are loaded. This makes it possible to run at_init() hooks at initiation also for objects without any custom cases for character/players. at_init() hooks are called only when an object is initiated. This means that a room's at_init() hook is only called when someone looks or enters it or a script operates on it, for example, rest of the time these objects are dormant, most efficiently.
2011-10-01 22:00:22 +02:00
Griatch
bab89b191b
Resolves issue 195. A typo in the sessionhandler that lead to big consequences.
2011-10-01 12:44:30 +02:00
Griatch
9a719d7fb0
Updated rst files to latest wiki.
2011-09-20 13:21:07 +02:00
Griatch
475361ad28
Added functionality to Attributes to store and update dicts and lists dynamically. One side effect of this is that dicts and tuples need to be stored as custom object types which means that e.g. isintance(obj.db.mylist) == type(list) will return False. In order to do checks like this, use src.utils.utils.inherits_from() instead. The Attribute system now also supports tuples. All other iterables except dicts, lists and tuples are stored and retrieved as lists, same as before.
...
This fixes issue 189.
2011-09-20 12:37:45 +02:00
Griatch
1995f61d46
Put up a warning about not using BaseObject.at_init() at this time (it's not called, as per issue 188). Also removed the deprecated at_cache() hook (it doesn't work anymore now that the caching system is much more efficient and only caches once).
2011-09-15 10:46:41 +02:00
Griatch
f1d743f14c
Checked at_init() due to reported issues of it not getting called. Couldn't find any problems, rather it was called too many times, so removed an unecessary call.
2011-09-15 01:18:53 +02:00
Griatch
399919a8a9
Database schema has changed. Run migrations if you use South. Started work on tidying up admin interface.
2011-09-14 22:34:10 +02:00
Griatch
71bdc47fbb
Fixed typo. Changed reload argument for evennia.py to be 'reload' rather than 'restart'.
2011-09-03 15:10:28 +00:00
Griatch
f13e8cdf7c
Trunk: Merged griatch-branch. This implements a new reload mechanism - splitting Evennia into two processes: Server and Portal with different tasks. Also cleans and fixes several bugs in script systems as well as introduces i18n (courtesy of raydeejay).
2011-09-03 10:22:19 +00:00
Griatch
2b4e008d18
Scripts and Exits updated. Fixed some deep issues with Scripts that caused object-based scripts to not properly shut down in some situations, as well as spawn multiple instances of themselves. I think this should resolve all "at_repeat doubling" issues reported. Due to optimizations in the typeclass cache loader in a previous update, the Exit cmdsets were not properly loaded (they were loaded at cache time, which now doesn't happen as often). So Exits instead rely on the new "at_cmdset_get" hook called by the cmdhandler. It allows dynamic modification of cmdsets just before they are accessed. Resolves issue173 (I hope). Resolves issue180. Resolves issue 181.
2011-08-11 21:16:35 +00:00
Griatch
16affc284b
Allow for changing the home location of new characters by changing a setting. The given location must exist and is given as a dbref. If one wants more advanced control over start locations, one needs to customize the unloggedin/create command to match the particular game. Resolves issue 178.
2011-08-06 19:39:06 +00:00
Griatch
6cb2b8b745
Working on cleaning some strange behavior when trying to submitting faulty typeclasses to script system. Also fixing bugs here and there.
2011-07-03 21:01:06 +00:00
Griatch
1e44e27f5e
Added ability to restrict which interface addresses Evennia listens to. Settable in configuration file. Default is to listen to all available interfaces. Based on patch by user 'Chris'.
2011-06-28 19:39:05 +00:00
Griatch
1d93d8295f
Added ability to login directly using SSH auth; based on patch by hagna.
2011-06-18 10:18:17 +00:00
Griatch
218ae61836
Add the same error-checking used for SSH to SSL keyfile generation.
2011-05-31 19:31:49 +00:00
Griatch
88c1002fde
Added better error handling if SSH keypair fail to generate (issue 167)
2011-05-31 19:16:03 +00:00
Griatch
a8a70e9f5e
Added SSL (Secure Sockets Layer) support, inspired by patch by rcaskey (issue 79). The automatic certificate creation does not work well; so the system instead instructs and gives example on how to create your own using third-party tools. I can connect to the server using a twisted-client instance, but not that many regular mud clients seem to support SSL at all (and if they do I don't know to configure them ...)
2011-05-28 15:48:50 +00:00
Griatch
7c56c69cea
Added SSH support, based on patch by hagna (issue 166).
2011-05-27 17:47:35 +00:00
Griatch
b8a13a2389
Migrate. Made Exits work differently, by use of commands directly instead of an exithandler assigning commands on-the-fly. This solution is a lot cleaner and also solves an issue where @reload would kill typeclasses in situations where an exit was painting to an object whose typeclass was reloaded (same issue occured if the exit typeclass itself was reloaded). As part of these fixes I cleaned up the merging of cmdsets to now merge in strict priority order, as one would expect them to do. Many small bug-fixes and cleanups all over. Resolves issue 164. Resolves issue 163.
2011-05-01 18:04:15 +00:00