GithubHelp home page GithubHelp logo

imclab / sixteen Goto Github PK

View Code? Open in Web Editor NEW

This project forked from filippsen/sixteen

0.0 1.0 0.0 480 KB

(2012) 16 games in 16KB using Unity (web) engine (no streaming, self-contained data)

License: The Unlicense

sixteen's Introduction

sixteen

What

This project consists of 16 games in 16KB of data, using Unity (web) engine (no streaming, self-contained data).

It was one of those Sunday midnight coding I run often times. This one was from mid 2012.

Screenshots 1

How

It leverages the CHIP-8 virtual machine especification and its games. I implemented the emulator for interpreting CHIP-8 games and shrank it down to 16KB. I used Unity 3.4 back then. At that time I was really aware of Unity web engine footprint so I thought I could shoot for 16KB. There was still a corcern about the sound effects though, mostly because of the lack of low-level sfx access on there. I managed to make a little silly sound fit into the build at the end.

I also remeber doing code size optimizations. I frequently analyzed and compared different dissembly outputs to decrease code size of certain IL code chunks. The tool used was most probably the Microsoft NET Framework IL Disassembler.

The final unity3d files was 15,952 bytes.

On the controls side of things, it was weird. Weird mostly because the machine input is based on a hex keyboard. I ended up mapping it to the folling keyboard layout:

|1 | 2 | 3 | 4 |

|Q | W | E | R |

|A | S | D | F |

|Z | X | C | V |

Build

The project has been converted to Unity 4.2. Works with both Unity Free and Pro versions.

Downloads

Controls:

|1 | 2 | 3 | 4 |

|Q | W | E | R |

|A | S | D | F |

|Z | X | C | V |

License

Source code is released into the public domain. Read the LICENSE file.

All the binary files related to CHIP-8 (games located inside the Resources folder) are reportedly to be placed in the public domain.

sixteen's People

Contributors

filippsen avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.