All Projects → lettier → Lambda Lantern

lettier / Lambda Lantern

Licence: bsd-3-clause
🧙 ‎‎ A 3D game about functional programming patterns. Uses PureScript Native, C++, and Panda3D.

Programming Languages

haskell
3896 projects
cpp
1120 projects
cpp11
221 projects
purescript
368 projects

Projects that are alternatives of or similar to Lambda Lantern

Gamedev Resources
🎮 🎲 A wonderful list of Game Development resources.
Stars: ✭ 2,054 (+1583.61%)
Mutual labels:  game, game-development, game-engine, gamedev, video-game
Terasology
Terasology - open source voxel world
Stars: ✭ 3,247 (+2561.48%)
Mutual labels:  game, game-development, game-engine, gamedev
Defaultecs
Entity Component System framework aiming for syntax and usage simplicity with maximum performance for game development.
Stars: ✭ 286 (+134.43%)
Mutual labels:  game, game-development, game-engine, gamedev
Gamedev4noobs
Olá, sejam bem-vindos ao repositório _gamedev4noobs_ do Estúdio Vaca Roxa. O propósito desse repositório, além de contribuir para o projeto 4noobs, é ensinar o básico do desenvolvimento de jogos para iniciantes. Apresentando boas práticas e insumos para criar games incríveis.
Stars: ✭ 122 (+0%)
Mutual labels:  game, game-development, game-engine, gamedev
Entitas Cpp
Entitas++ is a fast Entity Component System (ECS) C++11 port of Entitas C#
Stars: ✭ 229 (+87.7%)
Mutual labels:  game, game-development, game-engine, gamedev
Gdevelop
🎮 GDevelop is an open-source, cross-platform game engine designed to be used by everyone.
Stars: ✭ 3,221 (+2540.16%)
Mutual labels:  game, game-development, game-engine, gamedev
Games
🎮 A list of popular/awesome video games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine.
Stars: ✭ 18,676 (+15208.2%)
Mutual labels:  game, game-development, game-engine, gamedev
Kaetram Open
An open-source 2D HTML5 adventure based off BrowserQuest (BQ).
Stars: ✭ 138 (+13.11%)
Mutual labels:  game, game-development, game-engine, gamedev
Carp
Carp is a programming language designed to work well for interactive and performance sensitive use cases like games, sound synthesis and visualizations.
Stars: ✭ 4,389 (+3497.54%)
Mutual labels:  game-development, gamedev, functional-programming, functional
Cpp 3d Game Tutorial Series
C++ 3D Game Tutorial Series is a YouTube tutorial series, whose purpose is to help all those who want to take their first steps in the game development from scratch.
Stars: ✭ 400 (+227.87%)
Mutual labels:  game, game-development, game-engine, gamedev
Anything about game
A wonderful list of Game Development resources.
Stars: ✭ 541 (+343.44%)
Mutual labels:  game, game-development, game-engine, gamedev
Awesome Haxe Gamedev
Resources for game development on haxe
Stars: ✭ 213 (+74.59%)
Mutual labels:  game, game-development, game-engine, gamedev
Expo Voxel
🎮🌳 Voxel Terrain made in React Native. ∛
Stars: ✭ 169 (+38.52%)
Mutual labels:  game, game-development, game-engine, native
Noahgameframe
A fast, scalable, distributed game server engine/framework for C++, include the actor library, network library, can be used as a real time multiplayer game engine ( MMO RPG/MOBA ), which support C#/Lua script/ Unity3d, Cocos2dx and plan to support Unreal.
Stars: ✭ 3,258 (+2570.49%)
Mutual labels:  game, game-development, game-engine, gamedev
Fxgl
Stars: ✭ 2,378 (+1849.18%)
Mutual labels:  game, game-development, game-engine, gamedev
Gameproject3
游戏服务器框架,网络层分别用SocketAPI、Boost Asio、Libuv三种方式实现, 框架内使用共享内存,无锁队列,对象池,内存池来提高服务器性能。还包含一个不断完善的Unity 3D客户端,客户端含大量完整资源,坐骑,宠物,伙伴,装备, 这些均己实现上阵和穿戴, 并可进入副本战斗,多人玩法也己实现, 持续开发中。
Stars: ✭ 655 (+436.89%)
Mutual labels:  game, game-development, game-engine, gamedev
Game
⚔️ An online JavaScript 2D Medieval RPG.
Stars: ✭ 388 (+218.03%)
Mutual labels:  game, game-development, game-engine, gamedev
Entitas Csharp
Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity
Stars: ✭ 5,393 (+4320.49%)
Mutual labels:  game, game-development, game-engine, gamedev
Coffee
An opinionated 2D game engine for Rust
Stars: ✭ 771 (+531.97%)
Mutual labels:  game, game-development, game-engine, gamedev
Godot
Godot Engine – Multi-platform 2D and 3D game engine
Stars: ✭ 44,556 (+36421.31%)
Mutual labels:  game-development, game-engine, gamedev

Lambda Lantern 😃

Lambda Lantern

What is Lambda Lantern? 🤔

Lambda Lantern

Lambda Lantern is a game made with PureScript, PureScript Native, and Panda3D. The premise of the game involves collecting and using functional programming patterns to solve puzzles and ultimately escape a dungeon.

One of the purposes of Lambda Lantern is to demonstrate binding PureScript to C++.

Lambda Lantern originally started as a GitHub Game Off submission.

How do I build and run Lambda Lantern? 🔨

Lambda Lantern

# Install Git.
# Install nvm (https://github.com/creationix/nvm).
# Install Panda3D (https://www.panda3d.org/download/sdk-1-10-1/).
# Install Haskell Stack (https://docs.haskellstack.org/en/stable/README/).

cd

# Install PureScript Native (https://github.com/andyarvanitis/purescript-native).

git clone https://github.com/andyarvanitis/purescript-native.git
cd purescript-native
git checkout aa857adec6aa40edac91bcacfe4c3b7c5f1c3f2d
stack install

cd

# Update path for PureScript Native compiler pscpp.

export PATH="${PATH}:${HOME}/.local/bin"

# Download and install the FFI exports.

git clone https://github.com/lettier/purescript-native-ffi.git
cd purescript-native-ffi
git checkout lambda-lantern

cd

git clone https://github.com/lettier/lambda-lantern.git

# Note the trailing dot.
cp -nr purescript-native-ffi/. lambda-lantern/ffi/

cd lambda-lantern

# Install Node.js.

nvm install `cat .nvmrc` && nvm use

# Install PureScript and psc-package.

npm install -g [email protected] [email protected]

# Install the PureScript dependencies.
psc-package install

# Build Lambda Lantern.
# Double check the include and lib paths.
# You may need additional flags for your platform.

make \
  CXXFLAGS=" \
    -fmax-errors=1 \
    -I/usr/include/python \
    -I/usr/include/panda3d \
    -I/usr/include/freetype2" \
  LDFLAGS=" \
    -L/usr/lib/panda3d \
    -lp3framework \
    -lpanda \
    -lpandafx \
    -lpandaexpress \
    -lp3dtoolconfig \
    -lp3dtool \
    -lp3pystub \
    -lp3direct \
    -pthread \
    -lpthread"

# Run Lambda Lantern.

LAMBDA_LANTERN_ASSETS_PATH="./assets" ./output/bin/lambda-lantern

What is the license? 📜

Lambda Lantern

For license information, see LICENSE.

Who wrote Lambda Lantern? ©️

Lambda Lantern

(C) 2018 David Lettier
lettier.com

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].