world

command module
v0.0.0-...-a30bc99 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 21, 2023 License: MIT Imports: 1 Imported by: 0

README

World Generator

This is a tool and library to procedurally generate fantasy worlds.

Configuration

The best way to configure the executable is to put a world.yaml file in your working directory and pass it to the binary with the -c flag. For example:

world -c world.yaml culture

The file is structured like this:

data_dir: <data directory>
save_dir: <save directory>
save_target: <either "DO" or "filesystem">
web_domain: <final web domain>

The following environment variables configure the executable and are required if not specified in the config file:

  • WORLD_DATA_DIRECTORY: The absolute directory that contains data files for the application.
  • WORLD_SAVE_DIRECTORY: The absolute directory where files will be written to.
  • WORLD_SAVE_TARGET: Either DO to save to Digital Ocean or filesystem to save to the local file system.
  • WORLD_WEB_DOMAIN: The domain name (without protocol) remote images will serve from. For example, www.world.com.

Building

Run ./build.sh. The binary will be dist/world.

Running in Development

Run ./run.sh <command>. It will set sane defaults and use the local filesystem for saving files.

Documentation

Overview

Copyright © 2023 Ben Overmyer <ben@overmyer.net

Directories

Path Synopsis
pkg
age
Package age implements structures and routines for age calculation and reasoning.
Package age implements structures and routines for age calculation and reasoning.
animal
Package animal provides animal data sets and logic.
Package animal provides animal data sets and logic.
buildings
Package buildings provides structures and algorithms for producing random architectural styles and individual building appearances.
Package buildings provides structures and algorithms for producing random architectural styles and individual building appearances.
character
Package character provides fictional character generation tools.
Package character provides fictional character generation tools.
clothing
Package clothing provides methods and tools for generating fantasy clothing styles.
Package clothing provides methods and tools for generating fantasy clothing styles.
conlang
Package conlang provides methods and tools for procedurally generating constructed languages.
Package conlang provides methods and tools for procedurally generating constructed languages.
country
Package country provides structures and tools for generating fantasy countries.
Package country provides structures and tools for generating fantasy countries.
culture
Package culture provides methods and tools for generating fantasy cultures.
Package culture provides methods and tools for generating fantasy cultures.
dice
Package dice provides methods for simulating the rolling of polyhedral dice.
Package dice provides methods for simulating the rolling of polyhedral dice.
drink
Package drink provides methods and tools for generating fantasy drink styles.
Package drink provides methods and tools for generating fantasy drink styles.
fish
Package fish provides fish data sets and logic.
Package fish provides fish data sets and logic.
food
Package food provides methods and tools for generating fantasy food styles.
Package food provides methods and tools for generating fantasy food styles.
gender
Package gender provides structures, tools, and methods for dealing with gender, including description and pronoun generation.
Package gender provides structures, tools, and methods for dealing with gender, including description and pronoun generation.
geometry
Package geometry provides a geometry coordinate system and attendant functions for dealing with grids.
Package geometry provides a geometry coordinate system and attendant functions for dealing with grids.
goods
Package goods provides structures, methods, and tools for dealing with trade goods.
Package goods provides structures, methods, and tools for dealing with trade goods.
graphics
Package graphics provides tools for generating images.
Package graphics provides tools for generating images.
heavens
Package heavens provides structures and tools for procedurally generating suns, moons, and stars.
Package heavens provides structures and tools for procedurally generating suns, moons, and stars.
heraldry
Package heraldry implements methods for randomly generating heraldic coats of arms and their associated blazons.
Package heraldry implements methods for randomly generating heraldic coats of arms and their associated blazons.
insect
Package insect provides insect data sets and logic.
Package insect provides insect data sets and logic.
language
Package language provides structures and methods for dealing with languages, whether fictional or otherwise, in fantasy worlds.
Package language provides structures and methods for dealing with languages, whether fictional or otherwise, in fantasy worlds.
mask
Package mask implements methods for masking images.
Package mask implements methods for masking images.
math
Package math provides utility functions for mathematical operations.
Package math provides utility functions for mathematical operations.
measurement
Package measurement implements methods for converting between and displaying different types of measurement.
Package measurement implements methods for converting between and displaying different types of measurement.
merchant
Package merchant allows for creation of travelling merchants and their wares
Package merchant allows for creation of travelling merchants and their wares
mineral
Package mineral provides minerals and tools for their usage
Package mineral provides minerals and tools for their usage
monster
Package monster provides monster implementations of the species.Species struct
Package monster provides monster implementations of the species.Species struct
organization
Package organization implements social organizations and tools for dealing with them
Package organization implements social organizations and tools for dealing with them
pantheon
Package pantheon implements fantasy pantheons
Package pantheon implements fantasy pantheons
plant
Package plant provides plant implementation of species.Species
Package plant provides plant implementation of species.Species
profession
Package profession provides fantasy professions and metadata for them
Package profession provides fantasy professions and metadata for them
race
Package race provides fantasy races as an implementation of species.Species
Package race provides fantasy races as an implementation of species.Species
region
Package region provides tools and structures for fantasy regions of a world
Package region provides tools and structures for fantasy regions of a world
relationship
Package relationship provides tools for dealing with relationships between various entities
Package relationship provides tools for dealing with relationships between various entities
religion
Package religion implements fantasy religions
Package religion implements fantasy religions
resource
Package resource provides natural and manmade resources.
Package resource provides natural and manmade resources.
save
Package save implements a system for saving files to various targets
Package save implements a system for saving files to various targets
size
Package size implements a system for size categories of creatures
Package size implements a system for size categories of creatures
slices
Package slices provides convenience methods for dealing with slices
Package slices provides convenience methods for dealing with slices
soil
Package soil implements soil types
Package soil implements soil types
species
Package species implements the backbone of all living entities in a world
Package species implements the backbone of all living entities in a world
town
Package town implements towns in fantasy worlds
Package town implements towns in fantasy worlds
trait
Package trait provides tools for dealing with descriptive traits of creatures or objects
Package trait provides tools for dealing with descriptive traits of creatures or objects
tree
Package tree implements trees
Package tree implements trees
words
Package words provides convenience methods for dealing with words and phrases
Package words provides convenience methods for dealing with words and phrases
writing
Package writing implements generation of fantasy writing systems
Package writing implements generation of fantasy writing systems

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL