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
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
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
45c5be8468
More whitespace cleanup.
2012-03-30 23:57:04 +02:00
Griatch
734edbb761
Fixing a lingering bug with removing the conf modules.
2012-03-25 19:57:08 +02: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
3e8b43d222
More fixes and cleanup in wake of ic/ooc changes.
2011-11-06 23:55:24 +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
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
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
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
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
Griatch
88626842b7
Fixed a bug in serverconfig. Tweaked how the default connection screen is stored, to allow for server updates.
2011-04-12 22:22:04 +00:00
Griatch
7f9f21f45e
Migration needed. Refactored the config.configValue model into server.ServerConfig (that's what the config model were used for anyway). The new model can handle arbitrary data structures through pickle. Run ./manage.py migrate to sync your database with the new setup.
...
Moved Connect screens (the text screen first seen when connecting) away from the database and into a module in gamesrc/world. This module allows for conveniently adding new connect screens on the fly. More than one screen in the given module will mean a random screen is used.
2011-04-12 21:43:57 +00:00
Griatch
f1404356ea
Forgot to remove some defunct imports.
2011-04-10 14:25:00 +00:00
Griatch
2ee54678ae
Migration needed. Changed how connection screens are defined, rather than being a database model, they are created on-the fly. I didn't migrate over the screen data into the new module file though, so if you had custom connection screens, you need to manually add them to the new module in gamesrc/world/connection_screen.py.
2011-04-10 14:21:41 +00:00
Griatch
52785e8f3e
Obs:Migrate. Made Comm system more generic, including the ability to connect arbitrary protocols to channels. Re-worked the IRC connectivity system - you can now again communicate between IRC and in-game evennia channels.
2011-04-10 12:39:07 +00:00
Griatch
08b3de9e5e
OBS: You'll need to resync/rebuild your database!
...
- This implements an updated, clearer and more robust access system. The policy is now to lock that which is not explicitly left open.
- Permission strings -> Lock strings. Separating permissions and locks makes more sense security-wise
- No more permissiongroup table; permissions instead use a simple tuple PERMISSIONS_HIERARCHY to define an access hierarchy
- Cleaner lock-definition syntax, all based on function calls.
- New objects/players/channels get a default security policy during creation (set through typeclass)
As part of rebuilding and testing the new lock/permission system I got into testing and debugging several other systems, fixing some
outstanding issues:
- @reload now fully updates the database asynchronously. No need to reboot server when changing cmdsets
- Dozens of new test suites added for about 30 commands so far
- Help for channels made more clever and informative.
2011-03-15 16:08:32 +00:00
Griatch
f0b4c581f7
Removed the admin media files from the distribution again. Instead the server will now create the necessary symlink (Linux) or copy (Windows) of the default files in django/contrib/admin/media at initial startup. Currently only tested under Linux. If you don't want to re-run the initialization, copy/link the admin directory to ADMIN_MEDIA_PREFIX yourself. This deals with issue 124.
...
Also added a 'remove' functionality to the migrate.py script, for easily getting back the normal syncdb operation (useful when deleting/resetting the database a lot).
2011-02-20 22:07:35 +00:00
Griatch
251f94aa7a
Evennia now runs on its own Twisted webserver (no need for testserver or Apache if you don't want to). Evennia now also has an ajax long-polling web client running from Twisted. The web client requires no extra dependencies beyond jQuery which is included. The src/server structure has been r
...
cleaned up and rewritten to make it easier to add new protocols in the future - all new protocols need to inherit from server.session.Session, whi
ch implements a set of hooks that Evennia uses to communicate. The current web client protocol is functional but does not implement any of rcaskey
's suggestions as of yet - it uses a separate data object passed through msg() to communicate between the server and the various protocols. Also the client itself could probably need cleanup and 'prettification'. The fact that the system runs a hybrid of Django and Twisted, getting the best of both worlds should allow for many possibilities in the future. /Griatch
2010-12-07 02:34:59 +00:00
Griatch
151595a042
Turned off Django DEBUG in the default setup. This resolves all issues with memory leakage and resource hogging seen in issue112.
2010-10-11 17:22:39 +00:00
Griatch
ec5295b973
Included 'Alias' field for examine (issue98). Fixed a rare traceback with @reload in situations when it tried to move on before modules has time to finish reloading. Also clarified how @perm and examine display information.
2010-09-03 21:17:51 +00:00
Griatch
e114c33d8a
Fixed a bug with red_button introduced in a previous revision. Resolves issue95.
2010-09-02 07:48:39 +00:00
Griatch
900f6da80f
Fixed several special cases of handling multiple same-named commands gracefully. Should resolve issue94.
2010-09-01 21:59:13 +00:00
Griatch
f83c2bddf8
Trunk: Merged the Devel-branch (branches/griatch) into /trunk. This constitutes a major refactoring of Evennia. Development will now continue in trunk. See the wiki and the past posts to the mailing list for info. /Griatch
2010-08-29 18:46:58 +00:00