Author Topic: LambdaHack/Allure of the Stars (now at v6.0.0 "Too Much To Tell")  (Read 3032 times)


  • Protector of the Temple
  • Global Moderator
  • Rogueliker
  • *****
  • Posts: 4949
  • Karma: +2/-1
    • View Profile   Win/OSX/Linux/Source/Browser
LambdaHack is a Haskell game engine library for roguelike games of arbitrary theme, size and complexity. You specify the content to be procedurally generated, including game rules and AI behaviour. The library lets you compile a ready-to-play game binary, using either the supplied or a custom-made main loop. Several frontends are available (GTK is the default) and many other generic engine components are easily overridden, but the fundamental source of flexibility lies in the strict and type-safe separation of code and content and of clients (human and AI-controlled) and server. Long-term goals for LambdaHack include support for multiplayer tactical squad combat, in-game content creation, auto-balancing and persistent content modification based on player behaviour.

The engine comes with a sample code for a little dungeon crawler, called LambdaHack and described in A larger, different game that depends on the LambdaHack library is Allure of the Stars.

Allure of the Stars is a near-future Sci-Fi roguelike and tactical squad game. The game is written in Haskell using the LambdaHack roguelike game engine. Long-term goals of the project are high replayability and auto-balancing through procedural content generation and persistent content modification based on player behaviour.


Please see for installation and configuration information and for gameplay tips. The windows binaries no longer work on Windows XP, since Cygwin and MSYS2 dropped support for XP (the binaries may also be broken in other ways; feedback and help appreciated; expect them to be silently replaced with fixed versions). Additional binaries, in particular for Android, iOS and OS X would be very welcome.

    add and modify a lot of content: items, tiles, embedded items, scenarios
    improve AI: targeting, stealth, moving in groups, item use, fleeing, etc.
    make monsters more aggressive than animals
    tie scenarios into a loose, optional storyline
    add more level generators and more variety to room placement
    make stairs not walkable and use them by bumping
    align stair position on the levels they pass through
    introduce noctovision
    increase human vision to 12 so that normal speed missiles can be sidestepped
    tweak and document weapon damage calculation
    derive projectile damage mostly from their speed
    make heavy projectiles better vs armor but easier to sidestep
    improve hearing of unseen actions, actors and missiles impacts
    let some missiles lit up on impact
    make torches reusable flares and add blankets for dousing dynamic light
    add detection effects and use them in items and tiles
    make it possible to catch missiles, if not using weapons
    make it possible to wait 0.1 of a turn, at the cost of no bracing
    improve pathfinding, prefer less unknown, alterable and dark tiles on paths
    slow down actors when acting at the same time, for speed with large factions
    don't halve Calm at serious damage any more
    eliminate alternative FOV modes, for speed
    stop actors blocking FOV, for speed
    let actor move diagonally to and from doors, for speed
    improve blast (explosion) shapes visually and gameplay-wise
    add SDL2 frontend and deprecate GTK frontend
    add specialized square bitmap fonts and hack a scalable font
    use middle dot instead of period on the map (except in teletype frontend)
    add a browser frontend based on DOM, using ghcjs
    improve targeting UI, e.g., cycle among items on the map
    show an animation when actor teleports
    add character stats menu and stat description texts
    add item lore and organ lore menus
    add a command to sort item slots and perform the sort at startup
    add a single item manipulation menu and let it mark an item for later
    make history display a menu and improve display of individual messages
    display highscore dates according to the local timezone
    make the help screen a menu, execute actions directly from it
    rework the Main Menu
    rework special positions highlight in all frontends
    mark leader's target on the map (grey highlight)
    visually mark currently chosen menu item and grey out impossible items
    define mouse commands based on UI mode and screen area
    let the game be fully playable only with mouse, use mouse wheel
    pick menu items with mouse and with arrow keys
    add more sanity checks for content
    reorganize content in files to make rebasing on changed content easier
    rework keybinding definition machinery
    let clients, not the server, start frontends
    version savefiles and move them aside if versions don't match
    lots of bug fixes internal improvements and minor visual and text tweaks
Brian Emre Jeffears
Aspiring Designer/Programmer/Composer
In Training

Man of Letters

  • Rogueliker
  • ***
  • Posts: 68
  • Karma: +0/-0
    • View Profile
    • Email
Re: LambdaHack/Allure of the Stars (now at v6.0.0 "Too Much To Tell")
« Reply #1 on: June 04, 2017, 08:07:11 PM »
Yep! And I will be hacking at the game at ZuriHack (Haskell Hackathon in Zurich, Switzerland), so please free to join me if you live nearby: