mirror of
https://github.com/EpinelPS/EpinelPS.git
synced 2025-12-12 23:14:34 +01:00
Outpost is now working
This commit is contained in:
@@ -36,7 +36,7 @@ namespace DataFixupUtil
|
||||
var startPos = (int)ms.Position;
|
||||
|
||||
var contents = FileContents.Skip(startPos).ToArray();
|
||||
if (contents.Length != 0 && contents[0] == 31)
|
||||
if (contents.Length > 2 && contents[0] == 0x1f && contents[1] == 0x8b)
|
||||
{
|
||||
// gzip compression is used
|
||||
using Stream csStream = new GZipStream(new MemoryStream(contents), CompressionMode.Decompress);
|
||||
|
||||
@@ -10,12 +10,9 @@ namespace ProtobufViewUtil
|
||||
{
|
||||
Console.WriteLine("Hello, World!");
|
||||
|
||||
StaticDataPackResponse s = new StaticDataPackResponse();
|
||||
var inn = File.ReadAllBytes(@"C:\Users\Misha\Downloads\staticdatanew");
|
||||
ResGetOutpostData s = new ResGetOutpostData();
|
||||
var inn = File.ReadAllBytes(@"C:\Users\Misha\Downloads\getoutpostdatach2done");
|
||||
s.MergeFrom(inn);
|
||||
Console.WriteLine("salt1: " + Convert.ToBase64String(s.Salt1.ToArray()));
|
||||
Console.WriteLine("salt2: " + Convert.ToBase64String(s.Salt2.ToArray()));
|
||||
Console.WriteLine("sha: " + Convert.ToBase64String(s.Sha256Sum.ToArray()));
|
||||
Console.WriteLine(s.ToString());
|
||||
var outt = s.ToByteArray();
|
||||
|
||||
|
||||
24
nksrv/LobbyServer/Msgs/Inventory/WearEquipment.cs
Normal file
24
nksrv/LobbyServer/Msgs/Inventory/WearEquipment.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using nksrv.Utils;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace nksrv.LobbyServer.Msgs.Inventory
|
||||
{
|
||||
[PacketPath("/inventory/wearequipment")]
|
||||
public class WearEquipment : LobbyMsgHandler
|
||||
{
|
||||
protected override async Task HandleAsync()
|
||||
{
|
||||
var req = await ReadData<ReqWearEquipment>();
|
||||
var user = GetUser();
|
||||
|
||||
var response = new ResWearEquipment();
|
||||
// TODO implement
|
||||
|
||||
WriteData(response);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -22,14 +22,24 @@ namespace nksrv.LobbyServer.Msgs.Outpost
|
||||
var response = new ResGetOutpostData
|
||||
{
|
||||
OutpostBattleLevel = new NetOutpostBattleLevel() { Level = 1 },
|
||||
CommanderBgm = new NetUserJukeboxDataV2() { CommandBgm = new() { Type = NetJukeboxBgmType.JukeboxTableId, JukeboxTableId = 3012 } },
|
||||
BattleTime = 864000000000, Jukebox = new(), MaxBattleTime = 864000000000
|
||||
CommanderBgm = new NetUserJukeboxDataV2() { CommandBgm = new() { Type = NetJukeboxBgmType.JukeboxTableId, JukeboxTableId = 5 } },
|
||||
BattleTime = 864000000000, Jukebox = new(), MaxBattleTime = 864000000000, SkinGroupId = 1000
|
||||
};
|
||||
|
||||
response.OutpostBattleLevel = user.OutpostBattleLevel;
|
||||
response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000, BattleTime = battleTimeMs };
|
||||
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 });
|
||||
|
||||
|
||||
// TODO
|
||||
WriteData(response);
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace nksrv.LobbyServer.Msgs.User
|
||||
response.SynchroLv = 1;
|
||||
response.OutpostBattleLevel = user.OutpostBattleLevel;
|
||||
response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000, BattleTime = battleTimeMs };
|
||||
response.CommanderRoomJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = 2, Type = NetJukeboxBgmType.JukeboxTableId, Location = NetJukeboxLocation.CommanderRoom };
|
||||
response.CommanderRoomJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = 5, Type = NetJukeboxBgmType.JukeboxTableId, Location = NetJukeboxLocation.CommanderRoom };
|
||||
response.LobbyJukeboxBgm = new NetJukeboxBgm() { JukeboxTableId = 2, Type = NetJukeboxBgmType.JukeboxTableId, Location = NetJukeboxLocation.Lobby };
|
||||
|
||||
// Add default slot data
|
||||
|
||||
@@ -8,9 +8,25 @@ namespace nksrv.LobbyServer.Msgs.Wallet
|
||||
protected override async Task HandleAsync()
|
||||
{
|
||||
var req = await ReadData<ReqRefreshChargeCurrencyData>();
|
||||
|
||||
var user = GetUser();
|
||||
|
||||
var response = new ResRefreshChargeCurrencyData();
|
||||
response.FreeCash = new();
|
||||
response.ChargeCash = new();
|
||||
|
||||
foreach (var item in user.Currency)
|
||||
{
|
||||
if (item.Key == CurrencyType.FreeCash)
|
||||
{
|
||||
response.FreeCash.Type = (int)item.Key;
|
||||
response.FreeCash.Value = item.Value;
|
||||
}
|
||||
else if (item.Key == CurrencyType.ChargeCash)
|
||||
{
|
||||
response.ChargeCash.Type = (int)item.Key;
|
||||
response.ChargeCash.Value = item.Value;
|
||||
}
|
||||
}
|
||||
WriteData(response);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -156,7 +156,6 @@ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||
}
|
||||
|
||||
var responseBytes = response.ToArray();
|
||||
File.WriteAllBytes("batch-response", responseBytes);
|
||||
ctx.Response.ContentType = "multipart/mixed; boundary=\"f5d5cf4d-5627-422f-b3c6-532f1a0cbc0a\"";
|
||||
ctx.Response.OutputStream.Write(responseBytes);
|
||||
}
|
||||
@@ -373,8 +372,6 @@ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||
}
|
||||
else
|
||||
{
|
||||
// not empty body, TODO
|
||||
File.WriteAllBytes("notemptybody", bytes);
|
||||
body = bytes.Skip(currentByte).ToArray();
|
||||
}
|
||||
|
||||
|
||||
@@ -1866,4 +1866,10 @@ message NetInAppShopReceivableProductData {
|
||||
message ReqGetInAppShopReceivableProductList {}
|
||||
message ResGetInAppShopReceivableProductList {
|
||||
repeated NetInAppShopReceivableProductData Data = 1;
|
||||
}
|
||||
}
|
||||
|
||||
message ReqWearEquipment {
|
||||
int64 Isn = 2;
|
||||
int64 Csn = 3;
|
||||
}
|
||||
message ResWearEquipment {}
|
||||
@@ -114,7 +114,6 @@ namespace nksrv.StaticInfo
|
||||
ZipStream = new MemoryStream();
|
||||
AesCtrTransform(decryptionKey2, iv2, dataMs, ZipStream);
|
||||
|
||||
File.WriteAllBytes("decryptednew.zip", ZipStream.ToArray());
|
||||
ZipStream.Position = 0;
|
||||
|
||||
MainZip = new ZipFile(ZipStream, false);
|
||||
|
||||
Reference in New Issue
Block a user