Giter Club home page Giter Club logo

hacks's Introduction

hacks

Haxe roguelike framework.

This project aims to provide a high-level, framework-agnostic, cross-platform framework for writing roguelikes in Haxe.

What is this?

Currently, the project mostly consists mainly of an ASCII/tile renderer, data structures for world loading, tile loading, UI, seeded random, and color management.

Planned features include:

  • Haxe implementation of common world generation and FoV algorithms.
  • Saving and serialization routines.
  • Loading entity definitions from file.
  • Pathfinding.
  • Turn scheduling and logging helper functions.

How do I use this?

At the moment, there aren't any docs or example code. These are coming Soon™, once the API is relatively finalized.

Backend

The longterm goal is to provide a library with minimal dependency on a particular rendering framework.

The hacks.backends package provides different interfaces to Haxe rendering libraries. Only OpenFL is presently supported (specifically, the Flash target) as a rendering backend. This dependency could be substituted for another framework by implementing hacks.backends.IBackend - Luxe or heaps, for example. Something like this project could work for that purpose.

Contributing?

Feel free to make a pull request or file an issue.


The code is MIT-licensed. See LICENSE.txt.

hacks's People

Contributors

oscarcs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

hacks's Issues

Improvements and fixes to structure of Color.hx

Currently there are a number of problems with this class:

  • ARGB typedef is ill-defined. Might need to be changed to use Floats.
  • Decision needs to be made as to whether transparency should be supported. If not,
    the ARGB typedef should be refactored and renamed.
  • More hardcoded colors should be included, from some well-known and well-defined list.
  • Code is not thoroughly tested or hardened.
  • A number of useful functions are missing - difference between colors, more color spaces, etc.

Better name?

This project probably needs a more interesting name.

Sub-tile rendering support

Some limited support for 'smooth' operations that are per-pixel as opposed to per-tile would be a good idea.

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.