Giter Site home page Giter Site logo

kangzhay92 / libtcod-js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from libtcod/libtcod

0.0 2.0 0.0 33.09 MB

WIP - Porting of libtcod, a roguelike development library to javascript using emscripten infrastructure.

License: Other

Batchfile 1.88% Shell 0.07% Makefile 0.37% M4 2.34% Python 11.03% C 34.66% C++ 48.89% Lua 0.76%

libtcod-js's Introduction

Table of contents

Introduction

libtcod is a free, fast, portable and uncomplicated API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes.

Status: Build status Build Status

What can it do?

If you want to get a quick overview of the features that libtcod provides, check out the Features page.

If you want to get a quick overview of games which have used libtcod, check out the Projects page.

libtcod is also well known for it's easy to follow tutorial, which many people have used to get started developing a roguelike. Follow the relevant links the tutorial gives, and it will point you to the right locations.

How do I get set up?

Using one of our downloads

Windows and MacOS binaries are available from the GitHub Releases page.

If you are programming in C or C++, various sample projects are included within the repository which can be used as examples of various features.

For those who wish to program in Python which is the only scripting language support that has been contributed so far, the basics are described in part 1 of the tutorial. It's currently recommended to install libtcodpy via python-tdl rather than using the libtcodpy package included in this repository.

Warning: If you download these builds, run samples.exe as your very first action. If you are unable to and get an error about vcruntime140.dll being missing, you need to install the two Visual Studio 2015 runtimes. Make sure you install the 32-bit runtime. And make sure you also install the 64-bit runtime. Then run samples.exe again, and it should now work. Whether you plan to develop in C, C++, Python or some other language, this is required.

Compiling from source

You can clone with Mercurial via the BitBucket repository, or with Git via the GitHub repository. You can then checkout a specific tag or get the in-development version from the default or master branches.

All compilation methods, currently including Visual Studio (Windows), SCons (Windows, Linux, MacOS) and Autotools (Linux, MacOS), are located within the build/ subdirectory.

Windows users who prefer to use Visual Studio directly can either run the top-level 'build.bat' script, or locate and open the provided solution directly using Visual Studio. The solution is currently for Visual Studio 2015, and the free community edition is highly recommended.

SCons automatically downloads SDL2 and can be used on all platforms. Instructions are provided here. The current release builds are built using SCons.

Autotools is a common standard on Linux, and can be used for MacOS. Instructions are provided here.

If you ever need to statically compile libtcod the easiest method would be to use the src/libtcod_c.c and src/libtcod.cpp source files, which include all the other sources. Further instructions are included in those files.

Getting Started

The latest documentation is here. Currently it's very incomplete, so most people will want to read the 1.5.1 documentation instead.

libtcod comes with a sample application, implementations of which are provided in each of C (samples_c.c), C++ (samples_cpp.cpp), and Python (samples_py.py). This provides a decent overview of the basic features, in an interactive fashion. Each should be identical for the most part, so if you are using Windows, downloading the pre-compiled binaries and running the included samples.exe which is compiled from the C source code, should be representative of the other versions.

libtcod-js's People

Contributors

rmtew avatar hexdecimal avatar jice-nospam avatar fabianwolff avatar anylonen avatar tomassedovic avatar sptramer avatar namore avatar invisiblephil avatar jaydg avatar mingos777 avatar quejebo avatar jamesbyrnes avatar kyzrati avatar flags avatar zsparal avatar svenstaro avatar laanwj avatar cottog avatar

Watchers

James Cloos avatar Muhammad Idzhar 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.