Commit graph

212 commits

Author SHA1 Message Date
Erik Ogenvik
ad4a65aaef Improve handling of already managed minds.
Though we need to alter the way the MindProperty requests possessions,
as we don't want to generate possession requests for anything that's
handled by a client anyway. Problem right now is that we won't know that
at the time of MindProperty being applied.
2015-05-24 11:25:07 +02:00
Erik Ogenvik
5f4923e456 Provide better log output. 2015-05-24 11:25:06 +02:00
Erik Ogenvik
f8932858fd Enable aiclient.
The idea is that the aiclient runs in a separate process and handles all
AI functionality.
This is done by having a "possession" client which recieves possession
requests from the server, and spawns new AI clients for each request.
2015-05-24 11:25:06 +02:00
Erik Ogenvik
f5dae1fba7 Rename Teleport* to Possess*
So that the functionality can be used in more general situations.
2015-05-24 11:25:06 +02:00
Erik Ogenvik
6bcfcb2c11 Moved spawn filtering to Account. 2014-01-24 12:29:25 +01:00
Erik Ogenvik
46c4b2c8bf Allow for admins to create any entity in spawns.
This is useful when an admin character want to enter the world near a
common spawn (rather at the default origo).
2014-01-23 22:21:36 +01:00
Erik Ogenvik
f5dccec387 Move initial status to archetype.
Rather than having it hard coded. Makes it more flexible.
2014-01-23 22:20:58 +01:00
Olek Wojnar
7f9ff2246d Remove CVS $Id tags
The legacy tags are causing build issues in Debian.
2013-07-15 20:31:59 +02:00
Erik Ogenvik
91d3cf60c2 Enable persistence of account entities.
This is now on by default whenever the persistence is also enabled. It's
not clear why it wasn't on before though.
As a result Account has also been changed to be able to report whether
it should be persisted or not.
2013-06-25 21:42:24 +02:00
Alistair Riddoch
e9cb84388a Stop using OpNo here too 2013-02-28 15:39:59 +00:00
Alistair Riddoch
e89ae282f6 Stop using OpNo typedef 2013-02-28 15:27:54 +00:00
Alistair Riddoch
4a9c7078f7 Refactor to use LocatedEntity as base class
All IG code should use the interface of LocatedEntity when dealing
with any entity, rather than sometimes requiring Entity. Add virtual
functions to the interface where required, and modify all other interfaces
to stop them using Entity. This makes the code way cleaner, and much better
de-coupled.
2013-01-17 10:17:07 +00:00
Alistair Riddoch
f920bdb919 Fix up return values for characterError 2012-12-11 08:47:45 +00:00
Alistair Riddoch
0f627d4e71 Rename methods to be more generic. 2012-12-05 09:45:16 +00:00
Alistair Riddoch
71cbcdcfc1 Modify externalOperation to include Link
The Link reference provided is the object allowing direct communication
back to the external source of the operation. This allows us to handle
things more cleanly in some cases.
2012-12-04 20:39:35 +00:00
Alistair Riddoch
d463b861af Replace connectAvatar entirely with linkExternalMind 2012-11-26 00:35:55 +00:00
Alistair Riddoch
e7d238e91f Move ExternalMind into rulesets 2012-11-23 16:11:21 +00:00
Alistair Riddoch
bbaa8c3f2a Route Connectable ops through externalOperation 2012-11-19 13:42:03 +00:00
Alistair Riddoch
23ebd9d6f5 Add externalOperation to the Router interface 2012-11-19 13:42:02 +00:00
Alistair Riddoch
6998d59ecd Rename ConnectedRouter to ConnectableRouter
Objects using this base class are all long lived, so while they are
often associated with a connection, they most commonly will outlive
that connection, and be unconnected.
2012-11-13 00:09:05 +00:00
Alistair Riddoch
9002f599e1 Set IDs to the right type
The ids (which are numeric) were being added as integers, but Atlas
uses string representations of numbers.
2012-09-13 15:28:28 +01:00
Alistair Riddoch
f66bc4c7de Add some notes about shortcomings 2012-09-13 12:41:22 +01:00
Alistair Riddoch
e776106ae9 Move CommClient to being a template - final changes
This required cleaning up a bunch of other things:
  Expose functions to disconnect and flush sockets generally
  Make a new base class for objects that link a socket to the server
2012-07-31 20:21:58 +01:00
Alistair Riddoch
e0aa034396 Remove unneeded include 2011-12-20 15:45:53 +00:00
Alistair Riddoch
48e34ce80d Remove mind correctly from avatars 2011-12-16 13:12:58 +00:00
Alistair Riddoch
2c035d0505 Use ConnectedRouter as the base for all accounts 2010-12-13 14:15:54 +00:00
Alistair Riddoch
21086ca150 Refactor Create in Accounts to have a common handler, with a new virtual detail 2010-12-06 00:02:21 +00:00
Alistair Riddoch
b87968537d Converge the create code in account classes 2010-12-05 18:47:04 +00:00
Alistair Riddoch
a311420a12 Remove obsolete check 2010-12-04 15:21:05 +00:00
Alistair Riddoch
45c817708e Remove unneeded dynamic cast. The arg doesn't need to be an entity. 2010-12-03 22:06:03 +00:00
Alistair Riddoch
6aa6599d67 Add logging of teleport related events 2010-11-30 21:38:29 +00:00
Alistair Riddoch
a615c0f80a Remove some code duplication 2010-11-26 22:36:23 +00:00
Manohar Vanga
e16e5c75a2 Added explanatory comments to server/Account.cpp 2010-08-17 11:58:21 +05:30
Manohar Vanga
eb68eac94a Look operation handler now checks only for additional attribute 2010-08-17 11:58:21 +05:30
Manohar Vanga
9318f9a4f9 Fixed removal of teleport authentication entry to include failed connectCharacter calls 2010-08-17 11:58:20 +05:30
Manohar Vanga
ed0965c13f Fixed return values to comply with standard conventions 2010-08-17 11:58:20 +05:30
Manohar Vanga
8dc6054753 Changed attribute name from "key" to "possess_key" 2010-08-17 11:58:20 +05:30
Manohar Vanga
2bd4ea418f Added to Account::LookOperation to add pending teleport characters 2010-08-17 11:58:20 +05:30
Manohar Vanga
bd12f6cb2b Added public function Account::connectCharacter() 2010-08-17 11:58:20 +05:30
Alistair Riddoch
4d68e72b95 Remove obsolete hacked in inventory. 2010-01-03 02:30:57 +00:00
Alistair Riddoch
42c8ce30d2 Remove a bunch of debug output. 2009-12-30 15:23:42 +00:00
Alistair Riddoch
53a611b198 Call the spawn code if one is specified. 2009-12-30 15:11:46 +00:00
Alistair Riddoch
4b64e0391d Add available spawn points to the Account representation. 2009-12-29 19:11:57 +00:00
Alistair Riddoch
3391530725 Add a virtual interface to Account making it responsible for its persistence. 2009-12-01 17:40:21 +00:00
Alistair Riddoch
2b9eeaacca Make username and password protected, and use accessors. 2009-11-24 13:13:54 +00:00
Alistair Riddoch
a7866c404a Ensure none of the operation handlers crash if they get called when disconnected 2009-11-18 17:49:34 +00:00
Alistair Riddoch
40bb3dc65b Add basic filtering of task data passed from client 2009-06-16 15:25:46 +01:00
Alistair Riddoch
27ea787c1f Add detection of client operations that will modify task attributes. 2009-06-16 13:43:50 +01:00
Alistair Riddoch
ffd019a744 Correct the spelling of persistence. 2009-03-24 03:08:45 +00:00
Alistair Riddoch
cd1f42c3f9 Rename Inheritance class files to match class name. 2009-03-20 15:31:38 +00:00