Page 1 of 2

Daily Report Tool

Posted: Wed Aug 03, 2022 12:23 pm
by 12doze12
What is this
This is a Combat and Operations reporter tool for WITP, listing all reports and events occurring in each day of a WITP campaign. It is essentially the same as the Combat Reporter by bretg80: https://www.matrixgames.com/forums/view ... 8&t=180804

Why make this if Combat Reporter exists
  • In every campaign I have run with Combat Reporter I eventually encountered errors (possibly parsing errors) that stopped the tool from working.
  • Some types of reports didnt have map view of where they occurred, some were missing altogether.
  • Many people have trouble running it because of Java
Requirements
Windows 7 and above, .NET 6.0 (windows should auto update this, if not this application will point you to where to install it), minimum screen resolution of 1366x768

Install and Setup
  • Extract the folder anywhere
  • Run WITPDay.exe
  • Set your WITP Directory. This is the root directory of WITP, where the game exe resides. See the example below
Note: You need to have the "-archive" switch enabled on your WITP executable for it to store the daily combat and operations reports used by this application.

Image

Appeal
I've only been able to test this on small campaign logs, if you have a long running campaign (2+ years game time) I would appreciate if you can send me your SAVE/archive folder so I can stress test the application.

Screenshots

Image

Image

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 2:38 pm
by Nomad
I had to update the net

Malwarebytes flagged it as malware.

Nothing but errors when I tried to set the directory
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.AggregateException: One or more errors occurred. (Specified argument was out of the range of valid values. (Parameter 'start')) (Specified argument was out of the range of valid values. (Parameter 'start'))
---> System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter 'start')
at WITPDay.Form1.StringBetween(String STR, String FirstString, String LastString)
at WITPDay.Form1.<>c__DisplayClass20_0.<LoadHistory>b__5(Int32 i)
at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)
--- End of stack trace from previous location ---
at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)
at System.Threading.Tasks.TaskReplicator.Replica.Execute()
--- End of inner exception stack trace ---
at System.Threading.Tasks.TaskReplicator.Run[TState](ReplicatableUserAction`1 action, ParallelOptions options, Boolean stopOnFirstFailure)
at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
--- End of stack trace from previous location ---
at System.Threading.Tasks.Parallel.ThrowSingleCancellationExceptionOrOtherException(ICollection exceptions, CancellationToken cancelToken, Exception otherException)
at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Parallel.For(Int32 fromInclusive, Int32 toExclusive, Action`1 body)
at WITPDay.Form1.LoadHistory(String path, Int32 side)
at WITPDay.Form1.button1_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, WM msg, IntPtr wparam, IntPtr lparam)
---> (Inner Exception #1) System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. (Parameter 'start')
at WITPDay.Form1.StringBetween(String STR, String FirstString, String LastString)
at WITPDay.Form1.<>c__DisplayClass20_0.<LoadHistory>b__5(Int32 i)
at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)
--- End of stack trace from previous location ---
at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`1.<ForWorker>b__1(RangeWorker& currentWorker, Int32 timeout, Boolean& replicationDelegateYieldedBeforeCompletion)
at System.Threading.Tasks.TaskReplicator.Replica.Execute()<---



************** Loaded Assemblies **************
System.Private.CoreLib
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Private.CoreLib.dll
----------------------------------------
WITPDay
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///D:/War%20in%20the%20Pacfic%20Admirals%20Edition/PBEM%20xargun%20400%20point%20scen%202/tools/WITPDayReporter/WITPDay.dll
----------------------------------------
System.Runtime
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Runtime.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 6.0.2.0
Win32 Version: 6.0.722.32203
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/System.Windows.Forms.dll
----------------------------------------
System.ComponentModel.Primitives
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.ComponentModel.Primitives.dll
----------------------------------------
System.Windows.Forms.Primitives
Assembly Version: 6.0.2.0
Win32 Version: 6.0.722.32203
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/System.Windows.Forms.Primitives.dll
----------------------------------------
System.Runtime.InteropServices
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Runtime.InteropServices.dll
----------------------------------------
System.Drawing.Primitives
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Drawing.Primitives.dll
----------------------------------------
System.Collections.Specialized
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Collections.Specialized.dll
----------------------------------------
System.Threading
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Threading.dll
----------------------------------------
System.Diagnostics.TraceSource
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Diagnostics.TraceSource.dll
----------------------------------------
System.Collections
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Collections.dll
----------------------------------------
System.Drawing.Common
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/System.Drawing.Common.dll
----------------------------------------
Microsoft.Win32.Primitives
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/Microsoft.Win32.Primitives.dll
----------------------------------------
System.ComponentModel.EventBasedAsync
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.ComponentModel.EventBasedAsync.dll
----------------------------------------
System.Threading.Thread
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Threading.Thread.dll
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 6.0.722.32203
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/Accessibility.dll
----------------------------------------
System.ComponentModel.TypeConverter
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.ComponentModel.TypeConverter.dll
----------------------------------------
System.Numerics.Vectors
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Numerics.Vectors.dll
----------------------------------------
System.Memory
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Memory.dll
----------------------------------------
System.ComponentModel
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.ComponentModel.dll
----------------------------------------
System.Resources.Extensions
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/System.Resources.Extensions.dll
----------------------------------------
System.Drawing
Assembly Version: 6.0.2.0
Win32 Version: 6.0.722.32203
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/System.Drawing.dll
----------------------------------------
System.ObjectModel
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.ObjectModel.dll
----------------------------------------
System.Linq
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Linq.dll
----------------------------------------
Microsoft.Win32.SystemEvents
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.WindowsDesktop.App/6.0.7/Microsoft.Win32.SystemEvents.dll
----------------------------------------
System.Private.Uri
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Private.Uri.dll
----------------------------------------
System.Collections.NonGeneric
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Collections.NonGeneric.dll
----------------------------------------
System.Runtime.CompilerServices.Unsafe
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Runtime.CompilerServices.Unsafe.dll
----------------------------------------
System.Threading.ThreadPool
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Threading.ThreadPool.dll
----------------------------------------
System.Collections.Concurrent
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Collections.Concurrent.dll
----------------------------------------
System.Threading.Tasks.Parallel
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Threading.Tasks.Parallel.dll
----------------------------------------
System.Diagnostics.Tracing
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Diagnostics.Tracing.dll
----------------------------------------
System.Runtime.Loader
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Runtime.Loader.dll
----------------------------------------
System.Diagnostics.StackTrace
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Diagnostics.StackTrace.dll
----------------------------------------
System.Reflection.Metadata
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Reflection.Metadata.dll
----------------------------------------
System.Collections.Immutable
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Collections.Immutable.dll
----------------------------------------
System.Diagnostics.FileVersionInfo
Assembly Version: 6.0.0.0
Win32 Version: 6.0.722.32202
CodeBase: file:///C:/Program%20Files/dotnet/shared/Microsoft.NETCore.App/6.0.7/System.Diagnostics.FileVersionInfo.dll
----------------------------------------

************** JIT Debugging **************



Re: Daily Report Tool

Posted: Wed Aug 03, 2022 3:56 pm
by 12doze12
Yeah quite expected would get flagged, probably because it uses IO

Can you send your archive folder? Probably some obscure report failing to parse
Nomad wrote: Wed Aug 03, 2022 2:38 pm I had to update the net

Malwarebytes flagged it as malware.

Nothing but errors when I tried to set the directory

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 4:11 pm
by Nomad
Here it is
archive_2.zip
(3.43 MiB) Downloaded 38 times
I also tried it on a second game with the same result

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 4:37 pm
by 12doze12
Nomad wrote: Wed Aug 03, 2022 4:11 pm Here it is

archive_2.zip

I also tried it on a second game with the same result
Thank you Nomad, updated download link with fix ;)
Was missing parser for report of encountering minefield at a hex, not a base

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 4:46 pm
by Nomad
Still errors, I put the errors into a text doc.
Second error message.txt
(11.71 KiB) Downloaded 18 times

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 4:52 pm
by BananaConvention
I like what you’re doing here. I appreciate you’re making tools for this game in 2022. I want to support you project. Once you have this program working reliably, please let me know, and I’ll put together a YouTube video in my WitP Tutorial playlist talking about what this is, how it works, and how to get it running. We can work together on it if you want. Let me know.

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 5:17 pm
by 12doze12
Nomad wrote: Wed Aug 03, 2022 4:46 pm Still errors, I put the errors into a text doc.

Second error message.txt
Is that with the archive you sent me? After the fix I can fully load your archive fine.
BananaConvention wrote: Wed Aug 03, 2022 4:52 pm I like what you’re doing here. I appreciate you’re making tools for this game in 2022. I want to support you project. Once you have this program working reliably, please let me know, and I’ll put together a YouTube video in my WitP Tutorial playlist talking about what this is, how it works, and how to get it running. We can work together on it if you want. Let me know.
Thank you, sure I would appreciate it being featured on your tutorial videos :)

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 5:57 pm
by Nomad
Yes, it is the same archive. No new files added yet

I redownloaded the program files and I still get the errors. I have no idea what is wrong.

Something new that is interesting, I move all the archive file to a temp folder and then moved the last 4 back into the archive folder and they loaded fine.

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 7:09 pm
by 12doze12
Nomad wrote: Wed Aug 03, 2022 5:57 pm Yes, it is the same archive. No new files added yet

I redownloaded the program files and I still get the errors. I have no idea what is wrong.

Something new that is interesting, I move all the archive file to a temp folder and then moved the last 4 back into the archive folder and they loaded fine.
Do you have any non .txt files in the archive folder? I believe that's the issue. Anyway I updated the application to ignore non .txt files.

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 7:11 pm
by Nomad
So now it seems to work for me with a small number of days loaded.

The biggest gripe I have now is that it does not remember my settings. I have to tell it I am Allies every time and I have to select the directory each time I open it. You need a configuration file for this.

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 7:18 pm
by Nomad
12doze12 wrote: Wed Aug 03, 2022 7:09 pm
Nomad wrote: Wed Aug 03, 2022 5:57 pm Yes, it is the same archive. No new files added yet

I redownloaded the program files and I still get the errors. I have no idea what is wrong.

Something new that is interesting, I move all the archive file to a temp folder and then moved the last 4 back into the archive folder and they loaded fine.
Do you have any non .txt files in the archive folder? I believe that's the issue. Anyway I updated the application to ignore non .txt files.
The only thing that was not a txt file was a folder for holding all the reports. I tried moving it, but it made no difference.
It works with the last 4 days loaded, so I will continue to use it and see what happens as I add more days

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 7:27 pm
by 12doze12
Nomad wrote: Wed Aug 03, 2022 7:18 pm The only thing that was not a txt file was a folder for holding all the reports. I tried moving it, but it made no difference.
It works with the last 4 days loaded, so I will continue to use it and see what happens as I add more days
Okay, I wonder because in the zip you sent there is a archive.zip inside too

Image

But could be something else
Nomad wrote: Wed Aug 03, 2022 7:11 pm The biggest gripe I have now is that it does not remember my settings. I have to tell it I am Allies every time and I have to select the directory each time I open it. You need a configuration file for this.
Yeah that's a great suggestion, shouldn't take long to add :)

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 7:29 pm
by Nomad
I took it out also, I just tried again with the entire archive set, but I got errors again. Not sure why.

One more time, I deleted the existing program files, I downloaded the program files and unzipped them. I moved all the archive files back and I still get errors. Sorry, I have no idea why, but I really do not need the old files, so I will just go from using the last 4 days and see what happens. We must have some difference in our setups that are causing a problem. It is not that important.

I would be interested to see if others have the same problem or not.

Re: Daily Report Tool

Posted: Wed Aug 03, 2022 8:58 pm
by 12doze12
Added settings file so only have to set path and side once, subsequent loadings will automatically load.
Nomad wrote: Wed Aug 03, 2022 7:29 pm I took it out also, I just tried again with the entire archive set, but I got errors again. Not sure why.

One more time, I deleted the existing program files, I downloaded the program files and unzipped them. I moved all the archive files back and I still get errors. Sorry, I have no idea why, but I really do not need the old files, so I will just go from using the last 4 days and see what happens. We must have some difference in our setups that are causing a problem. It is not that important.

I would be interested to see if others have the same problem or not.
Really quite odd I cant reproduce the error on my end. Let's see if someone else has issues.

Re: Daily Report Tool

Posted: Thu Aug 04, 2022 11:56 pm
by frontsoldaten
Congrats on this, it's a very useful program. Had to update the net as well and add -archive to a game I just started but install was easy. Had problems with Combat Reporter in the past with the map view feature but yours works well.

Re: Daily Report Tool

Posted: Fri Aug 05, 2022 4:38 pm
by BananaConvention
I’ll be trying it out tomorrow and can hopefully get a tutorial video on YT up this weekend!

Re: Daily Report Tool

Posted: Fri Aug 05, 2022 5:08 pm
by 12doze12
Update
  • Fix Ground Combat reports not being generated
frontsoldaten wrote: Thu Aug 04, 2022 11:56 pm Congrats on this, it's a very useful program. Had to update the net as well and add -archive to a game I just started but install was easy. Had problems with Combat Reporter in the past with the map view feature but yours works well.
Thank you, glad you are finding it useful :)

Re: Daily Report Tool

Posted: Sun Aug 07, 2022 1:41 am
by 12doze12
Update
  • Fix some "near" reports pointing map to nearby base instead of hex

Re: Daily Report Tool

Posted: Sun Aug 07, 2022 3:00 am
by Nomad
Need to report, I now have the last 31 days of my PBEM available and it seems to be working properly.

Some way to limit the number of days presented will be useful in the near future.