Griatch
55565f23c0
Updated a data migration to properly set Attribute _last_puppet. This allows players in MULTISESSION_MODE=0,1 to auto-puppet from the start.
2013-04-14 23:19:27 +02:00
Griatch
8d48aa5a06
Added the last migrations needed to fully convert the Attribute system. Cleaned up the @ooclook command a bit as well as tidied up the who command a bit.
2013-04-14 13:35:25 +02:00
Griatch
82c2e19ed5
Fixed remaining issues with migrating the attribute changes.
2013-04-14 00:35:23 +02:00
Griatch
230d73cfa0
Migrations work under sqlite3, both from latest dev, from new install and from trunk. There might be some consistency issues though (it seems the character list is not properly migrated), so more testing is required.
2013-04-13 23:50:33 +02:00
Griatch
512d7748d1
Finished with a working implementation of the new Attribute mechanism using PickledObjectField. First step of migration is finished, but not converting any old attribute data yet.
2013-04-13 18:13:15 +02:00
Griatch
4d5cd5352a
Added a missing migration of cmdsets.
2013-04-12 22:14:01 +02:00
Griatch
1aff5f1fd1
Renamed cmdset_ooc -> cmdset_player and settings.CMDSET_OOC -> settings.CMDSET_PLAYER. Also split most of the player-specific commands to a new module player.
2013-04-11 01:02:05 +02:00
Griatch
4669b8ed89
Fixed the migrations from a pre-populated database to the many-char-per-player branch.
2013-04-10 21:45:56 +02:00
Griatch
be2d0086a3
Updated the game/gamesrc/ examples with the new hook names.
2013-04-09 22:22:17 +02:00
Griatch
8e1bcdde02
Removing old m2m field for holding puppetable characters.
2013-04-09 19:22:11 +02:00
Griatch
e86c127903
Further fix to migration.
2013-04-03 12:44:34 +02:00
Griatch
cdd9416cb3
Cleanups of migrations.
2013-04-03 12:10:58 +02:00
Griatch
1223b46edd
Added data migration for character-control list attribute.
2013-04-03 11:56:51 +02:00
Griatch
70b8f074f1
Merge.
2013-02-03 17:28:26 +01:00
Griatch
f3addf9cf9
Shuffled migration id numbers around to account for changes in trunk.
2013-02-03 17:21:12 +01:00
Kelketek
adb3965888
Follow-up on that last one-- missed one of the Abstract models.
2013-02-03 09:54:36 -06:00
Kelketek
2e08517ec5
Changed lock storage from character-limit field to unlimited TextField.
2013-02-03 08:54:57 -06:00
Griatch
7ba0683d9d
Added migrations for the new sessid and multiple-character-related fields along with some bugfixes.
2013-02-02 23:25:46 +01: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
3c96dc9cc9
Fixed a too-inclusive .hgignore file as well as some other fixes.
2012-09-07 19:31:51 +02:00
Griatch
81980605b4
OBS! Run Migrations! Converts old API cmdsets and typeclass paths to new system for already existing objects.
2012-03-25 20:30:05 +02:00
Griatch
440d403327
Added some more error catching to the attr migrations.
2012-02-22 11:40:52 +01:00
Griatch
e170505878
Adding full convertion to the migrations, should hopefully cover all cases now.
2012-02-15 18:28:44 +01:00
Griatch
3b88767865
Made fixes to the migrations.
2012-02-15 14:27:26 +01:00
Griatch
d594357335
Another typo.
2012-02-14 23:48:00 +01: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
42d502bfc6
OBS - Database schema has changed! If you use south, you need to run manage.py migrate!
...
This adds db indexing on a set of important database fields, all in the interest of optimization.
2012-02-06 13:18:25 +01: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
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
28fe2ad3f4
Run Migrate. Implemented a full separation between Player and Character - Players (OOC entities) can now also hold cmdsets and execute commands. This means that "disconnecting" from a Character becomes possible, putting the Player in an "OOC" state outside the game. This overall makes the game much more stable since there used to be issues if the character was destroyed. Having an OOC set also avoids the previous problem of @puppeting into an object that didn't have any cmdset of its own - you couldn't get back out! A new default OOC-Cmdset handles commands available to a player while OOC. Commands in this set are applied with a low priority, allowing "IC" mode to give precedence if desired.
...
This change meant several changes to the lock and permission functionality, since it becomes important if permissions are assigned on the Player or on their Character (lock functions pperm() and pid() etc check on Player rather than Character). This has the boon of allowing Admins to switch and play/test the game as a "Low access" character as they like.
Plenty of bug fixes and adjustments. Migrations should make sure to move over all data properly.
2011-04-23 11:54:08 +00:00
Griatch
6eff51de20
OBS: Migration needed(objects, scripts, players). This resolves issue 136 by allowing database objects to be nested in lists and dictionaries as
...
attributes on objects. Behind the scenes, only the DBREF is stored since storing dbobjects cannot be pickled. One used to be able to store single objects this way, but objects hidden in nested iterable structures were not found. Note that ONLY lists and dictionaries are supported to store on attributes - custom iterables will be stored and retrieved as a generic list instead - this is a tradeoff to be able to store database objects.
To migrate, give the following commands from game/:
migrate.py migrate objects
migrate.py migrate scripts
migrate.py migrate players
2011-04-05 23:28:40 +00:00
Greg Taylor
d2d86871e9
Rig up south to be happy with two of our models that FK to one another circularly.
2011-03-24 21:07:09 +00:00
Griatch
9b9f90d91c
gtaylor convinced me to add migrations to the Evennia repo. This means that game/migrate.py is no more. The migrations will help you to adjust your database when Evennia releases a new database change, no need to drop the database or manually adjust tables. To make use of our schema migrations, you need to have Django-South installed.
...
To convert to django-south operations, easiest is if you are willing to drop your old database (e.g. delete evennia.db if you use default sqlite3). Then do: "game/manage.py syncdb" followed by "game/manage.py migrate". That should do it. If you ever deletes your database, just rerun those two commands.
If you want to convert an existing database, do
game/manage.py convert_to_south comms
game/manage.py convert_to_south config
game/manage.py convert_to_south help
game/manage.py convert_to_south objects
game/manage.py convert_to_south players
game/manage.py convert_to_south scripts
In the future, you will then be able to do ./manage.py migrate when we tell you the schema has changed.
2011-03-21 00:53:58 +00:00