Advanced Search
Search Results
32 total results found
pageboi
Combat System
Overall Design Choices
The classes in this game all follow some overarching design choices which are described here. Roles Player characters can fulfill one of four roles: Tank Heal Melee DPS Ranged DPS Hybrid classes, or uniform, all-encompassing character build paths th...
Geomancer - Celsian
Life is like a rock - full of wonders and often too easily thrown away. My brother thinks that I am a geologist, but I am not. It directly follows that there has to be a Geomancer class. Class Philosophy The geomancer uses earth-based spells. Th...
Benthic Whispers - Vanados
Background Her parents had suffered three stillbirths and wished for nothing more than a healthy child. As her mother got pregnant with Agatha, she went to a fortune teller, who told her that she would only ever have one healthy child. All others shall belong...
Crusade Boi / Fanatic - Meritus
I have a hammer, a sword and a spoon and I shall create the work of god, slay his enemies and feed those in need. The food is the life, and may god nurture us all. Eat, pray, slay the unbelievers - what a lovely afternoon! Background Meritu...
Joining and Leaving a Server
Currently, the game can only be joined on a dedicated server. This server needs to be built with a separate build template, which currently only runs on linux. A dedicated server uses the "dedicated_server" feature, which allows for queries to determine whethe...
Movement
Player movement is controlled by the handle_movement function in the player script, which is called in _physics_process. It uses the direction variable that is synced from the player_input node. player_input generated the direction vector based on the directi...
Animal Boi - Krashali
Are you still gonna eat that? Shapeshifter, but locked to one form per role. Melee form is sort of a raven, not sure about other ones
Spell Dictionary
Spells are the combat skills that players, NPCs and interactables use to affect players and NPCs. They can be divided into damage, heal, dot, hot, buff, debuff, and aura spells. All spell data are contained in the data/db_spells.json file. The spell data are ...
Wheel
Raspberry Pi OS does not have the wheel group by default. It can be added with sudo groupadd wheel A user can then be added to the wheel group with sudo usermod -aG wheel username The -a flag appends the group, such that the user is not removed from all gr...
doas
doas can be installed with sudo apt install doas After this, a config file must be created, optionally after installing vim with sudo apt install vim sudo vim /etc/doas.conf The content of the config file should then be set to permit setenv {PATH=/usr/lo...
ssh
The Raspberry Pi OS can be set up with an rsa key already authorized. If this is not the case, a new public key must be added. The new key must be moved into the file /home/username/.ssh/authorized_keys Afterwards, the default port for ssh connections must b...
BaseSpell Class
Spells inherit from the BaseSpell class, which contains some functionality that is shared between all spells. This class contains the dictionaries that store spell data, the cooldown timer, and the flag that determines whether a spell uses mouseover targeting....
Interactables
Interactables are objects in the game world that can be interacted with, and trigger a specific effect when this is done. Effects can be spells cast on the interactable target, or other specified targets, or changes made to the game world. Technically, virtual...
Creating New Spells
New spells are intended to be simple to add, if they do not do esoteric things. In particular spells that deal damage, heal, apply a buff, debuff or absorb shield, or combine these elements, should be fairly simple to implement. To add a new spell, a few steps...
Spell Container
The spell_container scene consists of a node of type Node, and is used as a parent node for all individual spell scenes that a unit or interactable has available. The spell_container script contains a few functions. spell_entrypoint is the function that recei...
Auras
Auras are temporary or permanent effects on a unit. They can be DoTs, HoTs, buffs, debuffs or absorbs. Every unit has an aura_container scene, which has a Node type root node, and contains Node type nodes named dot_container, hot_container, buff_container, deb...
Entering the Combat Script
There are a number of functions that are intended as entrypoints into the combat script, which are called by spell scripts. The appropriate function must be called to properly proceed through a combat event. combat_event_entrypointThis function serves as the ...
Combat Events
Combat events are damage, healing and aura events that are reached via the entrypoints into the combat script. They calculate the magnitude of a spell, unless prescribed, check for avoidance and ciritcal hits, apply the hp change or aura to the target, and log...