Fix Main Quests replay and weapon awaken level cap
Build and Push Docker images to Docker Hub / build-and-push (push) Has been cancelled

This commit is contained in:
Ilya Groshev
2026-05-09 17:18:48 +03:00
parent 60e0402525
commit 9a2cc92a6f
16 changed files with 440 additions and 65 deletions
@@ -0,0 +1,19 @@
-- +goose Up
CREATE TABLE user_main_quest_season_routes (
user_id INTEGER NOT NULL REFERENCES users(user_id),
main_quest_season_id INTEGER NOT NULL,
main_quest_route_id INTEGER NOT NULL,
latest_version INTEGER NOT NULL DEFAULT 0,
PRIMARY KEY (user_id, main_quest_season_id, main_quest_route_id)
);
-- Backfill: seed each user's current (season, route) so existing saves immediately
-- have at least one entry. Players who progressed through prior seasons in our
-- server won't get historical entries — accept that for the immediate fix.
INSERT INTO user_main_quest_season_routes (user_id, main_quest_season_id, main_quest_route_id, latest_version)
SELECT user_id, main_quest_season_id, current_main_quest_route_id, latest_version
FROM user_main_quest
WHERE main_quest_season_id > 0 AND current_main_quest_route_id > 0;
-- +goose Down
DROP TABLE IF EXISTS user_main_quest_season_routes;
@@ -0,0 +1,17 @@
-- +goose Up
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_active INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_current_quest_scene_id INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_head_quest_scene_id INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_current_main_quest_route_id INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_main_quest_season_id INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_is_reached_last_quest_scene INTEGER NOT NULL DEFAULT 0;
ALTER TABLE user_main_quest ADD COLUMN saved_ctx_portal_cage_in_progress INTEGER NOT NULL DEFAULT 0;
-- +goose Down
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_active;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_current_quest_scene_id;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_head_quest_scene_id;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_current_main_quest_route_id;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_main_quest_season_id;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_is_reached_last_quest_scene;
ALTER TABLE user_main_quest DROP COLUMN saved_ctx_portal_cage_in_progress;