Making Online Games
Games
Following is a list of open-source games. The main criterion for inclusion in this list is a simple setup for development. Each game entry links to an online editor to make and test changes to the program code.
Simple Snake
A simple implementation of the classic snake game. You can control the snake using arrow keys and WASD keys.
- Program code: ./games-program-codes/simple-snake
- Online editor: https://elm-editor.com/?project-state=https%3A%2F%2Fgithub.com%2Fonlinegamemaker%2Fmaking-online-games%2Ftree%2Fmain%2Fgames-program-codes%2Fsimple-snake&file-path-to-open=src%2FMain.elm
Sunny Land — A WebGL Playground platformer
- Main repository by Andrea Peltrin: https://github.com/passiomatic/sunny-land
- Online editor: https://elm-editor.com/?project-state=https%3A%2F%2Fgithub.com%2FViir%2Fsunny-land%2Ftree%2Fd7660f6e6edf099d8d52587224582f235e0f6a4e%2F&file-path-to-open=src%2FMain.elm
Game Template
This project is a template for video games. It comes with a framework for rendering to HTML (web browsers) and processing inputs from the keyboard or the mouse. You can use this as a starting point for games like Tic-Tac-Toe, Snake, Tetris, Breakout, or platformers like Super Mario.
- Program code: ./games-program-codes/game-template
- Online editor: https://elm-editor.com/?project-state=https%3A%2F%2Fgithub.com%2Fonlinegamemaker%2Fmaking-online-games%2Ftree%2Fmain%2Fgames-program-codes%2Fgame-template&file-path-to-open=src%2FMain.elm
Tech Demos
Play Audio File
Playing an audio file from the Elm update function without using ports:
- Program code: ./implement/demo/play-audio-file
- Online editor: https://elm-editor.com/?project-state=https%3A%2F%2Fgithub.com%2Fonlinegamemaker%2Fmaking-online-games%2Ftree%2Fmain%2Fimplement%2Fdemo%2Fplay-audio-file&file-path-to-open=src%2FMain.elm
WebGL Rotating Cube
This demo uses WebGL functions to render a rotating cube.
- Program code: ./implement/demo/webgl-rotating-cube
- Online editor: https://elm-editor.com/?project-state=https%3A%2F%2Fgithub.com%2Fonlinegamemaker%2Fmaking-online-games%2Ftree%2Ffd35d23d89a50014097e64d362f1a991a8af206f%2Fimplement%2Fdemo%2Fwebgl-rotating-cube&file-path-to-open=src%2FMain.elm