Commit graph

161 commits

Author SHA1 Message Date
Al Riddoch
f80c191811 * rulesets/acorn/world/objects/animals/Deer.py, acorn.vconf: Added
deer, with same basic code as pig.

	* server/server.cpp: Pass on objects which are not know by the
	  Atlas::Objects::Decoder straight to the operation handler.

	* server/Admin.*: Re-structured the way commands are handled from
	  admin client, so that apropriate operations are used instead of
	  always using Set.

	* server/Admin.cpp: Added saving world state to the database.

	* tools/cycmd.cpp: Updated to use the new admin command semantics.
	  Added save command.

	* common/persistance.*: Added interface for saving world status.

	* common/database.*: Added interface for deleting contents of database.

Al Riddoch (alriddoch@zepler.org)
2001-04-02 22:03:42 +00:00
Al Riddoch
69048131ba * tools/cycmd.cpp: Added support for interactive mode.
* server/Admin.cpp: Fixed returning of info op from database load
	  message, and counting of objects loaded from database.

	* configure.in: Added readline check for cycmd.

Al Riddoch (alriddoch@zepler.org)
2001-03-30 17:17:47 +00:00
Al Riddoch
0c56f85074 * tools/cyisoload.cpp: Added tool which loads an iso format map into
the server database.

	* configure.in: Added check for coal (0.2) which is used in map
	  loader tool.

	* common/database.cc: Modified database initialisation functions
	  so that whether or not the database should be created can be
	  specified. Added separate function for decoding a database
	  object into an Atlas::Message::Object. Fix to the way objects
	  are added to the database which solves some corruption problems.

	* common/database.*: Added database iterator class that can be
	  used to iterate over the database.

	* server/Admin.cpp: Added handler for admin load command, which
	  loads world state from database.

	* server/WorldRouter.*: Tweak to allow objects added to world
	  to have pre-defined id.

Al Riddoch (alriddoch@zepler.org)
2001-03-28 13:06:18 +00:00
Al Riddoch
563107b595 * physics/Vector3D.h: Changed boundary condition of inBox() from
when part of entity leaves box to when the whole entity leaves the
	  box.

	* basic.vconf: Make tent use the structure base class.

	* client/define_world.py: Add bounding box to tent.

	* tools/cycmd.cpp: Added password entry.

	* server/Admin.cpp: Added "stat" admin command, to get server
	  details.

	* server/CommClient.h: Fixed include dependencies.

	* common/persistance.cpp: Added findAccount() method for systems
	  without db3.

	* rulesets/Thing.cpp: Added sending Apperance and Disappearance
	  operations to static entities when another entity moves out
	  of sight.

	* rulesets/Character.cpp: Added check to make sure an entity does
	  not collide with itself.

	* rulesets/Thing.cpp: Added check to make sure entity does not move
	  inside itself.

	* rulesets/Py_Location.cpp: Modified python location.copy() method
	  so that only the position and velocity is copied. This should
	  bounding boxes getting set on things which should not have them.

	* rulesets/Character.cpp: Added return statement to movement
	  handling, so move ops without arguments are not handled.

Al Riddoch (alriddoch@zepler.org)
2001-03-22 11:12:38 +00:00
Al Riddoch
4b0aeab816 * tools/cycmd.cpp: Added functionality to allow commands to be
sent to the admin account on the server.

	* server/WorldRouter.cpp: Removed mechanism for shutting down server
	  after a fixed run period.

	* server/Admin.*: Added reception of Set operation by admin account
`	  which contain commands from an admin client. Implemented shutdown
	  command, which sets a flag indicating server shutdown should start.

	* server/server.cpp: Added output indicating that shutdown is taking
	  place, to make it clear that it is not a crash.

Al Riddoch (alriddoch@zepler.org)
2001-03-16 14:27:58 +00:00
Al Riddoch
291621d9e8 * watchdog/*.c: Corrected C++ style comments in c code.
* */*: Fixed mistake in copyright statement.

	* tools/cypasswd.cpp: Fixed usage message.

	* tools/cycmd.cpp: Added tools for sending administrative commands
	  to server.

	* server/server.cpp: Send terminate instruction to metaserver on
	  server shutdown.

Al Riddoch (alriddoch@zepler.org)
2001-03-16 11:38:14 +00:00
Al Riddoch
3a5e4e56c0 * Changed oplist to use std::vector. Recoded and re-optimised use
of oplist to take advantage of vector's best performance.

	* Modified OP_SWITCH macros to improve speed, and made it inlinable.

	* Cleaned up python interface code to improve compile and link time.

	* Moved custom operation definitions in one header file per class
	  to improve modularity and compile time.

	* Modified boundingbox handling so it now uses size and median.

	* Added collision check and inbox member function to Vector3D class.

	* Added collision prediction and checking to Location and Vector3D
	  classes.

	* Added collision prediction into MovementInfo class.

	* Modified Thing::operator[] so that static attributes can be handled
	  and added Thing::set() which must be used to modify attributes.

	* Added collision resolution so characters can no longer walk through
	  each other.

	* Moved weight attribute to being static attribute of Thing, so it
	  can be much more easily handled in movement code.

Al
2001-02-26 14:41:10 +00:00
Al Riddoch
e7eb28366c * all file: Added copyright statement
Al
2001-01-26 16:38:23 +00:00
Al Riddoch
959ba0128d 2001-01-24 Al Riddoch <ajr@ecs.soton.ac.uk>
* Throughout entire code base:
	  Removed all obsolete code and commented out code relating to porting
	  from python. Removed interim data types bad_type and None. Added
	  const throughout where apropriate. Change various flags to bool
	  type. Removed unused members.

	* Added TODO list.

Al
2001-01-24 15:45:58 +00:00
Al Riddoch
bd9aecbcfa Modified all internal operation handling functions so they now return a list
of Operations instead of just one. Debugged movement, which now works, but
does not yet stop when it reaches the destination.

Al
2000-08-31 21:48:46 +00:00
Al Riddoch
52e69e1137 Account related files required for account management
Al
2000-08-19 16:44:19 +00:00