All Units

Name Description
ai_animal

Shared Artificial Stupidity unit for animal AI

ai_villager

Shared Artificial Stupidity unit for villager AI

ale_tankard

A tankard of ale - health top up

animation

Unit responsible for projectile and magic animations

architect

Unit responsible for selecting themed dungeons and caves. The types of locations are: tCave - underground cave with no obstacles tStoneCavern - underground cave with rubble tDungeon - rooms connected by corridors tCrypt - dungeon populated by undead tVillage - small settlement

Arrays containing location types for certain areas of the island. The further north the player goes, the more difficult the locations become

arrow

Arrow

Axes

Axes, Armour & Ale Copyright 2021-2023 Chris Hawkins

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

basic_club

A wooden club

blood_bat

Weak enemy with simple AI, no pathfinding

blue_fungus

Stationary hazard, when attacked there's a chance of bewildering the player

bogle_drunk

Weak enemy, but escapes to heal when injured

bone_dagger

A dagger made of sharpened bone

camera

Camera unit follows the player around and displays the surrounding game map

cave

Generate a cave using two passes of a cellular automata algorithm and then remove any unreachable areas by floodfilling the map and discarding maps that are less than 39% floor tiles. Stairs are placed on the top level and a connecting stairway is placed on the floor below. If the floor below has a wall tile where the stair should be, that floor is discarded and generated again.

cave_bear

Cave bear - relatively strong enemy

cave_rat

Weak enemy with simple AI, no pathfinding

cloth_armour1

Low quality cloth armour

combat_resolver

Combat Resolver unit

Melee combat is decided by rolling a random number between 1 and the entity's ATTACK value. Then modifiers are added, for example, a 1D6+4 axe will roll a 6 sided die and add the result plus 4 to the total damage amount. This is then removed from the opponents defence rating. If the opponents defence doesn't soak up the whole damage amount, the remainder is taken from their Health. Spite damage is when an entity loses a combat round and the player can roll a 6, dealing damage 'in spite' of losing the round.

This is partly inspired by the Tunnels & Trolls rules, my favourite tabletop RPG.

crude_dagger

A crude, iron dagger. Easily broken if thrown

crypt

Builds a map of randomly placed rooms with prefab rooms

crypt_wolf

Sleeping when first encountered, chases the player when awake

debuggingFunctions

Helper functions when debugging, printing out maps, topping up HP, etc

dlgInfo

Information Dialog box

dlgMerchant

Buy / Sell merchant dialog box

embalming_spider

Spider that spins webs

entities

Unit responsible for NPC stat, initialising enemies and utility functions

file_handling

Unit responsible for saving and loading data

flint_dagger

A dagger made of sharpened flint

fov

Players Field of View functions

ghoul_lvl1

Poisonous enemy with scent tracking

giant_cave_rat

Weak enemy with simple AI, no pathfinding

globalUtils

Common functions / utilities

gnome_assassin

Intelligent enemy with scent tracking

gnome_cultist

Intelligent enemy with scent tracking

gnome_warrior

Intelligent enemy with scent tracking

gnomish_axe

Steel axe

gnomish_dagger

An iron dagger of Gnomish design

gnomish_mace

Steel mace

goblin_necromancer

Enemy that casts necrotic magick

gold_pieces

Treasure

green_fungus

Stationary hazard, when attacked will either poison the player or release spores

hyena_fungus

Hyena, infected by fungus

island

Stores the overworld map and provides helper functions

items

Items and objects in the game world

item_lookup

Lookup table for items, based on the environment

KeyboardInput

Player input for game controls and menu selections, grouped in procedures

large_blood_bat

Weak enemy with simple AI, no pathfinding

leather_armour1

Low quality leather armour

lesser_bone_armour

Cuirass made from a ribcage

logging

Used for logging which procedures are called and in what order

los

Line of sight & targeting functions

magicEffects

Magic and Spell effects are calculated here

main

Axes, Armour & Ale - A fantasy roguelike.

map

Organises the current level into an array together with helper functions

merchant

Merchant - Buys and sells items

merchant_inventory

 

mushroom_person

Mushroom person - slow but can poison the player

necro_axe

Necrotic axe

noise

Generate Perlin noise

npc_lookup

Lookup table for NPC's, based on the environment

parchment

Parchment scroll that can increase a player stat

pixie_jar

A glowing pixie in a jar - Light source

pixie_jar_dim

A dimly glowing pixie in a jar - Light source

player

Player creation and movement

player_inventory

Handles player inventory and associated functions

player_stats

Additional player stats that are not shared with other entities are stored here

plot_gen

Generate names and plot elements

pointy_stick

A pointy stick

poison_spore

A spore that poisons the player when triggered

rabid_dog

Weak predator, attacks other animals

redcap_fungus

Redcap infected by fungus

redcap_lesser

Intelligent enemy with scent tracking

redcap_lesser_lobber

Hunter enemy, fires projectiles

resolution

Determines the terminal size when the game is first opened and resizes the user interface accordingly. For a typical 80x24 terminal size, the camera size will be 57x19 For a terminal size of 102x24 and greater, the camera size will be 80x19 This is kept to 19 rather than the full 20 to allow for screenshake to be added in future versions.

rock

A rock, causes base damage of 4 points

scorpion

Scorpion that can paralyse the player

scrCharacter

Character sheet - Shows player stats

scrCharIntro

Character introduction and scene setting

scrCharSelect

Choose your characters race

scrDeathList

Display number of enemies killed

scrGame

Main game user interface

scrHelp

Help screen - accessed from main game screen

scrIntro

Introduction screen

scrInventory

Inventory screen

scrLook

Screen used for the Look command

scrOverworld

Overworld screen user interface

scrRIP

Game over screen

scrTargeting

Screen used for Firing a bow

scrThrow

Screen used for Throwing projectiles

scrTitle

Title screen

scrWinAlpha

Shown when exiting the Smugglers cave and starting the larger adventure

short_bow

A short bow

skeleton_lvl1

High defence, low attack

smallGrid

Generates a grid based dungeon with wide spaces between rooms, this is then processed to apply bitmasked walls

small_corpse_spider

Spider that can inflict poison damage

small_green_fungus

Stationary hazard, deals poison damage in combat

small_hornet

Simple enemy with no AI, moves in a pattern to act as a barrier It's called a 'small' hornet, but only in relation to Giant insects

small_hyena

Weak predator, attacks other animals

small_scorpion

Scorpion that can poison the player

smell

Smell map, a copy of the map is floodfilled with integers. Each integer increments the further away it is from the player. Creatures can then track the player by finding a tile with a lower number than the one that they're standing on.

The below routine is based on code from Stephen Peter (AKA speter)

smugglersMap

First quest MacGuffin, the smugglers map

staff_bewilder

A magical staff of bewilder, area effect

staff_minor_scorch

A magical staff of minor scorch, area effect

stone_cavern

Generate a cave using two passes of a cellular automata algorithm and then remove any unreachable areas by floodfilling the map and discarding maps that are less than 39% floor tiles. Stairs are placed on the top level and a connecting stairway is placed on the floor below. If the floor below has a wall tile where the stair should be, that floor is discarded and generated again. Pillars are also added to the generated floors.

terbutje

A wooden club studded with spikes made of obsidian

trog_giant

Intelligent enemy with scent tracking

trog_simple

Intelligent enemy with scent tracking

ui

User Interface - Unit responsible for displaying messages and screens

universe

Generate the game world, caves, dungeons, its levels and related info

vampiric_staff

A magical staff that drains energy of enemies, area effect

village

Generates a small village of shacks and a village hall

villager

Simple wandering NPC

web

Environmental hazard - blocks entities

web_trap

A trap that creates more webs when triggered

wine_flask

Flask of wine - cures poison

zombie_weak

Slow weak enemy


Generated by PasDoc 0.16.0.