Временное сохранение схемы

This commit is contained in:
2025-04-11 11:50:08 +04:00
parent 0e72b0afa7
commit 6c50cb7dd6
+131 -119
View File
@@ -60,7 +60,8 @@ Table source {
Table entity_sources {
entity_id int [ref: > entity.id]
source_id int [ref: > source.id]
suffix varchar [default: ""]
suffix varchar [default: "", note: "Для источников Foundry - полный UUID объекта"]
md5 varchar [not null, note: "Для контроля обновлений"]
}
// External links
@@ -113,6 +114,7 @@ Table language {
rarity entity_rarity
}
// Trainings
// ----------------------------------------------
@@ -149,7 +151,7 @@ Enum action_category {
familiar
}
// Ancestery
// Ancestry
Table ancestry {
id int [pk, ref: - entity.id]
@@ -164,16 +166,14 @@ Table ancestry {
Перенаправление:
{}.publication -> entity_sources
{}.traits -> entity_traits
{}.languages -> ancestry_languages
{}.additionalLanguages -> ancestry_languages
{}.languages -> ancestry_languages
{}.boosts -> ancestry_boosts
{}.flaws -> ancestry_boosts
Рассмотреть:
{}.items - TODO добавить в определение dict-типа
Не использованы поля:
{}.additionalLanguages
{}.items -> ancestry_items
'''
}
Enum ancestry_size {
@@ -190,74 +190,19 @@ Enum ancestry_vision {
Table ancestry_languages {
ancestry_id int [pk, ref: > ancestry.id]
language_id int [pk, ref: > language.id]
additional bool [not null]
is_additional bool [not null]
}
Table ancestry_boosts {
id int [pk, increment]
ancestry_id int [ref: > ancestry.id]
boost bool [not null, default: true, note: "false = flaw"]
value varchar(3) [null, note: "null = free boost (all 6 values in foundry)"]
}
Table ancestry_items {
ancestry_id int [pk, ref: > ancestry.id]
item_id int [pk, ref: > entity.id]
level int [not null]
// Armor
Table armor {
id int [pk, ref: - entity.id]
ac_bonus int [not null, note: "{}.acBonus"]
strength int [null, note: "{}.strength"]
check_penalty int [not null, note: "{}.checkPenalty"]
dex_cap int [not null, note: "{}.dexCap"]
speed_penalty int [not null, note: "{}.speedPenalty"]
bulk float [not null, note: "{}.bulk"]
category armor_category [not null, note: "{}.category"]
group armor_group [null, note: "{}.group"] // 16 без группы
level int [not null, note: "{}.level.value"]
price int [not null, note: "price({}.price.value)"]
size armor_size [not null, note: "{}.size"]
Note: '''{} = Item.armor.system
Перенаправление:
{}.publication -> entity_sources
{}.traits -> entity_traits
Рассмотреть:
{}.base_item - возможно связь на себя
{}.material
{}.runes
{}.specific
Не использованы поля:
{}.containerId - пустое
{}.hardness - всегда 0
{}.hp - всегда 0
{}.quantity - всегда 1
'''
}
Enum armor_category {
light
heavy
medium
light_barding // light-barding
heavy_barding // heavy-barding
unarmored
}
Enum armor_group {
leather
plate
wood
chain
cloth
skeletal
composite
}
Enum armor_size {
med
lg
}
// Background
@@ -267,14 +212,12 @@ Table background {
Note: '''{} = Item.background.system
Перенаправление:
{}.boosts -> background_boosts
{}.publication -> entity_sources
{}.traits -> entity_traits
{}.items -> background_items
{}.trainedSkills -> background_skills
Рассмотреть:
{}.boosts
Не использованы поля:
'''
}
@@ -284,8 +227,7 @@ Table background_items {
entity_id int [ref: > entity.id, note: "{}.name"]
level int [note: "{}.level"]
name string [note: "{}.name (?)"]
// name string [note: "{}.name (?)"]
Note: "{} = Item.background.system.items"
}
@@ -298,56 +240,24 @@ Table background_skills {
Note: "{} = Item.background.system.items.[lore|value]"
}
// Backpack
Table backpack {
id int [pk, ref: - entity.id]
level int [note: "{}.bulk.level.value"]
capacity int [note: "{}.bulk.heldOrStowed"]
heldOrStowed float [note: "{}.bulk.heldOrStowed"]
ignored int [note: "{}.bulk.ignored"]
value float [note: "{}.bulk.value"]
hardness int [note: "{}.bulk.hardness"]
quantity int [note: "{}.bulk.quantity"]
price int [note: "price({}.price.value)"]
size varchar [note: "{}.bulk.size (always med)"]
stowing bool [note: "{}.stowing"]
usage
Note: '''{} = Item.backpack.system
Перенаправление:
{}.publication -> entity_sources
{}.traits -> entity_traits
Рассмотреть:
{}.material
Не использованы поля:
{}.collapsed - всегда false
'''
}
Enum backpack_usage {
wornbackpack
held_in_two_hands // held-in-two-hands
worn
held_in_one_hand // held-in-one-hand
worngarment
Table background_boosts {
id int [pk, increment]
background_id int [ref: > background.id]
value varchar(3) [null, note: "null = free boost (all 6 values in foundry)"]
}
// Campaign Feature
Table campaign_feature {
id int [pk, ref: - entity.id]
level int [note: "{}.level"]
level int [null, note: "{}.level"]
type action_type [note: "{}.actionType"]
action int [note: "{}.actions"]
type action_type [not null, note: "{}.actionType"]
actions int [note: "{}.actions"]
category campaign_feature_category [note: "{}.category"]
prerequisites varchar [null, note: "{}.prerequisites"]
Note: '''{} = Item.campaignFeature.system
@@ -360,16 +270,17 @@ Table campaign_feature {
но, похоже, просто одиночное value
Не использованы поля:
{}.campaign - всегда "kingmaker"
{}.requirements - всегда пустое
{}.trigger - всегда пустое
'''
}
Enum campaign_feature_category {
army_tactic // army-tactic
army_war_action // army-war-action
army_tactic // army-tactic
army_war_action // army-war-action
kingdom_activity // kingdom-activity
kingdom_feat // kingdom-feat
kingdom_feature // kingdom-feature
kingdom_feat // kingdom-feat
kingdom_feature // kingdom-feature
}
// Class
@@ -621,6 +532,7 @@ Table spell_ritual {
// effect???
/*
Table template {
@@ -639,8 +551,108 @@ Table template {
}
*/
// -----------------------------------------------------------
// Armor
Table armor {
id int [pk, ref: - entity.id]
ac_bonus int [not null, note: "{}.acBonus"]
strength int [null, note: "{}.strength"]
check_penalty int [not null, note: "{}.checkPenalty"]
dex_cap int [not null, note: "{}.dexCap"]
speed_penalty int [not null, note: "{}.speedPenalty"]
bulk float [not null, note: "{}.bulk"]
category armor_category [not null, note: "{}.category"]
group armor_group [null, note: "{}.group"] // 16 без группы
level int [not null, note: "{}.level.value"]
price int [not null, note: "price({}.price.value)"]
size armor_size [not null, note: "{}.size"]
Note: '''{} = Item.armor.system
Перенаправление:
{}.publication -> entity_sources
{}.traits -> entity_traits
Рассмотреть:
{}.base_item - возможно связь на себя
{}.material
{}.runes
{}.specific
Не использованы поля:
{}.containerId - пустое
{}.hardness - всегда 0
{}.hp - всегда 0
{}.quantity - всегда 1
'''
}
Enum armor_category {
light
heavy
medium
light_barding // light-barding
heavy_barding // heavy-barding
unarmored
}
Enum armor_group {
leather
plate
wood
chain
cloth
skeletal
composite
}
Enum armor_size {
med
lg
}
// Backpack
Table backpack {
id int [pk, ref: - entity.id]
level int [note: "{}.bulk.level.value"]
capacity int [note: "{}.bulk.heldOrStowed"]
heldOrStowed float [note: "{}.bulk.heldOrStowed"]
ignored int [note: "{}.bulk.ignored"]
value float [note: "{}.bulk.value"]
hardness int [note: "{}.bulk.hardness"]
quantity int [note: "{}.bulk.quantity"]
price int [note: "price({}.price.value)"]
size varchar [note: "{}.bulk.size (always med)"]
stowing bool [note: "{}.stowing"]
usage
Note: '''{} = Item.backpack.system
Перенаправление:
{}.publication -> entity_sources
{}.traits -> entity_traits
Рассмотреть:
{}.material
Не использованы поля:
{}.collapsed - всегда false
'''
}
Enum backpack_usage {
wornbackpack
held_in_two_hands // held-in-two-hands
worn
held_in_one_hand // held-in-one-hand
worngarment
}
// consumable -> equipment?
// effect???
// equipment
// kit -> equipment
// shield -> equipment