Commit graph

698 commits

Author SHA1 Message Date
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
cdd24bd6f2 Fixed some leftover inconsistenciesin lockhandler, thanks to Shell pointing it out. 2012-09-30 15:42:30 +02:00
Griatch
110207fd7f Also tweaked scripts- and player managers to handle id=0. 2012-09-29 17:12:16 +02:00
Griatch
33c15e99d2 Added a check to allow obj.search to also search for 0. 2012-09-29 16:24:47 +02:00
Griatch
a347252407 Added the ability to clean the attribute_cache on a per-object bases using obj.flush_attr_cache(). 2012-09-29 16:02:43 +02:00
Griatch
a8dcfff248 Fixing the strange edge-case of trying to define a command with the same alias being defined multiple times or aliases being the same as the command key. This is now excluded at the Command metaclass level. 2012-09-29 10:52:31 +02:00
Griatch
f95198fbdb Merge commit. Resolvs Issue 273. 2012-09-29 10:05:59 +02:00
lagos
359ffdd28f Modifies cmdparser to not apply case-sensitive match filtering if it eliminate all results. 2012-09-29 00:34:52 -07:00
Adam_ASE
28912a4c99 CmdUnconnectedCreate() in unloggedin.py was setting default character descriptions after character hooks and so overwriting attempts to set desc elsewhere. Added check to see if new_player.db.desc is already set. 2012-09-28 23:41:07 -04:00
Griatch
4944a589cc Cleaned up and fixed problems in searching by attribute-value. Resolves Issue 267. 2012-09-29 00:09:55 +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
ed60c3046f Merging mainline changes. 2012-09-28 00:25:53 -07:00
Griatch
9a3562148a Reverting indexing of objattribute.db_value; it is a highly db-incompatible change, and also lacking the possibility to create unique indices with unclear results. 2012-09-28 09:08:43 +02:00
lagos
fe54326d5f Merging mainline changes. 2012-09-27 23:27:45 -07: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
b0ac916b9a Obs-run migrations! Added an index to the ObjAttribute's values. 2012-09-28 00:14:29 +02:00
Griatch
c819cdc2a6 Added a change to get_objs_with_attr_values that means simple python lookup values will be searched for directly in the database by pickling the input argument in the form used by Attributes. This should lead to a more efficient attrvalue lookup for larger databases (as long as value is a string, int or float and not a compound object, at which the lookup is continuously done in two steps filtering through the Attribute value mechanism. 2012-09-28 00:02:31 +02:00
Griatch
14cc2e0f97 Removed global search for setting @aliases. Resolves Issue 264. 2012-09-27 22:23:05 +02:00
Griatch
56c28f7e44 Fixed a strange typo in object-manager's get_attribute_with_value(). Also implemented a few further suggestions and fixes to object search. 2012-09-27 22:18:46 +02:00
Griatch
59ccd3eb38 Fixed a bug in exact search pattern matching. 2012-09-27 21:29:01 +02:00
Griatch
60e3f5f172 Fix to @set reducing errors during building using strings without using quotes. 2012-09-27 21:02:43 +02:00
Griatch
0b102bb07b Fixed @batchcommand access, automatically disabling procpool under SQLite3. 2012-09-27 20:51:06 +02:00
Griatch
b28d67534b Temporarily disabling procpool for @batchprocess to fix a traceback when building. 2012-09-26 08:34:54 +02: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
7d4bf6c8d2 Fixes a bug in scriptmanager. Resolves Issue 259. 2012-09-25 07:42:52 +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
a30029472b Fixes @set to be more accepting of various Python structures. It will now instead convert to string on a ValueError (commonly because a string was not enclosed in quotes) while giving a error string to the user informing of this. This should fix Issue 256. 2012-09-22 22:16:30 +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
f677902811 Fixed a bug with setting a location to None. 2012-09-22 13:37:22 +02:00
Griatch
4dbdf680a1 Removed a nested _GA that made made lookup fail in players.models.player_search(). Thanks to Kelketek for pointing this bug out. 2012-09-22 10:23:42 +02:00
Griatch
e874343387 Adjusted search() functionality to handle also a list of location(s) to search. Changed "get" command to not search inventory (which could lead to multimatch errors). 2012-09-21 08:36:59 +02:00
Griatch
8ad58a3e19 Merge. Resolves Issue 254. Resolves Issue 255. 2012-09-21 08:17:27 +02:00
Adam_ASE
e748d6d5ae Addressing original issue 254 - Fixed DROP command multi-match error for similarly or identically
named items when one or more of the items are at the location but not in
character's inventory.
2012-09-20 23:50:34 -04:00
Griatch
de3d1f4a22 Minor adjustment to the __contains__ cache of cmdsets. 2012-09-21 00:15:04 +02:00
Griatch
c0b03c2ee3 Some further removal of recursive loops in the typeclass system. 2012-09-20 23:18:52 +02:00
Griatch
dc4340b34e Bugfix for latest optimization. 2012-09-20 03:01:30 +02:00
Griatch
5b88972523 Turning back more reasonable dummyrunner settings. 2012-09-20 02:56:41 +02:00
Griatch
7a130cb442 Removing some of the last self-reference loops in object.models, based on profiling. 2012-09-20 02:52:21 +02:00
Griatch
4bd3be334d Added a warning to @delete command if trying to delete CHARACTER_DEFAULT_HOME (Limbo by default). 2012-09-20 01:42:51 +02:00
Griatch
4c83d3e7a1 Various speed optimizations in various places, following further profiling. 2012-09-20 00:47:28 +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
ee450a4fed Fixed a bug in the search method causing it to fail for commands ignoring the error handler (such as drop). Resolves issue 252. 2012-09-18 21:48:41 +02:00
Griatch
0dae03156c Some optimizations, cleanup and a few bugfixes. Just changing a spurious property retrieval in the typeclass removed an extra, pointless database query. 2012-09-18 01:03:35 +02:00
Griatch
160d4a2807 Minor typo cleanups. 2012-09-17 22:16:18 +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
c53a9b5770 Changed how Objects are searched, using proper Django Q objects instead of hack-y evals to build queries. This has lead to a number of changes to the ObjectDB manager search. Notably there is now no way to supply a "location" to either of the manager search methods anymore. Instead you can now supply the keyword "candidates", a list of objects which should be used to limit the search. This is much more generic than giving location. The higher-level search (like caller.search, reached from commands) have not changed its API, so commands should work the same unless you are using the manager backbone directly. This search function is now using location to create the "candidates" list. Some other things, like matching for "me" and "here" have also been moved up to a level were it can be easily overloaded. "me" and "here" etc were also moved under i18n.
As part of this overhaul I implemented the partial_matching algorithm originally asked for by user "Adam_ASE" over IRC. This will allow for (local-only) partial matching of objects. So "big black sword" will now be matched by "bi", "sword", "bi bla" and so on. The partial matcher sits in src.utils.utils.py if one wants to use it for something else.
2012-09-17 15:31:50 +02:00
Griatch
cc6fa079b6 Added some more functionality to the copy method of objects, as well as some minor fixes. 2012-09-11 23:47:29 +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
d1e0836d23 Minor fix to evaluate with _return in ProcPool execution. 2012-09-03 23:47:50 +02:00