LambdaHack-0.4.100.0: A game engine library for roguelike dungeon crawlers

Safe HaskellNone
LanguageHaskell2010

Game.LambdaHack.Server

Description

Semantics of requests that are sent to the server.

See https://github.com/LambdaHack/LambdaHack/wiki/Client-server-architecture.

Synopsis

Documentation

mainSer :: (MonadAtomic m, MonadServerReadRequest m) => [String] -> COps -> (m () -> IO ()) -> (COps -> DebugModeCli -> ((FactionId -> ChanServer ResponseUI RequestUI -> IO ()) -> (FactionId -> ChanServer ResponseAI RequestAI -> IO ()) -> IO ()) -> IO ()) -> IO () Source

Fire up the frontend with the engine fueled by content. The action monad types to be used are determined by the exeSer and executorCli calls. If other functions are used in their place the types are different and so the whole pattern of computation is different. Which of the frontends is run depends on the flags supplied when compiling the engine library.