Griatch
58c010ef46
Some further work on the OOBhandler mechanism.
2013-01-04 10:35:29 +01:00
Griatch
92f6b06626
Added new start/stop hooks to server. These are read differently depending on if the server is reloaded or reset/shutdown. OBS: If you have already implemented your own version of AT_STARTSTOP_MODULE, you need to add stubs for new hooks. You can find the required hooks in gamesrc/conf/examples/at_startstop.py.
...
gamesrc/conf/examples
2012-10-28 22:02:22 +01:00
Griatch
52af816977
Added hooks at_access_success and at_access_failure to allow for custom messaging for certain lock errors. Resolves Issue 311.
2012-10-28 14:07:18 +01:00
Griatch
4dff822764
Fixed bug in @batchcommand (Resolves Issue 287). Also updated @dig to again handle deleting ranges of dbrefs (with or without # in front).
2012-10-14 16:24:21 +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
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).
2012-08-13 20:25:46 +02:00
Griatch
6fa5e42909
Fixed a typo in the example command template.
2012-05-19 11:01:48 +02:00
Griatch
96e95ca525
Raised Python requirement to 2.6+. Some spurious work on the mdsp support.
2012-05-05 23:52:13 +02:00
Griatch
45c5be8468
More whitespace cleanup.
2012-03-30 23:57:04 +02:00
Griatch
e042366f31
Removed the conf/ modules, putting them into conf/examples instead, in line with other API changes. The gamesrc/ folder is now completely empty and all new modules have to be added explicitly.
2012-03-25 19:52:51 +02:00
Griatch
b2f45a7cf4
Fixed an inconsistent API name. (db_serverconfs -> db_serverconfigs)
2012-03-25 18:21:22 +02:00
Griatch
e7869ed830
Removed the old base* start files from game/gamesrc. This is in line with the new API usage. Unfortunately this will likely lead to some collisions for people.
2012-03-25 17:23:10 +02:00
Griatch
b2d91d9bb5
Switched settings_default to use src/ base modules instead of modules in game/gamesrc/ as default (these will be removed)
2012-03-25 17:13:39 +02:00
Griatch
4398d42360
Added new templates to gamesrc/*/examples. The old base* modules still in place. Some cleanup of the API.
2012-03-25 16:35:22 +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
7a2cdd3842
Moved all command definitions of Typeclassed entities up one level, to Object, Player and Script respectively. The actual code is still on the models (ObjectDB, PlayerDB and ScriptDB), but one should not be able to use the methods without having to dig into the code as far. Also added extensive, up-to-date headers to the inheriting base objects in game/gamesrc.
2012-03-24 18:25:32 +01:00
Griatch
8350c7dca7
Added #INSERT capabilities to @batchcmd processor too. This allows to group and run multiple batch-cmd batchfiles from one central batchfile. You can not mix batchcmd and batchcode files however - that would go beyond the use cases for the respective batch processors (and give unnecessarily complex code for little gain).
2012-03-21 10:24:49 +01:00
Griatch
8b99b8a130
Added #INSERT parameter for batch-code processor. This should resolve the issue of wanting to combine several batch files. Also improved traceback feedback from the batch-code processor.
2012-03-21 01:53:33 +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
Griatch
309c03ce43
Added at_server_start() and at_server_stop() hooks to allow users to safely initialize their custom systems whenever the server restarts.
2012-03-07 20:32:04 +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
88c1b0601f
Added a minor fix in the instructions to chargen.
2011-11-13 18:58:10 +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
3e8b43d222
More fixes and cleanup in wake of ic/ooc changes.
2011-11-06 23:55:24 +01:00
Griatch
86f76d0d08
Contrib: Added chargen module, showing a simple example of creating a character from inside the game.
2011-11-06 22:28: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
e379816866
Fixed some bugs, added an example connection screen for the menu-login system.
2011-11-06 19:16:34 +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
6481cee1ea
Setting some defaults.
2011-11-03 18:24:39 +01:00
Griatch
b6303808ec
Added a simple quell command to contrib/ for showing how to use a command to launch other commands (in this case with a lower permission than you normally do (including bypassing superuser status).
2011-11-03 18:23:45 +01: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
679524bd4a
Removed persistence from test script bodyfunctions.
2011-10-01 13:23:23 +02:00
Griatch
c8d2e3d6a2
Fixed some issues with the @script command.
2011-10-01 13:13:48 +02:00
Griatch
0af6dff175
Updated rst files to wiki.
2011-09-15 22:45:05 +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
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
ddfd8120bb
Made scripts and typeclassed objects remember db_typeclass_path at all times - a temporarily faulty typeclass will no longer mess up things forever after. Refined and optimized the way typeclasses are cached and loaded, minimizing db hits. The default result when trying to create an object or script with a typeclass that is faulty/not found is now to fail. The previous way, to create an entity anyway using defaults was hard to debug and caused confusion. Resolves issue 175.
2011-08-06 18:15:04 +00:00
Griatch
6cb2b8b745
Working on cleaning some strange behavior when trying to submitting faulty typeclasses to script system. Also fixing bugs here and there.
2011-07-03 21:01:06 +00:00
Griatch
95d672763b
Multiple fixes and cleanups - command parser excludes inaccessible commands already at parse level now. Fixed the functionality of a few of the lock functions to be more intuitive. Added functionality to the examine command to better show the commands available to an object.
2011-06-26 14:35:02 +00:00
Griatch
334c0b1d08
Fixed a bunch of small issues. The RedButton example hasn't been working for a while, should be ok again now - also cleaned it up a bit.
2011-06-24 20:12:59 +00:00
Griatch
7c56c69cea
Added SSH support, based on patch by hagna (issue 166).
2011-05-27 17:47:35 +00:00
Griatch
d2400a8a6b
Added the ability to give multiple typeclass search-paths to config file. This way you can add a path to your custom directory and don't have to write so much when creating typeclassed objects using e.g. @create.
2011-05-13 22:26:08 +00:00
Griatch
b9c1921a0b
Added a new 'contrib' folder for optional code snippets not suitable for the server core. Added contrib/menusystem for implementing a multi-choice menu system. Added contrib/lineeditor - a powerful line editor with commands mimicking VI. Also added an example NPC class using the menu system to allow for a conversation. As part of creating these contributions, lots of bugs were found and fixed. A new and more powerful cmdparser was intruduced as a result - this one is much easier to understand than the old one, while being more efficient and versatile. All testsuites were updated. Also: Resolves issue 165.
2011-05-12 21:51:11 +00: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
4bcd5239b5
Mixed batch of minor bug fixes and cleanups.
2011-04-30 21:09:19 +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
88626842b7
Fixed a bug in serverconfig. Tweaked how the default connection screen is stored, to allow for server updates.
2011-04-12 22:22:04 +00:00