Commit graph

471 commits

Author SHA1 Message Date
Erik Ogenvik
e7fa53214b Use nullptr instead of NULL. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
62227f5664 Update with Atlas changes. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
99adccb915 Only export non-default properties. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
d9df43e95d Smaller cleanups. 2018-02-06 13:45:11 +01:00
Erik Ogenvik
a144b378ee Check if entity is ourselves. 2017-08-09 23:52:39 +02:00
Erik Ogenvik
c95b04afba Added missing cycmd install directive. 2017-08-05 18:03:04 +02:00
Erik Ogenvik
fdffb96711 Added include directive needed for fstream.
On some distros.
2017-08-02 01:07:25 +02:00
Erik Ogenvik
c02b370a36 Fixed issue with entity import. 2017-07-25 14:10:37 +02:00
Erik Ogenvik
0286bcd47d Replace "parents" with "parent". 2017-07-24 15:05:18 +02:00
Erik Ogenvik
7aaa9b9ba7 Optimize includes. 2017-03-19 21:36:52 +01:00
Erik Ogenvik
0b01c92a2f Only link to libraries where needed. 2017-03-17 23:47:57 +01:00
Erik Ogenvik
511976adb5 Don't use too new boost::filesystem functions.
We can achieve the same things with some string manipulation.
2016-12-27 23:04:55 +01:00
Erik Ogenvik
1e6611fd58 Remove autotools. 2016-12-22 14:39:37 +01:00
Erik Ogenvik
98c7eb66c8 Convert to cmake. 2016-12-22 14:39:36 +01:00
Erik Ogenvik
59b55584a0 Read rules recursively.
And remove legacy file based loading.
This bumps the requirement of boost.
2016-12-15 18:27:42 +01:00
Erik Ogenvik
5754a5dfa1 Initial work on Bullet powered physical domains. 2016-12-15 18:27:42 +01:00
Olek Wojnar
9e1b3b92c3 Fix typos
Courtesy of lintian
2016-09-06 22:29:36 -04:00
Erik Ogenvik
e794992d3d MultiLineListFormatter was moved to Atlas. 2016-03-18 23:36:57 +01:00
Erik Ogenvik
37bcfbd4db Handle Atlas API changes. 2016-03-18 20:07:23 +01:00
Erik Ogenvik
d3b9d1788b Use Atlas 0.7. 2015-06-04 21:41:27 +02:00
Erik Ogenvik
86a3b5a9f1 Use new Think protocol in exporter and importer. 2015-05-27 21:29:59 +02:00
Erik Ogenvik
2533a4fe92 Check minds property in types.
If we're exporting minds we need to check the types for mind properties,
as these aren't sent if it's unchanged.
2015-04-30 12:50:04 +02:00
Erik Ogenvik
4bc649b405 Handle entity references in thoughts.
Entities are references using a format of "'$eid:...'".
For example, an entity with id 2 would be references as "'$eid:2'".
This specific pattern is handled specifically by both the importer, the
exporter and the minds themselves, allowing for entities to be properly
restored with correct minds.
2015-04-29 22:35:22 +02:00
Erik Ogenvik
21bf3b9b4e Removed superfluous fields. 2015-04-12 12:46:47 +02:00
Erik Ogenvik
3c038d2961 Check the types for transient properties.
Since the type default values aren't sent anymore, we need to check the
types for transient properties when we want to ignore such entities
during export.
2015-04-11 22:03:05 +02:00
Erik Ogenvik
d4db96d5d7 Added option for disabling mind exports.
You can disable this through this cyexport option:
--export:minds=0
2014-12-07 22:14:26 +01:00
Erik Ogenvik
85193b4991 Clarify that the second argument is microseconds. 2014-10-01 22:48:22 +02:00
Erik Ogenvik
28dd41c7c9 Replace boost::shared_ptr with std version. 2014-10-01 21:38:20 +02:00
Erik Ogenvik
ba6a11ba8f Write things as "debug" where suitable. 2014-10-01 19:40:05 +02:00
Erik Ogenvik
252d8bfe4e Wait for deletion before starting import. 2014-09-10 21:51:43 +02:00
Erik Ogenvik
8b72f0cd7e Terminate commands with line feeds. 2014-04-17 19:16:18 +02:00
Erik Ogenvik
6e53159d71 Properly separate write and read buffers. 2014-02-04 22:24:27 +01:00
Erik Ogenvik
31905f5f93 Removed further references to skstream. 2014-02-02 22:15:39 +01:00
Erik Ogenvik
719ace1070 Use boost::asio for cypython. 2014-02-02 22:04:10 +01:00
Erik Ogenvik
3b7a3a44a6 Remove references to skstream. 2014-02-02 22:04:10 +01:00
Erik Ogenvik
826288c4fc Use boost::asio in clients. 2014-02-02 22:04:10 +01:00
Erik Ogenvik
a4f806830a Added flag for resuming world. 2013-11-24 23:46:02 +01:00
Erik Ogenvik
379ed986b9 Added option for resuming a suspended world.
This is useful when importing a world which was suspended (which is
often the case when you're working with the world).
2013-11-24 23:45:27 +01:00
Erik Ogenvik
28ced0076e Adjusted logging. 2013-11-24 23:10:04 +01:00
Erik Ogenvik
a8d71e5493 Check if world already is populated first.
We first check if there's any non-transient entity apart from the root
world. If so, the world is already is populated and we won't import;
unless the user supplied either the flag "--clean" which will reset the
world, or "--merge" which will try to merge the entities in the
specified file with the content of the server. Note that the "merge"
strategy in most cases will create duplicates of any existing entity.
2013-11-24 13:27:45 +01:00
Erik Ogenvik
2188d1ed51 Added a task for traversing the entity tree. 2013-11-24 13:12:59 +01:00
Erik Ogenvik
e74e2dd749 Abort if no valid world root. 2013-11-24 01:02:07 +01:00
Erik Ogenvik
f39123beda Added missing initialization. 2013-11-22 20:51:35 +01:00
Samuel Kogler
3edc25b84d Add required includes for map of callbacks. 2013-11-19 21:54:40 +01:00
Erik Ogenvik
c3adaf6888 Delay sending attributes with entity references.
Only send Set operations which update those attributes once all entities
have been properly created on the server, and we know their ids.
This, together with other $eid fixes in cyexport, fixes the issue with
wielded and worn entities not properly being restored.
2013-11-18 22:03:47 +01:00
Erik Ogenvik
ee49c0a389 Adjust entity references in attributes.
This is possible through the new entity ref format, where an entity ref
is specified through a map with an "$eid" entry.
2013-11-18 22:03:47 +01:00
Erik Ogenvik
83dc8bb597 Use new exporter and importer and remove old ones. 2013-11-14 23:59:31 +01:00
Erik Ogenvik
b3d4445104 Added "cyimport" tool for importing.
This uses the same importing code as Ember, and allows for import of
both entities, minds and types. The code in EntityImporterBase.*
should be kept synchronized with the Ember version.
This is provided as a new command, instead of added to the existing
cycmd executable. This is by design, to make it easier for users.
Export and import of entities are one of the most basic functions,
especially for any new user, and should therefore be provided as easy as
possible.
2013-11-14 22:26:59 +01:00
Erik Ogenvik
4411d3a14f Added "cyexport" tool for exporting.
This uses the same exporting code as Ember, and allows for export of
both entities, minds and types. The code in EntityExporterBase.* should
be kept synchronized with the Ember version.
This is provided as a new command, instead of added to the existing
cycmd executable. This is by design, to make it easier for users. Export
and import of entities are one of the most basic functions, especially
for any new user, and should therefore be provided as easy as
possible.
2013-11-14 22:21:06 +01:00
Erik Ogenvik
adda82fb1b Added task for creating an agent in-game. 2013-11-13 16:13:51 +01:00