amphora 0.0.0

An opinionated meta crate for creating graphically minimal Rogue-li[ke|te] games
Documentation
  • Coverage
  • 100%
    1 out of 1 items documented0 out of 0 items with examples
  • Size
  • Source code size: 11.45 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 965.94 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 10s Average build duration of successful builds.
  • all releases: 10s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • matanlurey

amphora

An opinionated meta crate for creating graphically minimal Rogue-li[ke|te] games.

Usage

⚠️ Work in progress: This crate does not yet provide any functionality.

Features

  • Algorithms for path-finding, field of view, etc.
  • Component systems for game entities.
  • Color types and conversions.
  • Geometry types and computations.
  • Input and output.
  • Random number generation.

Background

There are a lot of existing Rust crates for creating games, everything from fully featured engines to simple 2D graphic or math libraries. However, most of these crates are designed for creating 3D games, or games with a lot of graphical complexity, and require learning a rather large API surface.

Amphora is a meta-crate that re-exports amphora-* crates that are designed to be used together to create simple 2D games. The goal is to let others focus on the game mechanics and story, rather than graphics, UI, or fiddling with underlying libraries.

The origin of the @ symbol evolved from an abbreviation of "each at" - the "a" being encased by an "e". The first documented use was in 1536, in a letter by Francesco Lapi, a Florentine merchant, who used @ to denote units of wine called amphorae.

- The Accidental History of the @ Symbol

Developing

See CONTRIBUTING.md for details on how to contribute to this project.