[ 日本語 ]
※ it's beta for now
A functional game engine that can create emoji games.
- Easy to create games with powerful functional languages (PureScript).
- Only emojis can be used as materials. Instead, there is room for creativity.
- JavaScript knowledge is basically unnecessary. You can concentrate on implementing game logic with functional languages.
- You can play on any device on which the browser runs.
When making games in functional language, there were the following options.
Haskell -> If everything could be done with this, it was the best. However, it is difficult to play on any device.
Elm -> It was one of the good options when thinking about device independence. But there is no type class support. It is also recommended that you follow the Elm architecture.
PureScript -> There is type class support like Haskell. It will also be compiled into Javascript. Therefore, you can play on any device browser!
Something restricted stimulates creativity.
I was very inspired by fantasy consoles represented by PICO-8.
There are severe restrictions on sprites, sounds, capacity, etc. that can be used.
On the contrary, These constraints inspire creativity and making the game more fun.
Just like this, I think that it is very interesting to have constraints that only emojis can be used in the Web platform.
You can also add games you made with NEMO here.
If you want, please make issue or PR at Github Pages Repository
bower i purescript-nemo
- Language: PureScript
- Monitor Size: 1024x1024
- Emoji: 1388 unicode emojis
- Color: 16 html base colors
- Map Editor: Raw text (emoji) editing
- Sound Editor: Raw text (emoji) editing
- Input Interface: Keyboard, Touch Screen
- Frame Rate: About 60 FPS
- Working Environment: Browers on any device (It needs some GPU power)
/¯¯¯\_/¯¯¯\
| W | ↑ |
| A D | ← → |
| S | ↓ |
\___/¯\___/
For mobile, it is equivalent to keyboard inputs that swiping on the right or left side of the screen.
※ The swipe origin is the touch position which started.
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
- add debug mode
- more sound effect support (ex. noise)
- improve touch screen operation
- interpreter which executes code on the web
- performance tuning
- iOS sound support
- emoji parser (purescript-emoji-splitter)
- emoji rotate (45°, 135°, 225°, 315°) problem on canvas
- default emoji presentation CSS Fonts Module Level 4 - Editor’s Draft, 17 August 2018
Since it is beta version, wait for a while. If you find an improvement point, please give me an issue. Thank you.
※ About license of emojis' graphics are owned by each vendor.