:Frag is a 3D first person shooting game written in Haskell, by Mun Hon Cheong. It uses Yampa, Quake 3 BSP level format and OpenGL. It is licensed under the GPL.

:Frag is a 3D first person shooting game written in Haskell, by Mun Hon Cheong. It uses Yampa, Quake 3 BSP level format and OpenGL. It is licensed under the GPL.

+

+

;[http://mfuglos.github.io/jeopardy Fuglos Jeopardy]

+

:Fuglos Jeopardy is a free implementation of a game resembling the popular quiz show 'Jeopardy'. It is written using Gtk2Hs as GUI toolkit. It is quite feature complete and easy to use. It contains support for LaTeX, so you can for example use LaTeX math syntax in your data sheets and thus organize a math jeopoardy event. Licensed under GPL3.

:A near-future Sci-Fi roguelike and tactical squad game. Long-term goals are high replayability and auto-balancing through procedural content generation and persistent content modification based on player behaviour. The game is written using the [http://hackage.haskell.org/package/LambdaHack LambdaHack] roguelike game engine.

:FunGEn (Functional Game Engine) is a platform-independent 2D OpenGL-based BSD-licensed game engine. As of 2011 it's the only general-purpose game engine, and the quickest way to throw together [http://darcsden.com/simon/fungen/browse/examples/helloworld.hs simple] [http://darcsden.com/simon/fungen/browse/examples/pong/pong.hs 2D] [http://darcsden.com/simon/fungen/browse/examples/worms/worms.hs games], in Haskell.

+

:FunGEn (Functional Game Engine) is a platform-independent BSD-licensed 2D game engine based on OpenGL and GLUT. Its light dependencies make it easy to install, however GLUT is reputed to be unsuitable for simultaneous keypresses. As of 2011 it's the only general-purpose game engine, and the quickest way to throw together [http://darcsden.com/sordina/fungen/browse/examples/helloworld.hs simple] [http://darcsden.com/sordina/fungen/browse/examples/pong/pong.hs 2D] [http://darcsden.com/sordina/fungen/browse/examples/worms/worms.hs games], in Haskell. Example code: [http://joyful.com/fungen/old-site/example.html A Brief Example]. Forks and patches welcome!

:A game engine for Windows which includes Haskell bindings to a couple of C++ libraries and a Haskell API on top of that. Features include Audio, Joystick, Mouse and Keyboard handling, GUI, Network, Physics, 3D graphics.

:Hipmunk: A Haskell binding for [http://wiki.slembcke.net/main/published/Chipmunk Chipmunk]. Chipmunk is a fast, simple, portable, 2D physics engine. It is completely self-contained. See also [http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HipmunkPlayground HipmunkPlayground]: a simple OpenGL program that allows you to see some of Hipmunk's functions in action.

+

:Hipmunk: A Haskell binding for [http://chipmunk-physics.net/ Chipmunk]. Chipmunk is a fast, simple, portable, 2D physics engine. It is completely self-contained. See also [http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HipmunkPlayground HipmunkPlayground]: a simple OpenGL program that allows you to see some of Hipmunk's functions in action.

;[[Hpysics]]

;[[Hpysics]]

:Hpysics is a physics engine written using Data Parallel Haskell during Google Summer of Code 2008.

:Hpysics is a physics engine written using Data Parallel Haskell during Google Summer of Code 2008.

−

;[http://projects.haskell.org/game-tree/ game-tree]

+

;[http://hackage.haskell.org/package/hogre hogre]

−

:game-tree is a purely functional library for searching game trees - useful for zero-sum two player games.

+

:Haskell bindings to the excellent OGRE 3D rendering engine. Ogre has been used in commercial games such as Torchlight and several books exist documenting the Ogre API. Ogre uses an MIT license making it compatible with many Haskell libraries.

;[http://hackage.haskell.org/package/IrrHaskell IrrHaskell]

;[http://hackage.haskell.org/package/IrrHaskell IrrHaskell]

:Haskell binding to the [http://irrlicht.sourceforge.net/ Irrlicht game engine]. The Irrlicht Engine is an open source high performance realtime 3D engine

:Haskell binding to the [http://irrlicht.sourceforge.net/ Irrlicht game engine]. The Irrlicht Engine is an open source high performance realtime 3D engine

−

;[http://hackage.haskell.org/package/lambdacube-engine LambdaCube]

+

;[http://lambdacube3d.wordpress.com/ LambdaCube 3D]

−

:LambdaCube is a 3D rendering engine entirely written in Haskell. The main goal of this project is to provide a modern and feature rich graphical backend for various Haskell projects, and in the long run it is intended to be a practical solution even for serious purposes.

+

:LambdaCube 3D is a domain specific language and library that makes it possible to program GPUs in a purely functional style.

:An example of using [http://hackage.haskell.org/package/graphics-drawingcombinators graphics-drawingcombinators] on Mac OSX, to ease getting started on that platform.

+

=== Unfinished/in-progress game engines/libraries ===

=== Unfinished/in-progress game engines/libraries ===

+

+

;[https://github.com/adorablepuppy/CurryDog CurryDog]

+

:Aims to be a 2d and 3d modular game engine.

+

+

;[https://github.com/keera-studios/gtk-helpers gtk-helpers]

+

:A collection of auxiliary operations related to Gtk2hs. See also [http://keera.co.uk/blog/2013/03/19/creating-board-games-in-haskell/ Creating board games in Haskell in 100 lines of code]

;[[HaskGame]]

;[[HaskGame]]

Line 131:

Line 183:

; [https://github.com/shicks/hsgame hsgame]

; [https://github.com/shicks/hsgame hsgame]

:A framework for network games

:A framework for network games

+

+

;[https://github.com/kosmikus/LambdaHack LambdaHack]

+

:A game engine library for roguelike games of arbitrary theme, size and complexity, packaged together with a small example dungeon crawler. When completed, it will let you specify content to be procedurally generated, define the AI behaviour on top of the generic content-independent rules and 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.

+

Revision as of 21:04, 22 September 2013

This page contains a list of libraries and tools in a certain category. For a comprehensive list of such pages, see Applications and libraries.

Foo (abbreviation from football) is a playing machine of Paper Soccer, a pencil and paper game for two players. It contains a simple interface using HOpenGL library and provides many playing algorithms.

Fuglos Jeopardy is a free implementation of a game resembling the popular quiz show 'Jeopardy'. It is written using Gtk2Hs as GUI toolkit. It is quite feature complete and easy to use. It contains support for LaTeX, so you can for example use LaTeX math syntax in your data sheets and thus organize a math jeopoardy event. Licensed under GPL3.

Nethack clone written in Haskell (The web site have this mage-1.0.pre35.tar.gz file containing an older version that was using Data.FiniteMap.) There seems to be a problem with newer curses library even with the more recent 1.1.0 version.

1.1 Unfinished/in-progress games

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

2 Game Engines and Libraries

FunGEn (Functional Game Engine) is a platform-independent BSD-licensed 2D game engine based on OpenGL and GLUT. Its light dependencies make it easy to install, however GLUT is reputed to be unsuitable for simultaneous keypresses. As of 2011 it's the only general-purpose game engine, and the quickest way to throw together simple2Dgames, in Haskell. Example code: A Brief Example. Forks and patches welcome!

A game engine for Windows which includes Haskell bindings to a couple of C++ libraries and a Haskell API on top of that. Features include Audio, Joystick, Mouse and Keyboard handling, GUI, Network, Physics, 3D graphics.

Hipmunk: A Haskell binding for Chipmunk. Chipmunk is a fast, simple, portable, 2D physics engine. It is completely self-contained. See also HipmunkPlayground: a simple OpenGL program that allows you to see some of Hipmunk's functions in action.

Haskell bindings to the excellent OGRE 3D rendering engine. Ogre has been used in commercial games such as Torchlight and several books exist documenting the Ogre API. Ogre uses an MIT license making it compatible with many Haskell libraries.

A game engine library for roguelike games of arbitrary theme, size and complexity, packaged together with a small example dungeon crawler. When completed, it will let you specify content to be procedurally generated, define the AI behaviour on top of the generic content-independent rules and 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.