Log in

View Full Version : [REL] SH4 Validator


TheDarkWraith
09-07-11, 11:45 PM
SH Validator v2.0.3 (something I made for SH5 that I ported over to SH4)

This app will verify your SH3/4/5 installation for common errors/bugs. It's best used after you have installed mods to see if anything was 'broke'.

Is it perfect? No. There is much more to code in for checking but as is it's very useful :D

It's very easy to use. Once you run the app it will immediately start validating your SH3/4/5 installation. Any errors reported can be found in associated boxes (plus the box will tell you how many errors are contained in it).

The app now lets you select the path to the install folder or have it read from registry

The app now also displays the .exe file version in the title bar

The app now lets you choose to validate SH3, SH4, or SH5

starting with v1.7.0 you can now save the errors to a text file (after validation is complete you'll have option to save errors). You also have the ability to add missing files from the classes to an ignore list (I've predefined some files for the ignore list that are not required for the game)

starting with v1.9.0 the log file generated now shows the countries defined, all the classes and types defined, and a breakdown of the roster (Country and units defined). This will greatly benefit modders and those curious to see what each country has. I've also made the textboxes more user friendly by enabling horizontal scrolling and indenting entries. A menu bar has been added that will allow you to save the log file (again) and re-validate (choosing which SH version) without having to close the app down and restart.

If you find the app useful then :yeah: If you don't then :yeah: also!

http://www.subsim.com/radioroom/picture.php?albumid=446&pictureid=4838

The above was ran on SH4 1.4 version of game


NOTE: Errors in the classes have to be interpreted. Some files are not required for some units. If you encounter errors in the classes and you have questions as to whether they are valid or not please post those questions to this thread.

v2.0.3: http://www.gamefront.com/files/20758151/SHValidator_2_0_3_by_TheDarkWraith_zip


How to interpret and fix common errors:

DefSide errors: http://www.subsim.com/radioroom/showpost.php?p=1743668&postcount=26

Non-sequential ordering/duplicate entries: http://www.subsim.com/radioroom/showpost.php?p=1743692&postcount=27

Campaign errors:
Type x not defined in y: http://www.subsim.com/radioroom/showpost.php?p=1745534&postcount=41

:|\\

JapLance
09-08-11, 01:32 AM
Thanks TDW, that is sure very useful :up:.

Gibus
09-08-11, 01:41 AM
Thank you for this utility. Handle with care.

JapLance
09-08-11, 05:24 AM
I did a test with a brand new install of SH4+UBM 1.5, and has worked great. It even found a couple of minor mistakes :haha:.

Also fine with TMO 2.2

But when I added Lurkers's RSRDC for TMO I got an error:

Unhandled exception has occurred in your aplication. If you click Continue, the application will ignore this error and attemptto continue. If you click Quit, the application will close immediately.

Object reference not set to an instance of an object

Then, in the details section, this was the message:


See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at TheDarkWraith.SilentHunter5.SH5Validator.FindEntry InFileStartingAtHeader(String filepath, String header, String parameter, Boolean findvalue, String comment)
at TheDarkWraith.SilentHunter5.SH5Validator.ValidateR oster()
at TheDarkWraith.SilentHunter5.SH5Validator.SH5Valida tor_Shown(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnShown(EventArgs e)
at System.Windows.Forms.Form.CallShownEvent()
at System.Windows.Forms.Control.InvokeMarshaledCallba ckDo(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallba ckHelper(Object obj)
at System.Threading.ExecutionContext.runTryCode(Objec t userData)
at System.Runtime.CompilerServices.RuntimeHelpers.Exe cuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.ExecutionContext.RunInternal(Exec utionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionCon text executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallba ck(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallba cks()


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3623 (GDR.050727-3600)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
SHValidator
Assembly Version: 2.0.0.0
Win32 Version: 2.0.0.0
CodeBase: file:///D:/JUEGOS/SH4/TDW_SHValidator_2_0_0/SHValidator.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3623 (GDR.050727-3600)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3624 (GDR.050727-3600)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Accessibility
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3082 (QFE.050727-3000)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Core
Assembly Version: 3.5.0.0
Win32 Version: 3.5.30729.1 built by: SP
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

I clicked on continue but the app seems to have stopped.

I got similar error with WDAD, but not with OM (another Lurker's mod), which continued until the end of the validating process. My OS is Windows XP Home+SP3.

TheDarkWraith
09-08-11, 10:12 AM
sounds like a big fat juicy error is waiting to be found in one of those files and I'm not looking for it :D I'll update the app based on the information given :up:

TheDarkWraith
09-08-11, 11:59 AM
v2.0.1 released. See post #1 for details :|\\

This fixes problem of unhandled exception posted above (was an error in a game file just waiting to be found :DL)

JapLance
09-09-11, 02:06 AM
Great. No more errors now :yeah:.

indy
09-22-11, 10:17 AM
Classes errors:
C:\Program Files\Ubisoft\Silent Hunter Wolves of the Pacific\data\Sea\Float_Plane_H6K\Float_Plane_H6K.e qp doesn't exist!
C:\Program Files\Ubisoft\Silent Hunter Wolves of the Pacific\data\Sea\NKSQ_\NKSQ_.eqp doesn't exist!
C:\Program Files\Ubisoft\Silent Hunter Wolves of the Pacific\data\Sea\NOM_Paula\NOM_Paula.eqp doesn't exist!
C:\Program Files\Ubisoft\Silent Hunter Wolves of the Pacific\data\Land\LCD_SmallJP\LCD_SmallJP.eqp doesn't exist!
C:\Program Files\Ubisoft\Silent Hunter Wolves of the Pacific\data\Land\LCD_SmallJP\LCD_SmallJP.sns doesn't exist!

Can anyone please tell me how to fix these errors, or do they matter, this is for the stock game 1.5 thanks Indy

andy_311
09-22-11, 07:00 PM
C:\Silent Hunter 4 Wolves of the Pacific\data\Sea\Float_Plane_H6K\Float_Plane_H6K.e qp doesn't exist!
C:\Silent Hunter 4 Wolves of the Pacific\data\Sea\NBB_Nagato\NBB_Nagato.eqp does not contain sequentially ordered entries (found duplicate [Equipment 48]) @ line number 289
C:\Silent Hunter 4 Wolves of the Pacific\data\Sea\NKSQ_\NKSQ_.eqp doesn't exist!
C:\Silent Hunter 4 Wolves of the Pacific\data\Sea\NOM_Paula\NOM_Paula.eqp doesn't exist!
C:\Silent Hunter 4 Wolves of the Pacific\data\Land\LCD_SmallJP\LCD_SmallJP.eqp doesn't exist!
C:\Silent Hunter 4 Wolves of the Pacific\data\Land\LCD_SmallJP\LCD_SmallJP.sns doesn't exis

AM playing FORTS v1.3 at the momment. and these are the errors found.

jldjs
05-09-12, 12:29 PM
Just discovered your validator but don't know what to about these;

C:\SHIV_TMO 2.5\data\Campaigns\Campaign\Jap_HarborTraffic.mis:
UnitType of -1 not defined in \data\Roster\Names.cfg!
Type -1 not defined in \data\Roster\Japan
C:\SHIV_TMO 2.5\data\Campaigns\Campaign\US_HarborTraffic.mis:
Type 1 not defined in \data\Roster\Australian
Type 1 not defined in \data\Roster\Australian
Type 1 not defined in \data\Roster\Australian
Type 1 not defined in \data\Roster\Australian
Type 1 not defined in \data\Roster\Australian

or these;
Classes errors:
C:\SHIV_TMO 2.5\data\Sea\NAGB\NAGB.cfg missing!
C:\SHIV_TMO 2.5\data\Sea\NAuxCru\NAuxCru.cfg missing!
C:\SHIV_TMO 2.5\data\Sea\PB10X\PB10X.cfg missing!
C:\SHIV_TMO 2.5\data\Sea\Target1\Target1.cfg missing!
C:\SHIV_TMO 2.5\data\Sea\Target2\Target2.cfg missing!

Can anyone advise?