first attempts at normalising dialog flow

pull/67/head
macniel 2025-11-23 20:51:14 +01:00
parent ce6207be95
commit 957584206d
57 changed files with 753 additions and 157 deletions

View File

@ -147,7 +147,7 @@ gulp.task('prepareDB', async function (done) {
}
await convert("./src/packs/_source/talente", "./src/packs/__source/talente", "Skill")
await convert("./src/packs/_source/zauber", "./src/packs/__source/zauber", "Spell")
await convert("./src/packs/_source/zauber-brw", "./src/packs/__source/zauber", "Spell")
await convert("./src/packs/_source/vorteile", "./src/packs/__source/vorteile", "Advantage")
await convert("./src/packs/_source/nachteile", "./src/packs/__source/vorteile", "Advantage", false)
await convert("./src/packs/_source/sonderfertigkeiten", "./src/packs/__source/sonderfertigkeiten", "SpecialAbility")

View File

@ -6,7 +6,8 @@ export const ATTRIBUTE = {
"ff": "Fingerfertigkeit",
"ge": "Gewandtheit",
"ko": "Konstitution",
"kk": "Körperkraft"
"kk": "Körperkraft",
"UNKNOWN": "Fehlende Variante"
}
export const ATTRIBUTE_DESCRIPTIONS = {

View File

@ -5,8 +5,9 @@ const {
BooleanField,
NumberField,
ArrayField,
StringField,
HTMLField
StringField,
HTMLField,
ObjectField,
} = foundry.data.fields;
export class SpellDataModel extends BaseItem {
@ -20,9 +21,23 @@ export class SpellDataModel extends BaseItem {
probeMod: new StringField(),
hauszauber: new BooleanField(),
technik: new StringField(),
zauberdauer: new StringField(),
zauberdauer: new SchemaField({
min: new NumberField(),
normal: new NumberField(),
additionalFormula: new StringField(),
variables: new ArrayField(new StringField()),
additionalFormulaTimeUnit: new StringField(),
}),
wirkung: new HTMLField(),
kosten: new StringField(),
kosten: new ArrayField(
new SchemaField({
min: new NumberField(),
cost: new NumberField(),
additionalFormula: new StringField(),
variables: new ArrayField(new StringField()),
repräsentation: new StringField()
})
),
zielobjekt: new StringField(),
reichweite: new StringField({required: true}),
wirkungsdauer: new StringField({required: true}),
@ -31,7 +46,7 @@ export class SpellDataModel extends BaseItem {
antimagie: new StringField(),
merkmal: new StringField(),
komplexität: new StringField(),
repräsentation: new StringField(),
repräsentation: new ObjectField(),
info: new StringField(),
varianten: new ArrayField(new SchemaField({
name: new StringField(),

View File

@ -0,0 +1,230 @@
import {Talent} from "../data/talent.mjs";
import {ATTRIBUTE} from "../data/attribute.mjs";
const {
ApplicationV2,
HandlebarsApplicationMixin
} = foundry.applications.api
export class SpellDialog extends HandlebarsApplicationMixin(ApplicationV2) {
static DEFAULT_OPTIONS = {
classes: ['dsa41', 'dialog', 'spell'],
tag: "form",
position: {
width: 480,
height: 800
},
window: {
resizable: false,
title: "Zauber wirken"
},
form: {
submitOnChange: true,
closeOnSubmit: false,
handler: SpellDialog.#onSubmitForm
},
actions: {
cast: SpellDialog.#cast,
}
}
static PARTS = {
form: {
template: 'systems/DSA_4-1/templates/dialog/spell-dialog.hbs',
}
}
static data = {}
/**
*
* @type {Actor}
* @private
*/
_actor = null
_mutators = {}
_variants = {}
_costModel = {}
constructor(actor, spellId) {
super()
this._actor = actor
this._spell = this._actor.itemTypes["Spell"].find(p => p._id === spellId)
this._circumstance = 0
this._mods = []
this._mutators = {}
this._selectedRepresentation = null
this._spellDie = null
this._variants = {}
this._costModel = {}
}
/**
* @typedef FormulaData
* @property {String} additionalFormula mathematical expression that can be eval'd by replacing the variables with the user added input
* @property {[String]} variables contains all tokens which will be replaceable inside the formula
* @property {[String: Number]} substitutions user input with which the variables with the same key will be replaced in the formula text
* @property {"Aktionen"|"SR"} unit gives the evaluated formula its appropriate time unit
*/
static async #onSubmitForm(event, form, formData) {
event.preventDefault()
console.log(formData.object)
// handle changes in variable Inputs
this._selectedRepresentation = formData.object.representation
this._variants = foundry.utils.expandObject(formData.object)["variants"]
if (this._spell.system.probe.includes("*")) { // ATTRIBUTO
if (this._variants["Mut"]) {
this._spellDie = "MU"
} else if (this._variants["Klugheit"]) {
this._spellDie = "KL"
} else if (this._variants["Intuition"]) {
this._spellDie = "IN"
} else if (this._variants["Charisma"]) {
this._spellDie = "CH"
} else if (this._variants["Fingerfertigkeit"]) {
this._spellDie = "FF"
} else if (this._variants["Gewandtheit"]) {
this._spellDie = "GE"
} else if (this._variants["Konstitution"]) {
this._spellDie = "KO"
} else if (this._variants["Konstitution"]) {
this._spellDie = "KK"
} else {
this._spellDie = null
}
}
if (this._selectedRepresentation) {
this._costModel = this._spell.system.kosten.find(c => c.repräsentation === context.selectedRepresentation) ?? this._spell.system.kosten.find(c => c.repräsentation === "")
this._mutators = {}
this._costModel.variables.forEach(v => this._mutators[v] = 0)
}
let mutators = foundry.utils.expandObject(formData.object)["mutators"]
if (mutators) {
this._mutators = mutators
}
this.render({parts: ["form"]})
}
static async #cast(event, target) {
}
/**
*
* @param spell
* @param {FormulaData} additionalFormulaData
* @returns {number|*}
*/
#normalizeCastingTime(spell, additionalFormulaData) {
// min: Wenn ein Zauber eine mindest dauer hat kann diese nachdem diese abgelaufen ist jederzeit abgebrochen werden
// normal: Standard Zauberzeit eines Zaubers
// additionalFormulaData: enthält die zur Normalzeit zusätzlichen Zauberdauer
const castingTime = spell.system.zauberdauer
// direct actions
const aktionenRegExp = /(.*) Aktionen/
const srRegExp = /(.*) SR/
if (castingTime.match(aktionenRegExp)) {
const [_, actions] = castingTime.match(aktionenRegExp)
return actions
} else if (castingTime.match(srRegExp)) {
const [_, actions] = castingTime.match(srRegExp)
return actions * 20
}
return -1
}
_configureRenderOptions(options) {
super._configureRenderOptions(options)
if (options.window) {
if (this._spell) {
options.window.title = this._spell.name
}
}
return options
}
async _prepareContext(options) {
const context = await super._prepareContext(options)
context.actor = this._actor
context.spell = this._spell
context.representationOptions = {}
context.selectedRepresentation = this._selectedRepresentation
context.text = this._spell.system.wirkung
context.dice = []
context.colorfulDice = game.settings.get('DSA_4-1', 'optional_colorfuldice')
this._spell.system.probe.map(p => {
if (p === "*") {
return this._spellDie ?? null
} else {
return p
}
}).forEach(p => {
if (p !== null) {
context.dice.push({
wert: this._actor.system.attribute[p.toLowerCase()].aktuell,
name: p,
tooltip: ATTRIBUTE[p.toLowerCase()],
})
} else {
context.dice.push({
wert: "??",
name: "??",
tooltip: ATTRIBUTE["UNKNOWN"],
})
}
})
context.variants = this._spell.system.varianten.map(v => {
return {
variantText: v.description,
variantName: v.name,
variantPenalty: v.mod ?? "0",
variantChecked: this._variants[v.name]
}
})
context.representationOptions[""] = ""
Object.entries(this._spell.system.repräsentation).forEach(([key, value]) => {
context.representationOptions[key] = key
})
// set probe to current held probe variables or take from _spell
context.mutators = this._mutators
if (this._costModel) {
context.variables = this._costModel.variables
} else {
context.variables = []
}
// generate a list of variables in cost and castTime
// generate a list of variants
// generate a list of SpoMods
return context
}
async _onRender(context, options) {
}
}

View File

@ -10,7 +10,7 @@ export class StandaloneSpells extends HandlebarsApplicationMixin(ActorSheetV2) {
tag: 'form',
actions: {
openEmbeddedDocument: StandaloneSpells.#openEmbeddedDocument,
castSpell: StandaloneSpells.castSpell,
}
}
@ -33,6 +33,10 @@ export class StandaloneSpells extends HandlebarsApplicationMixin(ActorSheetV2) {
this._actor?.sheet.options.actions.openEmbeddedDocument.bind(this)(event, target)
}
static async castSpell(event, target) {
this._actor?.sheet.options.actions.castSpell.bind(this)(event, target)
}
_configureRenderOptions(options) {
super._configureRenderOptions(options)

View File

@ -22,6 +22,7 @@ import {Bagpack} from "./character-standalone/bagpack.mjs";
import {StandaloneSpells} from "./character-standalone/spells.mjs";
import {StandaloneLiturgies} from "./character-standalone/liturgies.mjs";
import {StandaloneHealth} from "./character-standalone/health.mjs";
import {SpellDialog} from "../dialog/spellDialog.mjs";
const {HandlebarsApplicationMixin, DocumentSheetV2} = foundry.applications.api
const {ActorSheetV2} = foundry.applications.sheets
@ -54,6 +55,7 @@ class CharacterSheet extends HandlebarsApplicationMixin(ActorSheetV2) {
openCombatAction: CharacterSheet.#openCombatAction,
openLiturgyDialog: CharacterSheet.openLiturgyDialog,
openSpellDialog: CharacterSheet.openSpellDialog,
castSpell: CharacterSheet.castSpell,
progressCooldown: CharacterSheet.#progressCooldown,
cancelCooldown: CharacterSheet.#cancelCooldown,
activateCooldown: CharacterSheet.#activateCooldown,
@ -247,6 +249,12 @@ class CharacterSheet extends HandlebarsApplicationMixin(ActorSheetV2) {
this.document.itemTypes["Spell"]?.find(p => p.id === itemId)?.sheet.render(true)
}
static castSpell(event, target) {
const {itemId} = target.dataset
console.log(itemId)
new SpellDialog(this.document, itemId).render(true)
}
static #startResting(event, target) {
const dialog = new RestingDialog(this.document)

View File

@ -15,11 +15,11 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 3,
"herkunft": "Schamane"
"repräsentation": "Schamane"
}
],
"zielobjekt": "Nahrungsmenge (mehrere Objekte) nach AsP-Aufwand",
@ -44,6 +44,14 @@
"antimagie": "kann in einer Zone des OBJEKT ENTZAUBERN nur erschwert gesprochen wer den; lässt sich wegen der Wirkungsdauer augenblicklich nicht mittels Antimagie widerrufen.",
"merkmal": "Objekt",
"komplexität": "C",
"repräsentation": "Dru, Elf, Hex, Mag je 6; Geo5; Ach, Sch je 4",
"repräsentation": {
"Druide": 6,
"Elf": 6,
"Hexe": 6,
"Magier": 6,
"Geomant": 5,
"Achaz": 4,
"Schelm": 4
},
"info": "Dieser ursprünglich von den Waldelfen stammende Spruch ist bei fast allen Zauberkundigen weit verbreitet. An allen Orten, an denen die lokalen Potentaten in ständiger Furcht vor Meuchlern und Giftmischern leben, werden Meisterinnen und Meister des ABVENENUM mit Kusshand in den Hofstaat aufgenommen (wenn sie nach einem Demonstrationszaubern den Genuss der vorher präparierten Narung überlebt haben)."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -34,6 +34,13 @@
"antimagie": "HELLSICHT TRÜBEN und EIGENSCHAFT WIEDERHERSTELLEN heben die Wirkung des Spruches auf; kann in entsprechenden Zonen nur erschwert gewirkt werden.",
"merkmal": "Hellsicht, Eigenschaften",
"komplexität": "B",
"repräsentation": "Elf 7; Ach, Dru, Geo, Hex, Mag je 3",
"repräsentation": {
"Druide": 3,
"Elf": 7,
"Hexe": 3,
"Magier": 3,
"Geomant": 3,
"Achaz": 3
},
"info": "Der ADLERAUGE ist Ursprung vieler elfischer Sagen über Sinnesleistungen und gilt als Kanonspruch. Jede Hellsicht-Akademie lehrt ihn, ebenso Norburg und Donnerbach."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -64,6 +64,12 @@
"antimagie": "Kann in einer Zone des VERWANDLUNG BEENDEN nur erschwert gewirkt werden; endet durch Antimagie-Spruch.",
"merkmal": "Form",
"komplexität": "D",
"repräsentation": "Elf 6; Ach, Mag je 3; Dru, Hex je (Elf) 2",
"repräsentation": {
"Druide": 2,
"Elf": 6,
"Hexe": 2,
"Magier": 3,
"Achaz": 3
},
"info": "Die elfische Variante dient vor allem dazu, sich mit dem Seelentier zu verbinden, sodass jeder Elf beim Erlernen ein zu ihm passendes Tier wählt. Manche Waldelfen beherrschen mehrere Varianten (Seelen- und Sipptier). Bei Firn- und Auelfen ist das Verwandeln in Seelentiere verbreitet, aber das Beherrschen unterschiedlicher Tierformen unbekannt. Menschen fällt dieser Zauber schwer; er ist nur an wenigen Akademien (z. B. Lowangen, Kuslik, Punin, Tuzak, Verformung zu Lowangen) bekannt. Die Formel wird auch in Zauberstern, Silberhaar und Corpus Mutantis behandelt."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 6,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelobjekt, Einzelwesen",
@ -26,6 +26,12 @@
"antimagie": "HELLSICHT TRÜBEN und SCHLEIER DER UNWISSENHEIT erschweren die Analyse.",
"merkmal": "Hellsicht, Metamagie",
"komplexität": "D",
"repräsentation": "Mag 6; Ach 3; Dru, Geo, Hex je 2",
"repräsentation": {
"Magier": 6,
"Achaz": 3,
"Druide": 2,
"Geomant": 2,
"Hexe": 2
},
"info": "Bietet weitgehende Freiheit, Zauberstrukturen zu beschreiben. In vielen Werken enthalten. Nahe Verwandtschaft zum OCULUS ASTRALIS. Wird fast jeder Akademie gelehrt."
}

View File

@ -19,7 +19,8 @@
"variables": [
"RS",
"ZFP*"
]
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -44,6 +45,11 @@
"antimagie": "EIGENSCHAFT WIEDERHERSTELLEN und ERZBANN können die Wirkung beenden; in den entsprechenden Zonen erschwert.",
"merkmal": "Eigenschaften, Elementar (Erz)",
"komplexität": "B",
"repräsentation": "Elf, Mag je 6; Hex 3; Dru 2",
"repräsentation": {
"Elf": 6,
"Magier": 6,
"Hexe": 3,
"Druide": 2
},
"info": "Ursprünglich ein elfischer Schutzzauber, später in menschlichen Akademien verbreitet. Auch Hexen und Druiden nutzen ihn, um Leib und Leben zu schützen. Vergleichbar mit dem Flim Flam als Basiszauber."
}

View File

@ -15,11 +15,11 @@
"kosten": [
{
"cost": 7,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 5,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelperson, Einzelwesen (s. u.), freiwillig",
@ -78,8 +78,8 @@
{
"name": "Schnellsteigerung",
"description": "Nur in gildenmagischer, elfischer, druidischer oder saurischer Rep. Kleine Mutanda: +ZfP* Punkte für ZfW KR, Kosten 1 AsP pro Punkt. Mächtigere Version bringt Dauerbonus.",
"mod": "+3 ab ZfW 11",
"limit": ""
"mod": "-3",
"limit": "ab ZfW 11"
},
{
"name": "Übernatürliche Begabung",
@ -98,6 +98,15 @@
"antimagie": "In einer Zone des EIGENSCHAFT WIEDERHERSTELLEN nur erschwert wirksam und kann mit diesem Antimagie-Spruch beendet werden.",
"merkmal": "Eigenschaften",
"komplexität": "B",
"repräsentation": "Dru, Elf, Geo, Hex, Mag je 5; Ach, Sch, Srl je 3",
"repräsentation": {
"Druide": 5,
"Elf": 5,
"Geomant": 5,
"Hexe": 5,
"Magier": 5,
"Achaz": 3,
"Schelm": 3,
"Scharlatan": 3
},
"info": "Die Varianten dieses Zaubers wurden lange Zeit als eigenständige Sprüche (z. B. KLU, WIS, INTELLECT, CHARISMA AUGETE, VORAHNUNG, STARKE STEIGERN) gelehrt. Heute meist zusammengefasst. Verbreitet bei fast allen Zauberkundigen."
}

View File

@ -14,7 +14,7 @@
"kosten": [
{
"cost": 0,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Zone",
@ -69,6 +69,9 @@
"antimagie": "In einer Zone des ILLUSION AUFLÖSEN erschwert wirksam und kann den Zauber aufheben.",
"merkmal": "Illusion",
"komplexität": "D",
"repräsentation": "Mag, Srl 5 je 5",
"repräsentation": {
"Magier": 5,
"Scharlatan": 5
},
"info": "AURIS NASUS gilt als Mutter aller Illusionen und erlaubt Täuschung von Bild, Ton und Geruch, mit Erweiterungen auch von Tastsinn und Geschmack. Sehr mächtige Formel, die in Zorgan, Grangor, Khunchom und Punin gelehrt wird. Wichtige Werke wie Theorie der Wahrnehmung und Beobachtung und Liber Metheslesae behandeln den Spruch ausführlich."
}

View File

@ -14,11 +14,11 @@
"kosten": [
{
"cost": 7,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 5,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -43,6 +43,11 @@
"antimagie": "In einer Zone des EIGENSCHAFT WIEDERHERSTELLEN erschwert wirksam und kann den Zauber aufheben.",
"merkmal": "Eigenschaften",
"komplexität": "C",
"repräsentation": "Elf 6; Ach, Sch 5; Mag 3",
"repräsentation": {
"Elf": 6,
"Achaz": 5,
"Schelm": 5,
"Magier": 3
},
"info": "Die Waldelfen nutzen den Zauber traditionell für Jagd und Tanz. Acheer-Schamanen verwenden ihn für rituelle Tänze. Gildenmagische Repräsentation selten, gelehrt in Gerasim, Belhanka und der Akademie der Verformungen zu Lowangen. Auch Tamara beschrieb die Formel in ihren Werken."
}

View File

@ -15,9 +15,11 @@
"wirkung": "Heilt sämtliche Wunden und inneren Verletzungen des Verzauberten, je nach eingesetzten AsP. Pro AsP wird 1 LeP zurückgewonnen (maximal jedoch ZfW × 2 LeP). Der Zauber kann auch auf den Zaubernden selbst gewirkt werden. Schädliche Wirkungen von Krankheiten und Giften werden nicht gestoppt.",
"kosten": [{
"cost": 5,
"additionalFormula": "LeP",
"variables": ["LeP"]
"variables": [
"LeP"
],
"repräsentation": ""
}],
"zielobjekt": "Einzelwesen, freiwillig",
"reichweite": "selbst, Berührung",
@ -44,6 +46,13 @@
"Form"
],
"komplexität": "C",
"repräsentation": "Elf 9; Mag 7; Ach, Geo je 5; Dru 4; Hex 3",
"repräsentation": {
"Elf": 9,
"Magier": 7,
"Achaz": 5,
"Geomant": 5,
"Druide": 4,
"Hexe": 3
},
"info": "Eine der bekanntesten Heilzauberformeln, ursprünglich von den Elfen entwickelt und später von Gildenmagiern übernommen. Weit verbreitet, auch unter Geoden und Achaz. In klassischen Magierkreisen lange abgelehnt, da man glaubte, dass Heilung göttlicher Macht vorbehalten sei."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 7,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson",
@ -51,6 +51,12 @@
"antimagie": "EINFLUSS BANNEN beendet die Wirkung und löscht die Gefühle.",
"merkmal": "Einfluss",
"komplexität": "B",
"repräsentation": "Elf 7; Mag 6; Dru, Hex je 3; Srl (Mag) 3",
"repräsentation": {
"Elf": 7,
"Magier": 6,
"Druide": 3,
"Hexe": 3,
"Scharlatan": 3
},
"info": "Ursprünglich elfischer Freundschaftszauber, später von Gildenmagiern zu einem der wichtigsten Herrschafts- und Beeinflussungszauber gewandelt. Zwischen Elfen und Magiern sorgt die Anwendung regelmäßig für Konflikte."
}

View File

@ -18,7 +18,8 @@
"additionalFormula": "6 * 5 KR",
"variables": [
"5 KR"
]
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson",
@ -69,6 +70,13 @@
"Hellsicht"
],
"komplexität": "D",
"repräsentation": "Elf, Mag je 5; Ach, Dru, Hex je 4; Geo 3",
"repräsentation": {
"Elf": 5,
"Magier": 5,
"Achaz": 4,
"Druide": 4,
"Hexe": 4,
"Geomant": 3
},
"info": "Ursprünglich ein Verständigungszauber der Elfen, wurde er von den Gildenmagiern zu einem Verhörzauber entwickelt. Unter Elfen ist der Spruch verbreitet, aber mit Vorsicht wird er an Menschen weitergegeben, da er als stark verfälschtes Werkzeug gilt."
}

View File

@ -15,11 +15,11 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 3,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelwesen",
@ -40,6 +40,15 @@
"Einfluss"
],
"komplexität": "B",
"repräsentation": "Elf 7; Mag 6; Dru, Hex je 5; Ach, Geo, Sch, Srl je 4",
"repräsentation": {
"Elf": 7,
"Magier": 6,
"Druide": 5,
"Hexe": 5,
"Achaz": 4,
"Geomant": 4,
"Schelm": 4,
"Scharlatan": 4
},
"info": "Ursprünglich ein Verteidigungszauber der Waldelfen, mittlerweile fast überall bekannt. Häufig als Vorbereitung für Angriffe genutzt."
}

View File

@ -14,7 +14,8 @@
"kosten": [
{
"cost": 3,
"max": "ZfW"
"max": "ZfW",
"repräsentation": ""
}
],
"zielobjekt": "Einzelobjekt (es muss ein Verschluss vorhanden sein)",
@ -59,6 +60,13 @@
"Objekt"
],
"komplexität": "C",
"repräsentation": "Mag 6; Hex, Srj je 5; Dru (Hex) 2; Elf; Sch je (Mag) 2",
"repräsentation": {
"Magier": 6,
"Hexe": 5,
"Scharlatan": 5,
"Druide": 2,
"Elf": 2,
"Schelm": 2
},
"info": "Weit verbreitet, um Türen, Truhen und Kästchen zu sichern. Vor allem Gildenmagier und Scharlatane nutzen den Zauber, andere Repräsentationen kennen ihn seltener."
}

View File

@ -18,7 +18,8 @@
"additionalFormula": "3 * Doppelgänger",
"variables": [
"Doppelgänger"
]
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelwesen, freiwillig",
@ -45,6 +46,9 @@
"Illusion"
],
"komplexität": "C",
"repräsentation": "Mag, Srl je 6",
"repräsentation": {
"Magier": 6,
"Scharlatan": 6
},
"info": "Der DUPLICATUS zählt neben dem AURIS NASUS zu den klassischen Illusionen der Gildenmagie und hat seine Wirksamkeit als Verteidigungszauber oft genug bewiesen. Kein Wunder also, dass dieser Spruch an jeder Magierakademie erlernt werden kann und dass es mehr als genug Privatgelehrte gibt, die bereit sind, ihn gegen geringes Entgelt weiterzugeben."
}

View File

@ -19,7 +19,7 @@
"variables": [
"Kosten des zu brechenden Spruchs"
],
"herkunft": ""
"repräsentation": ""
},
{
"cost": 3,
@ -27,7 +27,7 @@
"variables": [
"Kosten des zu brechenden Spruchs"
],
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"besondereKosten": "Um einen permanent wirkenden und mittels permanenter AsP fixierten Beeinflussungszauber aufzuheben, muss der Druide permanente AsP investieren: 1/10 der Kosten des wirkenden zu brechenden Zaubers, mindestens aber 1 AsP. Misslingt die Probe, entstehen keine permanenten Kosten.",
@ -49,6 +49,15 @@
"Einfluss"
],
"komplexität": "B",
"repräsentation": "Dru, Geo, Hex je 6; Ach, Elf je 5; Mag, Sch, Srl je 4",
"repräsentation": {
"Druide": 6,
"Geomant": 6,
"Hexe": 6,
"Achaz": 5,
"Elf": 5,
"Magier": 4,
"Schelm": 4,
"Scharlatan": 4
},
"info": "Dieser Zauber ist bei fast allen Traditionen bekannt, die sich auf die Manipulation des Geistes verstehen. Die Hexen besonders gut mit Gefühlen umzugehen verstehen, bringen sie diesen Spruch eher zu Meisterschaft als andere."
}

View File

@ -19,7 +19,7 @@
"variables": [
"Spielzeit in SR"
],
"herkunft": "Elfisch"
"repräsentation": "Elfisch"
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -33,6 +33,8 @@
"Verständigung"
],
"komplexität": "D",
"repräsentation": "Elf 2",
"repräsentation": {
"Elf": 2
},
"info": "Vermutlich dient dieser Zauber in erster Linie dazu, Sippenmitgliedern einen Gruß zukommen zu lassen, die aus irgendeinem Grund in der Ferne weilen, oder umgekehrt einen Gruß an die zurückgebliebene Sippe zu schicken. Heute ist dieser Zauber selbst unter Elfen kaum noch verbreitet. Bei den Menschen gibt es nur noch Gerüchte über Musikinstrumente, deren Klang über tausend Meilen hinweg zu hören sei: Geschichten, die sich eventuell auf uralte firnelfische Flöten und Hörner beziehen. Alte tulamidische Märchen lassen den Schluss zu, dass wenigstens in Mhanadistan ebenfalls einmal ein ähnlicher Zauber bekannt gewesen sein muss, aber heute ist er vollständig in Vergessenheit geraten."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -47,6 +47,13 @@
"Hellsicht"
],
"komplexität": "B",
"repräsentation": "Elf 6; Ach, Dru, Geo je 4; Hex, Mag je 3",
"repräsentation": {
"Elf": 6,
"Achaz": 4,
"Druide": 4,
"Geomant": 4,
"Hexe": 3,
"Magier": 3
},
"info": "Eigentlich ein Zauber, der den Elfen im dichten Wald bei der Jagd helfen sollte, sind seine Anwendungsgebiete mittlerweile deutlich verbreiteter und können auch dazu dienen, eventuelle Hinterhalte rechtzeitig zu entdecken."
}

View File

@ -15,7 +15,7 @@
"kosten": [
{
"cost": 5,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -35,6 +35,9 @@
"Eigenschaften"
],
"komplexität": "B",
"repräsentation": "Elf 6, Mag (Elf) 2",
"repräsentation": {
"Elf": 6,
"Magier": 2
},
"info": "Ein guter Schütze errichtet immer eine Art geistige Verbindung von sich bis zu seinem Ziel, dem die Waffe dann folgt, um möglichst genau zu treffen. Da ist es kein Wunder, dass die Elfen gelernt haben, dieses Band mittels ihrer Magie noch zu verstärken und man kann fast davon ausgehen, dass vielen Elfen noch nicht einmal bewusst ist, dass sie hierbei Magie anwenden. Sicherlich handelt es sich bei diesem Zauber nicht um einen Kampfzauber, sondern eine Unterstützung ihrer Jagdfertigkeiten."
}

View File

@ -19,7 +19,7 @@
"variables": [
"Helligkeitsstufe"
],
"herkunft": ""
"repräsentation": ""
},
{
"cost": 1,
@ -27,7 +27,7 @@
"variables": [
"Helligkeitsstufe"
],
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Stelle im Raum oder auf einer Oberfläche (Zone)",
@ -91,6 +91,15 @@
"Umwelt"
],
"komplexität": "A",
"repräsentation": "Ach, Elf, Mag je 7; Dru, Hex je 6; Geo 5; Sch 4; Srl (Mag) 4",
"repräsentation": {
"Achaz": 7,
"Elf": 7,
"Magier": 7,
"Druide": 6,
"Hexe": 6,
"Geomant": 5,
"Schelm": 4,
"Scharlatan": 4
},
"info": "Obwohl der Spruch bis zur Entdeckung der Firnelfenmagie menschlichen Zauberkundigen verschlossen war, gilt die Erschaffung einer magischen Lichtquelle heutzutage als die Zauberei überhaupt. (Es soll jedoch Zauberkundige geben, die nicht einmal diese einfachste Übung beherrschen.)"
}

View File

@ -6,7 +6,7 @@
"KL",
"FF"
],
"probenMod": "(evtl. +Mod.)",
"probenMod": true,
"technik": "Der Magier berührt das Schloss, den Mechanismus oder die Tür dreimal mit der flachen Hand und spricht leise die Formel.",
"zauberdauer": {
"normal": "5 Aktionen"
@ -16,12 +16,12 @@
{
"cost": 2,
"max": 12,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 1,
"max": 8,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelobjekt",
@ -49,6 +49,10 @@
"Telekinese"
],
"komplexität": "C",
"repräsentation": "Mag 6, Srl 5, Sch 4 (Mag 5)",
"repräsentation": {
"Magier": 6,
"Scharlatan": 5,
"Schelm": 4
},
"info": "Diese Formel gilt ebenfalls als klassische Magierformel, die fast überall gelehrt wird, aber Wesen jedoch abgelehnt anderen Zauberkundigen verschlossen bleibt. Man sieht mit welcher Leichtigkeit ein Schelm diesen Zauber erlernen kann. Man kann diese Formel am ehesten verstehen, wenn man sie sich als eine Verbindung aus einem intuitiven PENETRIZZEL und einem MOTORICUS vorstellt, wobei der Hellsichtzauber dafür sorgt, dass der Magier den Mechanismus des Schlosses durchschaut, während die Telekinese das Öffnen besorgt."
}

View File

@ -17,7 +17,8 @@
"additionalFormula": "1 * SP",
"variables": [
"SP"
]
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelwesen",
@ -46,6 +47,10 @@
"Kraft"
],
"komplexität": "C",
"repräsentation": "Elf 7, Mag 5, Hex (Mag 2)",
"repräsentation": {
"Elf": 7,
"Magier": 5,
"Hexe": 2
},
"info": "Diese Kraftentladung gilt als astrale Ausformung des Spruchs ZORN DER ELEMENTE. Obwohl es genügend andere Kampfzauber gibt, die sich besser dosieren lassen, hat der allgemein bekannte, wenn auch fast ausschließlich von Elfen und Magiern verwendete FULMINICTUS nichts von seiner Beliebtheit verloren."
}

View File

@ -19,7 +19,7 @@
"variables": [
"Schildstärke"
],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Zone",
@ -54,6 +54,10 @@
"Metamagie"
],
"komplexität": "D",
"repräsentation": "Mag 6, Ach 2, Geo (Mag) 2",
"repräsentation": {
"Magier": 6,
"Achaz": 2,
"Geomant": 2
},
"info": "Diese kompakte Fassung bündelt die an Akademien gelehrten Varianten; sie ist nahezu überall bekannt und gilt als Standard-Schutzformel für magisch Reisende."
}

View File

@ -17,7 +17,7 @@
"cost": 0,
"additionalFormula": "4 * 5 KR",
"variables": ["5 KR"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -68,6 +68,9 @@
"Verständigung"
],
"komplexität": "B",
"repräsentation": "Elf 7, Mag 3",
"repräsentation": {
"Elf": 7,
"Magier": 3
},
"info": "Es wundert nicht, dass fast jeder Elf diesen Spruch kennt. An Menschen wird er jedoch nur sehr selten weitergegeben."
}

View File

@ -15,11 +15,11 @@
"kosten": [
{
"cost": 7,
"herkunft": ""
"repräsentation": ""
},
{
"text": "2W6 AsP bzw. die Hälfte dieser Kosten als LeP",
"herkunft": "Borbardianisch"
"repräsentation": "Borbardianisch"
}
],
"zielobjekt": "Einzelwesen",
@ -40,6 +40,12 @@
"Einfluss (Bor: Einfluss, Dämonisch (allgemein))"
],
"komplexität": "C",
"repräsentation": "Mag 6, Bor 4, Dru 3, Hex (Dru) 2, Srl 1",
"repräsentation": {
"Magier": 6,
"Borbardianisch": 4,
"Druide": 3,
"Hexe": 2,
"Scharlatan": 1
},
"info": "Hierbei handelt es sich um einen der 'klassischsten' Magierzauber überhaupt, der vor allem zur Kampfvermeidung als höchst effizient angesehen wird. Die Ähnlichkeit zum BÖSEN BLICK hat es schon vor geraumer Zeit ermöglicht, dass auch Druiden eine eigenständige Repräsentation entwickeln haben, während die borbardianische Variante erst aus jüngster Zeit stammt, allerdings schnell Verbreitung gefunden hat. In der druidischen Variante ist er auch Hexen bekannt, und Gerüchten zufolge haben auch einige Scharlatane diesen Spruch gemeistert."
}

View File

@ -17,7 +17,7 @@
"cost": 0,
"additionalFormula": "1/2 * TP",
"variables": ["TP"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelwesen (kann auch auf ein einzelnes Objekt gezielt werden, um Struktursschaden anzurichten).",
@ -63,6 +63,11 @@
"Elementar (Feuer)"
],
"komplexität": "C",
"repräsentation": "Mag 5, Ach 3, Geo 2, Dru (Mag) 2",
"repräsentation": {
"Magier": 5,
"Achaz": 3,
"Geomant": 2,
"Druide": 2
},
"info": "Bei sehr vielen Gildenmagiern bekannte Formel, die als exemplarischer Kampfzauber gilt; dabei Grundlage für elementare Transitionen. Speziell vom elementaren Ansatz her ist sie auch den Achaz-Kristallomanten zugänglich. Gerüchten zufolge kennen auch einige wenige Druiden diesen Spruch in gildenmagischer Repräsentation."
}

View File

@ -17,7 +17,7 @@
"cost": 0,
"additionalFormula": "1 * Stufe des Giftes",
"variables": ["Stufe des Giftes"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelwesen, freiwillig",
@ -45,6 +45,13 @@
"Heilung"
],
"komplexität": "D",
"repräsentation": "Mag 6; Ach, Dru, Elf, Geo, Hex je 3",
"repräsentation": {
"Magier": 6,
"Achaz": 3,
"Druide": 3,
"Elf": 3,
"Geomant": 3,
"Hexe": 3
},
"info": "Diese alte Formel ist weit verbreitet und gehört zum Rüstzeug jedes Hofmagiers. Gerade deswegen kursieren aber auch etliche falsche Thesenmilderlegungen des KLARUM PURUM, mit denen viele Hofmagier versuchten, konkurrierende Magier zu verwirren und am Erlernen der Formel zu hindern."
}

View File

@ -12,13 +12,13 @@
"min": 3,
"additionalFormula": "1 * 5 Stein Gewicht",
"variables": ["5 Stein Gewicht"],
"herkunft": ""
"repräsentation": ""
},
{
"min": 3,
"additionalFormula": "2 * 15 Stein Gewicht",
"variables": ["15 Stein Gewicht"],
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelobjekt",
@ -61,6 +61,13 @@
"antimagie": "Kann in einer Zone des BEWEGUNG STÖREN nur erschwert gewirkt werden.",
"merkmal": ["Telekinese"],
"komplexität": "C",
"repräsentation": "Mag 6; Sch 5; Ach, Elf, Hex, Srl je 4",
"repräsentation": {
"Magier": 6,
"Schelm": 5,
"Achaz": 4,
"Elf": 4,
"Hexe": 4,
"Scharlatan": 4
},
"info": "Gilt als Ursprung aller Bewegungszauber (z. B. FORMEN). Druiden sehen ihn als Grundlage für verwandte Zauber."
}

View File

@ -11,7 +11,10 @@
{
"cost": 5,
"additionalFormula": "1 * Stunde",
"variables": ["Stunde"]
"variables": [
"Stunde"
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelseele, freiwillig (auch Tiere mit LO > 12)",
@ -36,6 +39,11 @@
"antimagie": "Kann in einer Zone des EIGENSCHAFT WIEDERHERSTELLEN nur erschwert gewirkt und von diesem Zauber beendet werden.",
"merkmal": ["Eigenschaften"],
"komplexität": "A",
"repräsentation": "Elf 7, Dru, Hex, Mag je (Elf) 3",
"repräsentation": {
"Elf": 7,
"Druide": 3,
"Hexe": 3,
"Magier": 3
},
"info": "Besonders bei Au- und Steppenelfen verbreitet, andere Elfen kennen ihn ebenfalls. Menschen erkennen oft nicht, dass es sich um Magie handelt."
}

View File

@ -12,7 +12,7 @@
"min": "4",
"additionalFormula": "1 * 20 Raumschritt Nebel",
"variables": ["20 Raumschritt Nebel"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Zone",
@ -49,6 +49,14 @@
"antimagie": "VERÄNDERUNG AUFHEBEN und passende ELEMENTARBANN-Zauber wie NEBELWAND wirken gegen diesen Spruch.",
"merkmal": ["Umwelt", "Elementar (Wasser)", "Elementar (Luft)"],
"komplexität": "C",
"repräsentation": "Elf 6; Ach 4; Dru, Geo 3; Mag 2; Hex (Elf) 2; Srl (Mag) 2",
"repräsentation": {
"Elf": 6,
"Achaz": 4,
"Druide": 3,
"Geomant": 3,
"Magier": 2,
"Hexe": 2,
"Scharlatan": 2
},
"info": "Ein klassischer Elfenzauber aus dem Eilenwald, ursprünglich zum Tarnen und Verwirren von Feinden gedacht. Später auch an gildenmagischen Akademien wie Donnerbach, Olport und Nostria gelehrt."
}

View File

@ -11,11 +11,11 @@
"kosten": [
{
"cost": 4,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 3,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelwesen, Einzelobjekt",
@ -40,6 +40,15 @@
"antimagie": "Eine Zone des HELLSICHT TRÜBEN erschwert das Wirken des Zaubers; gezielte Anwendung kann den ODEM abbrechen lassen.",
"merkmal": ["Hellsicht", "Kraft"],
"komplexität": "A",
"repräsentation": "Ach, Elf, Mag je 7; Geo 6; Dru, Hex je 5; Sch, Srl je 4",
"repräsentation": {
"Achaz": 7,
"Elf": 7,
"Magier": 7,
"Geomant": 6,
"Druide": 5,
"Hexe": 5,
"Schelm": 4,
"Scharlatan": 4
},
"info": "Der ODEM gilt als einer der grundlegendsten Zauber der Hellsicht. Fast alle Magier, Elfen und Geoden beherrschen ihn. Er dient als Vorbereitung für tiefergehende Analysen wie ANALYS oder OCULUS und ist zugleich eine der einfachsten Möglichkeiten, magische Energie zu spüren und zu identifizieren."
}

View File

@ -11,7 +11,7 @@
"kosten": [
{
"cost": 11,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelwesen",
@ -30,6 +30,9 @@
"antimagie": "Kann in einer Zone des VERWANDLUNG BEENDEN oder des ERZBANN nur erschwert gewirkt werden; diese Antimagie hebt den Zauber auf. Wird mit GARDIANUM aufgehalten, von INVOCARO reflektiert.",
"merkmal": ["Form", "Elementar (Erz)"],
"komplexität": "C",
"repräsentation": "Mag 7, Dru (Mag) 3",
"repräsentation": {
"Magier": 7,
"Druide": 3
},
"info": "Einer der bekanntesten Magiersprüche überhaupt, von fast jeder Gilde gelehrt. Trotz zahlreicher Versuche ist es nie gelungen, den Zauber so zu verändern, dass nur einzelne Körperteile betroffen sind entsprechende Experimente führten stets zu Verlusten der jeweiligen Gliedmaßen."
}

View File

@ -6,15 +6,21 @@
"technik": "Die Magierin lehnt ihre Stirn gegen das Hindernis, durch das sie hindurchblicken möchte, und konzentriert sich auf die Zauberformel.",
"zauberdauer": {
"normal": "5 Aktionen",
"additionalFormula": "1 Aktionen * Spann Dicke",
"variables": ["Spann Dicke"]
"additionalFormula": "1 * Spann Dicke",
"variables": [
"Spann Dicke"
],
"additionalFormulaTimeUnit": "Aktionen"
},
"wirkung": "Die Magierin kann mithilfe dieser Formel durch feste Materialien blicken, als befänden sich ihre Augen auf der gegenüberliegenden Seite der Barriere. Das Durchdringen benötigt 1 Aktion pro Spann Dicke, und währenddessen kann die Magierin keine weiteren Handlungen ausführen. Eisen, Gold, magische Materialien oder elementare Wände erschweren die Probe um 7 Punkte. Hinter der Wand ist es dunkel ohne Licht sieht man nichts. Wenn sich hinter der Wand eine Zauberquelle befindet, kann die Magierin diese mit OCULUS wahrnehmen. Wird die Magierin durch magische Spähabwehr bemerkt, kann der OCULUS auf sie gewirkt werden. Eine Sichtlinie überträgt sich astral, wodurch auch Zauber über Sichtkontakt gewirkt werden können.",
"kosten": [
{
"cost": 3,
"additionalFormula": "1 * Spann Dicke",
"variables": ["Spann Dicke"]
"variables": [
"Spann Dicke"
],
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -51,6 +57,11 @@
"antimagie": "Kann in einer Zone des HELLSICHT TRÜBEN erschwert gewirkt und durch diesen Zauber aufgehoben werden.",
"merkmal": ["Hellsicht"],
"komplexität": "C",
"repräsentation": "Mag 5; Elf, Sch je 4; Srl 3",
"repräsentation": {
"Magier": 5,
"Elf": 4,
"Schelm": 4,
"Scharlatan": 3
},
"info": "Trotz seiner Bekanntheit wird dieser Magierspruch an vielen Akademien gelehrt. Auch Elfen und Schelme nutzen ihn in eigener Repräsentation Neugier ist schließlich eine universelle Eigenschaft."
}

View File

@ -13,7 +13,7 @@
"cost": 8,
"additionalFormula": "1 * SR",
"variables": ["SR"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -50,6 +50,14 @@
"antimagie": "Kann mit EIGENSCHAFT WIEDERHERSTELLEN beendet werden; in Zonen dieser Antimagie kann er nicht gewirkt werden. Gegen mit PROTECTIONS geschützte Zauber kann eine entsprechende MR ignoriert werden.",
"merkmal": ["Antimagie", "Eigenschaften"],
"komplexität": "C",
"repräsentation": "Mag 6; Dru, Geo, Hex je 5; Ach, Srl je 3; Elf (Mag) 3",
"repräsentation": {
"Magier": 6,
"Druide": 5,
"Geomant": 5,
"Hexe": 5,
"Achaz": 3,
"Scharlatan": 3,
"Elf": 3
},
"info": "Ein moderner Zauber zur Steigerung der Widerstandskraft gegen mentale und magische Einflüsse. Er ersetzte die ältere Formel WIDER HELLSICHT und weist strukturelle Ähnlichkeiten zum ATTRIBUTO auf, wurde jedoch für den Schutz des Geistes weiterentwickelt."
}

View File

@ -11,7 +11,7 @@
"kosten": [
{
"cost": 15,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson",
@ -42,6 +42,11 @@
"antimagie": "Kann in einer Zone des VERWANDLUNG BEENDEN nur erschwert gewirkt werden und wird durch diesen Zauber beendet. Fernvarianten wie SCHILD GEGEN VERWANDLUNG oder INVERCANO reflektieren den Effekt.",
"merkmal": ["Form"],
"komplexität": "E",
"repräsentation": "Mag 5; Ach, Hex je 3; Dru 2",
"repräsentation": {
"Magier": 5,
"Achaz": 3,
"Hexe": 3,
"Druide": 2
},
"info": "Der SALANDER ist eine klassische Verwandlungsformel der Gildenmagie und gilt als Prüfstein für Meisterschaft in der Formmagie. Die Achaz verfügen seit Urzeiten über eine sehr ähnliche Variante. Besonders talentierte Magierinnen nutzen die Formel auch für partielle Verwandlungen, wie Fell oder Kiemen. Trotz der Eleganz des Zaubers ist die Anwendung riskant, da der Verstand des Opfers erhalten bleibt."
}

View File

@ -12,7 +12,10 @@
{
"min": 3,
"additionalFormula": "1/2 * GW des Tieres",
"variables": ["GW des Tieres"]
"variables": [
"GW des Tieres"
],
"repräsentation": ""
}
],
"zielobjekt": "einzelnes Tier",
@ -24,6 +27,12 @@
"antimagie": "Eine Zone des EINFLUSS BANNEN erschwert das Wirken des Zaubers, gezielter Einsatz der Antimagie beendet SANFTMUT sofort.",
"merkmal": ["Einfluss"],
"komplexität": "B",
"repräsentation": "Geo, Hex je 6; Dru, Elf je 4; Ach 2",
"repräsentation": {
"Geomant": 6,
"Hexe": 6,
"Druide": 4,
"Elf": 4,
"Achaz": 2
},
"info": "SANFTMUT ist besonders unter Hexen verbreitet, wird jedoch auch von Geoden und Druiden in der Wildnis geschätzt. Er erlaubt es, aggressive Tiere zu beruhigen oder kurzfristig kampfunfähig zu machen, ohne ihnen Schaden zuzufügen. Seine einfache Anwendung macht ihn zu einem häufigen Begleiter auf Reisen durch gefährliche Naturgebiete."
}

View File

@ -11,11 +11,11 @@
"kosten": [
{
"cost": 6,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 4,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelperson",
@ -34,6 +34,9 @@
"antimagie": "EINFLUSS BANNEN beendet diesen Zauber. In einer entsprechenden Zone kann der Zauber nur erschwert gewirkt werden.",
"merkmal": ["Einfluss"],
"komplexität": "B",
"repräsentation": "Elf 3, Sch 2",
"repräsentation": {
"Elf": 3,
"Schelm": 2
},
"info": "Ein subtiler Zauber der Elfen, der Glaubwürdigkeit verleiht und das kritische Denken des Gegenübers dämpft. Nur wenige Elfen wissen überhaupt um seine Existenz, da er meist nur von besonders einflussreichen oder schelmisch veranlagten Elfen weitergegeben wird. Auch manche Schelme kennen den Spruch, den sie angeblich von koboldischen Lehrmeistern erlernten."
}

View File

@ -13,13 +13,13 @@
"cost": 0,
"additionalFormula": "3 * 10 Aktionen",
"variables": ["10 Aktionen"],
"herkunft": ""
"repräsentation": ""
},
{
"cost": 0,
"additionalFormula": "2 * 10 Aktionen",
"variables": ["10 Aktionen"],
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelperson",
@ -50,6 +50,15 @@
"antimagie": "In einer Zone des HELLSICHT TRÜBEN erschwert zu wirken und kann durch diesen Zauber gezielt beendet werden.",
"merkmal": ["Hellsicht"],
"komplexität": "C",
"repräsentation": "Elf 7; Mag 6; Dru, Hex, Geo je 5; Ach, Sch, Srl je 4",
"repräsentation": {
"Elf": 7,
"Magier": 6,
"Druide": 5,
"Hexe": 5,
"Geomant": 5,
"Achaz": 4,
"Schelm": 4,
"Scharlatan": 4
},
"info": "Ein klassischer elfischer Empathiezauber, der die emotionale Stimmung anderer Wesen fühlbar macht. Auch unter Druiden, Geoden und Hexen verbreitet, dient er meist zur Beurteilung von Stimmungen oder Absichten. Aufgrund seines Alters gilt er als eine der ältesten erhaltenen Hellsichtformeln überhaupt."
}

View File

@ -13,14 +13,8 @@
"cost": 0,
"additionalFormula": "1 * 5 Schritt Radius und Spielrunde",
"variables": ["5 Schritt Radius und Spielrunde"],
"herkunft": ""
},
{
"cost": 0,
"additionalFormula": "1 * 5 Schritt Radius und Spielrunde",
"variables": ["5 Schritt Radius und Spielrunde"],
"herkunft": "Schamane"
}
"repräsentation": ""
}
],
"zielobjekt": "Zone",
"reichweite": "maximal ZfW Schritt Radius",
@ -56,6 +50,14 @@
"antimagie": "Kann in einer Zone des VERÄNDERUNG AUFHEBEN nur erschwert gewirkt und von diesem Zauber gezielt beendet werden.",
"merkmal": ["Umwelt"],
"komplexität": "B",
"repräsentation": "Elf 7; Mag, Sch 5; Geo, Srj je 4; Dru, Hex je 2",
"repräsentation": {
"Elf": 7,
"Magier": 5,
"Schelm": 5,
"Geomant": 4,
"Scharlatan": 4,
"Druide": 2,
"Hexe": 2
},
"info": "Dieser uralte elfische Zauber erschafft eine Zone absoluter Stille und gilt als Grundlage für viele Jagd- und Spurenzauber der Elfen. Später wurde er von Geoden, Hexen und Druiden übernommen, um Rituale ungestört durchführen zu können. Der Zauber ist weit verbreitet und an zahlreichen Lehrstätten bekannt."
}

View File

@ -11,11 +11,11 @@
"kosten": [
{
"cost": 7,
"herkunft": ""
"repräsentation": ""
},
{
"cost": 4,
"herkunft": "Schamane"
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelperson",
@ -46,6 +46,15 @@
"antimagie": "EINFLUSS BANNEN beendet die Wirkung; kann in einer entsprechenden antimagischen Zone nur erschwert gewirkt werden.",
"merkmal": ["Einfluss"],
"komplexität": "B",
"repräsentation": "Elf 6; Mag 5; Ach, Dru, Geo, Hex, Sch, Srl je 3",
"repräsentation": {
"Elf": 6,
"Magier": 5,
"Achaz": 3,
"Druide": 3,
"Geomant": 3,
"Hexe": 3,
"Schelm": 3,
"Scharlatan": 3
},
"info": "Dieser Zauber entstammt ursprünglich der elfischen Tradition und wurde später von menschlichen Magiern nach Tamaras Forschungen übernommen. Heute ist er weit verbreitet, insbesondere in Schulen der Natur- und Einflussmagie, wo er als klassischer Beruhigungszauber gilt."
}

View File

@ -12,7 +12,7 @@
"cost": 4,
"additionalFormula": "2 * SR",
"variables": ["SR"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson (eigentlich: die Zone um eine einzelne Person), freiwillig",
@ -37,6 +37,11 @@
"antimagie": "VERÄNDERUNG AUFHEBEN beendet den Zauber; in einer entsprechenden Zone kann er erschwert gewirkt werden. Außerdem senkt eine solche Zone beim Betreten oder Durchqueren die effektiven ZfP* des Zaubers um ihre eigene ZfP*.",
"merkmal": ["Umwelt"],
"komplexität": "C",
"repräsentation": "Elf 6; Dru, Geo je 3; Hex 2",
"repräsentation": {
"Elf": 6,
"Druide": 3,
"Geomant": 3,
"Hexe": 2
},
"info": "Dieser uralte elfische Zauber löscht Spuren vollständig aus. Er wird bereits Elfenkindern aus Überlebensgründen beigebracht. Unter Menschen ist er kaum bekannt und wird meist für ein natürliches Talent der Elfen gehalten. Er dient vor allem der Jagd, Tarnung und dem Schutz heiliger Orte."
}

View File

@ -12,7 +12,7 @@
"cost": 0,
"additionalFormula": "7 * SR",
"variables": ["SR"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "einzelnes Tier",
@ -31,6 +31,13 @@
"antimagie": "HELLSICHT TRÜBEN und VERSTÄNDIGUNG STÖREN erschweren den Zauber erheblich und können ihn beenden.",
"merkmal": ["Hellsicht", "Verständigung"],
"komplexität": "C",
"repräsentation": "Elf, Geo je 5; Ach, Dru, Hex je 4; Mag 3",
"repräsentation": {
"Elf": 5,
"Geomant": 5,
"Achaz": 4,
"Druide": 4,
"Hexe": 4,
"Magier": 3
},
"info": "Ursprünglich diente dieser Zauber den Elfen dazu, mit Tieren zu kommunizieren, die ihnen seelenverwandt sind. Später verbreitete sich die Formel auch unter Druiden und Hexen, die sie als Mittel nutzen, um Tieren in Not zu helfen oder von ihnen Warnungen zu erhalten. Magier und Geoden haben angepasste Repräsentationen entwickelt."
}

View File

@ -5,20 +5,31 @@
"technik": "Der Elf spricht visya'bha li-faenya da'lha und nickt mit dem Kopf. Weitere Personen, die unsichtbar gemacht werden sollen, müssen während der gesamten Wirkungsdauer mit dem Zaubernden in körperlichem Kontakt bleiben.",
"zauberdauer": {
"normal": 0,
"additionalFormula": "3 Aktionen * Nutznießer",
"variables": ["Nutznießer"]
"additionalFormula": "3 * Nutznießer",
"variables": [
"Nutznießer"
],
"additionalFormulaTimeUnit": "Aktionen"
},
"wirkung": "Der Leib des Verzauberten wird zunächst durchscheinend und schließlich vollständig unsichtbar. Der Zauber wirkt nur auf Lebewesen, schließt jedoch Kleidung, Ausrüstung und Waffen mit ein. Unsichtbare Körper werfen weiterhin Schatten und hinterlassen Spuren. Gegenstände, die den Körper verlassen, werden wieder sichtbar. Im Wasser oder bei Staub sind Umrisse erkennbar, ebenso bei veränderten Brechungsverhältnissen der Luft.",
"kosten": [
{
"cost": 0,
"additionalFormula":"4 * Nutznießer * SR",
"herkunft": ""
"variables": [
"Nutznießer",
"SR"
],
"repräsentation": ""
},
{
"cost": 0,
"additionalFormula":"3 * Nutznießer * SR",
"herkunft": "Schamane"
"variables": [
"Nutznießer",
"SR"
],
"repräsentation": "Schelm"
}
],
"zielobjekt": "Einzelwesen, mehrere Wesen (maximal ZfW/2 Wesen), freiwillig",
@ -37,6 +48,11 @@
"antimagie": "VERWANDLUNG BEENDEN erschwert das Wirken des VISIBILI und kann gegen einen Unsichtbaren direkt gesprochen werden, um den Zauber zu beenden.",
"merkmal": ["Form"],
"komplexität": "C",
"repräsentation": "Elf 6; Mag, Sch je 5; Sr 3",
"repräsentation": {
"Elf": 6,
"Magier": 5,
"Schelm": 5,
"Scharlatan": 3
},
"info": "Ein klassischer Unsichtbarkeitszauber, der im Repertoire vieler Elfen und Magier zu finden ist. Auch Schelme nutzen ihn gelegentlich, um ihrer koboldhaften Natur Ausdruck zu verleihen."
}

View File

@ -12,7 +12,7 @@
"cost": 6,
"additionalFormula": "3 * SR",
"variables": ["SR"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -37,6 +37,11 @@
"antimagie": "Zonen des VERWANDLUNG BEENDEN erschweren den Zauber und können ihn vollständig aufheben.",
"merkmal": ["Form"],
"komplexität": "C",
"repräsentation": "Elf 6; Dru, Geo, Mag je 2",
"repräsentation": {
"Elf": 6,
"Druide": 2,
"Geomant": 2,
"Magier": 2
},
"info": "Die Formel ähnelt nur dem Namen nach der ADLERSCHWINGE, dient aber ausschließlich dazu, längere Zeit unter Wasser zu verweilen. Die gildenmagische Variante wird in Lowangen und Festum im Rahmen von Unterwassererkundungen und Fischfang gelehrt."
}

View File

@ -10,7 +10,7 @@
"kosten": [
{
"cost": 12,
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "ein Zauberpferd",
@ -21,6 +21,8 @@
"antimagie": "Zonen der BESCHWÖRUNG VERTEILEN erschweren den Zauber; eine spezielle Bannformel gegen das Zauberpferd ist unbekannt.",
"merkmal": ["Beschwörung"],
"komplexität": "D",
"repräsentation": "Elf 5",
"repräsentation": {
"Elf": 5
},
"info": "Dieser Zauber ist ausschließlich unter Elfen verbreitet, besonders bei den Steppenelfen. Das herbeigerufene Pferd ist meist eine milchweiße Stute mit goldenen Hufen. Es ist unklar, ob auch Hengste beschworen werden können. Das Tier verschwindet ebenso geheimnisvoll, wie es erscheint, und wird von Beobachtern kaum je im Moment seines Erscheinens gesehen. In geschlossenen Räumen oder Städten gilt die Beschwörung als stark erschwert (7 auf die Probe)."
}

View File

@ -13,7 +13,7 @@
"cost": 2,
"additionalFormula": "1 * Dauer in Tage * Dauer in Tage",
"variables": ["Dauer in Tage"],
"herkunft": ""
"repräsentation": ""
}
],
"zielobjekt": "Einzelperson, freiwillig",
@ -32,6 +32,8 @@
"antimagie": "Sowohl EIGENSCHAFT WIEDERHERSTELLEN als auch EINFLUSS BANNEN können den Zauber brechen. In entsprechenden Zonen ist der Zauber schwerer zu wirken.",
"merkmal": ["Eigenschaften", "Einfluss"],
"komplexität": "C",
"repräsentation": "Elf 3",
"repräsentation": {
"Elf": 3
},
"info": "Ein klassischer elfischer Selbsterhaltungszauber, der Hunger und Durst durch astrale Energie ersetzt. Von menschlichen Beobachtern wird er oft als Ausdruck übernatürlicher Elfenanatomie interpretiert. Varianten dieses Zaubers finden sich auch in menschlichen Traditionen, wo er meist in Form von asketischen Meditationsritualen bekannt ist."
}

View File

@ -1,6 +1,8 @@
@use "../molecules/attribute-die";
.dsa41.dialog.talent, .dsa41.dialog.eigenschaft {
.dsa41.dialog.talent,
.dsa41.dialog.eigenschaft,
.dsa41.dialog.spell {
section[data-application-part] {
@ -32,6 +34,13 @@
}
}
.variantList {
.variant {
display: grid;
grid-template-columns: 80px 1fr;
}
}
.scroll-y {
flex: 1;
overflow: hidden;

View File

@ -2,7 +2,7 @@
"id": "DSA_4-1",
"title": "Das Schwarze Auge 4.1",
"description": "Noch ein Spielsystem für Das Schwarze Auge 4.1",
"version": "0.6.0",
"version": "0.0.1",
"compatibility": {
"minimum": 12,
"verified": 13
@ -359,5 +359,5 @@
"primaryTokenAttribute": "lep.aktuell",
"url": "https://git.macniel.online/macniel/foundry-dsa41-game",
"manifest": "https://git.macniel.online/macniel/foundry-dsa41-game/raw/branch/main/src/system.json",
"download": "https://git.macniel.online/macniel/foundry-dsa41-game/releases/download/0.6.0/release.zip"
"download": "https://git.macniel.online/macniel/foundry-dsa41-game/releases/download/0.0.1/release.zip"
}

View File

@ -35,7 +35,7 @@
<tbody>
{{#each this.spells}}
<tr>
<td class="spell rollable">
<td class="spell rollable" data-action="castSpell" data-item-id="{{this.id}}">
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-item-id="{{this.id}}" data-action="openEmbeddedDocument">

View File

@ -31,7 +31,7 @@
<tbody>
{{#each this.spells}}
<tr>
<td class="spell rollable">
<td class="spell rollable" data-action="castSpell" data-item-id="{{this.id}}">
{{> 'systems/DSA_4-1/templates/ui/partial-die.hbs' }}
</td>
<td class="clickable" data-item-id="{{this.id}}" data-action="openSpellDialog">

View File

@ -18,33 +18,71 @@
{{{this.text}}}
</div>
<div>
<label><span>Repräsentation:
</span>
<select name="representation">
{{selectOptions representationOptions selected=selectedRepresentation inverted=true}}
</select></label>
</div>
{{#if this.variants}}
<div>
<label>Variante
<select></select>
</label>
</div>
<fieldset>
<legend>Variante</legend>
<div class="variantList scroll-y">
{{#each this.variants}}
<div class="variant">
<div class="selection">
<label>
<input type="checkbox" name="variants.{{variantName}}" {{checked variantChecked}}>
{{#if (gte variantPenalty 0)}}+{{/if}}{{variantPenalty}}
</label>
</div>
<div class="variantText">
<em>{{variantName}}</em><br/>
{{{variantText}}}
</div>
</div>
{{/each}}
</div>
</fieldset>
{{/if}}
<fieldset>
<legend>Modifikationen</legend>
<fieldset class="modding">
<legend>Erschwernisse</legend>
<div class="malus-and-mod">
<label><span>TaW</span>
<output name="lkp" type="number">{{taw}}</output>
</label>
<label><span>Umstände</span>
<input name="circumstance" type="number" value="{{circumstance}}">
</label>
<label><span>Modifikation</span>
<output name="penalty">{{penalty}}</output>
</label>
</div>
<output class="modResult"></output>
</fieldset>
<fieldset>
<legend>Variablen</legend>
{{#each variables}}
<div>
<label for="{{this}}">{{this}}: </label>
<input type="number" name="mutators.{{this}}" value="{{lookup ../mutators this}}"/>
</div>
{{/each}}
</fieldset>
<button class="actions" data-action="use"><i class="fa-solid fa-bolt"></i> Talenteinsatz {{#if modResult}}
<fieldset>
<legend>Dauer und Kosten</legend>
<div class="malus-and-mod">
<label><span>Zauberdauer</span>
<output name="castingTime">{{castingTime}}</output>
</label>
<label><span>Kosten</span>
<output name="costs">{{castingCosts}}</output>
</label>
<label><span>Erschwernis</span>
<output name="penalty">{{penalty}}</output>
</label>
</div>
</fieldset>
<button class="actions" data-action="use"><i class="fa-solid fa-sparkles"></i> Zauber wirken {{#if modResult}}
[{{displayModResult}}]{{/if}}</button>
</section>

View File

@ -7,13 +7,18 @@
<input type="text" name="system.komplexität" value="{{system.komplexität}}"/>
</label>
</div>
<div>
<label>Repräsentation
<input type="text" name="system.repräsentation" value="{{system.repräsentation}}"/>
</label>
<fieldset>
<legeld>Repräsentation</legeld>
</fieldset>
{{#each system.repräsentation}}
<div>
<span>{{@key}}</span>
<input name="system.repräsentation.{{@key}}" value="{{this}}" type="number"/>
</div>
{{/each}}
</div>
<div>
<label>Verbreitung
<label>Info
<input type="text" name="system.info" value="{{system.info}}"/>
</label>
</div>