Datenbank DSA Genesis Tabellen Seite 1 - HerbertV/DSAGenesis GitHub Wiki

DB Design

Symbole

  • Formel Formel Tabellen mit diesem Symbol besitzen eine oder mehr spalten mit Formeln ( siehe Scripting ).

  • SKTShift SKTShift Tabellen mit diesem Symbol können Auslöser für SKT Verschiebungen sein.

  • Trigger Script Trigger Script Tabellen mit diesem Symbol können Auslöser für ein Trigger Script sein ( siehe Scripting ).

SKTMatrix

Wird durch 2 Tabellen definiert: SKT und SKTShifts.

Tabelle SKT

Spalten:

"ID" INTEGER  PRIMARY KEY NOT NULL,
"skt_a" INTEGER NOT NULL,
"skt_b" INTEGER NOT NULL,
"skt_c" INTEGER NOT NULL,
"skt_d" INTEGER NOT NULL,
"skt_e" INTEGER NOT NULL,
"skt_f" INTEGER NOT NULL,
"skt_g" INTEGER NOT NULL,
"skt_h" INTEGER NOT NULL

Die bekannte Steigerungskosten-Tabelle.

Tabelle SKTShifts

Spalten:

"ID" INTEGER PRIMARY KEY NOT NULL,
"skts_ref_source_ID" VARCHAR(10) NOT NULL,
"skts_target_table_name" VARCHAR(50) NOT NULL,
"skts_target_column_name" VARCHAR(50) NULL,
"skts_target_value" VARCHAR(10) NULL,
"skts_is_down_shift" BOOLEAN DEFAULT '1' NOT NULL,
"skts_is_up_shift" BOOLEAN DEFAULT '0' NOT NULL,
"skts_shift_factor" INTEGER DEFAULT '0' NOT NULL,
"skts_is_absolute_shift" BOOLEAN DEFAULT '0' NOT NULL,
"skts_skt_column" VARCHAR(10) NULL

Diverse Vor-/Nachteile, Sonderfähigkeiten etc. hab zur folge das die SKT Spalte verschoben wird. Diese Verschiebungen werden mit Hilfe dieser Tabelle abgebildet.

Tabelle: ScriptTriggers

Spalten:

"ID" INTEGER PRIMARY KEY NOT NULL,
"sctr_table_name" VARCHAR(50) NOT NULL,
"sctr_ref_id" VARCHAR(10) NOT NULL,
"sctr_event" VARCHAR(20) NOT NULL,
"sctr_script" VARCHAR(50) NOT NULL

Characteristics

Tabelle CharacteristicGroups

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"cg_name" TEXT NOT NULL

Die Tabelle diehnt nur zum besseren Filtern und Gruppieren der Grundwerte.

Tabelle Characteristics

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"c_name" TEXT NOT NULL,
"c_acronym" VARCHAR(5) NOT NULL,
"c_priorty" INTEGER DEFAULT '0' NOT NULL,
"c_ref_cg_ID" VARCHAR(10) REFERENCES CharacteristicGroups(ID) NOT NULL,
"c_is_used_by_hero" BOOLEAN DEFAULT '1' NOT NULL,
"c_h_cp_cost" INTEGER DEFAULT '0' NOT NULL,
"c_h_min_value" INTEGER NULL,
"c_h_max_value" INTEGER NULL,
"c_h_can_increase" BOOLEAN DEFAULT '0' NOT NULL,
"c_h_can_decrease" BOOLEAN DEFAULT '0' NOT NULL,
"c_h_skt_column" VARCHAR(10) NULL,
"c_h_has_formula" BOOLEAN DEFAULT '0' NOT NULL,
"c_h_formula" TEXT DEFAULT NULL,
"c_is_used_by_familiar" BOOLEAN DEFAULT 'false' NOT NULL,
"c_f_min_value" INTEGER NULL,
"c_f_max_value" INTEGER NULL,
"c_f_can_increase" BOOLEAN DEFAULT '0' NOT NULL,
"c_f_can_decrease" BOOLEAN DEFAULT '0' NOT NULL,
"c_f_skt_column" VARCHAR(10) NULL

Spalten mit dem Präfix c_h_ gelten für Helden. Spalten mit dem Präfix c_f_ gelten für Tierische Gefähren.

Meta Data Hilfstabellen

Tabelle: Worlds

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"w_name" TEXT NOT NULL

Tabelle: RaceCultureGroups

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"rcg_name" TEXT NOT NULL,
"rcg_path" VARCHAR(50) NOT NULL

Tabelle: ProfessionGroups

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"pg_name" TEXT NOT NULL,
"pg_path" VARCHAR(50) NOT NULL

Tabelle: ProfessionTypes

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"pt_name" TEXT NOT NULL

Tabelle: ProfessionCategories

Spalten:

"ID" VARCHAR(10) PRIMARY KEY NOT NULL,
"pc_name" TEXT NOT NULL

Diehnt zur Unterteilung der Professionen zwischen Profan, Vollzauberer, Halbzauberer, usw.

Vorteile/Nachteile

Wurde der Komplexität wegen in mehrere Tabellen aufgeteilt.

TODO

Sonderfähigkeiten

Wurde der Komplexität wegen in mehrere Tabellen aufgeteilt. Speziallisierungen werden bei den Talenten bzw. Zaubern mit aufgeführt.

TODO