Skip to content

Commit 0b29ac9

Browse files
fix
1 parent aa17ffd commit 0b29ac9

File tree

2 files changed

+56
-50
lines changed

2 files changed

+56
-50
lines changed

UnrealDemoScanner/UnrealDemoScanner.cs

Lines changed: 51 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ namespace DemoScanner.DG
2828
public static class DemoScanner
2929
{
3030
public const string PROGRAMNAME = "Unreal Demo Scanner";
31-
public const string PROGRAMVERSION = "1.75.2b";
31+
public const string PROGRAMVERSION = "1.75.4b";
3232

3333
public static string FoundNewVersion = "";
3434

@@ -536,7 +536,7 @@ public PrimHistory(float prim, float att)
536536

537537
public struct CmdHistory
538538
{
539-
public int frameNextNum;
539+
public int cmdFrameId;
540540
public float cmdTime;
541541
public string cmdStr;
542542
// 0 - user, 1 - server, 2 - by scanner
@@ -1492,30 +1492,19 @@ public static void CheckConsoleCommand(string s2, bool isstuff = false)
14921492
if (LastStuffCmdCommand != "" && s == LastStuffCmdCommand.Trim().TrimBad())
14931493
{
14941494
LastStuffCmdCommand = "";
1495-
CommandHistory.Add(new CmdHistory { frameNextNum = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 1 });
1496-
if (CommandHistory.Count > 1)
1497-
{
1498-
var tmpCmd = CommandHistory[CommandHistory.Count - 2];
1499-
tmpCmd.frameNextNum = CurrentFrameId;
1500-
CommandHistory[CommandHistory.Count - 2] = tmpCmd;
1501-
}
1495+
CommandHistory.Add(new CmdHistory { cmdFrameId = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 1 });
15021496
return;
15031497
}
15041498

15051499
LastStuffCmdCommand = "";
1500+
15061501
if (isstuff)
15071502
{
1508-
CommandHistory.Add(new CmdHistory { frameNextNum = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 2 });
1503+
CommandHistory.Add(new CmdHistory { cmdFrameId = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 2 });
15091504
}
15101505
else
15111506
{
1512-
CommandHistory.Add(new CmdHistory { frameNextNum = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 0 });
1513-
}
1514-
if (CommandHistory.Count > 1)
1515-
{
1516-
var tmpCmd = CommandHistory[CommandHistory.Count - 2];
1517-
tmpCmd.frameNextNum = CurrentFrameId;
1518-
CommandHistory[CommandHistory.Count - 2] = tmpCmd;
1507+
CommandHistory.Add(new CmdHistory { cmdFrameId = CurrentFrameId, cmdTime = LastKnowRealTime, cmdStr = s, cmdSource = 0 });
15191508
}
15201509

15211510
if (sLower == "-showscores")
@@ -8951,65 +8940,83 @@ следующий кадр изменение и 5 кадров нет движ
89518940
List<string> CommandsDump = new List<string>();
89528941
CommandsDump.Add("This file created by Unreal Demo Scanner\n\n");
89538942

8954-
int prevFrameNum = 0;
8955-
float prevCmdTime = 0.0f;
8956-
foreach (var cmd in CommandHistory)
8943+
//CommandHistory.Add(CommandHistory[CommandHistory.Count - 1]);
8944+
8945+
for (int i = 1; i < CommandHistory.Count; i++)
89578946
{
8958-
string timeCmdStr = "[ERROR]";
8947+
var cur_cmd = CommandHistory[i];
8948+
var prev_cmd = CommandHistory[i - 1];
89598949

8960-
if (prevFrameNum == 0)
8961-
{
8962-
prevFrameNum = cmd.frameNextNum;
8963-
prevCmdTime = cmd.cmdTime;
8964-
}
8950+
string timeCmdStr = "[ERROR]";
89658951

89668952
try
89678953
{
8968-
var t = TimeSpan.FromSeconds(cmd.cmdTime);
8954+
var t = TimeSpan.FromSeconds(cur_cmd.cmdTime);
89698955
timeCmdStr = string.Format("{0:D2}h:{1:D2}m:{2:D2}s:{3:D3}ms", t.Hours,
89708956
t.Minutes, t.Seconds, t.Milliseconds);
89718957
}
89728958
catch
89738959
{ }
89748960

8975-
if (abs(prevCmdTime - cmd.cmdTime) > 1.0f)
8961+
bool foundIllegal = false;
8962+
string combinedCmdStr = prev_cmd.cmdStr;
8963+
8964+
if (cur_cmd.cmdSource == 0 && cur_cmd.cmdStr.IndexOf(';') > -1)
8965+
{
8966+
foundIllegal = true;
8967+
}
8968+
8969+
while (i < CommandHistory.Count && prev_cmd.cmdFrameId == cur_cmd.cmdFrameId
8970+
&& prev_cmd.cmdSource == cur_cmd.cmdSource)
8971+
{
8972+
if (cur_cmd.cmdSource == 0 && cur_cmd.cmdStr.IndexOf(';') > -1)
8973+
{
8974+
foundIllegal = true;
8975+
}
8976+
8977+
combinedCmdStr += ";" + cur_cmd.cmdStr;
8978+
8979+
i++;
8980+
if (i < CommandHistory.Count)
8981+
{
8982+
prev_cmd = cur_cmd;
8983+
cur_cmd = CommandHistory[i];
8984+
}
8985+
}
8986+
8987+
int waitTime = cur_cmd.cmdFrameId - prev_cmd.cmdFrameId;
8988+
8989+
if (Math.Abs(prev_cmd.cmdTime - cur_cmd.cmdTime) < 1.0f)
89768990
{
89778991
if (IsRussia)
89788992
{
8979-
CommandsDump.Add(timeCmdStr + " [НОМЕР КАДРА: " + cmd.frameNextNum + "] : " + cmd.cmdStr + ";wait" + (cmd.frameNextNum - prevFrameNum) + ";" + "(" +
8980-
cmd.cmdTime + ")" + (cmd.cmdSource == 1 ?
8981-
" --> ВЫПОЛНЕНО СЕРВЕРОМ" : cmd.cmdSource == 2 ? " --> ВЫПОЛНЕНО ЧЕРЕЗ STUFFTEXT" : ""));
8993+
CommandsDump.Add(timeCmdStr + " [НОМЕР КАДРА: " + prev_cmd.cmdFrameId + "] : " + combinedCmdStr + ";wait" + waitTime + ";" + (prev_cmd.cmdSource == 1 ?
8994+
" --> ВЫПОЛНЕНО СЕРВЕРОМ" : prev_cmd.cmdSource == 2 ? " --> ВЫПОЛНЕНО ЧЕРЕЗ STUFFTEXT" : ""));
89828995
}
89838996
else
89848997
{
8985-
CommandsDump.Add(timeCmdStr + " [FRAME NUMBER: " + cmd.frameNextNum + "] : " + cmd.cmdStr + ";wait" + (cmd.frameNextNum - prevFrameNum) + ";" + "(" +
8986-
cmd.cmdTime + ")" + (cmd.cmdSource == 1 ?
8987-
" --> EXECUTED BY SERVER" : cmd.cmdSource == 2 ? " --> EXECUTED BY SERVER" : ""));
8998+
CommandsDump.Add(timeCmdStr + " [FRAME NUMBER: " + prev_cmd.cmdFrameId + "] : " + combinedCmdStr + ";wait" + waitTime + ";" + (prev_cmd.cmdSource == 1 ?
8999+
" --> EXECUTED BY SERVER" : prev_cmd.cmdSource == 2 ? " --> EXECUTED BY STUFFTEXT" : ""));
89889000
}
89899001
}
89909002
else
89919003
{
89929004
if (IsRussia)
89939005
{
8994-
CommandsDump.Add(timeCmdStr + " [НОМЕР КАДРА: " + cmd.frameNextNum + "] : " + cmd.cmdStr + ";" + "(" +
8995-
cmd.cmdTime + ")" + (cmd.cmdSource == 1 ?
8996-
" --> ВЫПОЛНЕНО СЕРВЕРОМ" : cmd.cmdSource == 2 ? " --> ВЫПОЛНЕНО ЧЕРЕЗ STUFFTEXT" : ""));
9006+
CommandsDump.Add(timeCmdStr + " [НОМЕР КАДРА: " + prev_cmd.cmdFrameId + "] : " + combinedCmdStr + ";" + (prev_cmd.cmdSource == 1 ?
9007+
" --> ВЫПОЛНЕНО СЕРВЕРОМ" : prev_cmd.cmdSource == 2 ? " --> ВЫПОЛНЕНО ЧЕРЕЗ STUFFTEXT" : ""));
89979008
}
89989009
else
89999010
{
9000-
CommandsDump.Add(timeCmdStr + " [FRAME NUMBER: " + cmd.frameNextNum + "] : " + cmd.cmdStr + ";" + "(" +
9001-
cmd.cmdTime + ")" + (cmd.cmdSource == 1 ?
9002-
" --> EXECUTED BY SERVER" : cmd.cmdSource == 2 ? " --> EXECUTED BY SERVER" : ""));
9011+
CommandsDump.Add(timeCmdStr + " [FRAME NUMBER: " + prev_cmd.cmdFrameId + "] : " + combinedCmdStr + ";" + (prev_cmd.cmdSource == 1 ?
9012+
" --> EXECUTED BY SERVER" : prev_cmd.cmdSource == 2 ? " --> EXECUTED BY STUFFTEXT" : ""));
90039013
}
90049014
}
90059015

9006-
if (cmd.cmdSource == 0 && cmd.cmdStr.IndexOf(';') > -1)
9016+
if (foundIllegal)
90079017
{
90089018
CommandsDump[CommandsDump.Count - 1] += " [ILLEGAL!!]";
90099019
}
9010-
9011-
prevCmdTime = cmd.cmdTime;
9012-
prevFrameNum = cmd.frameNextNum;
90139020
}
90149021

90159022
var textdatapath = CurrentDemoFilePath.Remove(CurrentDemoFilePath.Length - 4) +

UnrealDemoScanner/UnrealDemoScanner.csproj

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@
4242
<PropertyGroup>
4343
<ManifestCertificateThumbprint>6E93957E0B8D90149B2EC282DD300092259499CE</ManifestCertificateThumbprint>
4444
</PropertyGroup>
45+
<PropertyGroup>
46+
<IsPublishable>True</IsPublishable>
47+
</PropertyGroup>
4548
<PropertyGroup>
4649
<ManifestKeyFile>
4750
</ManifestKeyFile>
@@ -63,22 +66,18 @@
6366
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
6467
<CodeAnalysisRuleSet>
6568
</CodeAnalysisRuleSet>
66-
<FileAlignment>512</FileAlignment>
6769
<RunCodeAnalysis>false</RunCodeAnalysis>
6870
<WarningLevel>6</WarningLevel>
69-
<NoWarn />
70-
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
71-
<IsPublishable>True</IsPublishable>
7271
<Prefer32Bit>True</Prefer32Bit>
72+
<IsPublishable>True</IsPublishable>
7373
</PropertyGroup>
7474
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x86'">
7575
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
7676
<WarningLevel>6</WarningLevel>
7777
<NoWarn />
7878
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
79-
<FileAlignment>512</FileAlignment>
80-
<IsPublishable>True</IsPublishable>
8179
<Prefer32Bit>True</Prefer32Bit>
80+
<IsPublishable>True</IsPublishable>
8281
</PropertyGroup>
8382
<ItemGroup>
8483
<Compile Remove="EntitiesPreviewWindow.cs" />

0 commit comments

Comments
 (0)