Update AA synchronization, CW progression and diagnostics

This commit is contained in:
CAtlas0784 committed 2026-10-30 19:19:05 +07:00
1 parent 67a819a4d3
commit 30bee81fe9
30 files changed
+1143 -55

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
do if not _G.__gacAAPeakCache1 then _G.__gacAAPeakCache1=true
local ok,e=pcall(function()
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengePeakModule
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
local t=m:GetType();local fields=t:GetFields(flags)
for i=0,fields.Length-1 do local f=fields[i];local v=f:GetValue(m);CS.UnityEngine.Debug.Log('[GAC_AA_CACHE] FIELD '..f.Name..' '..tostring(f.FieldType)..' '..tostring(v))end
local methods=t:GetMethods(flags)
for i=0,methods.Length-1 do local f=methods[i];if string.find(f.Name,'GetChallengePeakData') or string.find(f.Name,'CurrentPeak') or string.find(f.Name,'Clear') or string.find(f.Name,'Reset') then CS.UnityEngine.Debug.Log('[GAC_AA_CACHE] METHOD '..tostring(f)..' HANDLE '..tostring(f.MethodHandle.Value))end end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_AA_CACHE] ERROR '..tostring(e))end
end end
+9
View File
@@ -0,0 +1,9 @@
do if not _G.__gacAAStatusNow1 then _G.__gacAAStatusNow1=true
local ok,e=pcall(function()
local d=_G.__GAC_AA_ROUND_REFRESH
local st=_G.__GAC_AA_ROUND_REFRESH_STATE
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengePeakModule
CS.UnityEngine.Debug.Log('[GAC_AA_STATUS_NOW] current='..tostring(m and m.CurrentPeakGroupID)..' desired='..tostring(d and d.desired_group)..' deferred='..tostring(d and d.deferred)..' pending='..tostring(st and st.pending~=nil)..' error='..tostring(_G.__GAC_AA_ROUND_REFRESH_ERROR))
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_AA_STATUS_NOW] ERROR '..tostring(e))end
end end
+11
View File
@@ -0,0 +1,11 @@
do if not _G.__gacScheduleAccess1 then _G.__gacScheduleAccess1=true
local ok,e=pcall(function()
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengeModule
local methods=m:GetType():GetMethods(flags)
for i=0,methods.Length-1 do local x=methods[i];if string.find(x.Name,'GroupData')then CS.UnityEngine.Debug.Log('[GAC_SCHEDULE_ACCESS] '..tostring(x))end end
local tm=CS.RPG.Client.GlobalVars.s_TimeManager
if tm then local props=tm:GetType():GetProperties(flags);for i=0,props.Length-1 do local p=props[i];if p:GetIndexParameters().Length==0 and (string.find(p.Name,'Stamp') or string.find(p.Name,'Time')) then local ok,v=pcall(function()return p:GetValue(tm,nil)end);CS.UnityEngine.Debug.Log('[GAC_CLOCK_CLIENT] '..p.Name..' '..tostring(ok)..' '..tostring(v))end end end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_SCHEDULE_ACCESS] ERROR '..tostring(e))end
end end
+18
View File
@@ -0,0 +1,18 @@
do
local s=_G.__gacScheduleGroup1 or {i=1};_G.__gacScheduleGroup1=s
if s.i>3 then return end
local k=s.i;s.i=k+1
local ok,e=pcall(function()
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengeModule
local kind=CS.System.Enum.ToObject(typeof(CS.RPG.GameCore.ChallengeGroupType),k)
local g=m:GetLatestScheduleChallengeGroupDataByGroupType(kind)
if not g then return end
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
local props=g:GetType():GetProperties(flags)
for i=0,props.Length-1 do local p=props[i];if p:GetIndexParameters().Length==0 then
local n=string.lower(p.Name)
if string.find(n,'schedule') or string.find(n,'time') or string.find(n,'begin') or string.find(n,'end') or string.find(n,'row') or string.find(n,'meta') then local ok,v=pcall(function()return p:GetValue(g,nil)end);CS.UnityEngine.Debug.Log('[GAC_GROUP_SCHEDULE] '..k..' '..p.Name..' '..tostring(p.PropertyType)..' '..tostring(ok)..' '..tostring(v));if ok and v and (string.find(n,'schedule') or string.find(n,'row')) then local j,txt=pcall(function()return CS.Newtonsoft.Json.JsonConvert.SerializeObject(v)end);if j then CS.UnityEngine.Debug.Log('[GAC_GROUP_SCHEDULE_JSON] '..k..' '..p.Name..' '..txt)end end end
end end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_GROUP_SCHEDULE] ERROR '..tostring(e))end
end
+12
View File
@@ -0,0 +1,12 @@
do
if not _G.__gacScheduleSurface1 then
_G.__gacScheduleSurface1=true
local ok,e=pcall(function()
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengeModule
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
local methods=m:GetType():GetMethods(flags)
for i=0,methods.Length-1 do local x=methods[i];if string.find(string.lower(x.Name),'schedule') or string.find(string.lower(x.Name),'time') or string.find(string.lower(x.Name),'open') then CS.UnityEngine.Debug.Log('[GAC_SCHEDULE_SURFACE] '..tostring(x)) end end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_SCHEDULE_SURFACE] ERROR '..tostring(e)) end
end
end
+12
View File
@@ -0,0 +1,12 @@
-- Bounded read-only schedule probe; remove after capture.
do
local s=_G.__gacEndgameTime8 or {i=1};_G.__gacEndgameTime8=s
local ids={100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,900,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023}
if s.i>#ids then return end
for count=1,8 do if s.i>#ids then return end;local id=ids[s.i];s.i=s.i+1
local ok,e=pcall(function()
local row=CS.RPG.GameCore.ChallengeGroupConfigExcelTable.GetData(id)
local kind=CS.System.Convert.ToInt32(row.ChallengeGroupType);if row and row.ScheduleDataID~=0 and kind>=1 and kind<=3 then local tables={CS.RPG.GameCore.ScheduleDataChallengeMazeConfigExcelTable,CS.RPG.GameCore.ScheduleDataChallengeStoryConfigExcelTable,CS.RPG.GameCore.ScheduleDataChallengeBossConfigExcelTable};local schedule=tables[kind].GetData(row.ScheduleDataID);CS.UnityEngine.Debug.Log('[GAC_ENDGAME_SCHEDULE] '..id..' '..CS.Newtonsoft.Json.JsonConvert.SerializeObject(schedule)) end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_ENDGAME_TIME] ERROR '..tostring(e));s.i=#ids+1 end
end end
+22
View File
@@ -0,0 +1,22 @@
do
local s=_G.__gacWindowCapture2 or {i=1};_G.__gacWindowCapture2=s
local ids={100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,900,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023}
if s.i>#ids then return end
local m=CS.RPG.Client.GlobalVars.s_ModuleManager.ChallengeModule
for n=1,8 do
if s.i>#ids then return end
local id=ids[s.i];s.i=s.i+1
local ok,e=pcall(function()
local g=m:GetChallengeGroupData(id)
if g and g.IsScheduleChallenge then
CS.UnityEngine.Debug.Log('[GAC_ENDGAME_WINDOW] '..id..' '..g.BeginTimeStamp..' '..g.EndTimeStamp)
if id==ids[#ids] then
local flags=CS.System.Enum.ToObject(typeof(CS.System.Reflection.BindingFlags),60)
local props=g:GetType():GetProperties(flags)
for i=0,props.Length-1 do local p=props[i];if p.PropertyType==typeof(CS.System.Boolean) and p:GetIndexParameters().Length==0 then local ok,v=pcall(function()return p:GetValue(g,nil)end);CS.UnityEngine.Debug.Log('[GAC_GROUP_BOOL] '..p.Name..' '..tostring(ok)..' '..tostring(v))end end
end
end
end)
if not ok then CS.UnityEngine.Debug.Log('[GAC_ENDGAME_WINDOW] ERROR '..id..' '..tostring(e));s.i=#ids+1;return end
end
end