@optolith/database-schema 0.70.0 → 0.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [0.71.0](https://github.com/Optolith/database-schema/compare/v0.70.1...v0.71.0) (2026-09-28)
6
+
7
+ ### ⚠ BREAKING CHANGES
8
+
9
+ * more translations for items
10
+
11
+ ### Features
12
+
13
+ * more translations for items ([f4d3d79](https://github.com/Optolith/database-schema/commit/f4d3d79b1e92c34a0078fb7df24370a9a57a9b2d))
14
+ ## [0.70.1](https://github.com/Optolith/database-schema/compare/v0.70.0...v0.70.1) (2026-09-28)
15
+
16
+ ### Features
17
+
18
+ * different names for familiar's tricks based on tradition ([189a86d](https://github.com/Optolith/database-schema/commit/189a86da529c1b220030c746f8bdb0b94a29a3d9))
5
19
  ## [0.70.0](https://github.com/Optolith/database-schema/compare/v0.69.0...v0.70.0) (2026-09-27)
6
20
 
7
21
  ### ⚠ BREAKING CHANGES
package/gen/types.d.ts CHANGED
@@ -634,6 +634,7 @@ export type TypeAliasMap = {
634
634
  ExpressionBasedRange: ExpressionBasedRange
635
635
  FamiliarsTrickAllOneTimeCost: FamiliarsTrickAllOneTimeCost
636
636
  FamiliarsTrickFixedOneTimeCost: FamiliarsTrickFixedOneTimeCost
637
+ FamiliarsTrickNameByTradition: FamiliarsTrickNameByTradition
637
638
  FamiliarsTrickOneTimeIntervalCost: FamiliarsTrickOneTimeIntervalCost
638
639
  FamiliarsTrickOneTimeIntervalPerformanceParameters: FamiliarsTrickOneTimeIntervalPerformanceParameters
639
640
  FamiliarsTrickOneTimePerformanceParameters: FamiliarsTrickOneTimePerformanceParameters
@@ -2566,6 +2567,42 @@ export interface Locale {
2566
2567
  "Use": string
2567
2568
  "purchase": string
2568
2569
  "sale": string
2570
+ "2H": string
2571
+ "i": string
2572
+ "Weapons": string
2573
+ "Melee Weapons": string
2574
+ "Ranged Weapons": string
2575
+ "Armor": string
2576
+ "Weapon Accessories": string
2577
+ "Clothes": string
2578
+ "Clothing Packages for Social Status": string
2579
+ "Travel Gear and Tools": string
2580
+ "Illumination/Light Sources": string
2581
+ "Illumination Refills and Supplies": string
2582
+ "Bandages and Remedies": string
2583
+ "Containers": string
2584
+ "Ropes and Chains": string
2585
+ "Thieves' Tools": string
2586
+ "Tools of the Trade": string
2587
+ "Laboratories": string
2588
+ "Orienteering Aids": string
2589
+ "Jewelry": string
2590
+ "Gems and Precious Stones": string
2591
+ "Stationery": string
2592
+ "Books": string
2593
+ "Magical Artifacts": string
2594
+ "Alchemicae": string
2595
+ "Poisons": string
2596
+ "Musical Instruments": string
2597
+ "Luxury Goods": string
2598
+ "Animals": string
2599
+ "Animal Care": string
2600
+ "Vehicles": string
2601
+ "Ceremonial Items": string
2602
+ "Equipment of Blessed Ones": string
2603
+ "Liebesspielzeug": string
2604
+ "Newspapers": string
2605
+ "Working Supernatural Creatures": string
2569
2606
  "{$types} poison": string & { __params: { "types": string } }
2570
2607
  "Weapon (poison)": string
2571
2608
  "Ingestion (poison)": string
@@ -25599,6 +25636,11 @@ export interface FamiliarsTrickTranslation {
25599
25636
  */
25600
25637
  name: string
25601
25638
 
25639
+ /**
25640
+ * For some traditions, the name of the familiar’s trick is different.
25641
+ */
25642
+ nameByTradition?: FamiliarsTrickNameByTradition
25643
+
25602
25644
  /**
25603
25645
  * The effect description.
25604
25646
  */
@@ -25747,6 +25789,17 @@ export interface IndefiniteFamiliarsTrickPropertyTranslation {
25747
25789
  description: ResponsiveText
25748
25790
  }
25749
25791
 
25792
+ export type FamiliarsTrickNameByTradition = {
25793
+ [magicalTraditionId: string]: FamiliarsTrickNameForTradition
25794
+ }
25795
+
25796
+ export interface FamiliarsTrickNameForTradition {
25797
+ /**
25798
+ * The familiar’s trick’s name for this tradition.
25799
+ */
25800
+ name: string
25801
+ }
25802
+
25750
25803
  export interface HerbalAid {
25751
25804
  /**
25752
25805
  * The plant types this aid belongs to.
@@ -219,6 +219,9 @@ export declare const FamiliarsTrick: DB.Entity<"FamiliarsTrick", {
219
219
  }>, []>>>, []>>, true>;
220
220
  translations: DB.MemberDecl<DB.NestedEntityMap<"FamiliarsTrickTranslation", {
221
221
  name: DB.MemberDecl<DB.String, true>;
222
+ nameByTradition: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"FamiliarsTrickNameByTradition", DB.NestedEntityMap<string, {
223
+ name: DB.MemberDecl<DB.String, true>;
224
+ }>, []>>, false>;
222
225
  effect: DB.MemberDecl<DB.String, true>;
223
226
  cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"OldParameter", DB.Object<{
224
227
  full: DB.MemberDecl<DB.String, true>;
@@ -7,6 +7,7 @@ import { ResponsiveText } from "./_ResponsiveText.js";
7
7
  import { NestedTranslationMap } from "./Locale.js";
8
8
  import { Errata } from "./source/_Erratum.js";
9
9
  import { src } from "./source/_PublicationRef.js";
10
+ import { MagicalTradition } from "./specialAbility/MagicalTradition.js";
10
11
  export const FamiliarsTrick = DB.Entity(import.meta.url, {
11
12
  name: "FamiliarsTrick",
12
13
  namePlural: "FamiliarsTricks",
@@ -43,6 +44,10 @@ If no traditions are given, the familiars trick is not restricted by the magical
43
44
  comment: "The familiar’s trick’s name.",
44
45
  type: DB.String({ minLength: 1 }),
45
46
  }),
47
+ nameByTradition: DB.Optional({
48
+ comment: "For some traditions, the name of the familiar’s trick is different.",
49
+ type: DB.IncludeIdentifier(FamiliarsTrickNameByTradition),
50
+ }),
46
51
  effect: DB.Required({
47
52
  comment: "The effect description.",
48
53
  type: DB.String({ minLength: 1, markdown: "block" }),
@@ -68,6 +73,21 @@ If no traditions are given, the familiars trick is not restricted by the magical
68
73
  },
69
74
  ],
70
75
  });
76
+ const FamiliarsTrickNameByTradition = DB.TypeAlias(import.meta.url, {
77
+ name: "FamiliarsTrickNameByTradition",
78
+ type: () => DB.NestedEntityMap({
79
+ secondaryEntity: MagicalTradition,
80
+ name: "FamiliarsTrickNameForTradition",
81
+ namePlural: "FamiliarsTrickNameForTraditions",
82
+ type: DB.Object({
83
+ name: DB.Required({
84
+ comment: "The familiar’s trick’s name for this tradition.",
85
+ type: DB.String({ minLength: 1 }),
86
+ }),
87
+ }),
88
+ minProperties: 1,
89
+ }),
90
+ });
71
91
  const FamiliarsTrickProperty = DB.Enum(import.meta.url, {
72
92
  name: "FamiliarsTrickProperty",
73
93
  values: () => ({
@@ -1485,6 +1485,42 @@ export declare const Locale: DB.Entity<"Locale", {
1485
1485
  Use: null;
1486
1486
  purchase: null;
1487
1487
  sale: null;
1488
+ "2H": null;
1489
+ i: null;
1490
+ Weapons: null;
1491
+ "Melee Weapons": null;
1492
+ "Ranged Weapons": null;
1493
+ Armor: null;
1494
+ "Weapon Accessories": null;
1495
+ Clothes: null;
1496
+ "Clothing Packages for Social Status": null;
1497
+ "Travel Gear and Tools": null;
1498
+ "Illumination/Light Sources": null;
1499
+ "Illumination Refills and Supplies": null;
1500
+ "Bandages and Remedies": null;
1501
+ Containers: null;
1502
+ "Ropes and Chains": null;
1503
+ "Thieves' Tools": null;
1504
+ "Tools of the Trade": null;
1505
+ Laboratories: null;
1506
+ "Orienteering Aids": null;
1507
+ Jewelry: null;
1508
+ "Gems and Precious Stones": null;
1509
+ Stationery: null;
1510
+ Books: null;
1511
+ "Magical Artifacts": null;
1512
+ Alchemicae: null;
1513
+ Poisons: null;
1514
+ "Musical Instruments": null;
1515
+ "Luxury Goods": null;
1516
+ Animals: null;
1517
+ "Animal Care": null;
1518
+ Vehicles: null;
1519
+ "Ceremonial Items": null;
1520
+ "Equipment of Blessed Ones": null;
1521
+ Liebesspielzeug: null;
1522
+ Newspapers: null;
1523
+ "Working Supernatural Creatures": null;
1488
1524
  "{$types} poison": null;
1489
1525
  "Weapon (poison)": null;
1490
1526
  "Ingestion (poison)": null;
@@ -1526,6 +1526,43 @@ export const Locale = DB.Entity(import.meta.url, {
1526
1526
  "Use": null,
1527
1527
  "purchase": null,
1528
1528
  "sale": null,
1529
+ "2H": null,
1530
+ "i": null,
1531
+ "Weapons": null,
1532
+ "Melee Weapons": null,
1533
+ "Ranged Weapons": null,
1534
+ // "Ammunition": null,
1535
+ "Armor": null,
1536
+ "Weapon Accessories": null,
1537
+ "Clothes": null,
1538
+ "Clothing Packages for Social Status": null,
1539
+ "Travel Gear and Tools": null,
1540
+ "Illumination/Light Sources": null,
1541
+ "Illumination Refills and Supplies": null,
1542
+ "Bandages and Remedies": null,
1543
+ "Containers": null,
1544
+ "Ropes and Chains": null,
1545
+ "Thieves' Tools": null,
1546
+ "Tools of the Trade": null,
1547
+ "Laboratories": null,
1548
+ "Orienteering Aids": null,
1549
+ "Jewelry": null,
1550
+ "Gems and Precious Stones": null,
1551
+ "Stationery": null,
1552
+ "Books": null,
1553
+ "Magical Artifacts": null,
1554
+ "Alchemicae": null,
1555
+ "Poisons": null,
1556
+ "Musical Instruments": null,
1557
+ "Luxury Goods": null,
1558
+ "Animals": null,
1559
+ "Animal Care": null,
1560
+ "Vehicles": null,
1561
+ "Ceremonial Items": null,
1562
+ "Equipment of Blessed Ones": null,
1563
+ "Liebesspielzeug": null,
1564
+ "Newspapers": null,
1565
+ "Working Supernatural Creatures": null,
1529
1566
  // poisons/elixirs
1530
1567
  "{$types} poison": null,
1531
1568
  "Weapon (poison)": null,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optolith/database-schema",
3
- "version": "0.70.0",
3
+ "version": "0.71.0",
4
4
  "description": "Definitions and utilities for the flat-file database of Optolith, a character creation tool for the Pen and Paper RPG “The Dark Eye 5”, and its external integrations into other software.",
5
5
  "keywords": [
6
6
  "tde",