state("sh2pc", "PAL") { float GameTimer: 0x19BEB94; } state("sh2pc", "NTSC") { float GameTimer: 0x19BBF94; } state("sh2pc", "Faulty NTSC") { float GameTimer: 0x19BFB94; } state("sh2pc", "WSF or cracked NTSC") { float GameTimer: 0x19BBF94; } init { int moduleSize = modules.First().ModuleMemorySize; switch (moduleSize) { case 34910208: version = "PAL"; break; case 34959360: version = "NTSC"; break; case 34263040: version = "Faulty NTSC"; break; default: version = "WSF or cracked NTSC"; break; } print(modules.First().ModuleMemorySize.ToString()); } start { return current.GameTimer > 0; } reset { } split { } isLoading { return true; } gameTime { return TimeSpan.FromSeconds(current.GameTimer); }