mirror of
https://github.com/EpinelPS/EpinelPS.git
synced 2025-12-13 23:44:45 +01:00
update game version, push changes
This commit is contained in:
@@ -102,6 +102,7 @@ namespace EpinelPS.Controllers
|
|||||||
public class LauncherVersionRequest
|
public class LauncherVersionRequest
|
||||||
{
|
{
|
||||||
public int game_id {get;set;}
|
public int game_id {get;set;}
|
||||||
|
public int branch_id { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -590,6 +590,8 @@ namespace EpinelPS.Database
|
|||||||
public byte[] LauncherTokenKey = [];
|
public byte[] LauncherTokenKey = [];
|
||||||
public byte[] EncryptionTokenKey = [];
|
public byte[] EncryptionTokenKey = [];
|
||||||
public LogType LogLevel = LogType.Debug;
|
public LogType LogLevel = LogType.Debug;
|
||||||
|
|
||||||
|
public int MaxInterceptionCount = 3;
|
||||||
}
|
}
|
||||||
internal class JsonDb
|
internal class JsonDb
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using EpinelPS.Utils;
|
using EpinelPS.Database;
|
||||||
|
using EpinelPS.Utils;
|
||||||
|
|
||||||
namespace EpinelPS.LobbyServer.Intercept
|
namespace EpinelPS.LobbyServer.Intercept
|
||||||
{
|
{
|
||||||
@@ -12,9 +13,9 @@ namespace EpinelPS.LobbyServer.Intercept
|
|||||||
var response = new ResGetInterceptData
|
var response = new ResGetInterceptData
|
||||||
{
|
{
|
||||||
NormalInterceptGroup = 1,
|
NormalInterceptGroup = 1,
|
||||||
SpecialInterceptId = 1,
|
SpecialInterceptId = 1, // TODO switch this out each reset
|
||||||
TicketCount = 5,
|
TicketCount = User.ResetableData.InterceptionTickets,
|
||||||
MaxTicketCount = 10
|
MaxTicketCount = JsonDb.Instance.MaxInterceptionCount
|
||||||
};
|
};
|
||||||
|
|
||||||
await WriteDataAsync(response);
|
await WriteDataAsync(response);
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using EpinelPS.Database;
|
||||||
using EpinelPS.Utils;
|
using EpinelPS.Utils;
|
||||||
|
|
||||||
namespace EpinelPS.LobbyServer.Intercept
|
namespace EpinelPS.LobbyServer.Intercept
|
||||||
@@ -10,17 +11,28 @@ namespace EpinelPS.LobbyServer.Intercept
|
|||||||
var req = await ReadData<ReqClearIntercept>();
|
var req = await ReadData<ReqClearIntercept>();
|
||||||
var user = GetUser();
|
var user = GetUser();
|
||||||
|
|
||||||
|
if (user.ResetableData.InterceptionTickets == 0)
|
||||||
|
{
|
||||||
|
Logging.WriteLine("Attempted to clear interception when 0 tickets remain", LogType.WarningAntiCheat);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
var sRes = InterceptionHelper.Clear(user, req.Intercept, req.InterceptId, req.Damage);
|
var sRes = InterceptionHelper.Clear(user, req.Intercept, req.InterceptId, req.Damage);
|
||||||
|
|
||||||
|
user.ResetableData.InterceptionTickets--;
|
||||||
var response = new ResClearIntercept
|
var response = new ResClearIntercept
|
||||||
{
|
{
|
||||||
Intercept = req.Intercept,
|
Intercept = req.Intercept,
|
||||||
InterceptId = req.InterceptId,
|
InterceptId = req.InterceptId,
|
||||||
TicketCount = 5,
|
TicketCount = user.ResetableData.InterceptionTickets,
|
||||||
MaxTicketCount = 10,
|
MaxTicketCount = JsonDb.Instance.MaxInterceptionCount,
|
||||||
NormalReward = sRes.NormalReward,
|
NormalReward = sRes.NormalReward,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
user.AddTrigger(Data.TriggerType.InterceptClear, 1);
|
||||||
|
|
||||||
|
JsonDb.Save();
|
||||||
|
|
||||||
await WriteDataAsync(response);
|
await WriteDataAsync(response);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,9 +8,12 @@ namespace EpinelPS.LobbyServer.Intercept
|
|||||||
protected override async Task HandleAsync()
|
protected override async Task HandleAsync()
|
||||||
{
|
{
|
||||||
var req = await ReadData<ReqEnterIntercept>();
|
var req = await ReadData<ReqEnterIntercept>();
|
||||||
|
var user = GetUser();
|
||||||
|
|
||||||
var response = new ResEnterIntercept();
|
var response = new ResEnterIntercept();
|
||||||
|
|
||||||
|
user.AddTrigger(Data.TriggerType.InterceptStart, 1);
|
||||||
|
|
||||||
await WriteDataAsync(response);
|
await WriteDataAsync(response);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using EpinelPS.Database;
|
||||||
using EpinelPS.Utils;
|
using EpinelPS.Utils;
|
||||||
|
|
||||||
namespace EpinelPS.LobbyServer.Intercept
|
namespace EpinelPS.LobbyServer.Intercept
|
||||||
@@ -11,9 +12,9 @@ namespace EpinelPS.LobbyServer.Intercept
|
|||||||
|
|
||||||
var response = new ResFastClearIntercept
|
var response = new ResFastClearIntercept
|
||||||
{
|
{
|
||||||
TicketCount = 3,
|
TicketCount = User.ResetableData.InterceptionTickets,
|
||||||
MaxTicketCount = 10,
|
MaxTicketCount = JsonDb.Instance.MaxInterceptionCount,
|
||||||
Damage = 2
|
Damage = 0
|
||||||
};
|
};
|
||||||
|
|
||||||
await WriteDataAsync(response);
|
await WriteDataAsync(response);
|
||||||
|
|||||||
@@ -14,6 +14,16 @@ namespace EpinelPS.LobbyServer
|
|||||||
public byte[] ReturnBytes = [];
|
public byte[] ReturnBytes = [];
|
||||||
public byte[] Contents = [];
|
public byte[] Contents = [];
|
||||||
|
|
||||||
|
public User User
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (UserId == 0) throw new UnauthorizedAccessException();
|
||||||
|
|
||||||
|
return JsonDb.GetUser(UserId) ?? throw new InvalidDataException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Call before calling HandleAsync
|
/// Call before calling HandleAsync
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -420,13 +420,13 @@ namespace EpinelPS.Utils
|
|||||||
if (staticDataHttpResponse == null)
|
if (staticDataHttpResponse == null)
|
||||||
{
|
{
|
||||||
Console.WriteLine($"failed to post {url}");
|
Console.WriteLine($"failed to post {url}");
|
||||||
return default(T);
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!staticDataHttpResponse.IsSuccessStatusCode)
|
if (!staticDataHttpResponse.IsSuccessStatusCode)
|
||||||
{
|
{
|
||||||
Console.WriteLine($"POST {url} failed with {staticDataHttpResponse.StatusCode}");
|
Console.WriteLine($"POST {url} failed with {staticDataHttpResponse.StatusCode}");
|
||||||
return default(T);
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
byte[] staticDataHttpResponseBytes = await staticDataHttpResponse.Content.ReadAsByteArrayAsync();
|
byte[] staticDataHttpResponseBytes = await staticDataHttpResponse.Content.ReadAsByteArrayAsync();
|
||||||
|
|||||||
@@ -6,18 +6,18 @@
|
|||||||
"version_info": {
|
"version_info": {
|
||||||
"game_id": "16601",
|
"game_id": "16601",
|
||||||
"branch_id": "1",
|
"branch_id": "1",
|
||||||
"version_id": "0.0.0.51",
|
"version_id": "0.0.0.52",
|
||||||
"version_name": "NIKKE.PC_Offcial_GL_134.8.13",
|
"version_name": "NIKKE.PC_Offcial_GL_134.12.5",
|
||||||
"version_status": 7,
|
"version_status": 7,
|
||||||
"service_status": 0,
|
"service_status": 0,
|
||||||
"build_id": "3020",
|
"build_id": "3028",
|
||||||
"cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.48-r.02587\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"bc7b45d953ee4929def7aa8f68c209f5\",\"chunk_size\":111552,\"chunk_uncompress_md5\":\"bc7b45d953ee4929def7aa8f68c209f5\",\"chunk_uncompress_size\":111552}],\"file_url\":\"/manifestv2/48_5937488248518577280_0.manifest\",\"manifest_md5\":\"bc7b45d953ee4929def7aa8f68c209f5\",\"manifest_size\":111552}],\"manifest_flag\":13,\"manifest_id\":5937488248518577000,\"manifest_version\":2,\"patch_size\":95550949,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":48,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":352461033,\"repository_type\":\"Game\",\"repository_uncompress_size\":790247240}]",
|
"cos_repo_files": "[{\"cdn_root\":\"https://cloud.nikke-kr.com/PC/prod/rid.48-r.02587\",\"chunk_encrypt_flag\":0,\"manifest_files\":[{\"chunks\":[{\"chunk_index\":0,\"chunk_md5\":\"733b7a0aba8b4aa4817ce9ebb7e40ea4\",\"chunk_size\":114328,\"chunk_uncompress_md5\":\"733b7a0aba8b4aa4817ce9ebb7e40ea4\",\"chunk_uncompress_size\":114328}],\"file_url\":\"/manifestv2/48_5937488248518581082_0.manifest\",\"manifest_md5\":\"733b7a0aba8b4aa4817ce9ebb7e40ea4\",\"manifest_size\":114328}],\"manifest_flag\":13,\"manifest_id\":5937488248518581000,\"manifest_version\":2,\"patch_size\":99114613,\"repository_desc\":{\"zh_CN\":\"game repo\"},\"repository_id\":48,\"repository_name\":{\"en_US\":\"Game\",\"zh_CN\":\"Game\"},\"repository_size\":361649767,\"repository_type\":\"Game\",\"repository_uncompress_size\":854972912}]",
|
||||||
"cos_access_info": "[{\"repository_id\":48,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"158f36bf7e611c945320c399294c4a6d\",\"encrytion_algorithm_id\":6,\"manifest_encrytion_key\":\"0f448b096bb4dc5b339debdce77c4572\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16601,\"manifest_id\":5937488248518577663}]",
|
"cos_access_info": "[{\"repository_id\":48,\"repository_type\":\"Game\",\"repository_name\":\"Game\",\"repository_name_en\":\"Game\",\"description\":\"game repo\",\"cos_list\":[{\"public_cdn_domain\":\"https://cloud.nikke-kr.com\"}],\"encrytion_key\":\"158f36bf7e611c945320c399294c4a6d\",\"encrytion_algorithm_id\":6,\"manifest_encrytion_key\":\"0f448b096bb4dc5b339debdce77c4572\",\"manifest_encrytion_algorithm_id\":6,\"game_id\":16601,\"manifest_id\":5937488248518581298}]",
|
||||||
"key_file_info": "[{\"crc\":635045207,\"path\":\"NIKKE\\\\game\\\\nikke.exe\"}]",
|
"key_file_info": "[{\"crc\":1124400173,\"path\":\"NIKKE\\\\game\\\\nikke.exe\"}]",
|
||||||
"install_script": "{\"script_content\":{\"executable\":[]}}",
|
"install_script": "{\"script_content\":{\"executable\":[]}}",
|
||||||
"installer_size": "352461033",
|
"installer_size": "361649767",
|
||||||
"installed_size": "790247240",
|
"installed_size": "854972912",
|
||||||
"publish_time_in_unix": "1749655317",
|
"publish_time_in_unix": "1750731475",
|
||||||
"is_first_version_in_branch": "1",
|
"is_first_version_in_branch": "1",
|
||||||
"version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"ko\",\"text\":\"\"}]",
|
"version_description": "[{\"lang_code\":\"en\",\"text\":\"\"},{\"lang_code\":\"ja\",\"text\":\"\"},{\"lang_code\":\"ko\",\"text\":\"\"}]",
|
||||||
"update_type": 0
|
"update_type": 0
|
||||||
|
|||||||
Reference in New Issue
Block a user