falling-turnip
LambdaHack
Our great sponsors
falling-turnip | LambdaHack | |
---|---|---|
2 | 8 | |
66 | 612 | |
- | 0.5% | |
0.0 | 6.5 | |
almost 11 years ago | about 1 month ago | |
Haskell | Haskell | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
falling-turnip
-
Show HN: Making a Falling Sand Simulator
If you want more performance, falling sand simulators can further be made parallel by implementing them using Margolus Neighbourhoods, as in Falling Turnip: https://github.com/tranma/falling-turnip
The idea is that a single iteration divides the world into 2x2 squares and then applies effects sequentially within each square, but not between the squares. This means each square can be processed independently. In the next iteration, the division into squares shifts right and down by one cell each direction. This does mean you need more steps than in a sequential implementation, but I found it to be quite a principled approach to parallelizing cellular automata when I first read about it. One interesting side effect of this design is that falling particles end up being separated by blank space, as shown here: https://futhark-lang.org/static/falling-sand-2016.12.04.webm I wonder if that is fixable.
-
How To Make A Falling Sand Simulation?
and here is a github project of a falling sand game written in Haskell https://github.com/tranma/falling-turnip
LambdaHack
-
Release announcement: Sphere
Looks really cool! Here's how I do releases: https://github.com/LambdaHack/LambdaHack/issues/76
- Sharing Saturday #393
-
Game design question: how to base item generation on character skill, but not promote artificial optimal play?
here's the failed commit: https://github.com/LambdaHack/LambdaHack/commit/930dfd46b949d1525e900b997137389a8092305b
-
[ANN] Monomer, a GUI library for Haskell
I've recently tried that and gave up (https://github.com/LambdaHack/LambdaHack/issues/248). Perhaps it's possible to statically link SDL2, but I learnt it's impossible to statically link the OpenGL and X11 libraries, so you end up with a partially statically linked binary (I didn't manage to obtain even that).
-
Getting Started...
I did some plotline sketches on the github wiki of my project, but never used them so far. Not much use from the other musings there, either. Instead I tweak the templates for procedural generation directly in the code (game content part of the code, to be precise) and get a lot of mileage out of that. The only page of the wiki I got lots of benefit from is the derivation of the simplified formula for calculating speed, distance and damage of projectile from their weight: https://github.com/LambdaHack/LambdaHack/wiki/Item-statistics#projectile-velocity-and-distance
-
Getting to 1.0
Around a decade. No, one release per 1-2 years. The differences are quite large, both gameplay and, even more, UI, in particular in using ready fornts, then custom fonts, then many fonts at once. See the changelogs (that's only for the egine, but that's where most of the changes are made): https://github.com/LambdaHack/LambdaHack/releases
- Sharing Saturday #357
- Allure of the Stars v0.10.2.0 is out
What are some alternatives?
tateti-tateti - Meta tic-tac-toe ncurses game.
rattletrap - :car: Parse and generate Rocket League replays.
Allure - Allure of the Stars is a near-future Sci-Fi roguelike and tactical squad combat game written in Haskell; please offer feedback, e.g., after trying out the web frontend version at
aeson-tiled - Aeson instances for Tiled map editor types
Nomyx - The Nomyx game
general-games - Haskell package with helpful structures for a variety of games
FunGEn - A lightweight, cross-platform, OpenGL-based 2D game engine in Haskell
monomer - An easy to use, cross platform, GUI library for writing Haskell applications.