Giter Club home page Giter Club logo

hikari's Introduction

Build Status

Hikari

Project Hikari

Project Hikari is the code name for a yet-to-be-named open-source Mega Man/Rockman game written in C++. The goal of this project is to create a faithful clone of the classic NES title "Mega Man" ("Rockman" in Japan). The feature set of the game consists of elements from various Mega Man titles, but is strongly influenced by Mega Man 3.

Gameplay and feature videos can be seen on hakaselabshikari's YouTube page.

You can also contact us via our Facebook fan page, if that's your kind of thing.

Customization & Extension

The game is designed to be as data-driven as possible and as such it allows for customization and extension.

  • Animations (sprites) are defined in JSON files
  • Items, Enemies, Projectiles, etc. are defined in JSON files
  • Item and Enemy behaviors are scriptable using Squirrel
  • Maps/stages are defined in JSON files
  • Music and sound effects are played from NSF files, and multiple NSF files can be used to mix and match music from different files

Most things are customizable. Not everything, but most things.

Building

Project Hikari uses CMake to generate platform and compiler-specific build files.

Dependencies

Before building Hikari, make sure that the following libraries are compiled and installed:

Also note that this project uses C++11 features such as auto, decltype, and lambdas, and therefore requires a C++11 compliant compiler in order to build successfully.

Building on Windows (VS2010+)

  1. Ensure SFML and PhysicsFS are installed.

  2. Clone the repository.

     git clone https://github.com/zackthehuman/hikari.git hikari
    
  3. Generate the build files.

     mkdir hikari-build
     cd hikari-build
     cmake -G "Visual Studio 10" ../hikari
    
  4. Open the .sln in Visual Studio and build the ALL_BUILD target.

Building on Linux (Makefile)

  1. Ensure SFML and PhysicsFS are installed.

  2. Clone the repository.

     git clone https://github.com/zackthehuman/hikari.git hikari
    
  3. Generate the build files.

     mkdir hikari-build
     cd hikari-build
     cmake -G "Unix Makefiles" ../hikari
    
  4. Build the application.

     make
    

Building on Mac (Makefile)

  1. Ensure SFML and PhysicsFS are installed. Note that SFML must be built with the same version of libc++ as Hikari, otherwise you'll run into linker errors. The generated build files will try to define -stdlib=libc++ when compiling and linking on a Mac.

  2. Clone the repository.

     git clone https://github.com/zackthehuman/hikari.git hikari
    
  3. Generate the build files.

     mkdir hikari-build
     cd hikari-build
     cmake -G "Unix Makefiles" ../hikari
    
  4. Build the application.

     make
    

Why is it called "Hikari"?

"Hikari" is the Japanese word for "light". Since Dr. Light is the creator of Mega Man, we figured that a word associated with him would be an appropriate code name for a project like this. Originally "hikari" was going to be the name of the engine used to power the game, but focus has shifted away from a separate engine/game architecture.

Are you actually making a clone of Mega Man 3?

No. While the mechanics of the game are very similar to Mega Man 3, this project is intended to be an original work and not an exact clone of any Mega Man title.

hikari's People

Contributors

zackthehuman avatar

Watchers

 avatar  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.