Commit graph

61 commits

Author SHA1 Message Date
Griatch
2b3a32e447 Reshuffling the Evennia package into the new template paradigm. 2015-01-06 14:53:45 +01:00
Griatch
70da53569d Removed .typeclass and .dbobj references in codebase. 2015-01-02 20:48:34 +01:00
Griatch
1130dc5757 Started to go through the unittest errors, fixing player creation. 2015-01-02 19:01:09 +01:00
Griatch
f35b5e2038 Fixed so CmdIRC2chan correctly handles deletion by botname and not just by dbref. Resolves #572. 2014-09-15 23:37:35 +02:00
Duarte Cordeiro
6799106333 Fixes issue #579 2014-09-15 14:50:19 +01:00
Griatch
6304e7a068 Fixed errors when disconnecting from channels. Resolves #560. 2014-08-31 08:56:28 +02:00
n0q
b9661c5c96 Guest Functionality
Allows for guest logins by entering 'connect guest' at the login screen.
Cleans up after itself but does not yet clean up stale guests from a
system crash.
2014-07-06 16:46:02 -04:00
n0q
b092d29989 Fixed page command to properly repage
Page command was attempting to first page players, then repage players,
then repage chracaters, then fail. Should reliably repage players, now.
Does not permit paging characters.
2014-06-28 18:27:58 +02:00
Griatch
53b204bb76 Fixed code to pass unittests. Change script's is_valid method to correctly catch if it is checked on an object which is already deleted, as per #509. 2014-06-15 13:19:38 +02:00
Griatch
e45160a12b Changed some defaults of EvTable. Made EvTable handle clist command. Resolves #426. 2014-04-20 23:45:19 +02:00
Griatch
96f26098d1 Fixed comm-related unittest failures 2014-03-09 20:23:14 +01:00
Griatch
97991a2238 Implemented RSS feed reader along with updated rss2chan command. 2014-03-08 11:42:35 +01:00
Griatch
f126d30b36 More cleanup of irc bot code, including having it cleanly disconnect from irc channel when destroyed. 2014-03-08 11:41:24 +01:00
Griatch
7bde8afe66 Added maxwidth argument to evtable, for restricting upper width of table, but allowing it to resize if narrower. 2014-03-08 11:41:24 +01:00
Griatch
0d071ec75f Updating the irc2chan command 2014-03-08 11:41:24 +01:00
Griatch
6c45d76b56 Made irc bot connect, but scripthandler lookup is causing traceback when searching for a player) 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
75ef743297 Made a first version of command IRC2Chan, server starts but no more testing yet. 2014-03-08 11:41:23 +01:00
Griatch
2b1cb1c6ce Run migrations. Migrated channels to use m2m field rather than the ChannelPlayerConnection model. 2014-03-08 11:41:23 +01:00
Griatch
bc8ce9f394 Fixed command auto-help strings to make it look better in the cmdhelp wiki page 2014-02-12 15:05:17 +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
3430aa9eae Fixed bug in delcom. 2013-10-21 22:51:16 +02:00
Griatch
4c650a44a6 Fixed up some channel-related errors and made unittests run again. 2013-10-18 21:01:53 +02:00
Griatch
a1646ec596 Fixed an issue with a CmdClock not being a part of the __all__ module handle (this causes ev.py to fail to import it) 2013-10-18 15:09:03 +02:00
Kelketek
48bcb9d0ba Useful default typeclass for channels added. Handles poses and provides interfaces for external messages and internal alike. 2013-09-29 13:11:10 -05:00
Kelketek
851e6d00cc Turned comms into typeclassed objects. 2013-09-28 22:23:30 -05:00
Griatch
39b69dcdc2 Fixed a migration issue with PostGreSQL. 2013-09-26 09:01:27 +02:00
Griatch
2ba16e155e Fixed a bug in amp that made reloading not work. 2013-09-21 22:00:46 +02:00
Griatch
e36c7d5cc1 Cleaned up worst instability. Test suite does validate yet. 2013-09-21 17:33:48 +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
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
31410f5710 Merge from Kelketek clone. 2013-06-03 16:28:38 +02:00
Daniel Benoy
c10a02f713 Fixed security hole checking channels with @cwho 2013-06-02 06:53:57 -04:00
Kelketek
7623b1a863 Fixed #379. Addcom no longer crashes when used IC. 2013-06-01 07:22:46 -05:00
Griatch
bd9421d4b0 Implemented unittests for all default commands in a new and much faster way. 2013-05-12 19:53:19 +02:00
Griatch
8969017aaa Added prettytable (http://code.google.com/p/prettytable/) as a replacement for utils.format_table and updated almost all places where the old formatter was used. The code becomes much simpler and shorter with prettytable, there are some situations, such as the contrib/menusystem where the old format_table works well for dynamically creating any number of columns and rows on the fly. 2013-04-12 22:06:41 +02:00
Griatch
0fddf433dc Updated all Player-level commands to properly relay messages using self.msg rather than caller.msg (the former will properly relay to the right sessid without needing any extra arguments). 2013-04-12 14:27:36 +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
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. 2012-08-30 00:05:00 +02:00
Griatch
8ad4f4a9fc Changed player.search to only search for players explicitly.
Added a MuxCommandOOC class to handle the OOC commands in a more uniform way.
Fixed the @ic/@ooc and page commands. Resolves issue 233. Resolves issue 234.
2012-05-17 19:42:37 +02:00
Griatch
1a6ef5d983 Added more caching to channelhandler as well as players in order to cut back on unnecessary database calls. 2012-04-26 13:38:34 +02:00
Griatch
8c3b49e704 Changed how the Typeclass system returns errors. Instead of echoing typeclass erros to the MUD-info channel (which is not only not only very spammy for everyone but also very hard to make clean so as to avoid recursion at a stage of typeclass failing), the system instead stores a property on itself called 'typeclass_last_errmsg' that holds eventual errors. This means that the task of reporting errors does not fall on the typeclass system itself but on the calling methods, as it should be. So src.utils.create.create_* functions now takes a new optional keyword "report_to" that holds an object to receive errors. If this keyword is given, the function msg():es that object with the error and returns None as before. If report_to is not set however, the create_* methods now return an Exception containing the error text. All default commands have been changed to accomodate for this behaviour, which allows for much more control over errors.
Also, the default ADMIN_MEDIA static files changed location in Django 1.4. The initial_setup function now accounts for this.
2012-04-21 16:15:37 +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
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
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
d466d8325f Added missing call argument. Resolves issue 177. 2011-08-06 18:18:42 +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
6f0d21802b Debugged and added @cpattr and @mvattr. Added unittest cases for all default commands for which they are suitable. Many small bug fixes as part of that. 2011-04-21 16:45:18 +00:00
Griatch
7b43c4a608 Added @cset command for changing a channel's access restriction settings. Added @cboot and a few more missing channel commands. Cleaned out the utils commands and fixed formatting on a few default commands. 2011-04-21 10:29:24 +00:00
Griatch
7f7016ad7d Run Migrate. Implemented @search functionality with limits as per MUX (as part of the @find command). Added some more channel-related commands and changed locks for channels to have a "control" lock type rather than "admin". The migration converts this in existing channels.. 2011-04-20 22:40:27 +00:00