def get_turn_delta(self, branch=None, turn=None, tick=None, start_tick=0):
        """Get a dictionary describing changes to the world within a given turn

        Defaults to the present turn, and stops at the present tick unless specified.

        See the documentation for ``get_delta`` for a detailed description of the
        delta format.

        :arg branch: branch of history, defaulting to the present branch
        :arg turn: turn within the branch, defaulting to the present turn
        :arg tick: tick at which to stop the delta, defaulting to the present tick
        :arg start_tick: tick at which to start the delta, defaulting to 0

        """
        branch = branch or self.branch
        turn = turn or self.turn
        tick = tick or self.tick
        delta = super().get_turn_delta(branch, turn, start_tick, tick)
        if branch in self._avatarness_cache.settings and turn in self._avatarness_cache.settings[branch]:
            for chara, graph, node, is_av in self._avatarness_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(chara, {}).setdefault('avatars', {}).setdefault(graph, {})[node] = is_av
        if branch in self._things_cache.settings and turn in self._things_cache.settings[branch]:
            for chara, thing, location in self._things_cache.settings[branch][turn][start_tick:tick]:
                thingd = delta.setdefault(chara, {}).setdefault('node_val', {}).setdefault(thing, {})
                thingd['location'] = location
        delta['rulebooks'] = rbdif = {}
        if branch in self._rulebooks_cache.settings and turn in self._rulebooks_cache.settings[branch]:
            for _, rulebook, rules in self._rulebooks_cache.settings[branch][turn][start_tick:tick]:
                rbdif[rulebook] = rules
        delta['rules'] = rdif = {}
        if branch in self._triggers_cache.settings and turn in self._triggers_cache.settings[branch]:
            for _, rule, funs in self._triggers_cache.settings[branch][turn][start_tick:tick]:
                rdif.setdefault(rule, {})['triggers'] = funs
        if branch in self._prereqs_cache.settings and turn in self._prereqs_cache.settings[branch]:
            for _, rule, funs in self._prereqs_cache.settings[branch][turn][start_tick:tick]:
                rdif.setdefault(rule, {})['prereqs'] = funs
        if branch in self._actions_cache.settings and turn in self._triggers_cache.settings[branch]:
            for _, rule, funs in self._triggers_cache.settings[branch][turn][start_tick:tick]:
                rdif.setdefault(rule, {})['actions'] = funs

        if branch in self._characters_rulebooks_cache.settings and turn in self._characters_rulebooks_cache.settings[branch]:
            for _, character, rulebook in self._characters_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {})['character_rulebook'] = rulebook
        if branch in self._avatars_rulebooks_cache.settings and turn in self._avatars_rulebooks_cache.settings[branch]:
            for _, character, rulebook in self._avatars_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {})['avatar_rulebook'] = rulebook
        if branch in self._characters_things_rulebooks_cache.settings and turn in self._characters_things_rulebooks_cache.settings[branch]:
            for _, character, rulebook in self._characters_things_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {})['character_thing_rulebook'] = rulebook
        if branch in self._characters_places_rulebooks_cache.settings and turn in self._characters_places_rulebooks_cache.settings[branch]:
            for _, character, rulebook in self._characters_places_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {})['character_place_rulebook'] = rulebook
        if branch in self._characters_portals_rulebooks_cache.settings and turn in self._characters_portals_rulebooks_cache.settings[branch]:
            for _, character, rulebook in self._characters_portals_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {})['character_portal_rulebook'] = rulebook

        if branch in self._nodes_rulebooks_cache.settings and turn in self._nodes_rulebooks_cache.settings[branch]:
            for character, node, rulebook in self._nodes_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {}).setdefault('node_val', {}).setdefault(node, {})['rulebook'] = rulebook
        if branch in self._portals_rulebooks_cache.settings and turn in self._portals_rulebooks_cache.settings[branch]:
            for character, orig, dest, rulebook in self._portals_rulebooks_cache.settings[branch][turn][start_tick:tick]:
                delta.setdefault(character, {}).setdefault('edge_val', {})\
                    .setdefault(orig, {}).setdefault(dest, {})['rulebook'] = rulebook
        return delta
def get_turn_delta ( self , branch = None , turn = None , tick = None , start_tick = 0 ) : branch = branch or self . branch turn = turn or self . turn tick = tick or self . tick delta = super ( ) . get_turn_delta ( branch , turn , start_tick , tick ) if branch in self . _avatarness_cache . settings and turn in self . _avatarness_cache . settings [ branch ] : for chara , graph , node , is_av in self . _avatarness_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( chara , { } ) . setdefault ( 'avatars' , { } ) . setdefault ( graph , { } ) [ node ] = is_av if branch in self . _things_cache . settings and turn in self . _things_cache . settings [ branch ] : for chara , thing , location in self . _things_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : thingd = delta . setdefault ( chara , { } ) . setdefault ( 'node_val' , { } ) . setdefault ( thing , { } ) thingd [ 'location' ] = location delta [ 'rulebooks' ] = rbdif = { } if branch in self . _rulebooks_cache . settings and turn in self . _rulebooks_cache . settings [ branch ] : for _ , rulebook , rules in self . _rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : rbdif [ rulebook ] = rules delta [ 'rules' ] = rdif = { } if branch in self . _triggers_cache . settings and turn in self . _triggers_cache . settings [ branch ] : for _ , rule , funs in self . _triggers_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : rdif . setdefault ( rule , { } ) [ 'triggers' ] = funs if branch in self . _prereqs_cache . settings and turn in self . _prereqs_cache . settings [ branch ] : for _ , rule , funs in self . _prereqs_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : rdif . setdefault ( rule , { } ) [ 'prereqs' ] = funs if branch in self . _actions_cache . settings and turn in self . _triggers_cache . settings [ branch ] : for _ , rule , funs in self . _triggers_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : rdif . setdefault ( rule , { } ) [ 'actions' ] = funs if branch in self . _characters_rulebooks_cache . settings and turn in self . _characters_rulebooks_cache . settings [ branch ] : for _ , character , rulebook in self . _characters_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) [ 'character_rulebook' ] = rulebook if branch in self . _avatars_rulebooks_cache . settings and turn in self . _avatars_rulebooks_cache . settings [ branch ] : for _ , character , rulebook in self . _avatars_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) [ 'avatar_rulebook' ] = rulebook if branch in self . _characters_things_rulebooks_cache . settings and turn in self . _characters_things_rulebooks_cache . settings [ branch ] : for _ , character , rulebook in self . _characters_things_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) [ 'character_thing_rulebook' ] = rulebook if branch in self . _characters_places_rulebooks_cache . settings and turn in self . _characters_places_rulebooks_cache . settings [ branch ] : for _ , character , rulebook in self . _characters_places_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) [ 'character_place_rulebook' ] = rulebook if branch in self . _characters_portals_rulebooks_cache . settings and turn in self . _characters_portals_rulebooks_cache . settings [ branch ] : for _ , character , rulebook in self . _characters_portals_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) [ 'character_portal_rulebook' ] = rulebook if branch in self . _nodes_rulebooks_cache . settings and turn in self . _nodes_rulebooks_cache . settings [ branch ] : for character , node , rulebook in self . _nodes_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) . setdefault ( 'node_val' , { } ) . setdefault ( node , { } ) [ 'rulebook' ] = rulebook if branch in self . _portals_rulebooks_cache . settings and turn in self . _portals_rulebooks_cache . settings [ branch ] : for character , orig , dest , rulebook in self . _portals_rulebooks_cache . settings [ branch ] [ turn ] [ start_tick : tick ] : delta . setdefault ( character , { } ) . setdefault ( 'edge_val' , { } ) . setdefault ( orig , { } ) . setdefault ( dest , { } ) [ 'rulebook' ] = rulebook return delta
Get a dictionary describing changes to the world within a given turn

        Defaults to the present turn, and stops at the present tick unless specified.

        See the documentation for ``get_delta`` for a detailed description of the
        delta format.

        :arg branch: branch of history, defaulting to the present branch
        :arg turn: turn within the branch, defaulting to the present turn
        :arg tick: tick at which to stop the delta, defaulting to the present tick
        :arg start_tick: tick at which to start the delta, defaulting to 0