A functional game engine for creating emoji games.
※ it's beta for now
[ 日本語 ]
Major Features
- You can write game logic well in a functional language (PureScript).
- You can express various ideas by combining emojis.
- Easy to distribute to any browser.
Why PureScript
It is a functional language that can guarantee both descriptive power and distributability.
descriptive power | distributability | |
---|---|---|
Haskell | ○ | △ |
Elm | △ | ○ |
PureScript | ○ | ○ |
Why Emoji
Because there is room for creation if there is constraint.
I am a fan of PICO-8. PICO-8 has strict restrictions such as dot picture and capacity, but I think that these make creating game more fun.
In the same way, if there are restrictions that only emojis can be used, there is a different enjoyment of game making.
Specification
- Language: PureScript
- Monitor Size: 1024x1024
- Emoji: unicode emojis ※Supported Emojis
- Color: 16 html base colors
- Input Interface: Keyboard (PC), Swipe (SP, Tablet)
- Frame Rate: About 60 FPS
- Working Environment: Any brower
Simple Manual
Examples
clone this repository first.
install
npm i
bower i
build
※ if you can not build with warning, please pulp build
once.
npm run build
npm run build:examples
open html (public folder) on browser
npm run open
access with tag (it may need reload)
public/index.html#hello
public/index.html#basic
public/index.html#emodius
Play Online
You can play "Emodius" of the sample program online.
You can also add games you made with NEMO here. If you want, please make issue or PR at Github Pages Repository
Under Developing List
- interpreter which executes code on the web
- performance tuning
- iOS sound support
Wait And See
- emoji rotate (45°, 135°, 225°, 315°) problem on canvas
- default emoji presentation CSS Fonts Module Level 4 - Editor’s Draft, 17 August 2018
API Documentation
Contribution
Since it is beta version, wait for a while. If you find an improvement point, please give me an issue. Thank you.
License
※ License of emojis' graphics are owned by each vendor.