DRAK 0 Versions Save

A fantasy console written in C++ using SFML and using ChaiScript and LuaJIT for scripting.

0.1.x.104-dev

6 years ago

I thought I'd add named releases, starting with "Ancient Ascension."

Additions:

  1. LuaJIT 2.0 - This means lua-based scripts will run even faster! ("They've gone to plaid!")
  2. Sprite Blitting - Basic sprite blitting is now supported. While the function takes the same arguments as TIC-80, not everything is implemented, yet. You can only draw sprites of arbitrary 8x8 pixel cell width and height. They cannot yet be flipped, rotated, or scaled. Please see example_spr.lua for an example of how to use spr and it's helper function sidx which can be used to determine a sprite index from its sprite page and cell coordinates.

Changes:

  1. Started separating code into more files. Specifically, system.hpp has been split into system.hpp (trimmed down mode), system/system.cpp, system/internal.cpp, and system/api.cpp

0.1.x.88-dev

6 years ago

Changes

  1. Switched from statically linking SFML to dynamically linking because of future licensing problems when using OpenAL Soft indirectly.

Additions

  1. Added Lua scripting NOTE: Lua is actually much much faster than ChaiScript, so if you care about performance use that. I'll probably also look into adding LuaJIT for even faster performance. I'm also going to look into other scripting languages to add.
  2. Functions btn, mbtn, and mpos added.
    • btn(button_id) returns true if the indicated button is pressed
      • 0 -> Up
      • 1 -> Down
      • 2 -> Left
      • 3 -> Right
      • 4 -> A
      • 5 -> B
      • 6 -> X
      • 7 -> Y
      • 8 -> Start
      • 9 -> Select
    • mbtn(button_id) returns true if the indicated mouse button is pressed
      • 0 -> Left
      • 1 -> Right
    • mpos(axis_id) returns the position of the mouse along the indicated axis
      • 0 -> X
      • 1 -> Y

0.1.100.84

6 years ago

This version is functionally equivalent of v0.1.70 (d060bd4e2d82de223eca36221910401db54bd9a4).

This release just switches over to a more controlled versioning system.

Previously the release versions were <major>.<minor>.<build>, now they are <major>.<minor>.<revision>.<build>

Also, dev branch release versions are now <major>.<minor>.x.<build>-dev

Note, the <build> portion is shared between master and dev builds, hence why it was decided to make the <build> portion of less importance.

0.1.70

6 years ago

AppVeyor Release for DRAK-0

DRAK-0 can now load a script file.

DRAK-0.exe example.chai

Example Script

trace("Hello World!); // Prints "Hello World!" to Windows console
def update() {
    // Required function, called every frame
}
exit(); // Quits execution of script

0.1.67

6 years ago

AppVeyor Release for DRAK-0

Now the 64-bit builds should be just the .exe inside the .zip files.

0.1.63

6 years ago

AppVeyor can now build DRAK-0

I finally have AppVeyor semi-correctly building the for versions of DRAK-0.

NOTE: It's very possible that the current builds only work on Windows 10. If it doesn't work on your system please make an issue. Also, if you know how to support more systems please make a pull request.