def initialise_factories(self, context):
        dying_rules = Dying()

        move_factory = MoveFactory(self.level_generator_factory,
                                   dying_rules)

        effect_config = {}
        configurators = self.get_configurators(context.config_package,
                                               'init_effects')

        for configurator in configurators:
            effects = configurator(context)
            for effect in effects:
                effect_config[effect[0]] = effect[1]

        effect_factory = get_effect_creator(effect_config)

        unarmed_combat_factory = UnarmedCombatFactory(effect_factory,
                                                      dying_rules)
        melee_combat_factory = MeleeCombatFactory(effect_factory,
                                                  dying_rules)
        ranged_combat_factory = RangedCombatFactory(effect_factory,
                                                    dying_rules)
        attack_factory = AttackFactory([unarmed_combat_factory,
                                        melee_combat_factory,
                                        ranged_combat_factory])

        drink_factory = DrinkFactory(effect_factory,
                                     dying_rules)

        inventory_factory = InventoryFactory([PickUpFactory(),
                                              DropFactory(),
                                              EquipFactory(),
                                              UnEquipFactory()])

        wait_factory = WaitFactory()

        spell_factory = SpellGenerator()

        spell_casting_factory = SpellCastingFactory(spell_factory,
                                                    effect_factory,
                                                    dying_rules)

        mitosis_factory = MitosisFactory(self.creature_generator,
                                         self.rng,
                                         60,
                                         dying_rules)

        metamorphosis_factory = MetamorphosisFactory(self.creature_generator,
                                                     self.rng)

        dig_factory = DigFactory(self.rng)

        trapping_factory = TrappingFactory(self.trap_generator)

        self.action_factory = ActionFactory(self.model,
                                            [move_factory,
                                             attack_factory,
                                             drink_factory,
                                             inventory_factory,
                                             wait_factory,
                                             spell_casting_factory,
                                             mitosis_factory,
                                             metamorphosis_factory,
                                             dig_factory,
                                             trapping_factory])

        set_action_factory(self.action_factory)

        self.rules_engine = RulesEngine(self.action_factory,
                                        dying_rules)
Called as REPEAT <oobfunc> <interval> <args>
dataset/ETHPy150Open tuturto/pyherc/src/pyherc/config/config.py/Configuration.initialise_factories--crossover with--dataset/ETHPy150Open evennia/evennia/evennia/server/oob_cmds.py/oob_repeat