Generate equipment loot atomically, grant random boxes and prevent repeat claims. Read gacha pools, pity, products, tickets, missions, presets, chapter rewards and inventory costs from GameData; extend both collaboration UR ticket pools. Sync owned recipes, configure startup state and calendars in versioned seeds, and validate unlock tickets and revival talents.
20 lines
671 B
Go
20 lines
671 B
Go
package feature
|
|
|
|
import "bd2server/internal/server/wire"
|
|
|
|
// initialResponses are locally constructed, typed defaults for the
|
|
// new-player account. These do not reuse recorded response bytes. Stateful
|
|
// entities (inventory, characters, quests, decks) are deliberately excluded.
|
|
func initialResponse(path string) (int, []byte, bool) {
|
|
switch path {
|
|
case "/CashMailInfo":
|
|
// MaxInvenIndex is explicitly present even with zero cash mails.
|
|
return 140, wire.AppendVarint(nil, 3, 0), true
|
|
case "/AvatarInfo":
|
|
return 467, wire.AppendBytes(nil, 1, nil), true
|
|
case "/GuildRaidSeasonReward":
|
|
return 310, wire.AppendBytes(nil, 1, nil), true
|
|
}
|
|
return 0, nil, false
|
|
}
|