Instancing support

Registered by Erik Ogenvik on 2013-11-20

We need support for instancing. This is when specific container entities are created to hold one or many other entities. See any modern MMORPG for examples.

We need an "instancing" property which can be attached to any entity which should act as an instancing portal. If an entity has this property, none of its children should be visible to other entities. It should refer to another entity which is the instance template. Whenever another entity is moved into the instancing entity, a copy of the template instance should be created (i.e. a new instance) and the target entity should be moved into this entity.
The new instance entity should have a property "instanced" which contains a list of the entities that own it (to start we should only allow one entity per instance, but further on we should have support for multiple entities within one entity). Whenever an entity leaves the instance it's removed from the list, and once it's empty the instance entity along with its children will be completely removed.

While inside an instance, the user cannot see the normal world (i.e. the "0" entity). The top level entity will instead be the instance entity.

Blueprint information

Status:
Not started
Approver:
Erik Ogenvik
Priority:
Medium
Drafter:
Erik Ogenvik
Direction:
Needs approval
Assignee:
None
Definition:
Approved
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.