class Core(Application): """ The very core of Apollo. Everything depends on this. """ def __init__(self): logging.getLogger().setLevel(options.logging_level) if options.debug: logging.warn("==================================================================================") logging.warn("SERVER IS RUNNING IN DEBUG MODE! MAKE SURE THIS IS OFF WHEN RUNNING IN PRODUCTION!") logging.warn("==================================================================================") logging.info("Starting server...") # apollo distribution root dist_root = os.path.join(os.path.dirname(__file__), "..", "..") Application.__init__( self, [ (r"/", FrontendHandler), (r"/session", SessionHandler), (r"/action", ActionHandler), (r"/events", EventsHandler), (r"/dylib/(.*)\.js", DylibHandler) ], dist_root = dist_root, static_path = os.path.join(dist_root, "static"), debug = options.debug ) self.loader = Loader(os.path.join(dist_root, "template")) setupDBSession() self.dylib_dispatcher = DylibDispatcher(self) self.bus = Bus(self) self.plugins = PluginRegistry(self) self.cron = CronScheduler(self) def go(self): """ Start the server proper. """ self.bus.go() self.plugins.loadPluginsFromOptions() self.cron.go() logging.info("Server ready (may be still waiting for message bus).") self.rendervisor = RendererSupervisor() self.rendervisor.go()
def go(self): """ Start the server proper. """ self.bus.go() self.plugins.loadPluginsFromOptions() self.cron.go() logging.info("Server ready (may be still waiting for message bus).") self.rendervisor = RendererSupervisor() self.rendervisor.go()
sess.add(tile) num_tiles += 1 if not num_tiles % 1000: print "Generated tiles: %d/%d\r" % (num_tiles, MAX_TILES), sys.stdout.flush() if x == SPAWN_X and y == SPAWN_Y: spawntile = tile sess.commit() print "Generated tiles: %d/%d" % (num_tiles, num_tiles) print "Rendering chunks..." renderer = RendererSupervisor() renderer.go() renderer.renderRealm(realm.id) renderer.stop() print "Chunks rendered." print "Populating with first-run data..." # create professions tester = Profession( name=u"Tester", assoc_class=u"system.professions.Tester", spawnpoint_id=spawntile.id ) sess.add(tester)