Patent ID: 7801966

Claim:
Apparatus for sharing data over a network having a plurality of network-connected terminals, each terminal comprising a visual display; a processor; storage; and memory; wherein said memory in each terminal includes: a first data object that contains data and dynamic elements comprising attributes and methods, said first data object being duplicated to each of said other network connected terminals, and a plurality of second data objects, each of which contains data and dynamic elements comprising attributes and methods, each of which second data objects is a duplicate of a data object on another terminal, such that there exists within the network a plurality of sets of duplicated data objects; and computer program instructions for normal operations comprising: maintaining an environment for a networked game and displaying said environment on said visual display; for at least one of said data objects in said memory, generating an entity using said methods and attributes in said data object and displaying it in said environment according to said data in said data object; periodically providing over said network an update of the data contained in said first data object; updating the data contained in said second objects in response to receiving updates over said network, wherein for each of said updates a portion of the data in one of said second objects is replaced with data contained in the update without changing the dynamic elements in said second object; and for each set of duplicated data objects; establishing one of said data objects as a master data object, wherein said master data object is responsible for maintaining consistency between the data in the data objects in said set, and when the terminal that maintains said master data object becomes unavailable, determining which of said data objects in the set should be master data object and establishing said data object as master data object.