StarCraft II Launcher

Started by Zoxc, March 01, 2010, 05:28:55 PM

Previous topic - Next topic

SCFan68

Quote from: briantheman on March 07, 2010, 04:17:29 AM
i still can't view my own replays against computer, it says unable to load map.
i tried moving the official maps into the cache and loaded up and got the victory screen.
then i loaded that replay and it worked, but when i loaded one where i played against ai 6.0 it said unable to load map.


can anybody help?


As I said, maps need to be sourced in, and launched from the cache folders to play replays.


The problem is, these launchers take the map, and recompile it with the AI changes and AI players added in, and then saves it somewhere, and launches it from there with Lazy Launch.


If it creates that temporary map file in the cache folders, it would work for replays. However, you'd need to have unique filenames each time to avoid overwriting previous maps.  This would mean that you're cache folder would quickly start to swell with new maps, at 1-2mb a piece, with each game.  So I'm not sure if there is a practical solution.

Darkov

Quote from: linkkoh on March 07, 2010, 02:18:14 AM

Same error here... using win 7 x64

Quote from: Sykeus on March 07, 2010, 12:12:48 AM
Quote from: HASH on March 06, 2010, 09:54:11 PM
best gui launcher
but cant star game with him




I have the same error, anyone knows why?

Thanks
Same error win 7 x84 (32 bit)

MonKing

#77
Zoxc,the player type should have at least 4 types:
1.User
2.Computer
3.Spectator
4.Referee
not just only 3 types,you can modify the file "MapInfo" to let it work.

thx for your launcher!

kblood

#78
Quote from: SCFan68 on March 07, 2010, 03:49:06 AM
ok, I stand partially corrected by someone on IRC.


For replays to work, the only requirement is that the maps are stored somewhere in the cache directories, and launched FROM THERE by lazy launcher.


So you can have them anywhere in the cache\ subfolders you wish.  All that would be needed for this and usmc's launcher would be to allow you to select that as your map folder, rather than these defaults.  Then you could load the replays successfully.  


No renaming required.


EDIT: I have tested this and I can confirm.  I put the official maps into the cache folders. I created a subfolder for them called "zz" to put it at the bottom.  Anything would have worked though.  Then I launched one of the maps, from there, via LazyLauncher v2.  It did the whole "victory" thing because it was an unmodified map. But I fooled about for a minute or two, then quit.  I then loaded the replay via lazy launcher and it did play successfully.  So simply having an ability to choose the source folder would give replay ability.
Exactly. The idea is brilliant and I have already testet it, and it is simpler than you described. Whatever map loader is used just needs to make its own copy of the played map into some folder in the cache folder. Could be the download folder like I did with my example. If the maps then also have the AI in the maps (only the TriggerLibs part or they will become huuge), then you will have a map with roughly the same size as the original, only adding well, 315kb to the map. Which does add up.
The solution to different map names could be making a generic map name with codes like: ttzp for the races on the map. And I guess another line with some kind of code showing the player setup for the map. Like 1220 to show one human player, 2 AIs and one disabled slot. Ends up being tttt2222 added to a 4 terrans controlled by the AI. I have added AIv6 at the end of my maps to show they have the v6 AI. Could be SCAIv6 to short for Starcrack :) .
The player might then be able to read in the replay file, the name of the map it is meant to show, and have the launcher create this map if the original is in its map folder :)
I have given all this quite some thought, but here are probably simpler ways to do this. This is just the one I have come up with to work with launchers. My other method is... pre-modifying all the maps to these setups making map files in the cache being more than 100mb to begin with and giving a ton of map choices :(
Blizzard must have had a simpler solution. Maybe just a temporary mapinfo file somewhere based on the launcher when starting a game, and based on the replay when ending the game?
Oh, here is my test and some of my ramblings. Sorry about all the text there:
http://darkblizz.org/Forum2/not-enough-pylons/how-to-view-your-own-replays-(with-full-instructions-on-how-to-install-the-game)/45/
or in short, get:
http://dionysus.dk/SC2/Maps%20with%20Starcrack%20V6%20AI/MappackV1/(4)%20-%20Twilight%20Fortress%20AIv6.s2ma
put it into the cache/download folder
and try my replay: http://dionysus.dk/SC2/Maps%20with%20Starcrack%20V6%20AI/Replays/Kblood%20against%20AIv6.SC2Replay
It needs the latest SC2Beta patch.

mOsteel

this launcher is a big fail!

mx4ly

I keep getting "System Error. Code: 2.  The system cannot find the file specified," even when I run the launcher with no mod.  Any ideas on what could be wrong?  I've been tinkering with it for about an hour, but everything seems to be in place and haven't made any progress.

Bt

Quote from: mOsteel on March 07, 2010, 12:59:01 PM
this launcher is a big fail!

Gtfo idiot

Its the best launcher right now

mOsteel


Bt

Quote from: mOsteel on March 07, 2010, 02:42:21 PM
its not :D

Beg to differ. How about adding some constructive feedback as to why you think it is "so fail" instead of being a douche?

As far as I can see, this launcher incorporates every feature every other launcher has and more. The only thing missing is picking teams, which isn't working properly in other launchers anyway.

This launcher has it all with a simple and sleek interface, no need to download "AI" maps, no need to download seperate AI.

The only improvement I can see would be to have everything built into a single .exe instead of having to extract directories and such.

Valkirie

To be honest, this is launcher is by far my favorite one.

asdfghgghjdhg

here is example to start sc2 w/o any launchers:


procedure TForm1.Button1Click(Sender: TObject);
var
SInfo: STARTUPINFO;
  PInfo: PROCESS_INFORMATION;
  hFile: THandle;
  Base: Pointer;
  cur: Pointer;
  PID: DWORD;
  Started: boolean;
begin
ZeroMemory(@SInfo, SizeOf(SInfo));
  SInfo.cb := SizeOf(SInfo);
  ZeroMemory(@PInfo, SizeOf(PInfo));
if CreateProcess(PChar(exe), nil, nil, nil, false, CREATE_SUSPENDED, nil, PChar(Dir), SInfo, PInfo) then
   begin
     hFile := CreateFileMapping(INVALID_HANDLE_VALUE, nil, PAGE_EXECUTE_READWRITE, 0, $10000, 'StarCraft II IPC Mem');
   if hFile <> INVALID_HANDLE_VALUE then
       begin
         Base := MapViewOfFile(hFile, FILE_MAP_ALL_ACCESS, 0, 0, $10000);
     if Base <> nil then
           begin
             cur := Base;
       ZeroMemory(cur, $10000);
              inc(PByte(cur), $20);
              PByte(cur)^ := $04;
              PID := GetCurrentProcessId;
              inc(PByte(cur), 8);
              PDWord(cur)^ := PID;
              inc(PByte(cur), 4);
       PDWord(cur)^ := $00000001;
              inc(PDWord(cur), 7);
              PDWord(cur)^ := $00000002;
              inc(PDWord(cur));
       PDWord(cur)^ := $FFFFFFFF;
       inc(PDWord(cur), 2);
              PDWord(cur)^ := $FFFFFFFF;
              inc(PDWord(cur), 2);
              StrPCopy(PAnsiChar(cur), AnsiString(Map));
              ResumeThread(Pinfo.hThread);
              Started := false;
       repeat
               cur := Base;
               inc(PByte(cur), $20);
               if PByte(cur)^ = $05 then
                begin
                  inc(PByte(cur), 4);
                 if PByte(cur)^ = $01 then
                   begin
                   PByte(cur)^ := 0;
                      Started := true;
                 end;
                 end;
              until Started;
            end;
        end;

      CloseHandle(hFile);
    end;
  CloseHandle(Pinfo.hThread);
  CloseHandle(PInfo.hProcess);
end;

mOsteel

"access violation at address error"

MiCrOMaN1

Our Greatest Resource is Our Mind ~ Kareem Abdul-Jabbar
Check this: http://img123.exs.cx/img123/4497/gif1.gif

thaned

I can't seem to get the 6.1version  mod to work with you're launcher, i placed the base.sc2data in the mods folder and it doesn't load. Is there a fix for this?

Zoxc

Released version 2.2.2 which can launch StarCraft II without LazyTown's Launcher and it includes version 6.1 of the StarCrack AI.


Can someone who gets that error message contact me on IRC(#sc2c at irc.rizon.net)?