PR

季節ガチャのitem_type対応 #3767

wada opened this at 2024-11-07T18:42:31; closed

Description

opened by wada at 2024-11-07T18:42:31; updated 2025-04-01T13:41:16

概要

master_item_rareのレコード取得時にitem_typeを設定
アイテムのcard_nomaster_itemのIDに変更

経緯

季節ガチャの排出アイテムを管理するテーブルmaster_item_rareは、
item_typeカラムがなく、カードもアイテムも同じcard_noカラムで管理していた

そのため、アイテムは通常IDに+20000した値を設定していたが、
新強化アイテムIDが1100000番台になり、既存の処理ではアイテムと判定できないため対応

今後の季節ガチャ実装について

テーブル側の対応がまだの間は、今までと同じID+20000で設定

#新強化アイテムIDの場合
1120001 = 1100001 + 20000

テーブル側対応(記載のみ、対応未定)

ALTER TABLE jrye.master_gacha_item_rare ADD `item_type` smallint(5) unsigned NOT NULL DEFAULT '1' COMMENT '景品のpresent_type' AFTER `card_rare`;
ALTER TABLE `master_gacha_item_rare` DROP PRIMARY KEY;
ALTER TABLE `master_gacha_item_rare` ADD PRIMARY KEY (`gacha_id`, `item_type`, `card_no`);
UPDATE master_gacha_item_rare SET item_type = 2, card_no = card_no - 20000 WHERE card_no > 20000;

カラム追加、card_no対応は開催中のガチャにも影響があり、管理画面も対応が必要なため、すべての準備が整ってから実行

テスト方法、確認した内容

開催中の季節ガチャで、各排出保証・排出結果を確認

TODO

  • [x] テーブル側対応の精査

Comment

#37344 by wada at 2024-11-07T18:44:58; updated 2024-11-07T18:44:58

@kouho
レビューお願いします。

kouho add_label at 2024-11-22T13:48:07: 皇甫 LGTM

Comment

#37552 by kouho at 2024-11-22T13:48:26; updated 2024-11-22T13:48:26

@wada
テーブル側対応以外は確認OKです

wada refer at 2025-03-25T16:22:44: 3985:【3/27】百花繚乱ガチャ
wada close_comment at 2025-04-01T13:41:16: 【3/27】百花繚乱ガチャ #3985で対応

Commit range

baseb7096ed57c11ecd344c4870e9429fcfb1cf46a05
headd292e9341836c79076e86a3808e78132e1fb6f4e
base branchjolly/jr-web:master
head branchjolly/jr-web:add_gacha_item_type

View commits

Commit details are loaded from Git when a dynamic archive server is running, or can be embedded with --include-commits.
Files changed10 filesView patch
statusfile
modifiedlib/SubFunc.inc
modifiedlib/conf/class/SPGachaConfig.class.php
modifiedlib/models/gacha/Drink_random.php
modifiedlib/models/gacha/Season_random.php
modifiedlib/models/gacha/Simple_random.php
modifiedlib/models/gacha/Valentine.php
modifiedlib/public/Bar-GachaRatio.inc
modifiedlib/public/Bar-SPGacha.inc
modifiedlib/public/Bar-SPGachaList.inc
modifiedlib/public/Bar-SPGachaResult.inc
Patch body is stored as a separate file to keep this page lightweight.