diff --git a/EpinelPS/Database/JsonDb.cs b/EpinelPS/Database/JsonDb.cs index ef4af45..21a9b20 100644 --- a/EpinelPS/Database/JsonDb.cs +++ b/EpinelPS/Database/JsonDb.cs @@ -129,7 +129,7 @@ namespace EpinelPS.Database public string Nickname = "SomePlayer"; public int ProfileIconId = 39900; public bool ProfileIconIsPrism = false; - public int ProfileFrame = 25; + public int ProfileFrame = 1; public bool IsAdmin = false; public bool sickpulls = false; public bool IsBanned = false; diff --git a/EpinelPS/GameData/GameData.cs b/EpinelPS/GameData/GameData.cs index 4426327..1199ffe 100644 --- a/EpinelPS/GameData/GameData.cs +++ b/EpinelPS/GameData/GameData.cs @@ -359,6 +359,11 @@ namespace EpinelPS.StaticInfo PositionReward.Add(id, reward); } } + } + var fieldItems = await LoadZip("FieldItemTable.json", progress); + foreach (var obj in fieldItems.records) + { + FieldItems.Add(obj.id, obj); } var battleOutpostTable = await LoadZip("OutpostBattleTable.json", progress); foreach (var obj in battleOutpostTable.records) diff --git a/EpinelPS/LobbyServer/Msgs/Outpost/GetOutpostData.cs.bak b/EpinelPS/LobbyServer/Msgs/Outpost/GetOutpostData.cs.bak deleted file mode 100644 index 1386844..0000000 --- a/EpinelPS/LobbyServer/Msgs/Outpost/GetOutpostData.cs.bak +++ /dev/null @@ -1,54 +0,0 @@ -using EpinelPS.Utils; - -namespace EpinelPS.LobbyServer.Msgs.Outpost -{ - [PacketPath("/outpost/getoutpostdata")] - public class GetOutpostData : LobbyMsgHandler - { - protected override async Task HandleAsync() - { - var req = await ReadData(); - var user = GetUser(); - - var battleTime = DateTime.UtcNow - user.BattleTime; - var battleTimeMs = (long)(battleTime.TotalNanoseconds / 100); - - long overBattleTime = battleTimeMs > 12096000000000 ? battleTimeMs - 12096000000000 : 0; - - - var response = new ResGetOutpostData - { - OutpostBattleLevel = user.OutpostBattleLevel, - Jukebox = new() { SelectTid = 5 }, - JukeboxV2 = new NetUserJukeboxDataV2() { CommandBgm = new() { Type = NetJukeboxBgmType.NetJukeboxBgmTypeJukeboxTableId, JukeboxTableId = 5 } }, - BattleTime = 864000000000, - MaxBattleTime = 864000000000, - SkinGroupId = 1000, - }; - - // TODO: do not hard code this! - response.Jukebox.List.AddRange([5, 9999901, 4001, 4002, 4003, 4004, 4005, 4006, 12, 4007, 4008, 4009, 4010, 4011, 4012, 4013, 4014, 4015, 4016, 4017, 4018, 4019, 4020, 4021, 4022, 4023, 4024, 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, 4033, 4034, 4036, 5001, 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, 5010, 5011, 5012]); - response.JukeboxV2.JukeboxTableIds.AddRange([5, 9999901, 4001, 4002, 4003, 4004, 4005, 4006, 12, 4007, 4008, 4009, 4010, 4011, 4012, 4013, 4014, 4015, 4016, 4017, 4018, 4019, 4020, 4021, 4022, 4023, 4024, 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, 4033, 4034, 4036, 5001, 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, 5010, 5011, 5012]); - - response.OutpostBattleLevel = user.OutpostBattleLevel; - response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000, BattleTime = battleTimeMs, OverBattleTime = overBattleTime }; - - response.Data.Add(new NetUserOutpostData() { SlotId = 1, BuildingId = 22401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 4, BuildingId = 22701, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 5, BuildingId = 22801, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 6, BuildingId = 22901, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 7, BuildingId = 23001, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 3, BuildingId = 23101, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 2, BuildingId = 23201, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 9, BuildingId = 23301, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 8, BuildingId = 23401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 10, BuildingId = 23501, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Data.Add(new NetUserOutpostData() { SlotId = 38, BuildingId = 33601, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - - response.TimeRewardBuffs.AddRange(NetUtils.GetOutpostTimeReward(user)); - - // TODO - await WriteDataAsync(response); - } - } -} diff --git a/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak b/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak deleted file mode 100644 index 1660a07..0000000 --- a/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak +++ /dev/null @@ -1,92 +0,0 @@ -using EpinelPS.Database; -using EpinelPS.Utils; - -namespace EpinelPS.LobbyServer.Msgs.User -{ - [PacketPath("/enterlobbyserver")] - public class EnterLobbyServer : LobbyMsgHandler - { - protected override async Task HandleAsync() - { - var req = await ReadData(); - var user = GetUser(); - - var battleTime = DateTime.UtcNow - user.BattleTime; - var battleTimeMs = (long)(battleTime.TotalNanoseconds / 100); - - // NOTE: Keep this in sync with GetUser code - - var response = new ResEnterLobbyServer(); - response.User = LobbyHandler.CreateNetUserDataFromUser(user); - response.ResetHour = 20; - response.Nickname = user.Nickname; - response.SynchroLv = 1; - response.OutpostBattleLevel = user.OutpostBattleLevel; - response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000, BattleTime = battleTimeMs }; - - response.CommanderRoomJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = JsonDb.CurrentJukeboxBgm(2), Type = NetJukeboxBgmType.NetJukeboxBgmTypeJukeboxTableId, Location = NetJukeboxLocation.NetJukeboxLocationCommanderRoom }; - response.LobbyJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = JsonDb.CurrentJukeboxBgm(1), Type = NetJukeboxBgmType.NetJukeboxBgmTypeJukeboxTableId, Location = NetJukeboxLocation.NetJukeboxLocationLobby }; - - // Add default slot data - if (user.RepresentationTeamData.Slots.Count == 0) - { - user.RepresentationTeamData = new NetWholeUserTeamData() { TeamNumber = 1, Type = 2 }; - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 1 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 2 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 3 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 4 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 5 }); - JsonDb.Save(); - } - response.RepresentationTeam = user.RepresentationTeamData; - - foreach (var item in user.Currency) - { - response.Currency.Add(new NetUserCurrencyData() { Type = (int)item.Key, Value = item.Value }); - } - - foreach (var item in user.Characters) - { - response.Character.Add(new NetUserCharacterData() { Default = new() { Csn = item.Csn, Skill1Lv = item.Skill1Lvl, Skill2Lv = item.Skill2Lvl, CostumeId = item.CostumeId, Level = user.GetCharacterLevel(item.Csn, item.Level), Grade = item.Grade, Tid = item.Tid, UltiSkillLv = item.UltimateLevel}, IsSynchro = user.GetSynchro(item.Csn) }); - } - - foreach (var item in NetUtils.GetUserItems(user)) - { - response.Items.Add(item); - } - - // Add squad data if there are characters - if (user.Characters.Count > 0) - { - var highestLevelCharacters = user.Characters.OrderByDescending(x => x.Level).Take(5).ToList(); - response.SynchroLv = user.GetSynchroLevel(); - - foreach (var item in highestLevelCharacters) - { - response.SynchroStandardCharacters.Add(item.Csn); - } - - foreach (var teamInfo in user.UserTeams) - response.TypeTeams.Add(teamInfo.Value); - } - - // TODO: Save outpost data - response.Outposts.Add(new NetUserOutpostData() { SlotId = 1, BuildingId = 22401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 4, BuildingId = 22701, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 5, BuildingId = 22801, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 6, BuildingId = 22901, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 7, BuildingId = 23001, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 3, BuildingId = 23101, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 2, BuildingId = 23201, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 9, BuildingId = 23301, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 8, BuildingId = 23401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 10, BuildingId = 23501, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 38, BuildingId = 33601, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - - response.LastClearedNormalMainStageId = user.LastNormalStageCleared; - response.TimeRewardBuffs.AddRange(NetUtils.GetOutpostTimeReward(user)); - - await WriteDataAsync(response); - } - } -} diff --git a/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak.bak b/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak.bak deleted file mode 100644 index bdb6334..0000000 --- a/EpinelPS/LobbyServer/Msgs/User/EnterLobbyServer.cs.bak.bak.bak +++ /dev/null @@ -1,91 +0,0 @@ -using EpinelPS.Database; -using EpinelPS.Utils; - -namespace EpinelPS.LobbyServer.Msgs.User -{ - [PacketPath("/enterlobbyserver")] - public class EnterLobbyServer : LobbyMsgHandler - { - protected override async Task HandleAsync() - { - var req = await ReadData(); - var user = GetUser(); - - var battleTime = DateTime.UtcNow - user.BattleTime; - var battleTimeMs = (long)(battleTime.TotalNanoseconds / 100); - - // NOTE: Keep this in sync with GetUser code - - var response = new ResEnterLobbyServer(); - response.User = LobbyHandler.CreateNetUserDataFromUser(user); - response.ResetHour = 20; - response.Nickname = user.Nickname; - response.SynchroLv = 1; - response.OutpostBattleLevel = user.OutpostBattleLevel; - response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000, BattleTime = battleTimeMs }; - response.CommanderRoomJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = 5, Type = NetJukeboxBgmType.NetJukeboxBgmTypeJukeboxTableId, Location = NetJukeboxLocation.NetJukeboxLocationCommanderRoom }; - response.LobbyJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = 2, Type = NetJukeboxBgmType.NetJukeboxBgmTypeJukeboxTableId, Location = NetJukeboxLocation.NetJukeboxLocationLobby }; - - // Add default slot data - if (user.RepresentationTeamData.Slots.Count == 0) - { - user.RepresentationTeamData = new NetWholeUserTeamData() { TeamNumber = 1, Type = 2 }; - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 1 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 2 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 3 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 4 }); - user.RepresentationTeamData.Slots.Add(new NetWholeTeamSlot() { Slot = 5 }); - JsonDb.Save(); - } - response.RepresentationTeam = user.RepresentationTeamData; - - foreach (var item in user.Currency) - { - response.Currency.Add(new NetUserCurrencyData() { Type = (int)item.Key, Value = item.Value }); - } - - foreach (var item in user.Characters) - { - response.Character.Add(new NetUserCharacterData() { Default = new() { Csn = item.Csn, Skill1Lv = item.Skill1Lvl, Skill2Lv = item.Skill2Lvl, CostumeId = item.CostumeId, Level = user.GetCharacterLevel(item.Csn, item.Level), Grade = item.Grade, Tid = item.Tid, UltiSkillLv = item.UltimateLevel}, IsSynchro = user.GetSynchro(item.Csn) }); - } - - foreach (var item in NetUtils.GetUserItems(user)) - { - response.Items.Add(item); - } - - // Add squad data if there are characters - if (user.Characters.Count > 0) - { - var highestLevelCharacters = user.Characters.OrderByDescending(x => x.Level).Take(5).ToList(); - response.SynchroLv = user.GetSynchroLevel(); - - foreach (var item in highestLevelCharacters) - { - response.SynchroStandardCharacters.Add(item.Csn); - } - - foreach (var teamInfo in user.UserTeams) - response.TypeTeams.Add(teamInfo.Value); - } - - // TODO: Save outpost data - response.Outposts.Add(new NetUserOutpostData() { SlotId = 1, BuildingId = 22401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 4, BuildingId = 22701, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 5, BuildingId = 22801, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 6, BuildingId = 22901, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 7, BuildingId = 23001, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 3, BuildingId = 23101, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 2, BuildingId = 23201, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 9, BuildingId = 23301, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 8, BuildingId = 23401, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 10, BuildingId = 23501, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - response.Outposts.Add(new NetUserOutpostData() { SlotId = 38, BuildingId = 33601, IsDone = true, StartAt = 638549982076760660, CompleteAt = 638549982076760660 }); - - response.LastClearedNormalMainStageId = user.LastNormalStageCleared; - response.TimeRewardBuffs.AddRange(NetUtils.GetOutpostTimeReward(user)); - - await WriteDataAsync(response); - } - } -}