spellsource-game 0.10.0-SNAPSHOT API

Packages
Package
Description
Contains the base card resources class for adding important basic cards, like the neutral hero, to the collection.
A collection of common classes used throughout the Spellsource code base.
Contains code that implements the drafting mechanic in Spellsource.
Utilities for working with community deck strings, data management, logging and serialization.
The core engine code for Spellsource.
Game actions are things players can do.
Behaviours describe how a player should respond to events in the game.
The features and the heuristic used to evaluate game states.
An incomplete Monte Carlo Tree Search based implementation of a behaviour.
Cards contains important enums, deserialization code, the card catalogue and the card entity.
Card cost modifiers change the cost of specific or multiple cards, living on the player entity, on a card or an in-play entity.
This package contains classes that help deserialize the card JSON into objects.
Dynamic descriptions on cards allow values to be embedded into a card's description text.
Decks contains code to define a collection of cards for play.
This package has various deck validation functions.
Entities are the various classes that live inside a match, like a card, hero, minion, and weapon.
Hero entity related code.
Minion entity related code.
Weapon entity related code.
The environment holds ephemeral data (variables) during the course of a game.
Events correspond to things that happen inside the game that other rules can react to.
This package contains the game logic, the rules of the game of Spellsource.
Interfaces for multiplayer cross-context gameplay.
Spells contain all the functional pieces of the card JSON (Click on description to learn more about how to use this).
Code related to auras.
Custom spells that are used to implement game effects that are too complex for card JSON.
Subcomponents of a spell that help implement functionality like filtering cards and retrieving values.
Aura deserialization code.
Conditions encode a true or false evaluation of a piece of game state.
Filters include/exclude targets from a list of entities generated by an entity reference or a card source.
Card cost modification deserialization code.
Card sources generate lists of cards.
Trigger and enchantment deserialization code.
Value providers read the game state and provide values for spells, conditions, filters, etc.
This package contains all the classes that react to game events.
The secret and quest entity code.
This package collects statistics about the game as it plays out.
Targeting contains the types used to describe various targets of effects.
Various utility classes for doing math and loading resources.