Compare commits

...
16 Commits
Author SHA1 Message Date
Byroks 8a3c632c7d Merge branch 'develop' 2023-12-15 21:36:50 +01:00
Byroks 91f12b11da v2.3.1 2023-12-15 21:36:33 +01:00
ByroksandGitHub bfa51605bc Add Consumable Items (#62)
Changes:
 + add Quantity value for items
 + add plus and minus buttons for list
 + add roll button if item contains formulas
 + decrease quantity by 1 if rolled
2023-12-15 21:34:32 +01:00
ByroksandGitHub c313d3448c Add Roll Modification (#61)
Changes:
 + add roll Mod (only for attributes)
 + check for roll mods when rolling on attributes
2023-12-15 20:40:23 +01:00
ByroksandGitHub 31cfd52131 Add currency to character sheet (#60)
Changes:
 + add fields to track currency
 + show value of standard items
2023-12-15 20:39:29 +01:00
Byroks 7fe52cf52a Merge branch 'develop' 2023-12-13 18:55:13 +01:00
Byroks a5336faa94 v2.3.0 2023-12-13 18:52:41 +01:00
ByroksandGitHub a56e6bab3d Automatically select skill for effects (#59)
Changes:
 + when a mod gets added, check if it's a skill
 + if it's a skill, find appropiate ID in actors item list and apply it to the mod
2023-12-13 18:46:49 +01:00
fed1175987 26 perception drinking all abilities (#56)
* Innate abilities

+ Added Perception as fixed innate ability
+ Added Drinking as fixed innate ability
+ Set Luckpoints to 0

* Duration Update

+ Added Duration to Effects
+ Added Perception to Eye & Ear Injury

* Fixed like recommended

+ Fixed M5Base
+Fixed M5Character
+ Fixed M5Rolls
+ Fixed Skills HBS
+ Fixed BrawlFw
+ Fixed Effect (not saved already)

* fix minor issues

---------

Co-authored-by: Byroks <byroks@gmail.com>
2023-12-13 18:45:35 +01:00
ByroksandGitHub 1e27e135cf 15 add duration to active effects (#50)
* Add Effect Duration & Rework Combat tracker

Changes:
 + rework combat tracker to display every uneven round as Movementphase
 + rework combat tracker to display every even round as actionphase
 + add possibility for effects durations
 + effects duration decreases with every actionphase
 + add enum for time Units
 + update localization
 + add display of remaining time on effects
 + add duration for spelleffect "Bärenwut"

* add LP AP Manipulation through effects

Changes:
 + add LimitHeal function
 + adjust LP AP Values if Mod exists in an effect

* Fix linked actor not being updated
2023-12-11 17:36:12 +01:00
LeFriqueandGitHub 30e94741bf Update main.hbs (#55)
+ Switched Ko and Gw to match dice description above dice symbols in header.
2023-12-09 18:24:09 +01:00
LeFriqueandGitHub 2dccbf3de3 Fix packfolders (#47)
+ Added missing curly brace
+ Added Injuries in packFolders
2023-12-06 18:43:23 +01:00
LeFriqueandGitHub 9814c44045 Added Injuries & in Macros, Fixes (#25)
Added:
+ Injuries as Effects
+ Added Injury Effects to Macro Schwere Verletzungen
Fixed:
+ Pagedescription in Spell Effects
+ Images (again) in Combat Conditions
2023-12-06 16:30:13 +01:00
Byroks f4a2338075 Merge branch 'develop' 2023-12-06 16:13:30 +01:00
Byroks 024f0b9c42 Squashed commit of the following:
commit 250fc499ae
Author: Byroks <byroks@gmail.com>
Date:   Thu Nov 30 16:17:04 2023 +0100

    v2.1.0

commit 28595e7dd0
Author: Byroks <byroks@gmail.com>
Date:   Thu Nov 30 15:50:59 2023 +0100

    Make Items with mods equippable (#11)

    Changes:
     + Items that can influence you stats are equippable
     + only equipped items influence your stats
     + Armor now influences your stats
     + move mods into a partial for easier changes

commit 8095785fc2
Author: Byroks <byroks@gmail.com>
Date:   Wed Nov 29 10:14:49 2023 +0100

    Movement stat (#10)

    Changes:
     + make movement stat work and be moddable by effects

commit e141839055
Merge: 14e005c 0bfa224
Author: Byroks <byroks@gmail.com>
Date:   Tue Nov 28 19:50:38 2023 +0100

    Merge branch 'main' into develop

commit 14e005cb0a
Author: Byroks <byroks@gmail.com>
Date:   Tue Nov 28 19:48:14 2023 +0100

    v2.0.0

commit c635c54f24
Author: Byroks <byroks@gmail.com>
Date:   Tue Nov 28 19:42:38 2023 +0100

    Dev Kampfkünste Items & Integration (#7)

    Changes:
     + add kampfkuenste template
     + add kampfkuenste tab
     + make kampfkuenste rollable
     + update localization

commit e27f4209e5
Author: Byroks <byroks@gmail.com>
Date:   Mon Nov 27 20:05:20 2023 +0100

    Squashed commit of the following:

    commit 0bfa224dae
    Author: Byroks <byroks@gmail.com>
    Date:   Mon Nov 27 19:56:05 2023 +0100

        V1.3.1 (#6)

        * v1.3.1

        * v1.3.1

        * update .gitingore

    commit 35a6b0fae9
    Author: Byroks <byroks@gmail.com>
    Date:   Mon Nov 27 19:48:56 2023 +0100

        v1.3.1

    commit db21ca93b0
    Author: Byroks <byroks@gmail.com>
    Date:   Sun Nov 26 13:13:13 2023 +0100

        subtract ap when casting spell

        Changes:
         + subtract AP when casting a spell
2023-11-30 16:19:25 +01:00
ByroksandGitHub 16df142d45 v2.0.0 (#8)
* Squashed commit of the following:

commit 0bfa224dae
Author: Byroks <byroks@gmail.com>
Date:   Mon Nov 27 19:56:05 2023 +0100

    V1.3.1 (#6)

    * v1.3.1

    * v1.3.1

    * update .gitingore

commit 35a6b0fae9
Author: Byroks <byroks@gmail.com>
Date:   Mon Nov 27 19:48:56 2023 +0100

    v1.3.1

commit db21ca93b0
Author: Byroks <byroks@gmail.com>
Date:   Sun Nov 26 13:13:13 2023 +0100

    subtract ap when casting spell

    Changes:
     + subtract AP when casting a spell

* Dev Kampfkünste Items & Integration (#7)

Changes:
 + add kampfkuenste template
 + add kampfkuenste tab
 + make kampfkuenste rollable
 + update localization

* v2.0.0
2023-11-28 19:50:56 +01:00
102 changed files with 831 additions and 217 deletions
+22 -2
View File
@@ -5,11 +5,22 @@
"TYPES.Item.item": "Gegenstand",
"TYPES.Item.weapon": "Waffe",
"ITEM.TypeDefensiveWeapon": "Verteidigungswaffe",
"TYPES.Item.defensiveWeapon": "Verteidigungswaffe",
"TYPES.Item.armor": "Rüstung",
"TYPES.Item.spell": "Zauber",
"TYPES.Item.effect": "Aktive Effekte",
"ITEM.type.kampfkunst": "Kampfkünste",
"TYPES.Item.kampfkunst": "Kampfkünste",
"midgard5.phase-action": "Handlungsphase",
"midgard5.phase-movement": "Bewegungsphase",
"midgard5.no-encounter": "Kein Kampf",
"midgard5.encounter-not-started": "Kein aktiver Kampf",
"midgard5.time-duration": "Dauer",
"midgard5.time-round": "Runde(n)",
"midgard5.time-minute": "Minute(n)",
"midgard5.time-hour": "Stunde(n)",
"midgard5.time-limitless": "Unbegrenzt",
"midgard5.doRoll": "Würfeln",
"midgard5.learn": "Lernen",
@@ -80,6 +91,10 @@
"midgard5.origin": "Heimat",
"midgard5.faith": "Glaube",
"midgard5.currency-gold": "Gold",
"midgard5.currency-silver": "Silber",
"midgard5.currency-copper": "Kupfer",
"midgard5.exp-overall": "Erfahrungsschatz",
"midgard5.exp-available": "Erfahrungspunkte",
"midgard5.grace": "Göttliche Gnade",
@@ -186,6 +201,8 @@
"midgard5.enduranceBonus": "Ausdauerbonus",
"midgard5.lpProtection": "Rüstungsschutz (LP)",
"midgard5.apProtection": "Rüstungsschutz (AP)",
"midgard5.perception": "Wahrnehmung",
"midgard5.drinking": "Trinken",
"midgard5.new-skill": "Neue Fertigkeit",
"midgard5.special": "Spezial",
@@ -274,6 +291,7 @@
"midgard5.kido-variante-kontrollieren": "Kontrollieren",
"midgard5.mod-operation-add100": "Addieren (max 100)",
"midgard5.mod-operation-roll": "Wurf Modifikation",
"midgard5.mod-operation-add": "Addieren",
"midgard5.mod-operation-set": "Basiswert",
"midgard5.mod-operation-fixed": "Fester Wert",
@@ -294,6 +312,8 @@
"midgard5.mod-stat-ap": "Ausdauerpunkte",
"midgard5.mod-stat-lpProtection": "Rüstungsschutz (LP)",
"midgard5.mod-stat-apProtection": "Rüstungsschutz (AP)",
"midgard5.mod-stat-perception": "Wahrnehmung",
"midgard5.mod-stat-drinking": "Trinken",
"midgard5.mod-type": "Typ der Modifikation",
"midgard5.mod-id": "Was soll modifiziert werden",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "foundry-system-midgard5",
"version": "2.2.0",
"version": "2.3.1",
"description": "",
"main": "index.js",
"scripts": {
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 2, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+1
View File
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 2, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -6,6 +6,7 @@
"description": "KOD. S96",
"equippable": false,
"equipped": true,
"duration": { "time": 360, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 2, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+1
View File
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+1
View File
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 2, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+1
View File
@@ -6,6 +6,7 @@
"description": "",
"equippable": false,
"equipped": true,
"duration": { "time": 2, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Arm",
"type": "effect",
"img": "icons/skills/wounds/injury-pain-impaled-hand-blood.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "attackBonus", "operation": "substract", "value": 4 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcYz8",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Auge",
"type": "effect",
"img": "icons/skills/wounds/injury-eyes-blood-red.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "perception", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY14",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Bein",
"type": "effect",
"img": "icons/skills/wounds/bone-broken-knee-beam.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "fixed", "value": 4 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcYz9",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Bein mit Erster Hilfe",
"type": "effect",
"img": "icons/skills/wounds/anatomy-bone-joint.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "fixed", "value": 6 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY11",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Bein mit Stock",
"type": "effect",
"img": "icons/skills/wounds/injury-stapled-flesh-tan.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "division", "value": 2 }, "1": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY10",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Hals",
"type": "effect",
"img": "icons/skills/wounds/blood-spurt-spray-red.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "lp", "operation": "subtract", "value": 1 }, "1": { "type": "stat", "id": "ap", "operation": "subtract", "value": 1 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY12",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
@@ -0,0 +1,22 @@
{
"name": "Innere Verletzungen",
"type": "effect",
"img": "icons/skills/wounds/injury-triple-slash-bleed.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "fixed", "value": 4 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY13",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Ohr",
"type": "effect",
"img": "icons/skills/wounds/injury-eyes-blood-red-pink.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "perception", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY15",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+22
View File
@@ -0,0 +1,22 @@
{
"name": "Rippen",
"type": "effect",
"img": "icons/skills/wounds/bone-broken-marrow-yellow.webp",
"system": {
"description": "",
"equippable": false,
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 }, "1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 4 }, "2": { "type": "skill", "id": "Klettern", "operation": "subtract", "value": 4 }, "3": { "type": "skill", "id": "Akrobatik", "operation": "subtract", "value": 4 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349805056, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "PJ0tqjZXQ5opcY16",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/control/voodoo-doll-pain-damage-tan.webp",
"system": {
"description": "<p>Fertigkeit Verf&uuml;hren hier einstellen!</p>",
"description": "<p>ARK S. 64</p>",
"equippable": false,
"duration": { "time": 6, "unit": "hour" },
"equipped": true,
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 6 } },
"mods": { "0": { "type": "skill", "id": "midgard5.verfuehren", "operation": "add", "value": 6 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/skills/movement/feet-winged-boots-glowing-yellow.webp",
"system": {
"description": "<p>Hier eigene B bei Bonus eintragen!</p>\n<p>Arkanum Seite 67</p>",
"description": "<p>ARK S. 67</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "add", "value": 24 } },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "multiply", "value": 2 } },
"calc": {}
},
"effects": [],
+7 -6
View File
@@ -3,18 +3,19 @@
"type": "effect",
"img": "icons/creatures/eyes/humanoid-single-blind.webp",
"system": {
"description": "<p>Gilt f&uuml;r alle EW &amp; WW beim Einsatz aller Fertigkeiten!</p>",
"description": "<p>ARK S. 69</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -6 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -6 },
"2": { "type": "stat", "id": "brawl", "operation": "add", "value": -6 },
"3": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -6 },
"4": { "type": "skill", "id": "", "operation": "add", "value": -6 }
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 6 },
"1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 6 },
"2": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 6 },
"3": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 6 },
"4": { "type": "skill", "id": "", "operation": "subtract", "value": 6 }
},
"calc": {}
},
+7 -6
View File
@@ -3,18 +3,19 @@
"type": "effect",
"img": "icons/creatures/eyes/humanoid-single-blind.webp",
"system": {
"description": "<p>Gilt f&uuml;r alle EW &amp; WW beim Einsatz aller Fertigkeiten!</p>",
"description": "<p>MYS S. 44</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -6 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -6 },
"2": { "type": "stat", "id": "brawl", "operation": "add", "value": -6 },
"3": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -6 },
"4": { "type": "skill", "id": "", "operation": "add", "value": -6 }
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 6 },
"1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 6 },
"2": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 6 },
"3": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 6 },
"4": { "type": "skill", "id": "", "operation": "subtract", "value": 6 }
},
"calc": {}
},
+3 -2
View File
@@ -1,11 +1,12 @@
{
"name": "B\u00e4renwut",
"name": "Bärenwut",
"type": "effect",
"img": "icons/magic/lightning/fist-unarmed-strike-blue-green.webp",
"system": {
"description": "<p>Arkanum Seite 144</p>",
"description": "<p>ARK S. 144</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
@@ -1,15 +1,16 @@
{
"name": "Der Reim der Entkr\u00e4ftung",
"name": "Der Reim der Entkräftung",
"type": "effect",
"img": "icons/magic/unholy/hand-marked-pink.webp",
"system": {
"description": "",
"description": "<p>ARS S. 133</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": -2 } },
"mods": { "0": { "type": "stat", "id": "resistanceBody", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/skills/movement/feet-winged-boots-brown.webp",
"system": {
"description": "",
"description": "<p>ARS S. 133</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/perception/hand-eye-fire-blue.webp",
"system": {
"description": "",
"description": "<p>ARS S. 135</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/defensive/illusion-evasion-echo-purple.webp",
"system": {
"description": "",
"description": "<p>ARS S. 136</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,14 +3,15 @@
"type": "effect",
"img": "icons/magic/unholy/hand-weapon-glow-black-green.webp",
"system": {
"description": "<p>Arkanum Seite 148</p>",
"description": "<p>ARS S. 137</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 },
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 2 },
"2": { "type": "stat", "id": "damageBonus", "operation": "add", "value": 1 }
},
@@ -1,11 +1,12 @@
{
"name": "Der Vers des st\u00e4hlernen Leibes",
"name": "Der Vers des stählernen Leibes",
"type": "effect",
"img": "icons/magic/control/buff-strength-muscle-damage-orange.webp",
"system": {
"description": "",
"description": "<p>ARS S. 137</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -1,11 +1,12 @@
{
"name": "Der Vers des st\u00e4hlernen Willens",
"name": "Der Vers des stählernen Willens",
"type": "effect",
"img": "icons/magic/perception/eye-ringed-glow-angry-red.webp",
"system": {
"description": "",
"description": "<p>ARS S. 137</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/sonic/scream-wail-shout-teal.webp",
"system": {
"description": "<p>Arkanum Seite 147</p>",
"description": "<p>ARK S. 170</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "attribute", "id": "", "operation": "add", "value": -5 }, "1": { "type": "skill", "id": "", "operation": "add", "value": -1 } },
"mods": { "0": { "type": "attribute", "id": "", "operation": "subtract", "value": 5 }, "1": { "type": "skill", "id": "", "operation": "subtract", "value": 1 } },
"calc": {}
},
"effects": [],
@@ -0,0 +1,23 @@
{
"name": "Der verunsichernde Gesang",
"type": "effect",
"img": "icons/magic/sonic/scream-wail-shout-teal.webp",
"system": {
"description": "<p>ARK S. 170</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "attribute", "id": "", "operation": "subtract", "value": 5 }, "1": { "type": "skill", "id": "", "operation": "subtract", "value": 1 } },
"calc": {}
},
"effects": [],
"flags": { "core": { "sourceId": "Compendium.midgard5.zauberwirkungen.lEqFJcDY9QCh4Gmd" } },
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1677860239164, "modifiedTime": 1700353901250, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "KneY9z7Jdjh1xWZc",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
@@ -1,11 +1,12 @@
{
"name": "Die St\u00e4hlende Ballade",
"name": "Die Stählende Ballade",
"type": "effect",
"img": "icons/tools/instruments/drum-standing-glowing-green.webp",
"system": {
"description": "",
"description": "<p>ARK S. 171</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/tools/instruments/horn-red-brown.webp",
"system": {
"description": "<p>Auf alle Bewegungsfertigkeiten anwendbar!</p>",
"description": "<p>ARK S. 171 Auf alle Bewegungsfertigkeiten anwendbar!</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+1 -1
View File
@@ -1 +1 @@
{"name": "Eisenhaut", "type": "armor", "img": "icons/equipment/chest/breastplate-helmet-metal.webp", "system": {"description": "", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 5, "apProtection": 5, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700346498452, "modifiedTime": 1700353901245, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "RiUYfceWEkRkKm0h", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
{"name": "Eisenhaut", "effect": "armor", "img": "icons/equipment/chest/breastplate-helmet-metal.webp", "system": {"description": "<p>ARK S. 74</p>", "stats": { "damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "duration": { "time": 12, "unit": "round" }, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 5, "apProtection": 5, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700346498452, "modifiedTime": 1700353901245, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "RiUYfceWEkRkKm0h", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/weapons/swords/sword-hilt-steel-green.webp",
"system": {
"description": "",
"description": "<p>ARK S. 150</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/commodities/materials/slime-white.webp",
"system": {
"description": "",
"description": "<p>ARK S. 76</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 } },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
+6 -5
View File
@@ -3,17 +3,18 @@
"type": "effect",
"img": "icons/magic/unholy/strike-body-life-soul-purple.webp",
"system": {
"description": "<p>Ab zeiter Runde: B3 und -8 f&uuml;r alle Bewegungsfertigkeiten!</p>",
"description": "<p>DUM S. 83</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 999, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "movement", "operation": "add", "value": -4 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -4 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -4 },
"3": { "type": "skill", "id": "", "operation": "add", "value": -4 }
"0": { "type": "stat", "id": "movement", "operation": "subtract", "value": 4 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 },
"2": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 4 },
"3": { "type": "skill", "id": "", "operation": "subtract", "value": 4 }
},
"calc": {}
},
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/weapons/swords/greatsword-evil-green.webp",
"system": {
"description": "",
"description": "<p>ARK S. 85</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -6,6 +6,7 @@
"description": "<p>ARK S. 175</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "hour" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/fire/projectile-meteor-salvo-light-red.webp",
"system": {
"description": "",
"description": "<p>ARK S. 87</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -4 }, "1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -4 } },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 }, "1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": -4 }, "2": { "type": "stat", "id": "movement", "operation": "fxed", "value": 6 } },
"calc": {}
},
"effects": [],
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/weapons/hammers/hammer-double-glowing-yellow.webp",
"system": {
"description": "",
"description": "<p>ARK S. 141</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -1 +1 @@
{"name": "Goldener Panzer", "type": "armor", "img": "icons/equipment/chest/breastplate-layered-gilded-orange.webp", "system": {"description": "", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 2, "apProtection": 0, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700347046024, "modifiedTime": 1700353901246, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "xql3yvtFlgU0TE8n", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
{"name": "Goldener/Strahlender Panzer", "type": "effect", "img": "icons/equipment/chest/breastplate-layered-gilded-orange.webp", "system": {"description": "<p>ARK S. 88</p>", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "duration": { "time": 12, "unit": "round" },"attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 2, "apProtection": 0, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700347046024, "modifiedTime": 1700353901246, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "xql3yvtFlgU0TE8n", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/holy/angel-winged-humanoid-blue.webp",
"system": {
"description": "",
"description": "<p>ARK S. 143</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+3 -2
View File
@@ -1,11 +1,12 @@
{
"name": "G\u00f6tterarme",
"name": "Götterarme",
"type": "effect",
"img": "icons/magic/unholy/hands-circle-light-green.webp",
"system": {
"description": "",
"description": "<p>RAW S. 105</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -1,11 +1,12 @@
{
"name": "G\u00f6ttlicher Schutz vor Magie",
"name": "Göttlicher Schutz vor Magie",
"type": "effect",
"img": "icons/magic/holy/barrier-shield-winged-cross.webp",
"system": {
"description": "",
"description": "<p>ARK S. 142</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "hour" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/lightning/fist-unarmed-strike-blue-green.webp",
"system": {
"description": "<p>Arkanum Seite 144</p>",
"description": "<p>ARK S. 144</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/air/wind-vortex-swirl-purple.webp",
"system": {
"description": "<p>Hier Fertigkeit Wahrnehmung einsetzen!</p>",
"description": "<p>ARK S. 93</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 2 } },
"mods": { "0": { "type": "skill", "id": "Hören", "operation": "add", "value": 2 } },
"calc": {}
},
"effects": [],
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/creatures/mammals/cat-hunched-glowing-red.webp",
"system": {
"description": "<p>Arkanum Seite 144</p>",
"description": "<p>ARK S. 149</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
@@ -6,6 +6,7 @@
"description": "<p>ARK S. 176</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "hour" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
+9 -8
View File
@@ -3,20 +3,21 @@
"type": "effect",
"img": "icons/creatures/magical/construct-iron-stomping-yellow.webp",
"system": {
"description": "<p>Malus gilt f&uuml;r alle EW!</p>",
"description": "<p>MYS S. 48</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "skill", "id": "", "operation": "add", "value": -2 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -2 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "add", "value": -2 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": -2 },
"5": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -2 },
"6": { "type": "stat", "id": "brawl", "operation": "add", "value": -2 }
"0": { "type": "skill", "id": "", "operation": "subtract", "value": 2 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 },
"2": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 2 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "subtract", "value": 2 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "subtract", "value": 2 },
"5": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 2 },
"6": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 2 }
},
"calc": {}
},
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/weapons/clubs/club-bone-blue.webp",
"system": {
"description": "",
"description": "<p>ARK S. 154</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/tools/instruments/rattle-gourd-glowing-teal.webp",
"system": {
"description": "",
"description": "<p>ARK S. 166</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 180, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -3,14 +3,15 @@
"type": "effect",
"img": "icons/magic/unholy/hand-weapon-glow-black-green.webp",
"system": {
"description": "<p>Arkanum Seite 148</p>",
"description": "<p>ARK S. 168</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 180, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 },
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 2 },
"2": { "type": "stat", "id": "damageBonus", "operation": "add", "value": 1 }
},
+1 -1
View File
@@ -1 +1 @@
{"name": "Marmorhaut", "type": "armor", "img": "icons/equipment/chest/breastplate-gorget-steel-white.webp", "system": {"description": "", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 4, "apProtection": 4, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700347338839, "modifiedTime": 1700353901246, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "wqS82FP9pAxLb5bn", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
{"name": "Marmorhaut", "type": "effect", "img": "icons/equipment/chest/breastplate-gorget-steel-white.webp", "system": {"description": "<p>ARK S. 102</p>", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "duration": { "time": 60, "unit": "round" },"attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 4, "apProtection": 4, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700347338839, "modifiedTime": 1700353901246, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "wqS82FP9pAxLb5bn", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
+9 -8
View File
@@ -3,20 +3,21 @@
"type": "effect",
"img": "icons/creatures/magical/spirit-fear-energy-pink.webp",
"system": {
"description": "<p>Malus gilt f&uuml;r alle EW!</p>",
"description": "<p>MYS S. 48</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "skill", "id": "", "operation": "add", "value": -4 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -4 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -4 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "add", "value": -4 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": -4 },
"5": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -4 },
"6": { "type": "stat", "id": "brawl", "operation": "add", "value": -4 }
"0": { "type": "skill", "id": "", "operation": "subtract", "value": 4 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 },
"2": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 4 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "subtract", "value": 4 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "subtract", "value": 4 },
"5": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 4 },
"6": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 4 }
},
"calc": {}
},
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/movement/trail-streak-zigzag-teal.webp",
"system": {
"description": "<p>Arkanum Seite 105</p>",
"description": "<p>ARK S. 105</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
+1 -1
View File
@@ -1 +1 @@
{"name": "Rindenhaut", "type": "armor", "img": "icons/equipment/chest/breastplate-leather-brown-belted.webp", "system": {"description": "", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 3, "apProtection": 3, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349427856, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "fiyvORwl1F1PLZOD", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
{"name": "Rindenhaut", "type": "effect", "img": "icons/equipment/chest/breastplate-leather-brown-belted.webp", "system": {"description": "<p>ARK S. 157</p>", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "duration": { "time": 60, "unit": "round" },"attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 3, "apProtection": 3, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349427856, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "fiyvORwl1F1PLZOD", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
@@ -1 +1 @@
{"name": "R\u00fcstung des Rechtschaffenen", "type": "armor", "img": "icons/equipment/chest/breastplate-layered-leather-green.webp", "system": {"description": "", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 5, "apProtection": 5, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349062247, "modifiedTime": 1700353901247, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "a49UmucuWJL3tXbM", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
{"name": "R\u00fcstung des Rechtschaffenen", "type": "effect", "img": "icons/equipment/chest/breastplate-layered-leather-green.webp", "system": {"description": "<p>ARK S. 145</p>", "stats": {"damageBonus": 0, "attackBonus": 0, "defenseBonus": 0, "movementBonus": 0, "resistanceMind": 0, "resistanceBody": 0, "spellBonus": 0}, "equippable": false, "equipped": true, "duration": { "time": 12, "unit": "round" },"attributeMod": {"st": 0, "gs": 0, "gw": 0, "ko": 0, "in": 0, "zt": 0, "au": 0, "pa": 0, "wk": 0}, "value": 0, "magic": false, "lpProtection": 5, "apProtection": 5, "rolls": {"formulas": {}, "output": ""}, "calc": {}}, "effects": [], "flags": {}, "_stats": {"systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349062247, "modifiedTime": 1700353901247, "lastModifiedBy": "cb3PEvEU0kHkMdjb"}, "_id": "a49UmucuWJL3tXbM", "folder": null, "sort": 0, "ownership": {"default": 0, "cb3PEvEU0kHkMdjb": 3}}
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/perception/eye-slit-orange.webp",
"system": {
"description": "<p>Fertigkeit Wahrnehmung nach Anlage hier noch ausw&auml;hlen!</p>\n<p>Arkanum Seite 108</p>",
"description": "<p>ARK S. 108</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 2 } },
"mods": { "0": { "type": "skill", "id": "Sehen", "operation": "add", "value": 2 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/unholy/silhouette-light-fire-blue.webp",
"system": {
"description": "<p>Hier Fertigkeit Tarnen einsetzen!</p>",
"description": "<p>ARK S. 108</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 4 } },
"mods": { "0": { "type": "skill", "id": "midgard5.tarnen", "operation": "add", "value": 4 } },
"calc": {}
},
"effects": [],
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/unholy/strike-body-explode-disintegrate.webp",
"system": {
"description": "<p>-2 auf gegn. EW: Angriff!</p>",
"description": "<p>ARK S. 157</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -0,0 +1,23 @@
{
"name": "Schlachtenwahnsinn für Gegner",
"type": "effect",
"img": "icons/magic/unholy/strike-body-explode-disintegrate.webp",
"system": {
"description": "<p>ARK S. 157</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
"flags": {},
"_stats": { "systemId": "midgard5", "systemVersion": "1.2.1", "coreVersion": "10.312", "createdTime": 1700349501457, "modifiedTime": 1700353901248, "lastModifiedBy": "cb3PEvEU0kHkMdjb" },
"_id": "UrP6Z1lLr0YAkriD",
"folder": null,
"sort": 0,
"ownership": { "default": 0, "cb3PEvEU0kHkMdjb": 3 }
}
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/equipment/feet/boots-pointed-cloth-green.webp",
"system": {
"description": "<p>Hier Fertigkeit Schleichen ausw&auml;hlen!</p>",
"description": "<p>MYS S. 49</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 8, "unit": "hour" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 6 } },
"mods": { "0": { "type": "skill", "id": "midgard5.schleichen", "operation": "add", "value": 6 } },
"calc": {}
},
"effects": [],
+9 -8
View File
@@ -3,20 +3,21 @@
"type": "effect",
"img": "icons/magic/unholy/strike-body-life-soul-purple.webp",
"system": {
"description": "<p>Arkanum Seite 109, 110</p>",
"description": "<p>ARK S. 109</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -4 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -4 },
"2": { "type": "stat", "id": "resistanceMind", "operation": "add", "value": -4 },
"3": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": -4 },
"4": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -4 },
"5": { "type": "stat", "id": "brawl", "operation": "add", "value": -4 },
"6": { "type": "stat", "id": "", "operation": "add", "value": -4 }
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 4 },
"1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 4 },
"2": { "type": "stat", "id": "resistanceMind", "operation": "subtract", "value": 4 },
"3": { "type": "stat", "id": "resistanceBody", "operation": "subtract", "value": 4 },
"4": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 4 },
"5": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 4 },
"6": { "type": "stat", "id": "", "operation": "subtract", "value": 4 }
},
"calc": {}
},
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/creatures/magical/humanoid-silhouette-glowing-pink.webp",
"system": {
"description": "",
"description": "<p>ARK S. 110</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "attribute", "id": "st", "operation": "add", "value": -20 } },
"mods": { "0": { "type": "attribute", "id": "st", "operation": "subtract", "value": 20 } },
"calc": {}
},
"effects": [],
+15 -14
View File
@@ -6,27 +6,28 @@
"description": "<p>Arkanum Seite 146, 147</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "attribute", "id": "st", "operation": "add", "value": -5 },
"0": { "type": "attribute", "id": "st", "operation": "subtract", "value": 5 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": 1 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 1 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "add", "value": 1 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": 0 },
"5": { "type": "stat", "id": "spellCasting", "operation": "add", "value": 0 },
"6": { "type": "stat", "id": "brawl", "operation": "add", "value": 0 },
"7": { "type": "stat", "id": "poisonResistance", "operation": "add", "value": -5 },
"8": { "type": "attribute", "id": "gw", "operation": "add", "value": -5 },
"9": { "type": "attribute", "id": "gw", "operation": "add", "value": -5 },
"10": { "type": "attribute", "id": "gs", "operation": "add", "value": -5 },
"11": { "type": "attribute", "id": "ko", "operation": "add", "value": -5 },
"12": { "type": "attribute", "id": "in", "operation": "add", "value": -5 },
"13": { "type": "attribute", "id": "zt", "operation": "add", "value": -5 },
"14": { "type": "attribute", "id": "au", "operation": "add", "value": -5 },
"15": { "type": "attribute", "id": "pa", "operation": "add", "value": -5 },
"16": { "type": "attribute", "id": "wk", "operation": "add", "value": -5 }
"4": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": 1 },
"5": { "type": "stat", "id": "spellCasting", "operation": "add", "value": 1 },
"6": { "type": "stat", "id": "brawl", "operation": "add", "value": 1 },
"7": { "type": "stat", "id": "poisonResistance", "operation": "subtract", "value": 5 },
"8": { "type": "attribute", "id": "gw", "operation": "subtract", "value": 5 },
"9": { "type": "attribute", "id": "gw", "operation": "subtract", "value": 5 },
"10": { "type": "attribute", "id": "gs", "operation": "subtract", "value": 5 },
"11": { "type": "attribute", "id": "ko", "operation": "subtract", "value": 5 },
"12": { "type": "attribute", "id": "in", "operation": "subtract", "value": 5 },
"13": { "type": "attribute", "id": "zt", "operation": "subtract", "value": 5 },
"14": { "type": "attribute", "id": "au", "operation": "subtract", "value": 5 },
"15": { "type": "attribute", "id": "pa", "operation": "subtract", "value": 5 },
"16": { "type": "attribute", "id": "wk", "operation": "subtract", "value": 5 }
},
"calc": {}
},
+9 -8
View File
@@ -3,20 +3,21 @@
"type": "effect",
"img": "icons/creatures/magical/construct-face-stone-pink.webp",
"system": {
"description": "<p>Malus gilt f&uuml;r alle EW!</p>",
"description": "<p><p>ARK S. 49</p></p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "skill", "id": "", "operation": "add", "value": -2 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -2 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "add", "value": -2 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "add", "value": -2 },
"5": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -2 },
"6": { "type": "stat", "id": "brawl", "operation": "add", "value": -2 }
"0": { "type": "skill", "id": "", "operation": "subtract", "value": 2 },
"1": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 },
"2": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 2 },
"3": { "type": "stat", "id": "resistanceMind", "operation": "subtract", "value": 2 },
"4": { "type": "stat", "id": "resistanceBody", "operation": "subtract", "value": 2 },
"5": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 2 },
"6": { "type": "stat", "id": "brawl", "operation": "subtract", "value": 2 }
},
"calc": {}
},
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/creatures/abilities/mouth-teeth-human.webp",
"system": {
"description": "<p>Gilt f&uuml;r Gesten- und Wortzauber!</p>",
"description": "<p><p>ARK S. 49</p></p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "spellCasting", "operation": "add", "value": -4 } },
"mods": { "0": { "type": "stat", "id": "spellCasting", "operation": "subtract", "value": 4 } },
"calc": {}
},
"effects": [],
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/control/buff-strength-muscle-damage-orange.webp",
"system": {
"description": "<p>Arkanum Seite 115</p>",
"description": "<p>ARK S. 115</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/unholy/hands-praying-fire-green.webp",
"system": {
"description": "<p>Arkanum Seite 147</p>",
"description": "<p>ARK S. 147</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "attribute", "id": "", "operation": "add", "value": -5 }, "1": { "type": "skill", "id": "", "operation": "add", "value": -1 } },
"mods": { "0": { "type": "attribute", "id": "", "operation": "subtract", "value": 5 }, "1": { "type": "skill", "id": "", "operation": "subtract", "value": 1 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/commodities/leather/boot-torn-tan.webp",
"system": {
"description": "",
"description": "<p>ARK S. 122</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 6, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "add", "value": null }, "1": { "type": "stat", "id": "movement", "operation": "fixed", "value": null } },
"mods": { "0": { "type": "stat", "id": "movement", "operation": "division", "value": 2 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/magic/unholy/hands-praying-fire-green.webp",
"system": {
"description": "<p>Arkanum Seite 147</p>",
"description": "<p>ARK S. 147</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 180, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "attribute", "id": "", "operation": "add", "value": -5 }, "1": { "type": "skill", "id": "", "operation": "add", "value": -1 } },
"mods": { "0": { "type": "attribute", "id": "", "operation": "subtract", "value": 5 }, "1": { "type": "skill", "id": "", "operation": "subtract", "value": 1 } },
"calc": {}
},
"effects": [],
+3 -5
View File
@@ -3,17 +3,15 @@
"type": "effect",
"img": "icons/weapons/swords/sword-runed-glowing.webp",
"system": {
"description": "<p>je nach eingesetzten AP Bonus erh&ouml;hen</p>",
"description": "<p>ARK S. 148</p></p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 1 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 0 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 0 }
},
"0": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 1 } },
"calc": {}
},
"effects": [],
+3 -2
View File
@@ -3,14 +3,15 @@
"type": "effect",
"img": "icons/magic/unholy/hand-weapon-glow-black-green.webp",
"system": {
"description": "<p>Arkanum Seite 148</p>",
"description": "<p>ARK S. 148</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 12, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 },
"0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 2 },
"2": { "type": "stat", "id": "damageBonus", "operation": "add", "value": 1 }
},
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/equipment/feet/shoes-simple-leaf-green.webp",
"system": {
"description": "<p>Hier Fertigkeit Schleichen einsetzen!</p>",
"description": "<p><p>ARK S. 160</p></p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 8 } },
"mods": { "0": { "type": "skill", "id": "midgard5.schleichen", "operation": "add", "value": 8 } },
"calc": {}
},
"effects": [],
+3 -2
View File
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/environment/wilderness/cave-entrance-island.webp",
"system": {
"description": "",
"description": "<p>ARK S. 127</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 8, "unit": "hour" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "add", "value": -2 }, "1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": -2 } },
"mods": { "0": { "type": "stat", "id": "defenseBonus", "operation": "subtract", "value": 2 }, "1": { "type": "stat", "id": "attackBonus", "operation": "subtract", "value": 2 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/environment/wilderness/tree-spruce.webp",
"system": {
"description": "<p>Hier Fertigkeit Tarnen einsetzen!</p>",
"description": "<p>ARK S. 161</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 180, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 12 } },
"mods": { "0": { "type": "skill", "id": "midgard5.tarnen", "operation": "add", "value": 12 } },
"calc": {}
},
"effects": [],
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/magic/control/debuff-energy-hold-levitate-teal-blue.webp",
"system": {
"description": "<p>Arkanum Seite 72</p>",
"description": "<p>ARK S. 72</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": true,
"rolls": { "formulas": {}, "output": "" },
@@ -3,17 +3,15 @@
"type": "effect",
"img": "icons/weapons/swords/sword-runed-glowing.webp",
"system": {
"description": "<p>je nach eingesetzten AP Bonus erh&ouml;hen</p>",
"description": "<p>ARK S. 132</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": {
"0": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 1 },
"1": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 0 },
"2": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 0 }
},
"0": { "type": "stat", "id": "attackBonus", "operation": "add", "value": 1 } },
"calc": {}
},
"effects": [],
@@ -3,13 +3,14 @@
"type": "effect",
"img": "icons/skills/movement/figure-running-gray.webp",
"system": {
"description": "<p>Hier Fertigkeit Gel&auml;ndelauf ausw&auml;hlen!</p>",
"description": "<p>ARK S. 161</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 1, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
"mods": { "0": { "type": "skill", "id": "", "operation": "add", "value": 8 } },
"mods": { "0": { "type": "skill", "id": "midgard5.gelaendelauf", "operation": "add", "value": 8 } },
"calc": {}
},
"effects": [],
+2 -1
View File
@@ -3,9 +3,10 @@
"type": "effect",
"img": "icons/skills/targeting/crosshair-pointed-orange.webp",
"system": {
"description": "",
"description": "<p>ARK S. 133</p>",
"equippable": false,
"equipped": true,
"duration": { "time": 60, "unit": "round" },
"value": 0,
"magic": false,
"rolls": { "formulas": {}, "output": "" },
@@ -131,7 +131,7 @@
"_id": "QICP7DgbyTmp1Nns",
"flags": {},
"type": 0,
"text": "<h3><b>*</b>Der Zauberer verzaubert sich selbst.</h3>Bei einem Geistes- oder Körperzauber trifft die volle Wirkung der Magie den Zauberer selbst, wenn ihm ein WW:Resistenz misslingt. Schützende Zauber funktionieren also gegebenenfalls ganz normal (Glück im Unglück). Kontrollzauber wie Macht über Menschen führen zur vorübergehenden Handlungsunfähigkeit des Zauberers; sein Geist versucht, die Kontrolle über sich selbst zu übernehmen, so dass er völlig mit sich selbst beschäftigt ist, bis ihm ein alle 2 min erlaubter EW:Resistenz gelingt. Sprü- che, die wie Macht über die belebte Natur nur auf Tiere wirken, haben keinen Effekt. Bei Umgebungszaubern tritt stattdessen der unter 91-95 beschriebene Effekt ein.",
"text": "<h3><b>*</b>Der Zauberer verzaubert sich selbst.</h3>Bei einem Geistes- oder Körperzauber trifft die volle Wirkung der Magie den Zauberer selbst, wenn ihm ein WW:Resistenz misslingt. Schützende Zauber funktionieren also gegebenenfalls ganz normal (Glück im Unglück). Kontrollzauber wie Macht über Menschen führen zur vorübergehenden Handlungsunfähigkeit des Zauberers; sein Geist versucht, die Kontrolle über sich selbst zu übernehmen, so dass er völlig mit sich selbst beschäftigt ist, bis ihm ein alle 2 min erlaubter EW:Resistenz gelingt. Sprüche, die wie Macht über die belebte Natur nur auf Tiere wirken, haben keinen Effekt. Bei Umgebungszaubern tritt stattdessen der unter 91-95 beschriebene Effekt ein.",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 4,
@@ -47,7 +47,7 @@
"_id": "g1zQk3AHDdlq3sqH",
"flags": {},
"type": 0,
"text": "<h3>Rumpftreffer mit Rippenbrüchen</h3>[[1d3]] Rippen des Opfers brechen.",
"text": "<h3>Rumpftreffer mit Rippenbrüchen</h3>[[1d3]] Rippen des Opfers brechen.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcY16]{Rippen}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 10,
@@ -61,7 +61,7 @@
"_id": "XdF7xn83ChS4Qrzf",
"flags": {},
"type": 0,
"text": "<h3>Rumpftreffer mit Gefahr innerer Verletzungen</h3>Das Opfer verliert zusätzlich zum normalen Schaden [[1d6]] LP und AP.<br /><b>*</b>: Schwere innere Verletzungen",
"text": "<h3>Rumpftreffer mit Gefahr innerer Verletzungen</h3>Das Opfer verliert zusätzlich zum normalen Schaden [[1d6]] LP und AP.<br /><b>*</b>: Schwere innere Verletzungen@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcY13]{Innere Verletzungen}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 5,
@@ -89,7 +89,7 @@
"_id": "W7yzr5lC0z5NDt77",
"flags": {},
"type": 0,
"text": "<h3>schwere Verletzung am rechten Arm <b>+</b></h3><b>*</b>: Mit 20% wird der Arm abgetrennt (bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Mit Armschutz führt auch der Treffer mit einer scharfen Waffe nicht zum Abtrennen, sondern nur zur Verkrüppelung des Armes. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.",
"text": "<h3>schwere Verletzung am rechten Arm <b>+</b></h3><b>*</b>: Mit 20% wird der Arm abgetrennt (bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Mit Armschutz führt auch der Treffer mit einer scharfen Waffe nicht zum Abtrennen, sondern nur zur Verkrüppelung des Armes. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcYz8]{Arm}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 7,
@@ -103,7 +103,7 @@
"_id": "1dFkXxy7VhtSbahw",
"flags": {},
"type": 0,
"text": "<h3>schwere Verletzung am linken Arm <b>+</b></h3><b>*</b>: Mit 20% wird der Arm abgetrennt (bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Mit Armschutz führt auch der Treffer mit einer scharfen Waffe nicht zum Abtrennen, sondern nur zur Verkrüppelung des Armes. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.",
"text": "<h3>schwere Verletzung am linken Arm <b>+</b></h3><b>*</b>: Mit 20% wird der Arm abgetrennt (bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Mit Armschutz führt auch der Treffer mit einer scharfen Waffe nicht zum Abtrennen, sondern nur zur Verkrüppelung des Armes. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcYz8]{Arm}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 8,
@@ -117,7 +117,7 @@
"_id": "CiAwKT1ZhOGKplBr",
"flags": {},
"type": 0,
"text": "<h3>schwere Verletzung am rechten Bein <b>+</b></h3><b>*</b>: Mit 20% wird das Bein abgetrennt (ohne Beinschutz bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.",
"text": "<h3>schwere Verletzung am rechten Bein <b>+</b></h3><b>*</b>: Mit 20% wird das Bein abgetrennt (ohne Beinschutz bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcYz9]{Bein}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 9,
@@ -131,7 +131,7 @@
"_id": "PZa6plWsSiQFmu5c",
"flags": {},
"type": 0,
"text": "<h3>schwere Verletzung am linken Bein <b>+</b></h3><b>*</b>: Mit 20% wird das Bein abgetrennt (ohne Beinschutz bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.",
"text": "<h3>schwere Verletzung am linken Bein <b>+</b></h3><b>*</b>: Mit 20% wird das Bein abgetrennt (ohne Beinschutz bei einer Waffe mit Schneide) oder dauerhaft verkrüppelt. Treffer mit Stich-, Wurf- oder Schusswaffen haben keine derart schwerwiegenden Auswirkungen.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcYz9]{Bein}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 9,
@@ -173,7 +173,7 @@
"_id": "GaZZENfKk81MI1IK",
"flags": {},
"type": 0,
"text": "<h3>Kopftreffer mit Hörschaden <b>&lt;++&gt;</b></h3>Helmlose Opfer verlieren zusätzlich zum normalen Schaden [[1d3]] LP und AP. Zusätzlich schwere Verletzung am Ohr. Helmträger sind vor dieser Art von Schaden sicher.",
"text": "<h3>Kopftreffer mit Hörschaden <b>&lt;++&gt;</b></h3>Helmlose Opfer verlieren zusätzlich zum normalen Schaden [[1d3]] LP und AP. Zusätzlich schwere Verletzung am Ohr. Helmträger sind vor dieser Art von Schaden sicher.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcY15]{Ohr}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 4,
@@ -187,7 +187,7 @@
"_id": "OsfxiUi4dg0RM9XV",
"flags": {},
"type": 0,
"text": "<h3>Augenverletzung</h3>Der Träger eines Helms mit Visier ist vor dieser Art von Schaden sicher.",
"text": "<h3>Augenverletzung</h3>Der Träger eines Helms mit Visier ist vor dieser Art von Schaden sicher.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcY14]{Auge}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 4,
@@ -201,7 +201,7 @@
"_id": "TGtUlGPANVjZLgZH",
"flags": {},
"type": 0,
"text": "<h3>Halstreffer</h3><b>*</b>: Eine spitze oder scharfe Waffe verletzt die Halsschlagader. Eine stumpfe Waffe verursacht eine schwere Halswirbelverletzung.",
"text": "<h3>Halstreffer</h3><b>*</b>: Eine spitze oder scharfe Waffe verletzt die Halsschlagader. Eine stumpfe Waffe verursacht eine schwere Halswirbelverletzung.@UUID[Compendium.midgard5.kampfzustaende.Item.PJ0tqjZXQ5opcYz5]{Blutend}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 3,
@@ -229,7 +229,7 @@
"_id": "8g1FJIsxKFVWvyxe",
"flags": {},
"type": 0,
"text": "<h3>Augenverlust</h3>Bei einem Treffer mit einer scharfen oder spitzen Waffe oder einer Schusswaffe verliert das Opfer ein Auge. Der Träger eines Helms mit Visier ist vor dieser Art von Schaden sicher.",
"text": "<h3>Augenverlust</h3>Bei einem Treffer mit einer scharfen oder spitzen Waffe oder einer Schusswaffe verliert das Opfer ein Auge. Der Träger eines Helms mit Visier ist vor dieser Art von Schaden sicher.@UUID[Compendium.midgard5.verletzungen.Item.PJ0tqjZXQ5opcY14]{Auge}",
"img": "icons/svg/d20-black.svg",
"resultId": "",
"weight": 2,
+71 -8
View File
@@ -2,7 +2,7 @@ import Logger from "./utils/Logger";
import M5CharacterSheet from "./module/sheets/M5CharacterSheet";
import preloadTemplates from "./PreloadTemplates";
import { M5Character } from "./module/actors/M5Character";
import { M5Skill } from "./module/M5Base";
import { M5ItemMod, M5ModOperation, M5Skill, M5TimeUnit } from "./module/M5Base";
import { M5ItemSheet } from "./module/sheets/M5ItemSheet";
import { M5Item } from "./module/items/M5Item";
@@ -58,10 +58,10 @@ Hooks.once("init", async () => {
return `${obj}`;
});
Handlebars.registerHelper("actorItemValue", (actorId: any, itemId: string, path: string) => {
Handlebars.registerHelper("actorItemValue", (actorId: any, itemId: string, path: string, token?: boolean) => {
//console.log("actorItemValue", actorId, itemId, path)
const actor = (game as Game).actors.get(actorId);
let obj = actor.items.get(itemId).system;
let obj = actor.items.get(itemId)?.system;
path.split(".").forEach((p) => {
if (obj) obj = obj[p];
});
@@ -116,7 +116,6 @@ Hooks.on("getChatLogEntryContext", function (html, options) {
condition: (li) => {
// Only show this context menu if there are re-rollable dice in the message
const damageRolls = li.find(".apply-damage").length;
console.log(game["user"].isGm);
// All must be true to show the reroll dialogue
// The button doesn't work for the GM right now, so we don't need to show it
@@ -166,6 +165,70 @@ Hooks.on("getChatLogEntryContext", function (html, options) {
);
});
Hooks.on("updateCombat", function (combat: Combat, updateData: { round: number; turn: number }, updateOptions: { advanceTime: number; direction: number }) {
if (combat.round % 2 === 0 && combat.turn !== null) {
const tokenId = combat.current.tokenId;
const actorId = combat.combatant["actorId"];
let currentToken = game["actors"].tokens[tokenId];
if (!currentToken) {
currentToken = game["actors"].get(actorId);
}
let activeEffects = currentToken.items.filter((x) => x.type === "effect" && x.system.equipped) || [];
activeEffects.forEach((effect) => {
if (effect.system?.duration?.time > 0) {
if (effect.system.duration.unit === M5TimeUnit.ROUND) {
effect.system.duration.time -= 1;
}
}
if (effect.system?.duration.time === 0 && effect.system.duration.unit !== M5TimeUnit.LIMITLESS) {
effect.system.equipped = false;
}
for (const key in effect.system.mods) {
if (effect.system.mods[key].operation === M5ModOperation.SUBTRACT) {
switch (effect.system.mods[key].id) {
case "lp":
currentToken["system"].lp.value -= effect.system.mods[key].value;
break;
case "ap":
currentToken["system"].ap.value -= effect.system.mods[key].value;
break;
}
} else if (effect.system.mods[key].operation === M5ModOperation.ADD) {
switch (effect.system.mods[key].id) {
case "lp":
currentToken["system"].lp.value += limitHeal(effect.system.mods[key].value, currentToken["system"].lp.value, currentToken["system"].lp.max);
break;
case "ap":
currentToken["system"].ap.value += limitHeal(effect.system.mods[key].value, currentToken["system"].ap.value, currentToken["system"].ap.max);
break;
}
}
}
});
currentToken.render();
}
});
function limitHeal(heal: number, current: number, max: number): number {
if (current === max) {
return 0;
} else if (heal + current > max) {
return max - current;
}
return heal;
}
Hooks.on("renderCombatTracker", (combatTracker, html, context) => {
if (context.combat === null) {
html.find("h3.encounter-title")[0].innerHTML = game["i18n"].localize("midgard5.no-encounter");
} else if (Math.ceil(context.round / 2) === 0) {
html.find("h3.encounter-title")[0].innerHTML = game["i18n"].localize("midgard5.encounter-not-started");
} else {
html.find("h3.encounter-title")[0].innerHTML =
(context.round % 2 == 1 ? game["i18n"].localize("midgard5.phase-movement") : game["i18n"].localize("midgard5.phase-action")) + " " + Math.ceil(context.round / 2);
}
});
Hooks.once("ready", () => {
Logger.ok("Template module is now ready.");
});
@@ -187,9 +250,9 @@ async function applyDamage(roll, direction) {
token["system"].ap.value -= Math.max(0, damageValue - token["system"].calc.stats.apProtection.value);
break;
case -1:
token["system"].lp.value += Math.min(damageValue, token["system"].lp.max - damageValue);
token["system"].lp.value += limitHeal(damageValue, token["system"].lp.value, token["system"].lp.max);
case -2:
token["system"].ap.value += Math.min(damageValue, token["system"].ap.max - damageValue);
token["system"].ap.value += limitHeal(damageValue, token["system"].ap.value, token["system"].ap.max);
}
token.render();
} else {
@@ -200,9 +263,9 @@ async function applyDamage(roll, direction) {
actor["system"].ap.value -= Math.max(0, damageValue - actor["system"].calc.stats.apProtection.value);
break;
case -1:
actor["system"].lp.value += Math.min(damageValue, actor["system"].lp.max - damageValue);
actor["system"].lp.value += limitHeal(damageValue, token["system"].lp.value, token["system"].lp.max);
case -2:
actor["system"].ap.value += Math.min(damageValue, actor["system"].ap.max - damageValue);
actor["system"].ap.value += limitHeal(damageValue, token["system"].ap.value, token["system"].ap.max);
}
actor.render();
}
+15 -1
View File
@@ -84,6 +84,8 @@ export enum M5Stats {
AP = "ap",
PROTECTION_LP = "lpProtection",
PROTECTION_AP = "apProtection",
PERCEPTION = "perception",
DRINKING = "drinking",
}
export enum M5ModType {
@@ -94,6 +96,7 @@ export enum M5ModType {
export enum M5ModOperation {
ADD_100 = "add100",
ROLL = "roll",
ADD = "add",
SET = "set",
FIXED = "fixed",
@@ -102,6 +105,13 @@ export enum M5ModOperation {
DIVISION = "division",
}
export enum M5TimeUnit {
ROUND = "round",
MINUTE = "minute",
HOUR = "hour",
LIMITLESS = "limitless",
}
export interface M5ItemMod {
type: M5ModType;
id: string;
@@ -156,9 +166,13 @@ export interface M5CharacterCalculatedData {
resistanceBody: M5ModResult;
spellCasting: M5ModResult;
brawl: M5ModResult;
brawlEw: number;
brawlFw: number;
poisonResistance: M5ModResult;
enduranceBonus: number;
perception: M5ModResult;
perceptionFW: number;
drinking: M5ModResult;
drinkingFW: number;
};
skillMods: {};
skills: {
+24 -3
View File
@@ -64,9 +64,13 @@ export class M5Character extends Actor {
resistanceBody: { value: 0, mods: [] },
spellCasting: { value: 0, mods: [] },
brawl: { value: 0, mods: [] },
brawlEw: 0,
brawlFw: 0,
poisonResistance: { value: 0, mods: [] },
enduranceBonus: 0,
perception: { value: 0, mods: [] },
perceptionFW: 0,
drinking: { value: 0, mods: [] },
drinkingFW: 0,
},
skillMods: {},
skills: {
@@ -132,9 +136,13 @@ export class M5Character extends Actor {
);
ret.stats.spellCasting = this.modResult((data.info.magicUsing ? M5Character.spellCastingFromLevel(ret.level) : 3) + ret.attributes.zt.bonus);
ret.stats.brawl = this.modResult(Math.floor((ret.attributes.st.value + ret.attributes.gw.value) / 20));
ret.stats.brawlEw = ret.stats.brawl.value + ret.stats.attackBonus.value + (data.info.race === "Zwerg" ? 1 : 0);
ret.stats.brawlFw = ret.stats.brawl.value + ret.stats.attackBonus.value + (data.info.race === "Zwerg" ? 1 : 0);
ret.stats.poisonResistance = this.modResult(30 + Math.floor(ret.attributes.ko.value / 2));
ret.stats.enduranceBonus = Math.floor(ret.attributes.ko.value / 10) + Math.floor(ret.attributes.st.value / 20);
ret.stats.perception = this.modResult(0);
ret.stats.perceptionFW = 6;
ret.stats.drinking = this.modResult(0);
ret.stats.drinkingFW = Math.floor(ret.attributes.ko.value / 10);
if (!skip?.mods) {
const aggregate = new M5ModAggregate(data, ret);
@@ -163,12 +171,24 @@ export class M5Character extends Actor {
if (item.system.magic) {
label += "*";
}
let rollable = false;
// console.log(item.system.rolls.formulas.map((p) => p.enabled));
for (let key in item.system.rolls.formulas) {
rollable = item.system.rolls.formulas[key].enabled;
if (rollable) {
break;
}
}
ret.gear.items[item.id] = {
label: label,
magic: item.system.magic,
calc: item.system.calc,
equipped: item.system?.equipped,
value: item.system.value || 0,
currency: item.system.currency || "",
quantity: item.system.quantity || 0,
rollExist: rollable,
};
});
}
@@ -188,7 +208,8 @@ export class M5Character extends Actor {
label: label,
magic: item.system.magic,
calc: item.system.calc,
equipped: item.system?.equipped,
equipped: item.system?.equipped || false,
duration: item.system?.duration || { time: 0, unit: "" },
};
});
}
+2
View File
@@ -41,6 +41,8 @@ export default class M5ModAggregate {
this.push({ type: M5ModType.STAT, id: M5Stats.AP, operation: M5ModOperation.SET, value: calc.stats.ap.value }, characterString);
this.push({ type: M5ModType.STAT, id: M5Stats.PROTECTION_LP, operation: M5ModOperation.SET, value: calc.stats.lpProtection.value }, characterString);
this.push({ type: M5ModType.STAT, id: M5Stats.PROTECTION_AP, operation: M5ModOperation.SET, value: calc.stats.apProtection.value }, characterString);
this.push({ type: M5ModType.STAT, id: M5Stats.PERCEPTION, operation: M5ModOperation.SET, value: calc.stats.perception.value }, characterString);
this.push({ type: M5ModType.STAT, id: M5Stats.DRINKING, operation: M5ModOperation.SET, value: calc.stats.drinking.value }, characterString);
}
push(mod: M5ItemMod, source: string) {
+5 -1
View File
@@ -145,6 +145,11 @@ export class M5Item extends Item {
}
if (itemData?.mods) {
calc.mods = {};
for (let modKey in itemData.mods) {
if (itemData.mods[modKey].type === M5ModType.SKILL && itemData.mods[modKey].id?.includes("midgard5")) {
itemData.mods[modKey].id = actor?.items.find((x) => x.name === game["i18n"].localize(itemData.mods[modKey].id))?.id;
}
}
Object.keys(itemData?.mods).forEach((key) => {
const mod = itemData.mods[key];
@@ -253,7 +258,6 @@ export class M5Item extends Item {
}
const roll = new M5Roll(rollData, this.actor, item.name);
console.log(roll);
return roll.toMessage();
} else {
ChatMessage.create({
+47 -23
View File
@@ -1,6 +1,7 @@
import { Evaluated } from "@league-of-foundry-developers/foundry-vtt-types/src/foundry/client/dice/roll";
import { M5Character } from "../actors/M5Character";
import { M5EwResult, M5RollData, M5RollResult, M5SkillUnlearned } from "../M5Base";
import { M5EwResult, M5ModOperation, M5ModType, M5RollData, M5RollResult, M5SkillUnlearned, M5Stats } from "../M5Base";
import { stat } from "fs";
export class M5Roll {
// extends Roll<M5RollData>
@@ -114,31 +115,20 @@ export class M5Roll {
return ChatMessage.create(chatData);
}
static fromAttribute(actor: any, attributeKey: string) {
const character = actor as M5Character;
const attribute = character.attribute(attributeKey);
const rollData = actor.getRollData() as M5RollData;
rollData.i = attribute.value + attribute.bonus;
rollData.rolls["0"] = {
formula: "@i - 1d100",
enabled: true,
label: (game as Game).i18n.localize("midgard5.pw"),
result: "",
total: 0,
totalStr: "",
dice: {},
css: "",
} as M5RollResult;
return new M5Roll(rollData, actor, (game as Game).i18n.localize(`midgard5.actor-${attributeKey}-long`));
}
static fromAttributeValue(actor: any, attributeKey: string, attributeValue: number) {
const rollData = actor.getRollData() as M5RollData;
const itemData = actor.items.filter((x) => x.type === "effect").map((y) => y.system.mods);
rollData.c = 0;
for (let effectKey in itemData) {
for (let modkey in itemData[effectKey])
if (itemData[effectKey][modkey].type === M5ModType.ATTRIBUTE && itemData[effectKey][modkey].operation === M5ModOperation.ROLL) {
rollData.c += itemData[effectKey][modkey].value;
}
}
rollData.i = attributeValue;
rollData.rolls["0"] = {
formula: "@i - 1d100",
formula: "@i - 1d100 - @c",
enabled: true,
label: (game as Game).i18n.localize("midgard5.pw"),
result: "",
@@ -181,7 +171,7 @@ export class M5Roll {
};
rollData.rolls["0"] = {
formula: "1d20 + @c.calc.stats.brawlEw",
formula: "1d20 + @c.calc.stats.brawlFw",
enabled: true,
label: (game as Game).i18n.localize("midgard5.attack"),
result: "",
@@ -205,6 +195,40 @@ export class M5Roll {
return new M5Roll(rollData, actor, (game as Game).i18n.localize("midgard5.brawl"));
}
static perception(actor: any) {
const rollData = actor.getRollData() as M5RollData;
rollData.rolls["0"] = {
formula: "1d20 + @c.calc.stats.perception.value + @c.calc.stats.perceptionFW",
enabled: true,
label: (game as Game).i18n.localize("midgard5.perception"),
result: "",
total: 0,
totalStr: "",
dice: {},
css: "",
} as M5RollResult;
return new M5Roll(rollData, actor, (game as Game).i18n.localize("midgard5.perception"));
}
static drinking(actor: any) {
const rollData = actor.getRollData() as M5RollData;
rollData.rolls["0"] = {
formula: "1d20 + @c.calc.stats.drinking.value + @c.calc.stats.drinkingFW",
enabled: true,
label: (game as Game).i18n.localize("midgard5.drinking"),
result: "",
total: 0,
totalStr: "",
dice: {},
css: "",
} as M5RollResult;
return new M5Roll(rollData, actor, (game as Game).i18n.localize("midgard5.drinking"));
}
static defense(actor: any) {
const rollData = actor.getRollData() as M5RollData;
rollData.i = {
+64
View File
@@ -97,6 +97,60 @@ export default class M5CharacterSheet extends ActorSheet {
item.sheet.render(true);
});
html.find(".quantity-increase").on("click", async (event) => {
let row = event.target.parentElement;
let itemId = row.dataset["item"];
while (!itemId) {
row = row.parentElement;
if (!row) return;
itemId = row.dataset["item"];
}
const context = this.actor as any;
const item = context.items.get(itemId);
if (!item.system.quantity) {
item.system.quantity = 0;
}
item.system.quantity += 1;
this.render();
});
html.find(".quantity-decrease").on("click", async (event) => {
let row = event.target.parentElement;
let itemId = row.dataset["item"];
while (!itemId) {
row = row.parentElement;
if (!row) return;
itemId = row.dataset["item"];
}
const context = this.actor as any;
const item = context.items.get(itemId);
if (item.system.quantity > 0) {
item.system.quantity -= 1;
}
this.render();
});
html.find(".roll-consumable-item").on("click", async (event) => {
let row = event.target.parentElement;
let itemId = row.dataset["item"];
while (!itemId) {
row = row.parentElement;
if (!row) return;
itemId = row.dataset["item"];
}
const context = this.actor as any;
const item = context.items.get(itemId);
if (item.system.quantity > 0) {
item.system.quantity -= 1;
}
await item.roll();
this.render();
});
html.find(".item-delete").on("click", async (event) => {
let row = event.target.parentElement;
let itemId = row.dataset["item"];
@@ -168,6 +222,16 @@ export default class M5CharacterSheet extends ActorSheet {
await roll.toMessage();
});
html.find(".roll-perception-button").on("click", async (event) => {
const roll = M5Roll.perception(this.actor);
await roll.toMessage();
});
html.find(".roll-drinking-button").on("click", async (event) => {
const roll = M5Roll.drinking(this.actor);
await roll.toMessage();
});
html.find(".roll-defense-button").on("click", async (event) => {
const roll = M5Roll.defense(this.actor);
await roll.toMessage();
+11 -3
View File
@@ -3,7 +3,7 @@
"name": "midgard5",
"title": "Midgard 5. Edition",
"description": "The German RPG Midgard 5. Edition",
"version": "2.2.0",
"version": "2.3.1",
"compatibility": {
"minimum": "10",
"verified": "11",
@@ -69,6 +69,13 @@
"path": "./packs/items/kampfzustaende.db",
"type": "Item"
},
{
"name": "verletzungen",
"label": "Verletzungen",
"system": "midgard5",
"path": "./packs/items/verletzungen.db",
"type": "Item"
},
{
"name": "ruestkammer",
"label": "Rüstkammer",
@@ -119,6 +126,7 @@
"color": "#800080",
"packs": [
"kampfzustaende",
"verletzungen",
"zauberwirkungen"
]
},
@@ -146,8 +154,8 @@
"primaryTokenAttribute": "lp",
"secondaryTokenAttribute": "ap",
"url": "https://github.com/Byroks/foundry-vtt-system-midgard5",
"manifest": "https://github.com/Byroks/foundry-vtt-system-midgard5/releases/download/v2.2.0/system.json",
"download": "https://github.com/Byroks/foundry-vtt-system-midgard5/releases/download/v2.2.0/midgard5-v2.2.0.zip",
"manifest": "https://github.com/Byroks/foundry-vtt-system-midgard5/releases/download/v2.3.1/system.json",
"download": "https://github.com/Byroks/foundry-vtt-system-midgard5/releases/download/v2.3.1/midgard5-v2.3.1.zip",
"initiative": "@c.calc.attributes.gw.value",
"license": "LICENSE.txt"
}
+14 -3
View File
@@ -16,7 +16,10 @@
"caste": "",
"occupation": "",
"origin": "",
"faith": ""
"faith": "",
"gold": 0,
"silver": 0,
"copper": 0
}
},
"characterBars": {
@@ -36,7 +39,7 @@
"ep": 0,
"gg": 0,
"sg": 0,
"gp": 2
"gp": 0
},
"attributes": {
"attributes": {
@@ -201,6 +204,14 @@
"value": 0,
"magic": false
},
"durationSelection": {
"durationSelection": {
"round": "midgard5.time-round",
"minute": "midgard5.time-minute",
"hour": "midgard5.time-hour",
"limitless": "midgard5.time-limitless"
}
},
"spellSelection": {
"spellProcessSelection": {
"none": "midgard5.spell-process-none",
@@ -295,7 +306,7 @@
"calc": {}
},
"effect": {
"templates": ["itemDescription", "equippable", "physical"],
"templates": ["itemDescription", "equippable", "physical", "durationSelection"],
"rolls": {
"formulas": {},
"output": ""
+3
View File
@@ -12,6 +12,9 @@
<span class="edit-item">{{item.label}}</span>
{{#if item.equipped}}
<span class="spell-process">{{localize "midgard5.active"}}</span>
{{#unless (or (eq item.duration.unit "") (eq item.duration.unit "limitless"))}}
<span class="spell-process">{{item.duration.time}} {{localize (concat "midgard5.time-" item.duration.unit)}}</span>
{{/unless}}
{{/if}}
</td>
<td class="fixed-value"><a class="item-delete" title="Delete Item"><i class="fas fa-trash"></i></a></td>
+35 -3
View File
@@ -1,3 +1,20 @@
<table>
<thead>
<tr>
<th class="title" style="text-align: center">{{localize "midgard5.currency-gold"}}</th>
<th class="title" style="text-align: center">{{localize "midgard5.currency-silver"}}</th>
<th class="title" style="text-align: center">{{localize "midgard5.currency-copper"}}</th>
</tr>
</thead>
<tbody>
<tr>
<td class="fixed-value"><input type="number" name="data.info.gold" value="{{data.info.gold}}"></td>
<td class="fixed-value"><input type="number" name="data.info.silver" value="{{data.info.silver}}"></td>
<td class="fixed-value"><input type="number" name="data.info.copper" value="{{data.info.copper}}"></td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
@@ -19,7 +36,7 @@
<tr data-item="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.brawl"}}</td>
<td class="center">{{data.calc.stats.brawlEw}}</td>
<td class="center">{{data.calc.stats.brawlFw}}</td>
<td class="fixed-value"><button class="roll-button roll-brawl-button"></button></td>
<td class="fixed-value"></td>
</tr>
@@ -29,7 +46,7 @@
<table>
<thead>
<tr>
<th class="title">{{localize "ITEM.TypeDefensiveWeapon"}}</th>
<th class="title">{{localize "TYPES.Item.defensiveWeapon"}}</th>
<th class="title">{{localize "midgard5.ew"}}</th>
<th class="title"></th>
<th class="title"></th>
@@ -90,7 +107,7 @@
<span class="spell-process">{{localize "midgard5.equipped"}}</span>
{{/if}}
</td>
<td class="fixed-value">{{actorItemValue ../actor._id itemId "lpProtection"}}</td>
<td class="fixed-value">{{actorItemValue ../actor._id itemId "lpProtection" ../actor.isToken}}</td>
<td class="fixed-value">{{actorItemValue ../actor._id itemId "apProtection"}}</td>
<td class="fixed-value">{{actorItemValue ../actor._id itemId "stats.attackBonus"}}</td>
<td class="fixed-value">{{actorItemValue ../actor._id itemId "stats.defenseBonus"}}</td>
@@ -106,10 +123,14 @@
<thead>
<tr>
<th class="title">{{localize "TYPES.Item.item"}}</th>
<th class="title center">{{localize "midgard5.item-quantity"}}</th>
<th class="title center">{{localize "midgard5.item-value"}}</th>
<th class="title"></th>
<th class="title"></th>
</tr>
</thead>
<tbody>
</tr>
{{#each data.calc.gear.items as |item itemId|}}
<tr data-item="{{itemId}}">
<td class="padding">
@@ -118,6 +139,17 @@
<span class="spell-process">{{localize "midgard5.equipped"}}</span>
{{/if}}
</td>
<td>
<i class="fa fa-minus-circle quantity-decrease" style="cursor: pointer"></i>
<span>{{item.quantity}}</span>
<i class="fa fa-plus-circle quantity-increase" style="cursor: pointer"></i>
</td>
<td style="text-align: start">
{{#unless (or (eq item.value 0) (eq item.currency ""))}}
<span class="spell-process">{{item.value}} {{localize (m5concat "midgard5.currency-" item.currency)}}</span>
{{/unless}}
</td>
<td class="fixed-value">{{#if item.rollExist}}<button class="roll-button roll-consumable-item"></button>{{/if}}</td>
<td class="fixed-value"><a class="item-delete" title="Delete Item"><i class="fas fa-trash"></i></a></td>
</tr>
{{/each}}
+1 -1
View File
@@ -1,7 +1,7 @@
<table>
<thead>
<tr>
<th class="title">{{localize "ITEM.type.kampfkunst"}}</th>
<th class="title">{{localize "TYPES.Item.kampfkunst"}}</th>
<th class="title">{{localize "midgard5.ew"}}</th>
<th class="title"></th>
<th class="title"></th>
+1 -1
View File
@@ -73,8 +73,8 @@
<tr>
<td class="attribute">{{localize "midgard5.actor-st"}}</td>
<td class="attribute">{{localize "midgard5.actor-gs"}}</td>
<td class="attribute">{{localize "midgard5.actor-ko"}}</td>
<td class="attribute">{{localize "midgard5.actor-gw"}}</td>
<td class="attribute">{{localize "midgard5.actor-ko"}}</td>
<td class="attribute">{{localize "midgard5.actor-in"}}</td>
<td class="attribute">{{localize "midgard5.actor-zt"}}</td>
<td class="attribute">{{localize "midgard5.actor-au"}}</td>
+17
View File
@@ -74,6 +74,23 @@
<td class="fixed-value"><a class="item-delete" title="Delete Item"><i class="fas fa-trash"></i></a></td>
</tr>
{{/each}}
<tr data-item="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.perception"}}</td>
<td class="fixed-value">{{data.calc.stats.perceptionFW}}</td>
<td class="fixed-value">{{data.calc.stats.perception.value}}</td>
<td class="fixed-value">{{add data.calc.stats.perception.value data.calc.stats.perceptionFW}}</td>
<td class="fixed-value"><button class="roll-button roll-perception-button"></button></td>
<td class="fixed-value"></td>
</tr>
<tr data-item="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.drinking"}}</td>
<td class="fixed-value">{{data.calc.stats.drinkingFW}}</td>
<td class="fixed-value">{{data.calc.stats.drinking.value}}</td>
<td class="fixed-value">{{add data.calc.stats.drinking.value data.calc.stats.drinkingFW}}</td>
<td class="fixed-value"><button class="roll-button roll-drinking-button"></button></td>
<td class="fixed-value"></td>
</tr>
</tbody>
</table>
+11 -2
View File
@@ -22,8 +22,17 @@
<tr>
<td>
<div class="flexrow">
<span>{{localize "midgard5.item-value"}}</span>
<input name="data.value" type="text" value="{{data.value}}" data-dtype="Number" />
<span>{{localize "midgard5.time-duration"}}</span>
<input name="data.duration.time" type="text" value="{{data.duration.time}}" data-dtype="Number" />
<select class="select-mod-operation" name="data.duration.unit" data-type="String">
{{#select data.duration.unit}}
<option value=""></option>
<option value="round">{{localize "midgard5.time-round"}}</option>
<option value="minute">{{localize "midgard5.time-minute"}}</option>
<option value="hour">{{localize "midgard5.time-hour"}}</option>
<option value="limitless">{{localize "midgard5.time-limitless"}}</option>
{{/select}}
</select>
</div>
</td>
</tr>

Some files were not shown because too many files have changed in this diff Show More