Griatch
7fd47eb386
Re-fixed the special obj/player wrapper for scripts.
2014-04-09 15:31:18 +02:00
Griatch
803af4307b
Fixed errors in email_login module. Resolves #439 . Also added script.object possibility as well as script.obj.
2014-04-06 12:43:59 +02:00
Griatch
c0417def6d
Starting to convert RSS to new system
2014-03-08 11:41:24 +01:00
Griatch
8b52591c2f
Run Migrations. Added player field to script model in order to allow Players to be scripted in the same way Objects can.
2014-03-08 11:41:23 +01:00
Griatch
617d0a3252
Added new handler calls to all typeclassed objects
2014-02-16 15:22:43 +01:00
Griatch
1ae17bcbe4
PEP8 cleanup of the entire codebase. Unchanged are many cases of too-long lines, partly because of the rewrite they would require but also because splitting many lines up would make the code harder to read. Also the third-party libraries (idmapper, prettytable etc) were not cleaned.
2013-11-14 19:31:17 +01:00
Griatch
06a0bea8d6
Added fix to object.contents cache as well as reworked the extent of cache hooks on location modification.
2013-10-21 21:17:32 +02:00
Griatch
2a5168ade4
Moved all relevant wrappers into being managed by the metaclass. Noting that there are many inconsistent features into the comm system; m2m fields should be moved into handlers rather than what is now used. Some of the non-typeclassed models also really don't need to be idmapped - will probably not change this before merge.
2013-09-23 23:34:47 +02:00
Griatch
2f5c895f76
Removed LiteAttributes, made Nicks use Attributes. Added category and strvalue fields to Attribute. Made Attributes accessible through an AttributeHandler, like most other advanced properties.
2013-08-24 21:23:43 +02:00
Griatch
73a5800fbf
Fixed updates of the contentmanager. Not all command tests run yet.
2013-07-12 22:08:15 +02:00
Griatch
6bc16e46cc
Made aliases work with the new handler. The location.contents updated is not working yet - this causes locational information to not be available until objects and manually initialized (e.g. by calling examine #dbref)
2013-07-12 20:21:52 +02:00
Griatch
45706f598a
Fixed remaining issues so the login process works.
2013-07-12 15:57:46 +02:00
Griatch
0061f884ae
Implemented NickHandler, AliasHandler and TagHandler in the typeclass to replace the old handlers. Some errors during login.
2013-07-12 14:44:49 +02:00
Griatch
9e10a41e18
First version with all caches seemingly working ok. Started to remove the on-model wrappers that are not handled by the idmapper metaclass.
2013-07-11 15:59:03 +02:00
Griatch
2b332c3b9a
Attribute cache is working, lots of other updates, but still not a cleanly updatable system. It seems the Attribute-migrations are not coming through properly. Fixed a misnamed table in the comm app.
2013-07-11 09:51:52 +02:00
Griatch
2a7c45d6e8
Run Migrations. Migrated to new Attribute schema, converting old attributes. Not fully tested yet.
2013-07-09 00:09:19 +02:00
Griatch
a1d818f8aa
First test with moving Attributes to m2m field. Not working yet.
2013-07-08 18:13:21 +02:00
Griatch
b6383ddab9
Moved attr_cache to new caching system, activated all attribute updating signals.
2013-05-29 18:47:51 +02:00
Griatch
c8df141e89
Further cleanup of source; making class methods _private for clarity in the API.
2012-03-31 15:09:22 +02:00
Griatch
fc156b5a54
Continuing work on API, making local-use class properties _private to make things easier to explore.
2012-03-31 13:06:29 +02:00
Griatch
a32aebaa0e
OBS- need to run migrations! Refactored attributes to use a slightly different internal storage format for faster access. Also set up caching of all attribute data, so subsequent reads of an attribute will not hit the database anymore, and writes will re-cache.
2012-02-14 23:40:16 +01:00
Griatch
7b2a4e4467
Cleaned up typeclasses, removing a lot of extranenous and ineffective code from the setattr/getattr methods that are called most often.
2012-02-05 21:04:10 +01:00
Griatch
7f2e6dd4fa
Tidying up the admin interface by adding more verbose and helpful names to database fields as well as adding more help texts. The ObjectAdmin still gives tracebacks.
2011-10-02 01:21:03 +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
ddfd8120bb
Made scripts and typeclassed objects remember db_typeclass_path at all times - a temporarily faulty typeclass will no longer mess up things forever after. Refined and optimized the way typeclasses are cached and loaded, minimizing db hits. The default result when trying to create an object or script with a typeclass that is faulty/not found is now to fail. The previous way, to create an entity anyway using defaults was hard to debug and caused confusion. Resolves issue 175.
2011-08-06 18:15:04 +00:00
Griatch
d2400a8a6b
Added the ability to give multiple typeclass search-paths to config file. This way you can add a path to your custom directory and don't have to write so much when creating typeclassed objects using e.g. @create.
2011-05-13 22:26:08 +00:00
Griatch
126e2ea61f
OBS: You need to resync your database! Moved cmdsets into the database rather than being dependent on scripts. Moved the creation of the cmdset- and cmdset-handlers into ObjectDB.__init__ rather than bootstrapping it from the typeclass. Added some more script functionality for testing, includong the @script command for assigning a script to an object.
2011-03-20 19:45:56 +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
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
7eaf3d221c
Resolved issue113, avoiding a loophole in which the protection about @reloading a timed script could be circumvented.
2010-10-31 08:34:38 +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