https://github.com/opyapeus/piyo
[ABANDONED] Haskell game engine like fantasy console.
https://github.com/opyapeus/piyo
Last synced: 4 months ago
JSON representation
[ABANDONED] Haskell game engine like fantasy console.
- Host: GitHub
- URL: https://github.com/opyapeus/piyo
- Owner: opyapeus
- License: mit
- Created: 2018-08-07T05:41:47.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-08-08T12:04:30.000Z (almost 8 years ago)
- Last Synced: 2026-02-15T04:24:24.624Z (4 months ago)
- Language: Haskell
- Homepage:
- Size: 1.64 MB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: ChangeLog.md
- License: LICENSE
Awesome Lists containing this project
README
# Piyo🐤
Haskell game engine like fantasy console.
Inspired by PICO-8.

NOTE: UNDER DEVELOPMENT
## Feature
- minimum but simple api
- pure update funciton
- japanease bitmap font support
It supports PICO-8 like drawing api.
## Assuming Specification
For now below.
- display: 192x192
- sprite size: 12x12
- map size: 16x16
## Requirements
SDL2 needed.
### For OS X
Install middle wares with homebrew.
```
brew install sdl2 sdl2_gfx sdl2_image sdl2_mixer sdl2_ttf
```
### For others
It may work ..!
## Minimal code
```haskell
import Piyo
instance Game () where
draw _ =
[ cls Yellow
, txt Black "Hello, World!" 48 48
]
main :: IO ()
main = piyo () Nothing
```

## Data Flow Schematic
Functions are called in order update, draw, sound every frame.

## Indexing
Index number starts with 0. Not 1.
## Examples
Sample working code at [Examples](examples)
## Development in the future
- Redesign assets format
- Enrich sound api
- Add useful state update functions
- FPS management
- Support ore key action
- Sprite and map editor
- Export function for distribution
- etc...