Difference between revisions of "LambdaHack"

From RogueBasin
Jump to navigation Jump to search
m (v0.10.2.0)
(51 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{library| name = LambdaHack
{{library| name = LambdaHack
|developer = Andres Löh, [[Mikolaj Konarski]]
|developer = Andres Löh, [[Mikolaj Konarski]]
|released = Apr 12, 2008
|released = Apr 12, 2008 (v1.20080412)
|relver = 1.20080412
|relver = v1.20080412
|updated = Nov 30, 2013
|updated = Apr 6, 2021 (v0.10.2.0)
|updver = 0.2.10
|updver = v0.10.2.0
|licensing = [[BSD3]] (Free Software)
|licensing = [[BSD3]] (Free Software)
|language = [[Haskell]]
|language = [[Haskell]]
|platforms = [[Linux]], [[OSX]], [[Windows]]
|platforms = [[Browser]], [[Linux]], [[Screen Reader]], [[OSX]], [[Windows]]
|site = https://github.com/kosmikus/LambdaHack
|site = https://github.com/LambdaHack/LambdaHack/releases
|status = Alpha
|status = Beta
|dependencies = as specified on [http://hackage.haskell.org/package/LambdaHack the Hackage page]
|dependencies = source dependencies are as specified on [http://hackage.haskell.org/package/LambdaHack the Hackage page]
}}
}}


This is an alpha release of LambdaHack,
== Play it in the browser! https://lambdahack.github.io ==
a game engine library for roguelike games
 
of arbitrary theme, size and complexity,
LambdaHack is a [[Haskell]] game engine library for ASCII roguelike
packaged together with a small example dungeon crawler.
games of arbitrary theme, size and complexity, with optional
When completed, the engine will let you specify content
tactical squad combat. It's packaged together with a little
to be procedurally generated, define the AI behaviour
example dungeon crawler in fantasy setting that can be
on top of the generic content-independent rules
tried out in the browser.
and compile a ready-to-play game binary, using either
(http://lambdahack.github.io --- It runs fastest
the supplied or a custom-made main loop.
on Chrome. Keyboard commands and savefiles are supported
Several frontends are available (GTK is the default)
only on recent enough versions of browsers.
Mouse should work everywhere.)
 
To use the engine, you need to specify the content to be
procedurally generated. You specify what the game world
is made of (entities, their relations, physics and lore)
and the engine builds the world and runs it.
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 (SDL2 is the default
for desktop and there is a JavaScript browser frontend)
and many other generic engine components are easily overridden,
and many other generic engine components are easily overridden,
but the fundamental source of flexibility lies
but the fundamental source of flexibility lies
in the strict and type-safe separation of code and content
in the strict and type-safe separation of code from the content
and of clients (human and AI-controlled) and server.
and of clients (human and AI-controlled) from the server.
 
Please see the changelog file for recent improvements
and the issue tracker for short-term plans. Long term goals
include multiplayer tactical squad combat, in-game content
creation, auto-balancing and persistent content modification
based on player behaviour. Contributions are welcome.
 
Other games known to use the LambdaHack library:
 
* [[Allure of the Stars]], a near-future Sci-Fi game
* [[Space Privateers]], an adventure game set in far future
 
Please offer your feedback.
 
== Screenshots ==
 
A showcase of shooting down explosives. A couple were shot down close enough to enemies to harm them. Others exploded closer to our party members and took out of the air projectiles that would otherwise harm them.
 
This is a semi-automatic stealthy speedrun of the escape scenario. The enemy gang has a huge numerical and equipment superiority. Our team loots the area on auto-pilot until the first foe is spotted. Then they scout out enemy positions. Then hero 1 draws enemies and unfortunately enemy fire as well, which is when he valiantly shoots down explosives to avoid the worst damage. Then heroine 2 sneaks behind enemy lines to reach the remaining treasure. That accomplished, the captain signals retreat and leaves for the next area (the zoo).
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/allureofthestars.com.shooting.down.explosives.gif
 
Examples of in-game messages, in colour, with the new font:
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/allureofthestars.com.colorful.messages1.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/allureofthestars.com.colorful.messages2.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/allureofthestars.com.colorful.messages3.png
 
== Old screenshots ==
 
Trying out explosives and firecrackers in a nearby cave, with friends:
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/allureofthestars.com.firecrackers.gif
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/crawl-0.6.0.0-8x8x.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/crawl-0.6.0.0-8x8xb.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/crawl-0.6.0.0-16x16x.png
 
== Ancient screenshots ==
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/safari1.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/raid1.png
 
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/skirmish1.png


New in this release are screensaver game modes (AI vs AI),
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/ambush1.png
improved AI (can now climbs stairs, etc.), multiple,
multi-floor staircases, multiple savefiles, configurable
framerate and combat animations and more.
Upcoming features: new and improved frontends, improved AI
(pathfinding, autoexplore, better ranged combat), dynamic
light sources, explosions, player action undo/redo, completely
redesigned UI. Long term goals are focused on procedural
content generation and include in-game content creation,
auto-balancing and persistent content modification
based on player behaviour.


A larger game that depends on the LambdaHack library
https://raw.githubusercontent.com/LambdaHack/media/master/screenshot/campaign1.png
is [[Allure of the Stars]].


LambdaHack can be compiled using the [http://www.haskell.org/cabal cabal] tool from the LambdaHack package available at [http://hackage.haskell.org/package/LambdaHack its Hackage page.]
[[Category:Beta engines]]
[[Category:Roguelike engines]]
[[Category:Open source]]
[[Category:Free Software]]

Revision as of 22:58, 6 April 2021

LambdaHack
Library project
Developer Andres Löh, Mikolaj Konarski
Released Apr 12, 2008 (v1.20080412)
Updated Apr 6, 2021 (v0.10.2.0)
Status Beta
Licensing BSD3 (Free Software)
P. Language Haskell
Platforms Browser, Linux, Screen Reader, OSX, Windows
Dependencies source dependencies are as specified on the Hackage page
Official site of LambdaHack


Play it in the browser! https://lambdahack.github.io

LambdaHack is a Haskell game engine library for ASCII roguelike games of arbitrary theme, size and complexity, with optional tactical squad combat. It's packaged together with a little example dungeon crawler in fantasy setting that can be tried out in the browser. (http://lambdahack.github.io --- It runs fastest on Chrome. Keyboard commands and savefiles are supported only on recent enough versions of browsers. Mouse should work everywhere.)

To use the engine, you need to specify the content to be procedurally generated. You specify what the game world is made of (entities, their relations, physics and lore) and the engine builds the world and runs it. 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 (SDL2 is the default for desktop and there is a JavaScript browser frontend) 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 from the content and of clients (human and AI-controlled) from the server.

Please see the changelog file for recent improvements and the issue tracker for short-term plans. Long term goals include multiplayer tactical squad combat, in-game content creation, auto-balancing and persistent content modification based on player behaviour. Contributions are welcome.

Other games known to use the LambdaHack library:

Please offer your feedback.

Screenshots

A showcase of shooting down explosives. A couple were shot down close enough to enemies to harm them. Others exploded closer to our party members and took out of the air projectiles that would otherwise harm them.

This is a semi-automatic stealthy speedrun of the escape scenario. The enemy gang has a huge numerical and equipment superiority. Our team loots the area on auto-pilot until the first foe is spotted. Then they scout out enemy positions. Then hero 1 draws enemies and unfortunately enemy fire as well, which is when he valiantly shoots down explosives to avoid the worst damage. Then heroine 2 sneaks behind enemy lines to reach the remaining treasure. That accomplished, the captain signals retreat and leaves for the next area (the zoo).

allureofthestars.com.shooting.down.explosives.gif

Examples of in-game messages, in colour, with the new font:

allureofthestars.com.colorful.messages1.png

allureofthestars.com.colorful.messages2.png

allureofthestars.com.colorful.messages3.png

Old screenshots

Trying out explosives and firecrackers in a nearby cave, with friends:

allureofthestars.com.firecrackers.gif

crawl-0.6.0.0-8x8x.png

crawl-0.6.0.0-8x8xb.png

crawl-0.6.0.0-16x16x.png

Ancient screenshots

safari1.png

raid1.png

skirmish1.png

ambush1.png

campaign1.png