Griatch
c0322c9eae
Cleaning some unnecessary whitespace, overall cleanup of various source codes.
2012-03-30 23:47:22 +02:00
Griatch
b9c6c4a6c2
Killing a bug that caused issues with migrations.
2012-03-25 22:30:51 +02:00
Griatch
7c4e0213ce
Fixed a bug since CmdCreate changed name to CmdUnloggedinCreate (to avoid name clashes in API)
2012-03-25 19:59:53 +02:00
Griatch
bdb5ab0123
Removed @ps command, it is superceded by @serverload and was just a placeholder anyway.
2012-03-25 18:47:31 +02:00
Griatch
07a17ac15e
Added ev API support to @py command.
2012-03-25 18:36:23 +02:00
Griatch
88c0087fbd
Updated game/ for the ev API. There will likely be some changes happening in the game/folder, in the way new objects are inherited. This should use the API rather than inherit from the basecommand/baseobject modules (these will probably into the example folders as vanilla templates instead).
2012-03-25 13:09:17 +02:00
Griatch
0d01462077
Adding a new API system to Evennia. This centralizes all access of the evennia driver through a single module "ev". Importing ev one should be able to access (and also importantly, easily explore) Evennia's API much easier. This API goes a long way to "flatten" the structure so that one doesn't need to remember how to find some method in a deeply nested subdirectory.
...
As part of this work, I have also written full listings of all available properties on Typeclassed objects (including those inherited in various ways). Should hopefully make things easier to find.
One can of course still import things directly from src/ as before. But this is a first step towards removing the "base" objects in game/gamesrc and instead making those accessible through the core API.
2012-03-24 23:02:45 +01:00
Griatch
8ada50fcb7
Adding more lenient checks of TTYPE to avoid a visible traceback. The error with TTYPE utf-8 tracebacks seems to be in an older version of tintin++, newer versions don't show this behaviour. Older versions of tintin++ will display one Huh? (with logged traceback) after which everything will work. This is reported in issue 219.
2012-03-21 19:56:04 +01:00
Griatch
6aac9e6c2b
Fixed permission on @batchcode command.
2012-03-21 11:46:15 +01:00
Griatch
1ca8df9e70
Fixed issues with batch-code processor not working correctly. Also added some better parsing. Resolves issue 221.
2012-03-20 22:29:37 +01:00
ploosh
f09bfdf1d6
Fixed pose command to echo in room only if a pose is actually struck
2012-03-17 03:22:52 -04:00
Griatch
f46a9a1280
Cropped @batchcommand output better. Resolves issue 217.
2012-03-14 21:03:28 +01:00
Griatch
5beee55149
Added ability of @set command to actually store real Python types, not just strings.
2012-03-13 23:56:19 +01:00
Griatch
aae67225a4
Added auto_help as a class property on Commands. This allows to turn on/off auto-help generation on a per-command basis (default is on).
2012-03-13 22:07:51 +01:00
Griatch
690bfadd9d
Added arg_regex, an optional Command class-method for customizing how commands are identified by using a regex to enforce a specific look/grammar to the command argument. Discussed and suggested in issue 213.
2012-02-27 20:56:01 +01:00
Griatch
fb0d77c794
Added caching for aliases.
2012-02-25 23:56:31 +01:00
Griatch
631020d8a2
Some small fixes to the help command.
2012-02-25 18:24:30 +01:00
Griatch
9e2380decd
Added ' as an alias for the "say" command, common in many muds.
2012-02-22 21:39:27 +01:00
Griatch
562a32107e
Added more yields to cmdhandler, removed unnecessary callback to return.
2012-02-22 16:00:41 +01:00
Griatch
641d829154
Added inlineCallback operator for cmdhandler, allowing the system to yield more often.
2012-02-20 21:40:28 +01:00
Griatch
6fdfbe657b
Changed the flag save_next to save_for_next, it makes more sense.
2012-02-17 19:02:57 +01:00
Griatch
6e53e6a1fd
Added state persistence to commands. For commands that want to, their state will be saved for the next command to access through the self.caller.ndb.last_cmd variable. The state only persists one command before it is cleared or replaced.
2012-02-17 18:53:47 +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
d36a79b2cc
Went over the Command class' basic methods, cleaning up and optimizing while still trying to keep things clean, such as using cleverer loops and try...except instead of if statements. Also cleaned up the way attributes are retrieved. Results in roughly a halving of the time that the code spends in the command.py module.
2012-02-06 00:59:41 +01:00
Griatch
cdab5a240b
Added RSS feed support to Evennia. This uses the @rss2chan command to tie a feed to an in-game channel. Updates to the feed will henceforth be echoed to the channel. The reader requires the python-feedreader package to be installed.
2012-01-28 20:12:59 +01:00
Griatch
ae251d3892
Fixed an error in the help for @ban.
2012-01-27 23:56:17 +01:00
Griatch
1d40f688e5
Added the @ban and @unban commands to the default command sets, allowing an admin to filter access from users without outright deleting their accounts. The ban list is stored in the database, but the checking is not hard-coded in the server/portal, but done in the normal login command(s), meaning it can be customized easily. Also contrib/menu_login has been updated to check for banned connections.
2012-01-27 23:53:03 +01:00
Griatch
fb78758356
Implemented working MCCP (data compression) and MSSP (mud-listing crawler support). Moved all user-level customization modules from gamesrc/world to gamesrc/conf to reduce clutter.
2011-11-20 11:52:01 +01:00
Griatch
68f0a236cb
Fixed an issue with using WHO when users where OOC. Also made the @ic command able to look for objects globally.
2011-11-14 19:13:30 +01:00
Griatch
f950cd8b94
Red button commands lacked proper locks, causing non-privileged chars to not have access. Fixed.
2011-11-09 09:53:57 +01:00
Griatch
a3e4e44a61
Fixed a bug in the creation mechanism.
2011-11-09 09:11:56 +01:00
Griatch
3e8b43d222
More fixes and cleanup in wake of ic/ooc changes.
2011-11-06 23:55:24 +01:00
Griatch
703accdd60
Added an error_check_python_modules function to evennia.py. This basically imports a host of critical modules and quits with tracebacks if there are problems. This catches pure python-syntax errors (i.e. cases where the source-file itself is malformed), something which is hard to properly handle in the running server (where there's also an issue as to how to best report it). Best they fail out already at an early stage.
2011-11-06 21:32:00 +01:00
Griatch
55f6f5b713
Contrib: Added a new, alternative login system, using menus. Also edited the ways unlogged commands are started by the engine, by using a standardized system command name (it does not need to be "look" anymore).
2011-11-06 18:53:10 +01:00
Griatch
2b2d27ed39
Changed the way unloggedin commands work. Rather than the cmdhander having a special state for unlogged-in commands, the session itself simply stores the cmdset from settings.CMDSET_UNLOGGEDIN. Clean and efficient and also gives a lot more freedom for creating custom login mechanisms (notably it opens the door to using menu systems).
2011-11-06 17:38:29 +01:00
Griatch
e7b46c89b4
Added the ability for the Command.func() method to return a value. This allows to potentially do e.g. value = caller.execute_cmd('cmdname'). Not used at all by default commands nor the engine itself, but potentially useful for admins wanting to implement some sort of 'nested' command structure, maybe using a custom input language.
2011-10-27 10:18:18 +02:00
Griatch
7195e1e773
Minor fixes to create command.
2011-10-16 00:40:11 +02:00
Griatch
70b4b559a5
Fixed a typeclass access bug in @find. Resolves issue 199.
2011-10-10 09:14:50 +02:00
Griatch
aee147102b
Gave better error messages when a player typeclass has bugs and thus won't load. Also made a better solution for hiding new characters from the start room when first being created (also makes sure that character.location never starts as being None, recovering back to home in that case).
2011-10-09 16:32:55 +02:00
Griatch
2c4af9076d
Made some commands sensible to the new form of obj.typeclass (it's not a typeclass instance, not a class). Changed the way TypedObject.swap_typeclass works, so as to properly manage failures.
2011-10-03 23:53:23 +02:00
Griatch
bc0195bbaa
Worked with admin interface, cleaning up and adding functionality. There are still some strange behaviour that makes e.g. the presence of inlines to auto-create empty database objects for some strange reason. Inlines are turned off at the moment (so there is no convenient way to add attributes from the admin interface at this time). Creating players now work, but one needs to create all three components (User, Player, Character) in one go and tie them together. The User-admin form was changed to also support multi-word usernames (django default didn't allow spaces).
2011-10-02 22:37:07 +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
c8d2e3d6a2
Fixed some issues with the @script command.
2011-10-01 13:13:48 +02:00
Griatch
ecf11b38cd
Fixed an issue with the locks not getting properly set on rooms.
2011-09-20 13:44:26 +02:00
Griatch
475361ad28
Added functionality to Attributes to store and update dicts and lists dynamically. One side effect of this is that dicts and tuples need to be stored as custom object types which means that e.g. isintance(obj.db.mylist) == type(list) will return False. In order to do checks like this, use src.utils.utils.inherits_from() instead. The Attribute system now also supports tuples. All other iterables except dicts, lists and tuples are stored and retrieved as lists, same as before.
...
This fixes issue 189.
2011-09-20 12:37:45 +02:00
Griatch
1995f61d46
Put up a warning about not using BaseObject.at_init() at this time (it's not called, as per issue 188). Also removed the deprecated at_cache() hook (it doesn't work anymore now that the caching system is much more efficient and only caches once).
2011-09-15 10:46:41 +02:00
Griatch
5a2b9e27a0
Resolves issue 187.
2011-09-09 23:58:51 +02:00
Griatch
f8234ec932
Updated docstring for cmdhandler to better reflect the current functionality.
2011-09-08 11:59:19 +00:00
Griatch
7237be87c6
Fixing typo in lock definitions for @dig as well as docstrings. Patch by sergi.reyner. Resolves issue 186.
2011-09-08 10:41:55 +00:00
Griatch
bc587dfd0c
Fixed bug in get command that let you pick something up several times.
2011-09-04 07:27:11 +00:00