kble/README.md

2.2 KiB

KBLE, a KeyBoard driven Level Editor

A work in progress level editor with extensive keyboard support. Designed for tile based 2D platformers. This is a work in progress program in unusable state.

Short term design decisions

Subject to change.

  • Efficiency, simplicity and clarity are key goals.
  • Fully keyboard driven modal editing. Mouse support is secondary.
  • GUI software made in Zig with raylib.
  • Configurable (format unknown).

Installation

Runtime requirements: raylib.

Precompiled binaries

builds.sr.ht status https://builds.sr.ht/~kikoodx/kble

Manual compilation

Build requirements: Zig master branch, raylib. For Arch users, zig-dev-bin and zig-git are available in the AUR.

$ # Clone this repository
$ git clone https://git.sr.ht/~kikoodx/kble && cd kble
$ zig build
$ zig-cache/bin/kble

Press escape to close the program.

Command line argument

Not available on Windows. Accept a path to KBLE file to open. If the file doesn't exist, the given path will be used for saving. Defaults to level.kble if no argument given.

$ kble #level.kble
$ kble sample.kble
$ kble $HOME/projects/kble/sample.kble

Default keybindings

Movement:

  • h: left
  • j: down
  • k: up
  • l: right
  • y: up-left
  • u: up-right
  • b: down-left
  • n: down-right

Verbs:

  • <space>: clear selection
  • d: delete selection
  • r: replace selection
  • +: increase scale (zoom)
  • -: decrease scale (dezoom)
  • =: reset scale

File (read/write):

  • e: read (load) level
  • w: write (save) level
    See kbleformat.md for technical informations.

Modes:

  • <return>: normal mode, default
  • i: free selection mode
  • v: rectangle selection mode
  • c: camera mode [not implemented]

Mouse control

Right click and left click are the same, except right click reset selection before taking effect.

  • Click: free selection.
  • Shift + Click: rectangle selection.
  • Click while selecting: end selection.

License

Copyright (c) 2021 KikooDX

This project is under the MIT license. See LICENSE for more details.