Compare commits

..

2 Commits

7 changed files with 124210 additions and 207 deletions

123780
doc/2026-01-22-global.sql Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -128,8 +128,8 @@ race sparks with skills always give +1, skill sparks always give +1-5, unique sp
- single_mode_skill_need_point is base number of skill points to buy each skill - single_mode_skill_need_point is base number of skill points to buy each skill
- support card skill hints are defined in single_mode_hint_gain - support card skill hints are defined in single_mode_hint_gain
- skill_set is NOT trainee skills, seems to be npcs - skill_set includes trainee unique starting skills, among many other things
- available_skill_set has trainee starting skills - available_skill_set has trainee starting skills other than their uniques
skill categories: skill categories:
- 0 passive - 0 passive
@@ -201,6 +201,68 @@ single_mode_wins_saddle defines titles (classic triple crown, tenno sweep, &c.)
- card_talent_hint_upgrade has costs to raise hint levels, but it's actually universal, only six rows - card_talent_hint_upgrade has costs to raise hint levels, but it's actually universal, only six rows
- single_mode_route_race is career goals (not only races) - single_mode_route_race is career goals (not only races)
# unrelated to everything # update diffs
try doober with E long, all-seeing eyes, gold recovery, and lots of stamina running in g3 diamond stakes senior year late february complete list of tables with inserts in both the 2026-01-15 update adding fine motion, manhattan cafe ssr, inari one sr and the 2026-01-22 update adding tamamo cross and main story 5:
- announce_character
- announce_data
- available_skill_set
- background_data
- banner_data
- campaign_chara_story_schedule
- campaign_data
- campaign_single_race_add_data
- campaign_single_race_add_reward
- card_data
- card_rarity_data
- card_talent_upgrade
- champions_news_chara_comment
- chara_category_motion
- character_system_lottery
- character_system_text
- chara_motion_set
- chara_story_data
- dress_data
- gacha_available
- gacha_data
- gacha_exchange
- gacha_top_bg
- home_story_trigger
- home_walk_group
- honor_data
- item_exchange
- item_place
- jukebox_chara_tag_data
- jukebox_comment
- jukebox_reaction_data
- mission_data
- nickname
- piece_data
- race
- race_bgm_cutin_extension_time
- race_instance
- race_jikkyo_base
- race_jikkyo_race
- race_jikkyo_trigger
- single_mode_chara_program
- single_mode_conclusion_set
- single_mode_event_production
- single_mode_hint_gain
- single_mode_npc
- single_mode_rival
- single_mode_route
- single_mode_route_race
- single_mode_scout_chara
- single_mode_skill_need_point
- single_mode_story_data
- single_mode_tag_card_pos
- skill_data
- skill_set
- succession_factor
- succession_factor_effect
- succession_relation_member
- support_card_data
- support_card_effect_table
- support_card_unique_effect
- text_data

File diff suppressed because it is too large Load Diff

View File

@@ -36,6 +36,7 @@ type Skill struct {
GradeValue int32 GradeValue int32
WitCheck bool WitCheck bool
Activations []Activation Activations []Activation
UniqueOwner string
SPCost int SPCost int
IconID int IconID int
} }

View File

@@ -191,6 +191,7 @@ type Skill struct {
Activations [2]SkillActivation Activations [2]SkillActivation
SPCost int SPCost int
InheritID int InheritID int
UniqueOwner string
IconID int IconID int
Index int Index int
} }
@@ -302,10 +303,11 @@ func Skills(ctx context.Context, db *sqlitex.Pool) ([]Skill, error) {
}, },
}, },
}, },
SPCost: stmt.ColumnInt(47), SPCost: stmt.ColumnInt(47),
InheritID: stmt.ColumnInt(48), InheritID: stmt.ColumnInt(48),
IconID: stmt.ColumnInt(49), UniqueOwner: stmt.ColumnText(49),
Index: stmt.ColumnInt(50), IconID: stmt.ColumnInt(50),
Index: stmt.ColumnInt(51),
} }
r = append(r, s) r = append(r, s)
} }

View File

@@ -53,6 +53,9 @@ var AllSkills = map[SkillID]Skill{
{{- end }} {{- end }}
{{- end }} {{- end }}
}, },
{{- if $s.UniqueOwner }}
UniqueOwner: {{ printf "%q" $s.UniqueOwner }},
{{- end }}
{{- if $s.SPCost }} {{- if $s.SPCost }}
SPCost: {{ $s.SPCost }}, SPCost: {{ $s.SPCost }},
{{- end }} {{- end }}

View File

@@ -12,6 +12,20 @@ WITH skill_names AS (
FROM skill_data d FROM skill_data d
JOIN skill_names n ON d.id = n.id JOIN skill_names n ON d.id = n.id
WHERE group_rate = 1 WHERE group_rate = 1
), card_name AS (
SELECT
"index" AS "id",
"text" AS "name"
FROM text_data n
WHERE category = 4
), card_unique AS (
SELECT DISTINCT
ss.skill_id1 AS unique_id,
card_name.name
FROM card_data card
JOIN card_name ON card.id = card_name.id
JOIN card_rarity_data rd ON card.id = rd.card_id
JOIN skill_set ss ON rd.skill_set = ss.id
) )
SELECT SELECT
d.id, d.id,
@@ -67,6 +81,7 @@ SELECT
d.target_value_2_3, d.target_value_2_3,
IFNULL(p.need_skill_point, 0) AS sp_cost, IFNULL(p.need_skill_point, 0) AS sp_cost,
d.unique_skill_id_1, d.unique_skill_id_1,
COALESCE(u.name, iu.name, '') AS unique_owner,
d.icon_id, d.icon_id,
ROW_NUMBER() OVER (ORDER BY d.id) - 1 AS "index" ROW_NUMBER() OVER (ORDER BY d.id) - 1 AS "index"
FROM skill_data d FROM skill_data d
@@ -74,4 +89,6 @@ FROM skill_data d
LEFT JOIN skill_data ud ON d.unique_skill_id_1 = ud.id LEFT JOIN skill_data ud ON d.unique_skill_id_1 = ud.id
LEFT JOIN skill_groups g ON d.group_id = g.group_id LEFT JOIN skill_groups g ON d.group_id = g.group_id
LEFT JOIN single_mode_skill_need_point p ON d.id = p.id LEFT JOIN single_mode_skill_need_point p ON d.id = p.id
LEFT JOIN card_unique u ON d.id = u.unique_id
LEFT JOIN card_unique iu ON d.unique_skill_id_1 = iu.unique_id
ORDER BY d.id ORDER BY d.id