Since december 2012 Battlestations: Midway is supported by GameSpy no longer. The only one possibility for Midway players is GameRanger. Please visit www.gameranger.com, download Gameranger client and make new account. You can find other Midway players in the Gameranger rooms. BS:M patch 1.1.1 is required to play online battles. Iowa Mission Pack and Midway Modders Mappacks 1 and 2 are recommended.

BSPRipper GUI Automation

BSPRipper GUI Automation

Okay fire away ab

1) BSP Ripper is currently a 32 bit application, and there is no 64 bit version
2) Until someone figures out the zlib stuff in regards to Battlestations Pacific, this is the only client side method (besides manual or another automation script) to patch mpak files

Compatibility Notes: Tested on Vista so far but I may need a different routine for XP, i'm pretty sure its (shbrowseforfolder) the same though and should work

Steps:
1) Modify Source Code as appropiate
2) Create Installer that execs autoit3 script and registers any required extensions (RICHTX32.ocx)

Example installer (Note: This is live, and really will update your BSP installation to Beta 0.2)

Experimental!

http://www.mediafire.com/?yfz3mhty30m

Sorry if you downloaded one of the previous ones, I missed a line of code
;
; AutoIt Version: 3.0
; Language:       English
; Platform:       Win9x/NT
; Author:         Kraizen
;
; Script Function:
; Works as a wrapper for BSPRipper, in that it allows automated patching at the client end

; Get the registry value from the registry (created by my installer)
    $fakebspdir = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Eidos\Battlestations Pacific", "tempBSPKM")
    $bspdir = StringTrimRight($fakebspdir, 23)
    $bsptempdirC = "C:\#A"
    $bsptempdirD = "D:\#A"
   
    FileCopy($fakebspdir & "\BSPRipper.exe", $bspdir & "\BSPRipper.exe")
    FileCopy($fakebspdir & "\fsbext.exe", $bspdir & "\fsbext.exe")
    FileCopy($fakebspdir & "\XBADPCM.ACM", $bspdir & "\XBADPCM.ACM")
    FileCopy($fakebspdir & "\XBADPCMinst.inf", $bspdir & "\XBADPCMinst.inf")
    FileCopy($fakebspdir & "\zlibc.exe", $bspdir & "\zlibc.exe")
   
    $bsppatchfiles = ($bspdir & "\ModFiles\")
    $bspfakepatchfiles = ($fakebspdir & "\ModFiles\")
   
    DirCopy($bspfakepatchfiles, $bsppatchfiles, 1)
   
; Combine strings for bspripper path (NOTE: THIS IS ONE OF THE MORE TEDIOUS SECTIONS, I ONLY HAVE 2 MPAKS SO FAR RELEASED, WILL BE DIFFERENT FOR MAPPACKS)
    $bspripper = ($bspdir & "\bspripper.exe")
    $bspbackupsource1 = ($bspdir & "\mpak\global\Game_Global.mpak")
    $bspbackupsource2 = ($bspdir & "\mpak\global\GGame__OnInit.mpak")
    $bspspourcedirectory = ($bspdir & "\mpak\global\")
    $bspbackupdestination1 = ($bspdir & "\backup\Game_Global.mpak")
   
    $bspbackupdestination2 = ($bspdir & "\backup\GGame__OnInit.mpak")
    $bsppatchfiles = ($bspdir & "\ModFiles\")
    $bsppatchdestination = ($bspdir & "\ExtractedFiles\")
    $bsppatch = ($bspdir & "\NewMPAKs\")
   
    $answer2 = MsgBox(4, "BSPKMBeta", "Click Yes to use Drive C for temporary working files (otherwise Drive D will be selected)")
    If $answer2 = 6 Then
        $bsptempdir = $bsptempdirC
    Else
        $bsptempdir = $bsptempdirD
    EndIf
   
    $bsppatchdestination2 = ($bsptempdir & "\ExtractedFiles")
   
; Warn the user to not click or press on anything during script execution
    MsgBox(0, "BSPKMBeta", "Follow the instructions, and do not click your mouse or touch your keyboard unless instructed")
   
; Ask the user if they want to backup their MPAK files
    $answer = MsgBox(4, "BSPKMBeta", "Do you want to back up your old files?")

; Check the user's answer to the prompt, if yes, then proceeds to backup files before they are changed, automatically erases previous backups
    If $answer = 6 Then
        FileCopy($bspbackupsource1, $bspbackupdestination1, af
        FileCopy($bspbackupsource2, $bspbackupdestination2, af
        MsgBox(0, "BSPKMBeta", "They are now stored in your Battlestations Pacific\Backup directory. To restore the backup, please read the readme. Click OK.")
    Else
        MsgBox(0, "BSPKMBeta", "Your files were not backed up.")
    EndIf

; Starts BSP Ripper
    Sleep(200)
    Run($bspripper)

; ------------ Start of Extraction ------------

; Waits for the window to become active
    WinWaitActive ("BSP Ripper  ver-1 build-171", "")

; Clicks Open MPAK
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton12")

; Waits till the browser is open and then inputs the path for Game_Global.mpak
    Sleep(200)
    Send($bspdir)
    Sleep(200)
    Send("\mpak\Global\Game_Global.mpak")
    Sleep(200)
    Send("{ENTER}")
   
; Clicks Select All
    Sleep(200)
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton1")

; Clicks Extract Files
    Sleep(200)
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton11")

; Waits for the extraction to complete
    WinWaitActive ("BSP Ripper  ver-1 build-171", "Extraction complete.")
   
; Clicks Open MPAK
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton12")

; Waits till the browser is open and then inputs the path for GGame__OnInit.mpak
    Sleep(200)
    Send($bspdir)
    Sleep(200)
    Send("\mpak\Global\GGame__OnInit.mpak")
    Sleep(200)
    Send("{ENTER}")
   
; Clicks Select All
    Sleep(200)
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton1")

; Clicks Extract Files
    Sleep(200)
    ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton11")

; Waits for the extraction to complete
    WinWaitActive ("BSP Ripper  ver-1 build-171", "Extraction complete.")

; ------------ End of Extraction ------------

; Copies the contents of "ModFiles" over "ExtractedFiles"
    DirCopy($bsppatchfiles, $bsppatchdestination, 1)
   
; Copies the contents of "ExtractedFiles" to temp "ExtractedFiles"
    DirCopy($bsppatchdestination, $bsppatchdestination2, 1)
   
; ------------ Start of Compilation ------------

; Clicks "Select MPAK Folder"
    if $bsptempdir = $bsptempdirC Then
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton14")
        WinWaitActive ("Browse for Folder")
        Send("{DOWN}")
        Sleep(10000)
        Send("{DOWN}")
        Sleep(2000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{ENTER}")
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton10")
        WinWaitActive ("BSP Ripper  ver-1 build-171", ".MPAK pack complete.")

        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton14")
        Send("{DOWN}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{ENTER}")
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton10")
        WinWaitActive ("BSP Ripper  ver-1 build-171", ".MPAK pack complete.")
    else
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton14")
        WinWaitActive ("Browse for Folder")
        Send("{DOWN}")
        Sleep(10000)
        Send("{DOWN}")
        Sleep(2000)
        Send("{DOWN}")
        Sleep(2000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{ENTER}")
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton10")
        WinWaitActive ("BSP Ripper  ver-1 build-171", ".MPAK pack complete.")

        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton14")
        Send("{DOWN}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(2000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{RIGHT}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{DOWN}")
        Sleep(1000)
        Send("{ENTER}")
        Sleep(1000)
        ControlClick("BSP Ripper  ver-1 build-171", "", "ThunderRT6CommandButton10")
        WinWaitActive ("BSP Ripper  ver-1 build-171", ".MPAK pack complete.")
    EndIf
   
    DirCopy($bsppatch, $bspspourcedirectory, 1)
   
    Sleep(5000)
   
    DirRemove ($bsptempdir, 1)

    MsgBox(0, "BSPKMBeta", "Patching is complete, you may quit and enjoy the mod!")
   
Exit

Edited By: Kraizen
20-Sep-09 18:57:56

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Ill move these files to our server. Still can't download second .exe because of Processing download request...

First file produces an error. Something like a: When using If you need to use Then. I'm using XP.

But i think I got your idea and it's very usefull. Currently we are concerned on releasing our Midway mappack, but it should be done in one week. Pls give me a little more time to download second.


EDIT: And yes i downloaded second too.

There is (probably XP only) error which i can see. But I should say it again. Very interesting script.

http://battlestations.eu/components/com_agora/img/members/4/mini_error.gif


EDIT2: Now i must wait 15 minutes for new download. Next test after 15 minutes ab

admin
Activity Points: 5
useravatar
Offline
0 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Sorry but I hate to be a nuisance, the script is broken at the moment because a registry entry is being set wrong... just trying to work out how to fix it now. Those links are definitely broken versions.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Okay i'm here and waiting for new working version. BTW Im using BSPacific (which is possibly not important) with different langauge version and XP with different language version. You can test patcher in extreme conditions ab

admin
Activity Points: 5
useravatar
Offline
0 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

This looks nice and all but what exactly does this even do! Whats the difference between a 32 bit BSP ripper to a 64 Bit one?!?

Support me on Twitter!

http://twitter.com/Tipsymahn260

Tipsy3000
American Idiota! ;D
Commodore
Activity Points: 943
ranks
useravatar
Offline
1029 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Indeed lol! I think it should work though thankfully, though I'm not sure if it will change anything to english ingame ^^

Heres a new one,

http://www.mediafire.com/?yfz3mhty30m

Okay, the tricky part is, the navigation when you packing files. I can't actually read data from that box so i'm simulating user input.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Tipsy3000 wrote:

This looks nice and all but what exactly does this even do! Whats the difference between a 32 bit BSP ripper to a 64 Bit one?!?

Basically lets a nub nub install a mod ^^ They don't need to know how to operate BSP Ripper.

Plus, allows patches to be done on the persons computer, as opposed to uploading the entire mpak files ag

32 bit applications usually cannot run easily under 64 operating system, its a problem with the way BSP Ripper works.

Umm... 32 bit means 2^32 is the highest possible bit string, 2^64 is 64 bit.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Oh, I see what your saying, that clears it up, btw I do know what 32/64 bit is but I never noticed how it might effect BSP ripper.

Support me on Twitter!

http://twitter.com/Tipsymahn260

Tipsy3000
American Idiota! ;D
Commodore
Activity Points: 943
ranks
useravatar
Offline
1029 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Indeed, I wasnt expecting it either, but I got one of my friends with 64bit to test it and it wouldnt work ac

Edit: And I think I may have just found out why...
I need to install BSP ripper properly before I can exec it like this, I'll add it to the setup.exe.

Edit:
http://www.mediafire.com/?y41jhwkdgme
This one contains BSPRipper's installation package, and runs it during extraction of the files from my installer.

Solves .ocx errors ag

Probably won't fix the error you are getting though... basically only a couple of things that can cause it though.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

I noticed progress. But still error occured.

http://battlestations.eu/components/com_agora/img/members/4/mini_error2.gif

admin
Activity Points: 5
useravatar
Offline
0 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Yep yep, definiately getting somewhere.

The error thats pumping out is because it isnt finding the correct mpak file, to trace it, i'll put in some debugging functions that dump variables to a text file, so we can figure that one out.

It's about 4:30 am here, probably should get some sleep and things will be clearer in the morning heh.

btw, in my testing, i noticed that occaisionally it would fail just like that, can you verify that the program is typing in information to the browse for file dialogue?

Basically, it should click open mpak, then locates it in the file explorer (types in its directory address), presses enter, and then clicks extract. It seems to me that it's just clicking extract ac

Also, make sure that there has been a folder created in your Battlestations Pacific Directory, did the backups appear in the right place?

Off to bed. lol.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Okay - step by step. I hope it helps you recognise problem. Again - XP 32 bit, non english Win, non english Pacific.

First i downloaded latest version and it didnt't works for me. Okay - I found a reason. There was previous instalation paused. Check screenshot. It's SysTray, near clock ae

http://battlestations.eu/components/com_agora/img/members/4/mini_error1.gif

I closed that paused script, then i got a question about overwritting existed file. I know exactly what to do, but... pls imagine unexperienced player. Heartattack, shock etc etc

http://battlestations.eu/components/com_agora/img/members/4/mini_error22.gif

Next step. Installer informed me, all files are backup in Battlestations Pacific/backup folder. But they aren't. Check screenshot. There is no folder called backup.

http://battlestations.eu/components/com_agora/img/members/4/mini_error4.gif

And finally i'm again in same place. Small icon near clock in Systray. And BSP Ripper opened dialog window - choose correct MPAK file.

admin
Activity Points: 5
useravatar
Offline
0 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Okay, i've given up on that method, it works, and is an excellent tool for modders (to quickly update game files when testing changes before release) but it doesnt meet my needs, or the needs of the community.

I'll post around modding forums to see if I can get any help with the C++ for zlibc, i can do some stuff but I focus more on the multimedia side of things (3d modelling, artwork, game scripting/class coding).

It shouldnt prove too hard, just need to find someone with the programming skill.

Kraizen
Seaman
Activity Points: 9
ranks
useravatar
Offline
18 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

Can you guys upload to Filefront I can,t download it , the link broke .

RTY1941
Warrant Officer
Activity Points: 0
ranks
useravatar
Offline
26 Posts
User info in posts
Administrator has disabled public posting

Re: BSPRipper GUI Automation

I'm affraid that project is not finished. And probably will be never finished, because Kraizen again forgot about Battlestations. Sad because we planned to build a team of modders for Pacific, something strong like a Midway Modders (eleven 100% ready maps are done, many new changes in BS Midway, including graphic and sound). And we still waiting to build something good for Pacific....

admin
Activity Points: 5
useravatar
Offline
0 Posts
User info in posts
Administrator has disabled public posting

Board Info

Board Stats:
 
Total Topics:
1690
Total Polls:
69
Total Posts:
23070
Dormant:
User Info:
 
Total Users:
20717
Newest User:
ngan34017136902821
Members Online:
0
Guests Online:
568

Online: 
There are no members online

Forum Legend:

 Topic
 New
 Locked
 Sticky
 Active
 New/Active
 New/Locked
 New Sticky
 Locked/Active
 Active/Sticky
 Sticky/Locked
 Sticky/Active/Locked

Login Form

Battlestations Shoutbox

Latest Message: 2 days, 1 hour ago
  • N_Trainz : Legendary Da: Its now live on Moddb and here is the link, requires a Batlestations Midway game to be installed to work «link» - midway - skinpack/addons/international - bsm - collection - light - version Enjoy
  • Runsva : are we still talikg about the zyy modding pack??
  • N_Trainz : Yeah I wanted to do this, but the installers were being a pain giving me errors about something. I finally got it working, and just figured out how to make the updater now since it'll be two parts with one containing the misc files and the other mostly the mpak files. It'll be a stand - alone DLC mod just like the Bismarck Mission Pack was. Like I said I plan to have it all completed and uploaded by this weekend
  • Legendary Da : No, no, not problem at all; I am already grateful that you were thinking about this subject, I can wait as long as you need to. Thanks for the help (again), and feel no need to rush this subject; we all know that the life comes first. :)
  • N_Trainz : Hope you won't mind the wait, it'll be worth it if you ask me, and yes I do understand that you can't download due to that cap Mege has. I heard the PM was down, but haven't tried it as I been busy helping the BSmodHQ team with things and then those that are life - in - general.
  • N_Trainz : To Legendary Da: I been trying to work on that actually, what I'm experiencing is the pack size> I already made it a light version of the mod, so hopefully this weekend maybe, might be sooner
  • Legendary Da : To N_Trainz: So, um... I can't exactly download from Mega for some reason; so could u upload that mod to Moddb? I am sorry for making extra work for you, and I TOTALLY understand if u can't upload it again; so, do as you want; I just wanted to say somehow I couldn't dl the mod (btw, why isn't the PM working?). U don't have to post the link either; I'll find it from the site if u upload it. Thanks whatever u do, and so sorry for the extra wish. :/
  • Runsva : Anyone there??
  • Runsva : That is on the zyy modding pack v1.0.3 forum.
  • Runsva : If that hepls...
  • Runsva : The link that I donloaded from is the one message before the last one on page 4 on this forum because all the others are for some reason down.
  • YamatoFavor : Zyy eh... doubt I installed successfully and seems like I lost the build
  • Axis_Crusher : Well I am aware of that mod, but I've never installed it. I'll ask around if I can find someone that successfully installed it.
  • Runsva : The zyy modding pack v1.0.3
  • Axis_Crusher : Just so we're on the same page which mod are you trying to install?
  • Runsva : Game*
  • Runsva : Do i need to make a copy of my gamr folder like Battlestations Midway?
  • Runsva : No I didn't install it into a separate directory, it is in steamapps - - > common like any other steam game.
  • Runsva : pls help me fix it i really want to play this mod :D
  • Runsva : and i copied every file to the mpak folder in the bsp directory, and when i try to run it it just crahes onthe main menu screen

Only registered users are allowed to post

Now Online

None

Birthdays

BusyOCAMPO Send PM
birthday will tomorrow

samuraj Send PM
birthday will Wednesday, 01 March 2017

Gabriel_03 Send PM
birthday will Thursday, 02 March 2017