|
The solution is very simple, it's just that no one ever figured it out(or it isn't widely known). Until now, the only known way to see icons in fullscreen mode with iCCup's antihack on Windows Vista/7 was to use Chaoslauncher and inject into Starcraft. Go to your iCCup Launcher folder and double click on iccup.ini and under [StarCraft: Brood War], look for the line that starts with MainExe which should contain the path to Starcraft.exe After the Starcraft.exe, make a space and type "ddemulate" with the quotes and save. This will fix the icons issue. Happy gaming + Show Spoiler +If you have a lot of knowledge of Batch programming, you can thank me by answering some questions I got
|
If it wasn't clear to you, as it wasn't to me at first this fixes the rank icons so its easier to see D, C, Pikachu, etc. Well it works. It also gives Broodwar an absurdbly long load time, lagged my computer a lot and made the menus laggy but it DOES work. Maybe I'm the only who gets lag? It clears up a little after you get into multiplayer and didn't effect the one game I played where I BBS'd a Zerg computer. EDIT: It lagged both of the times I loaded BW so for me it doesn't appear to be a one time phenomenon. Am I the only getting lag?
|
I'm not getting any lag nor have other people that i've said this to. Maybe you could try enabling cpu throttling
|
On April 03 2013 13:57 xboi209 wrote: I'm not getting any lag nor have other people that i've said this to. Maybe you could try enabling cpu throttling like via the in-game menu? because it is enabled already for me.
EDIT: after testing, not adding the text results in instant load time + no lag. After adding the text again it was all long load times and laggy menus. I have the reg edit to fix the colors... maybe they conflict? or one of my chaoslauncher options?
EDIT2: also, alt-tabbing after starting BW seems to reduce the load time O.O wth.
|
You're using chaoslauncher? The fix is intended for iccup launcher
|
no, using ICCup launcher. but it has the chaos plugin. So, my "chaos plugin options"
|
Well i have no clue about your issue then o.o
|
On April 03 2013 14:57 xboi209 wrote: Well i have no clue about your issue then o.o Reinstalling BW helped. no lag in menus and the loading time is alot faster, but still ~5 seconds longer than when I don't have your text added. Great fix! super awesome.
|
Awesome, it worked thanks dude
|
By icons, do you mean the menu appears properly in fullscreen mode right?
|
|
|
Aweseome, I tried something similar before, but it didn't work. I tried using it directly on starcraft and the launcher.
EDIT:
On April 04 2013 00:27 uT)WhistleR wrote: i dont have "iccup.ini"
It's not in the StarCraft folder, it's usually in "C:\Program Files (x86)\ICCup\Launcher". Unless you changed the install path.
EDIT2: Great! It works! :D
|
i installed it in my bw folder
|
On April 04 2013 05:13 uT)WhistleR wrote: i installed it in my bw folder
it should be somewhere, just do a search for iccup.ini on your whole hard drive(s). find where Launcher.exe is, and iccup.ini should be there as well. if it's not in the same folder as Launcher.exe, I can upload a copy of it.
EDIT:
I've made a patch that does this fix automatically.
Run the executable patch: iCCup rank icons fix
For the interested, here's the AutoIt script file (v3.3.8.1) used to create this executable, and the code: + Show Spoiler [AutoIt script code] +#RequireAdmin
;Made by Quirinus from [url=http://www.teamliquid.net]www.teamliquid.net[/url] ;4th April 2013. ;This script adds "ddemulate" to the StarCraft path that iCCup Launcher uses to start StarCraft. ;This fixes dissapearing rank icons on iCCup for most users. Some users report increased loading time for StarCraft.
;===== Tries to find the ini file path from registry ;===== if not opens a select file dialog ;===== then tries to check if everything is ok $launcher_32_reg = "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\ICCup Launcher_is1" $launcher_64_reg = "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ICCup Launcher_is1" $launcher_path_reg = "Inno Setup: App Path" $ini_path = RegRead($launcher_32_reg , $launcher_path_reg) & "\iccup.ini" If (($ini_path == "\iccup.ini") And (@error)) Then $ini_path = RegRead($launcher_64_reg , $launcher_path_reg) & "\iccup.ini" If (($ini_path == "\iccup.ini") And (@error)) Then MsgBox(4096, 'Error', 'Could not find the ini file path from registry. Please select the "iccup.ini" file.') $ini_path = FileOpenDialog('Select the ini file...', @ProgramFilesDir & "\", "Ini files (*.ini)", 1)
If @error Then MsgBox(4096, "Error", "No File chosen, run again to select the file later.") Exit Else $ini_path = StringReplace($ini_path, "|", @CRLF) EndIf If (StringInStr($ini_path, "\iccup.ini") == 0) Then MsgBox(4096, "Error", "Wrong ini file selected. (...or wrong name.) Run later to try again.") Exit EndIf EndIf Else If (FileExists($ini_path) == 0) Then MsgBox(4096, 'Error', 'Registry gives the wrong path to the ini file. Please select the "iccup.ini" file.') $ini_path = FileOpenDialog('Select the ini file...', @ProgramFilesDir & "\", "Ini files (*.ini)", 1)
If @error Then MsgBox(4096, "Error", "No File chosen, run again to select the file later.") Exit Else $ini_path = StringReplace($ini_path, "|", @CRLF) EndIf If (StringInStr($ini_path, "\iccup.ini") == 0) Then MsgBox(4096, "Error", "Wrong ini file selected. (...or wrong name.) Run later to try again.") Exit EndIf EndIf EndIf
$bw_section = "StarCraft: Brood War" $bw_key = "MainExe" $bw_path_value = IniRead($ini_path, $bw_section, $bw_key, "Not_Found") If ($bw_path_value == "Not_Found") Then MsgBox(4096, "Error", "Section and/or key not found in the ini file. Run later to try again.") Exit EndIf
;===== Applies the patch if it's not there already ===== If (StringInStr($bw_path_value, '"ddemulate"') == 0) Then $bw_path_value = $bw_path_value & ' "ddemulate"' IniWrite($ini_path, $bw_section, $bw_key, $bw_path_value) MsgBox(4096, 'Patching result', 'Successfully patched ' & '"' & $ini_path & '"' & '!') Else MsgBox(4096, 'Patching result', 'The patch has already been applied to ' & '"' & $ini_path & '"' & ' before. It is currently active.') EndIf Exit
Can someone confirm it is working for the 32 bit windows?
Edit: Updated, had some errors.
|
I wanted a script to do this from a batch file D:
|
Finally have BW working the way it was intended on Windows 7. Thanks!
|
On April 04 2013 09:10 xboi209 wrote: I wanted a script to do this from a batch file D:
Yea lol, I was trying to make it with a batch file first, as well. Got it half done, but something wasn't working. I don't know batch scripting very well, so I said "fuck it" and decided to do it with AutoIt, since it's very simple.
Here's the part that tries to find the path from the registry: + Show Spoiler +@echo off Set Reg.Val=Inno Setup: App Path
echo 32-bit registry search: Set Reg.Key=HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\ICCup Launcher_is1 For /F "Tokens=2*" %%A In ('Reg Query "%Reg.Key%" /v "%Reg.Val%" ^| Find /I "%Reg.Val%"') Do Call Set iccupdir=%%B if defined (%iccupdir%) (goto next)
echo 64-bit registry search: Set Reg.Key=HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ICCup Launcher_is1 For /F "Tokens=2*" %%A In ('Reg Query "%Reg.Key%" /v "%Reg.Val%" ^| Find /I "%Reg.Val%"') Do Call Set iccupdir=%%B if not defined (%iccupdir%) (goto bad_end)
:next For /F "Tokens=3*" %%A In ("%iccupdir%") Do Set iccupdir=%%B set "iccupdir=%iccupdir%\iccup.ini" echo %iccupdir% goto good_end
:bad_end echo Could not find the path from registry!
:good_end pause
Then I tried doing something to edit the ini file, but it didn't work. I can make it edit that line, I think, but the problem is I can't edit it when someone has warcraft as well, for example.
Edit: Updated the code, before I pasted the wrong code. -_-
|
What happens when people have warcraft?
|
They have two MainExe then, so you have to search for the one under the category [StarCraft: BroodWar]. I'm not that familiar with the language to do that. If it was any other normal language it'd be easy. xD
Edit: Updated the script, it had some errors.
Edit2: Found this batch script, it works for modifying section key value of an ini file, but it doesn't accept the : from the StarCraft: BroodWar section name. Also, it gets fucked over by the %rank%, %pts%, %wins%, %losses%, %leaves%, %winrate% and possibly by the pipe sign | from the WarCraft section, since it probably assumes they're variables/code or something like that. If you figure out a way to change that, it'd work.
+ Show Spoiler [modify ini batch script] +:: -------------------- :: ini.bat :: ini.bat /? for usage :: --------------------
@echo off setlocal enabledelayedexpansion
goto begin
:usage echo Usage: %~nx0 /i item [/v value] [/s section] inifile echo; echo Take the following ini file for example: echo; echo [Config] echo password=1234 echo usertries=0 echo allowterminate=0 echo; echo To read the "password" value: echo %~nx0 /s Config /i password inifile echo; echo To change the "usertries" value to 5: echo %~nx0 /s Config /i usertries /v 5 inifile echo; echo In the above examples, "/s Config" is optional, but will allow the selection of echo a specific item where the ini file contains similar items in multiple sections. goto :EOF
:begin if "%~1"=="" goto usage for %%I in (item value section found) do set %%I= for %%I in (%*) do ( if defined next ( if !next!==/i set item=%%I if !next!==/v set value=%%I if !next!==/s set section=%%I set next= ) else ( for %%x in (/i /v /s) do if "%%~I"=="%%x" set "next=%%~I" if not defined next ( set "arg=%%~I" if "!arg:~0,1!"=="/" ( 1>&2 echo Error: Unrecognized option "%%~I" 1>&2 echo; 1>&2 call :usage exit /b 1 ) else set "inifile=%%~I" ) ) ) for %%I in (item inifile) do if not defined %%I goto usage if not exist "%inifile%" ( 1>&2 echo Error: %inifile% not found. exit /b 1 )
if not defined section ( if not defined value ( for /f "usebackq tokens=2 delims==" %%I in (`findstr /i "^%item%\=" "%inifile%"`) do ( echo(%%I ) ) else ( for /f "usebackq delims=" %%I in (`findstr /n "^" "%inifile%"`) do ( set "line=%%I" && set "line=!line:*:=!" echo(!line! | findstr /i "^%item%\=" >NUL && ( 1>>"%inifile%.1" echo(%item%=%value% echo(%value% ) || 1>>"%inifile%.1" echo(!line! ) ) ) else ( for /f "usebackq delims=" %%I in (`findstr /n "^" "%inifile%"`) do ( set "line=%%I" && set "line=!line:*:=!" if defined found ( if defined value ( echo(!line! | findstr /i "^%item%\=" >NUL && ( 1>>"%inifile%.1" echo(%item%=%value% echo(%value% set found= ) || 1>>"%inifile%.1" echo(!line! ) else echo(!line! | findstr /i "^%item%\=" >NUL && ( for /f "tokens=2 delims==" %%x in ("!line!") do ( echo(%%x exit /b 0 ) ) ) else ( if defined value (1>>"%inifile%.1" echo(!line!) echo(!line! | find /i "[%section%]" >NUL && set found=1 ) ) )
if exist "%inifile%.1" move /y "%inifile%.1" "%inifile%">NUL (script taken from stackoverflow, made by rojo)
If the script doesn't find the launcher path from the registry, I'd also add a brute force file search, but that's easy to do once we get the ini modifying to work.
I've PMed FaCE_1, as he's listed for Batch programming in the TL Manpower topic, maybe he'll be able to help.
|
Does anyone know where wLauncher stores the starcraft.exe path? Seems fish/wLauncher has the same problem and I'm trying to figure out how to fix it.
|
I'm pretty sure wLauncher just reads the InstallPath from the registry which is located here: HKEY_CURRENT_USER\Software\Blizzard Entertainment\Starcraft For your exe file above, edit it so that it looks for the iccup.ini file in the same directory rather than the registry. Also, any reason why 2 dialog boxes appear?
|
2 dialog boxes? Which ones? What do they say?
It looks in the registry (first 32 bit, then 64 bit) for the folder where the iCCup Launcher is installed (the Launcher uninstall reg key has the path).
If it finds it in registry, it just assumes the ini file is in that folder, and checks if it's really present. If it's there, it proceeds to read the MainExe under the BW section, and adds ddemulate. If it doesn't find the ini file in that location, i opens up an "open file" dialog so you can select it. If it doesn't find it in the registry, it opens up an "open file" dialog so you can select it.
In both cases if you don't select the file, or it's not named right, it gives an error and shuts down. It also gives an error if it can't read the section/key and then shuts down as well.
Edit: LOL how didn't I think of that, yea the wLauncher probably searches the registry every time it starts. Lame. It's going to be harder to fix it like that.
|
It's the one that asks you if you want to run it or not, before admin privs. are requested.
|
One asks if you want to run it in admin mode, and the other asks for permission to edit the ini file. It's normal for unlisted programs I think. Say "Yes" to both.
|
I meant that I see 2 of these before admin privileges are requested:
![[image loading]](http://i.imgur.com/9CRHR58.png) EDIT: Figured it out, if you right click and run as admin, only one of those boxes appear but if you just plainly run it, 2 will appear. And still, could you just edit it so that it only looks in the current directory and silently run
|
Of course, the first line in the code makes it ask for admin privileges. Most of AutoIt scripts get blocked by Windows without that. You also need admin privileges to edit stuff in the program files, haven't really tried running without it, but I think it wouldn't work. If you removed it, I think windows would still make one additional dialog box, depending on your security/privacy/trust settings.
Why would I make it run only in the current directory? The point of the script is that the script finds the ini file automatically, so people don't need to look for it themselves. If it can't find the ini file it simply asks for you to select it.
Why would you make it run silently if it's a stand-alone patch? Usually when you run a patch you want to know the result. I'm not sure what you mean with silent. For me silent is that it doesn't produce any programmed message boxes (results/errors). Windows message boxes are another thing, I don't include them in the silent description.
Here's the version you asked for, though: exe file script file
It doesn't ask for any admin rights, and edits only the ini file in the folder it's in.
Code: + Show Spoiler [silent mode, only in folder] +;Made by Quirinus from [url=http://www.teamliquid.net]www.teamliquid.net[/url] ;http://www.teamliquid.net/forum/viewmessage.php?topic_id=406058 ;6th April 2013. ;This script adds "ddemulate" to the StarCraft path that iCCup Launcher uses to start StarCraft. ;This fixes dissapearing rank icons on iCCup for most users. Some users report increased loading time for StarCraft.
;has to be in the folder where iccup.ini is (iccup launcher folder) $ini_path = @WorkingDir & "\iccup.ini"
If (FileExists($ini_path) == 1) Then $bw_section = "StarCraft: Brood War" $bw_key = "MainExe" $bw_path_value = IniRead($ini_path, $bw_section, $bw_key, "Not_Found") If ($bw_path_value == "Not_Found") Then Exit EndIf
;===== Applies the patch if it's not there already ===== If (StringInStr($bw_path_value, '"ddemulate"') == 0) Then $bw_path_value = $bw_path_value & ' "ddemulate"' IniWrite($ini_path, $bw_section, $bw_key, $bw_path_value) EndIf EndIf Exit
|
Hey, I was skeptical at first but I'm posting here to confirm that this fix indeed works. Thanks a lot OP.
|
I don't mind having it ask for admin privileges but 2 security warning dialogs are annoying. I'm going to pack this with a batch file that I'm making for iCCup. It'll include a bunch of fixes for Starcraft and it's going to be uploaded on iCCup's website
|
On April 07 2013 08:03 xboi209 wrote: I don't mind having it ask for admin privileges but 2 security warning dialogs are annoying. I'm going to pack this with a batch file that I'm making for iCCup. It'll include a bunch of fixes for Starcraft and it's going to be uploaded on iCCup's website
Ah awesome, that explains it then.
|
I do need help with my batch file though, there's 2 problems with it: 1) My registry is being overwritten even though there's a check to see if the key exists or not 2) The code checks for the value of the key and if the value is incorrect, it checks another value, the value is always considered correct however
+ Show Spoiler +:na reg query "%regpath%" /v "%regvalue%">nul || echo Game Data Port does not exist, setting Game Data Port to 6112 & REG ADD "HKCU\Software\Battle.net\Configuration" /v "Game Data Port" /t "REG_DWORD" /d "6112" /f>Nul & goto 6112
:6112 reg query "%regpath%" /v "%regvalue%" | find /i "17e0">nul if errorlevel 0 ( Start UPNPConsole.exe add "6112" "UDP" "6112" "True" "StarCraft" echo Opened port 6112 via UPNP netsh advfirewall firewall add rule name="Starcraft 6112" dir=in action=allow protocol=UDP localport=6112>nul echo Created firewall rule for port 6112 set 6112=6112 goto starcraftx1 ) else ( goto 6113 )
I'd highly appreciate it if you can help me out on this one
|
There's also Battle.net\Configuration in the 64 bit part of the reg, dunno if it's important or not.
No idea on the batch file (as I said, I don't know batch very well :<), I'll try to take a deeper look into it later. The first line under :na seems to be broken in two though.
|
Fixed the post, wasn't broken in my batch file.
EDIT: I fixed my first problem, guess I needed to look at that a bit more but here is the correct code + Show Spoiler +:na reg query "%regpath%" /v "%regvalue%"2>nul if errorlevel 1 ( echo Game Data Port does not exist, setting Game Data Port to 6112 REG ADD "HKCU\Software\Battle.net\Configuration" /v "Game Data Port" /t "REG_DWORD" /d "6112">nul goto 6112 ) else ( goto 6112 )
EDIT2: fixed the second problem :D
|
On April 07 2013 12:06 xboi209 wrote:Fixed the post, wasn't broken in my batch file. EDIT: I fixed my first problem, guess I needed to look at that a bit more but here is the correct code + Show Spoiler +:na reg query "%regpath%" /v "%regvalue%"2>nul if errorlevel 1 ( echo Game Data Port does not exist, setting Game Data Port to 6112 REG ADD "HKCU\Software\Battle.net\Configuration" /v "Game Data Port" /t "REG_DWORD" /d "6112">nul goto 6112 ) else ( goto 6112 ) EDIT2: fixed the second problem :D
Awesome! :D
Are you sure it's just enough to change it there and nowhere else?
|
awesome! worked!! thanks dude! can you do the same for Wlauncher and fix fish server icons t.t ???
regards
|
On April 08 2013 04:26 dM-White wrote: awesome! worked!! thanks dude! can you do the same for Wlauncher and fix fish server icons t.t ???
regards
Yea, I was trying, but wLauncher is more fucked up, so it's harder with my limited knowledge. I'm still pondering on a solution...
Maybe xboi has an idea.
|
If wLauncher was translated into English then I would at least take a quick look.
|
How did you guys go with doing the same for fish, I have just spent the entire night trying to fix this one. cant see the rank numbers displaying, I cant find anyway to ddemulate sc in wlauncher.
|
On May 29 2013 05:08 Rekzr wrote: How did you guys go with doing the same for fish, I have just spent the entire night trying to fix this one. cant see the rank numbers displaying, I cant find anyway to ddemulate sc in wlauncher.
We didn't. :< wlauncher is gay like that
|
can u guys tell me what this fix does? icon problem? I don't think ive had this problem.
|
It's where you can't see icons and lat bars
|
Cadical
United States469 Posts
On May 29 2013 05:08 Rekzr wrote: How did you guys go with doing the same for fish, I have just spent the entire night trying to fix this one. cant see the rank numbers displaying, I cant find anyway to ddemulate sc in wlauncher.
Not a permanent fix but here's a trick you can use:
Run bw from a shortcut with ddemulate
Alt+tab
Run wlauncher and press the start button
This should inject wdetector and other plugins to currently opened bw process
|
where is the fish solution?
|
|
|
|
|
|