Commit graph

  • 7d4bf6c8d2 Fixes a bug in scriptmanager. Resolves Issue 259. Griatch 2012-09-25 07:42:52 +02:00
  • d535d77811 Restructed terminal output from Server and Portal to allow external plugin-services to cleanly add their info at startup. Griatch 2012-09-22 23:18:29 +02:00
  • 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. Griatch 2012-09-22 22:16:30 +02:00
  • 23ba17debe Set procpool debug status to False by default. Griatch 2012-09-22 21:42:05 +02:00
  • b83adba9c3 Some more documentation and cleanup of the procpool contrib. Griatch 2012-09-22 21:38:29 +02:00
  • 102705902f Fixed some more things in the moved procpool. Griatch 2012-09-22 21:14:17 +02:00
  • 4855558cc7 Adding the relevant files for running procpool from contrib. Griatch 2012-09-22 20:43:53 +02:00
  • 93d95377ce Shifting ProcPool out of src and into a contrib, using the service plugin system. Griatch 2012-09-22 20:40:30 +02:00
  • f677902811 Fixed a bug with setting a location to None. Griatch 2012-09-22 13:37:22 +02:00
  • 4dbdf680a1 Removed a nested _GA that made made lookup fail in players.models.player_search(). Thanks to Kelketek for pointing this bug out. Griatch 2012-09-22 10:23:42 +02:00
  • 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). Griatch 2012-09-21 08:36:59 +02:00
  • 8ad58a3e19 Merge. Resolves Issue 254. Resolves Issue 255. Griatch 2012-09-21 08:17:27 +02:00
  • 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. Adam_ASE 2012-09-20 23:50:34 -04:00
  • de3d1f4a22 Minor adjustment to the __contains__ cache of cmdsets. Griatch 2012-09-21 00:15:04 +02:00
  • c0b03c2ee3 Some further removal of recursive loops in the typeclass system. Griatch 2012-09-20 23:18:52 +02:00
  • dc4340b34e Bugfix for latest optimization. Griatch 2012-09-20 03:01:30 +02:00
  • 5b88972523 Turning back more reasonable dummyrunner settings. Griatch 2012-09-20 02:56:41 +02:00
  • 7a130cb442 Removing some of the last self-reference loops in object.models, based on profiling. Griatch 2012-09-20 02:52:21 +02:00
  • 4bd3be334d Added a warning to @delete command if trying to delete CHARACTER_DEFAULT_HOME (Limbo by default). Griatch 2012-09-20 01:42:51 +02:00
  • 4c83d3e7a1 Various speed optimizations in various places, following further profiling. Griatch 2012-09-20 00:47:28 +02:00
  • 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. Griatch 2012-09-18 22:52:33 +02:00
  • ee450a4fed Fixed a bug in the search method causing it to fail for commands ignoring the error handler (such as drop). Resolves issue 252. Griatch 2012-09-18 21:48:41 +02:00
  • 0dae03156c Some optimizations, cleanup and a few bugfixes. Just changing a spurious property retrieval in the typeclass removed an extra, pointless database query. Griatch 2012-09-18 01:03:35 +02:00
  • 160d4a2807 Minor typo cleanups. Griatch 2012-09-17 22:16:18 +02:00
  • 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. Griatch 2012-09-17 19:19:20 +02:00
  • 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. Griatch 2012-09-17 15:31:50 +02:00
  • cc6fa079b6 Added some more functionality to the copy method of objects, as well as some minor fixes. Griatch 2012-09-11 23:47:29 +02:00
  • 3c96dc9cc9 Fixed a too-inclusive .hgignore file as well as some other fixes. Griatch 2012-09-07 19:31:51 +02:00
  • d1e0836d23 Minor fix to evaluate with _return in ProcPool execution. Griatch 2012-09-03 23:47:50 +02:00
  • 5348563bfb Some fixes to dummyrunner. Griatch 2012-09-03 22:29:01 +02:00
  • 047de533f3 Moved dummyrunner into a separate directory under src/utils Griatch 2012-09-03 21:54:13 +02:00
  • d5c1d35406 Cleaning up some ampoule outputs. Griatch 2012-09-03 21:47:22 +02:00
  • 2481a9b493 Minor bugfix Griatch 2012-09-03 21:36:41 +02:00
  • 12523c81b6 Some fixes for using evlang without ProcPool. Griatch 2012-09-03 21:33:03 +02:00
  • 81dfeb6788 Added per-process timeout capability to run_async. Also changed contrib/evlang to use run_async Griatch 2012-09-03 21:16:54 +02:00
  • 5c6ee44039 Modified contrib/evlang to optionally make use of ProcPool multiprocessing. Griatch 2012-09-03 19:21:04 +02:00
  • ffcf4b3c2f Added cache-resyncing to ProcPool. This makes sure to update all affected object caches whenever the subprocess returns (this is potentially not good enough for long-running scripts, will have to ponder that one). Made ProcPool work with MySQL (where it works much better). Tested and fixed many small bugs. Griatch 2012-09-03 01:11:14 +02:00
  • 275d00d4db Some more usability additions to the ProcPool system. Also made it default to turned off when SQLite3 is used - SQLite3 doesn't support multiple processes. Griatch 2012-09-02 18:57:25 +02:00
  • 575d7a86fa Made run_async also handle function calls through the ProcPool. Griatch 2012-09-02 16:54:07 +02:00
  • e25ac1e46b Changed run_async to properly relay remote error messages to the user-supplied errback. Griatch 2012-09-02 16:14:08 +02:00
  • 056fee5c70 Changing all text files to explicitly have .txt endings. This helps online code browsers to properly identify the files. Griatch 2012-09-02 13:05:47 +02:00
  • af99a80b4b Added procpool functionality for sending arbitrary data over the wire (including nested databaseobjects). Rules are similar to Attribute saving. Adding a missing component to the procpool setup. Griatch 2012-09-02 12:53:11 +02:00
  • 3ebeab5689 Changed ProcPool to be turned off by default, while testing. Griatch 2012-09-02 10:13:10 +02:00
  • f5a889e40c Added new process-pool runner based on AMPoule (integrated into Evennia). This allows e.g. utils.utils.run_async to offload long-running functions to a completely different subprocess entirely, offering real parallelism. Griatch 2012-09-02 10:10:22 +02:00
  • dcc7f29a91 OBS: run migrations! This changes the Msg model to work with ManyToManyFields rather than with custom string representations for storing multiple receivers or channels. It also expands the Msg object with a "title" field and various filter options. This should make it easier to implement mail-like operations using the comms system. Griatch 2012-08-30 00:05:00 +02:00
  • 7995c91eee Fixed a regression in the install process with south. Griatch 2012-08-28 11:18:08 +02:00
  • f68523cc22 Minor optimizations and some fixes to the dummyrunner. Griatch 2012-08-22 22:34:43 +02:00
  • 5117bd2a0a Minor fixes and reducing some sql calls in various managers. Griatch 2012-08-22 16:15:52 +02:00
  • 4edde61be4 Minor cleanups and a fix to manage.py that lead to a traceback if running without arguments. Griatch 2012-08-22 13:28:38 +02:00
  • f5caab093e Fixed a spurious error messages from the location setter when logging out (need to check None location) Griatch 2012-08-19 21:36:01 +02:00
  • a35fd9018e Made some test system fixes, killing unclear fails (it seems to have been a change in the way the django test system handles instances, there are a bunch of false fails. For now, I'm hiding the failing ones, just running the command itself to make sure it runs as it should. Griatch 2012-08-19 19:20:48 +02:00
  • 5e33690f40 Optimization: Added caching of object contents. This makes obj.contents not have to hit the database at all. So far there are no regressions from this, but time will tell if there are any problems. Griatch 2012-08-19 18:48:29 +02:00
  • cc88d38ab6 Some optimizations towards speeding up getting the contents of a location. Griatch 2012-08-19 11:45:13 +02:00
  • 1dee271fc7 Removed a bug in property cache that disabled the cache if the property was null (e.g for player lookups) Griatch 2012-08-19 11:15:22 +02:00
  • 8a44daef7e Further changes to allow dbrefs to be 0. Griatch 2012-08-18 23:35:11 +02:00
  • 889708cf07 Make object search handle a dbref=0. Griatch 2012-08-18 23:17:14 +02:00
  • 327cfc5098 Changed default permission of objects so as to not have 'control' permission of themselves. As user Kelketek pointed out, this could be a possible exploit. At any rate there is no need for objects to have control of themselves. Griatch 2012-08-18 20:20:42 +02:00
  • a2e7246d15 Changed so deleting a PlayerDB object will automatically also destroy its connected User object. Griatch 2012-08-14 00:40:48 +02:00
  • 891dcbbf9c Changed mux-login to email-login since the old system didn't actually have anything to do with MUX as I erroneously assumed. Griatch 2012-08-13 20:55:46 +02:00
  • bc34a76173 Changed default login from email+password to the more familiar username+password. The old system has been moved to contrib/mux-login.py. This change was done due to the need for an email seems counterintuitive to many new developers, giving the impression that it is actually required by django (it is not, rather it was supposedly similar to MUX). Griatch 2012-08-13 20:25:46 +02:00
  • da0598bcc3 Contrib: Barter system. This is a full-fledged barter system for handling goods exchange between two parties in a controlled way. Both sides may change their offers and argue both free-form and as part of decisions. Once both agree, goods automatically changes hands. Griatch 2012-08-12 10:48:07 +02:00
  • 0d1f9d5bdc Fixed a bug in object's __eq__ that returned erroneous fails. Griatch 2012-08-12 09:55:19 +02:00
  • 2a2b3b5ce6 Contrib: Dice-roller module. This has an easy interface and supports normal dice nomenclature as well as modifiers and conditionals. An in-game command "dice" (or "roll") is also supplied. Griatch 2012-08-09 20:13:01 +02:00
  • 724027d134 Optimizations: Removed unnecessary lookups when comparing objects with the = operator (used a lot in moving and messaging) Griatch 2012-08-02 17:03:26 +02:00
  • 563361a676 Added small warning for using the django test server (which of course knows nothing about running the web client). Griatch 2012-08-02 15:21:23 +02:00
  • 9921d9b28c Some minor fixes and cleanups in runner.py. Griatch 2012-07-07 01:52:53 +02:00
  • c301ec4922 Putting the game/logs directory under version control since it seems some users don't auto-create this at server-start. If you see problems with an already existing game/logs directory upon pulling this commit, remove the old one first (saving away old logs if necessary). Griatch 2012-07-06 10:09:53 +02:00
  • 35acad6162 Fixed a bug in @deluser when booting an already logged-in player. Griatch 2012-06-29 07:51:59 +02:00
  • ec4c29b592 Fixed a bug in @delplayer. Griatch 2012-06-29 07:34:34 +02:00
  • d50d28f960 Another fix to the extended room, a bug that caused some parsings not to happen. Griatch 2012-06-28 23:08:40 +02:00
  • dff64215a2 Fixed a bug in the @link command. Griatch 2012-06-28 22:50:53 +02:00
  • f54e6b22c1 Further fix to extended room. Griatch 2012-06-28 21:51:41 +02:00
  • 55634de123 A fix to extended_room, for when used as default mixed with other room types. Griatch 2012-06-28 21:39:13 +02:00
  • ae65438c9b docs: Adding missing rest pages to mercurial. Griatch 2012-06-26 18:26:59 +02:00
  • f95fac1f51 Adding contents file for an alphabetical index in the reST docs. Griatch 2012-06-26 18:19:10 +02:00
  • f2d9b81d09 Changed format of reST conversion slightly. Griatch 2012-06-26 18:12:38 +02:00
  • ae0f7a04c5 Updated and cleaned the wiki2rest converter. The ReST documentation should look a lot better now, with less weirdness. Using a python google-code snippet to convert now, so no more need for third-party ruby downloads! This should transfer to readthedocs shortly. Griatch 2012-06-26 17:45:12 +02:00
  • 43f16094c1 Contrib: Added a "time" command for viewing the time info on ExtendedRooms. Also added more listing functionality to the Extended @desc command. Griatch 2012-06-26 09:13:23 +02:00
  • 5a1642ab32 Small fix to seasonal rotation in extended room contrib. Griatch 2012-06-26 01:40:52 +02:00
  • 0e9b27cc01 Contrib: Extended Room typeclass, with time-dependent desc slots (season and time-of-day), as well as a "details" system for adding visual interest or clues to the room wihout having to create new database objects. The extended room is supported by expanded "look" and "@desc" commands. Griatch 2012-06-26 01:33:30 +02:00
  • ca0920e635 Added "raw_string" (unformatted, no stripping) as a property on commands, inspired by work by user Kelketek. Griatch 2012-06-23 11:03:16 +02:00
  • f0f240b7ce Fixed a bug in sessionhandler that erroneously caused Portal sessions to not be deleted properly at user @quit. This caused the session to be copied back to the Server side after a reload (caused "ghost" connections in e.g. the "who" command). Resolves Issue 244. Griatch 2012-06-20 23:48:19 +02:00
  • 7dcfdc4d4b Fixed a minor typo in docstring for ObjectDB.__db_get: To view all Attributes one uses obj.db.all, not obj.db.all(). Griatch 2012-06-20 23:22:26 +02:00
  • 44bf35cd81 Make sure to forward no_channels, no_objs and no_exits flags across cmdset merges. Also changes how system commands are saved across merges. Resolves Issue 243. Griatch 2012-06-20 21:16:34 +02:00
  • c2961ce5e2 Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Added some more info to the default settings file in src/. Griatch 2012-06-16 15:33:05 +02:00
  • 9e2ad59663 Added a fix for running with postgresql-psycopg2. This does not actually resolve the problem as much as circumvent it, so I'm not marking Issue 115 as closed just yet. Griatch 2012-06-16 14:51:22 +02:00
  • f15e26c54a Fix of migration to remove a bogus FATAL error during migration. This also fixes a one error in the chain of errors reported by postgresql databases (those still fail on a latter point, alas). Griatch 2012-06-14 21:10:40 +02:00
  • 2d46d0306b Some more i18n strings added; also updated swedish translation. Griatch 2012-06-14 08:56:57 +02:00
  • 4c849ec351 Cleaned and updated the i18n strings for various server-core system. Removed i18n for all strings that are only visible on stdout or in logs. Still missing i18n on certain specific things such as model field help and attribute warnings. Updated Swedish translation to match. Griatch 2012-06-14 02:43:35 +02:00
  • 80da420ee7 Merge, with input and tweaks from discussion with lagos and Kelketek in irc. Griatch 2012-06-13 01:36:59 +02:00
  • dfa0ced4e5 Some further cleanup of readmes. Griatch 2012-06-13 01:07:09 +02:00
  • 9290cf2c0c Fixed an issue where improper substitution would cause extra newline characters for MCCP clients. This made them effectively press return twice on each command. Kelketek 2012-06-12 17:51:10 -05:00
  • 98a5f11159 Merge. Griatch 2012-06-12 21:04:50 +02:00
  • 5f8cc5e3a6 Small fix to batchprocess output. Griatch 2012-06-12 21:03:30 +02:00
  • 1c4c3a4217 chargen.py uses managers instead of db_objects. lagos 2012-06-12 08:09:15 +00:00
  • 2729369027 Fixes two typos in sample code for evlang. lagos 2012-06-12 07:35:50 +00:00
  • 58e20e2cf1 Added contrib "evlang", an experimental highly restricted Python code environment. It's intended to be used by untrusted users to add custom code e.g. to their crafted objects and similar. Please heed the warnings in the README file - this is experimental still and more people need to play with it and try to break it. Griatch 2012-06-10 22:16:46 +02:00
  • 3d24ee2242 Added a secure_attr() method to the base typeclass. This allows for system to access attributes with full access control (since it requires an accessing_obj as argument). This relies on (by default unused) lock types "readattr" (reading/listing the attr value), "editattr" (editing/deleting the attribute) and finally "createattr" for creating a new attribute. The first two checks are done directly on the Attribute class whereas the createattr check is done on the TypedObject on which the Attribute is to be stored. Griatch 2012-06-10 21:46:00 +02:00
  • 5f043d28d7 Minor cleanups of code. Griatch 2012-06-10 11:16:00 +02:00
  • dc67b6b87c Added a lock funcion self(), passing only if accessing_obj == accessed_obj. This is potentially useful for Objects who want to lock cmdsets and make them only available to themselves without having to know their id value in the lockstring. Griatch 2012-05-24 21:44:07 +02:00