Skip to content

Commit a1802c2

Browse files
release v7.2
1 parent 211e702 commit a1802c2

329 files changed

Lines changed: 16449 additions & 13619 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG

Lines changed: 44 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,54 @@
1-
* **V7.1.4**
1+
* **V7.2**
2+
* Add Nox 3.8.2 and DirectX support, fix Click&Drag and automatic screen config
3+
* Add new system to use translate
4+
* Add Suspend Android options under Bot/Android to suspend Android (CoC process) during Search/Attack or also for every ImgLoc call
5+
* Add SmartZap/NoobZap FTW Mode
6+
* Add Spells Brew Custom Order
7+
* Add Drop On Building CSV attack enhancement: adds MAKE for target building, MAKE near red line closest to building, and can DROP on building locations. Allows spell drop inside base, and targeting of key buildings with special troops during attack.
8+
* Improve thread utilization for multiple running bots sharing maximum number of available logical processors
9+
* Improve thread utilization for running bot limiting maximum number of available logical processors
10+
* Improve multiple bots limiting number of running bots at the same time (command line option /nobotslot or /nbs disables this feature: useful for development/debugging)
11+
* Improve multiple bots launching at the same time to ensure only one is launching
12+
* Improve Android Window resizing to abort earlier when not working
13+
* Replace duplicated "getproperty" ImgLoc DLL call functions with single function
14+
* Reduce duplicate image searching for defense buildings when using both WeakBase filter and CSV scripted attack method
15+
* Improve handling of building data using a scripting dictionary to simplify sharing location data learned between bot features
16+
* Embellish CSV attack scripts SIDEB command with additional target buildings (now includes: EAGLE, INFERNO, XBOW, WIZTOWER, MORTAR, AIRDEFENSE)
17+
* Improve find TH during village search
18+
* Fix Attack Schedule Random Close being an hour wrong
19+
* Fix Attack Schedule Wait Time for Random Close returning negative Value
20+
* Fix MEmu 2.5.0 tool bar width for Window resizing
21+
* Fix Window Resize that did cause wrong height on some systems
22+
23+
***Fixes required for SC May 22 Game Update***
24+
* Change pixel locations/colors & OCR for:
25+
* Main screen (location, reading resources & trophy, gem spend window open, game language)
26+
* Resource Collection (Update collect only one of each type, new collect images, treasury window)
27+
* Request CC (chat tab window open/close)
28+
* Donate CC (numerous changes to button detect, window locations, etc; due differences between emulator rendering)
29+
* Troop Training (tabs, arrows, page detection)
30+
* Attacking (attack button, page detection, wait for clouds, star bonus)
31+
* Upgrade buildings (resource type used, reading building names)
32+
* Added detection of builder base window, and return to main base.
33+
34+
*** WARNING>> SOME BOT FEATURES ARE NOT OPERATIONAL!!!!
35+
Not Working:
36+
>> Building Upgrades, Lab Upgrades
37+
Not Tested:
38+
>> Halt modes, Attack schedule, unbreakable mode, quick train, boosting, alternate attack modes (TH side attack, DE side attack, etc), various CoC Reload error messages, and debug test buttons.
39+
40+
41+
* **V7.1.4**
242
* Add Nox 3.8.1.3 support
343
* Fix Strategies save file
4-
* Fix auto-activation of heros sometimes not working
5-
* Fix Android resize bot crash when Andorid crashes or Android Window is unavailable at wrong time
44+
* Fix auto-activation of heroes sometimes not working
45+
* Fix Android resize bot crash when Android crashes or Android Window is unavailable at wrong time
646
* Fix auto-start delaying also 2nd or more manual starts
747
* Improve shared folder handling
848
* Improve the train time click/checks delays
949
* Update example TH9 GoWiPe Strategy file to be compatible with train revamp changes made in v7.
1050
* Change "Delete Temp Files" feature to include recursive removal of DEBUG files\folders when users enable debug long term.
11-
* Removed the reduncancy on Train log
51+
* Removed the redundancy on Train log
1252
* Update Russian Language File by @Vlab97
1353

1454
* **V7.1.3**

CHANGELOG_LANGUAGES

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
* **V7.2**
2+
* Improve thread utilization for multiple running bots sharing maximum number of available logical processors
3+
* Improve thread utilization for running bot limiting maximum number of available logical processors
4+
* Improve multiple bots limiting number of running bots at the same time
5+
[636]
6+
130=Processor/Thread Advanced
7+
131=When running multiple bots, specify how many can run at the same time.\r\nThis reduces your CPU utilization significantly.\r\nHalf of available logical processors is a good number.\r\nThis configuration is shared across all profiles/instances and a restart of all bots is required (close all, wait, and start all again!).
8+
132=Bots can run parallel at the same time
9+
133=When running multiple bots, specify how many global threads for image processing tasks can run at the same time.\r\nThis reduces your CPU utilization significantly.\r\nHalf of available logical processors is a good number.\r\nThis configuration is shared across all profiles/instances and a restart of all bots is required (close all, wait, and start all again!).
10+
134=Global image processing threads will be used for all bots
11+
135=When images are processed, multiple threads are used. Here you specifiy how many threads this bot can use.\r\nLess threads reduce your CPU utilization significantly.\r\nHalf of available logical processors is a good number. Use 0 for all available. Global threads setting has priority.
12+
136=Image processing threads will be used for this bot
13+
* Improve multiple bots limiting number of running bots at the same time
14+
[500]
15+
10=Waiting for bot slot...
16+
117
* **V7.1.3**
218
* Add Suspend Computer option to SmartWait and Attack Schedule
319
[634]
@@ -11,6 +27,12 @@
1127
2=Attack Type
1228
6=Only drop these troops
1329
19=Special troops to use
30+
* Add Suspend Android options under Bot/Android to suspend Android during Search/Attack or also for every ImgLoc call
31+
[643]
32+
1=Advanced Android Options
33+
11=Suspend/Resume Android
34+
12=Disabled|Only during Search/Attack|For every Image processing call
35+
13=Specify if Android will be suspended for brief time only during search and attack or\r\nfor every ImgLoc/Image processing call. If you experience more frequent network issues\r\ntry to use "Only during Search/Attack" option or disable this feature.
1436

1537
* **V7.1.2**
1638
* Add auto slide bot when docked (when using new My Bot design Title Bar is used)

COCBot/GUI/MBR GUI Control Android.au3

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Func LoadCOCDistributorsComboBox()
2626

2727
GUICtrlSetData($g_hCmbCOCDistributors, "", "")
2828
GUICtrlSetData($g_hCmbCOCDistributors, $sDistributors)
29-
EndFunc ;==>LoadCOCdistributorsComboBox
29+
EndFunc ;==>LoadCOCDistributorsComboBox
3030

3131
Func SetCurSelCmbCOCDistributors()
3232
Local $sIniDistributor
@@ -44,11 +44,11 @@ Func SetCurSelCmbCOCDistributors()
4444
EndIf
4545
GUICtrlSetState($g_hCmbCOCDistributors, $GUI_ENABLE)
4646
EndIf
47-
EndFunc ;==>setCurSelCmbCOCDistributors
47+
EndFunc ;==>SetCurSelCmbCOCDistributors
4848

4949
Func cmbCOCDistributors()
5050
Local $sDistributor
51-
_GUICtrlComboBox_GetLBText($g_hCmbCOCDistributors, _GUICtrlComboBox_GetCurSel($g_hCmbCOCDistributors), $sDistributor)
51+
_GUICtrlComboBox_GetLBText($g_hCmbCOCDistributors, _GUICtrlComboBox_GetCurSel($g_hCmbCOCDistributors), $sDistributor)
5252

5353
If $sDistributor = $g_sUserGameDistributor Then ; ini user option
5454
$g_sAndroidGameDistributor = $g_sUserGameDistributor
@@ -68,3 +68,33 @@ Func DistributorsBotStopEvent()
6868
LoadCOCDistributorsComboBox()
6969
SetCurSelCmbCOCDistributors()
7070
EndFunc ;==>DistributorsBotStopEvent
71+
72+
Func AndroidSuspendFlagsToIndex($iFlags)
73+
Local $idx = 0
74+
If BitAND($iFlags, 2) > 0 Then
75+
$idx = 2
76+
ElseIf BitAND($iFlags, 1) > 0 Then
77+
$idx = 1
78+
EndIf
79+
If $idx > 0 And BitAND($iFlags, 4) > 0 Then $idx += 2
80+
Return $idx
81+
EndFunc ;==>AndroidSuspendFlagsToIndex
82+
83+
Func AndroidSuspendIndexToFlags($idx)
84+
Local $iFlags = 0
85+
Switch $idx
86+
Case 1
87+
$iFlags = 1
88+
Case 2
89+
$iFlags = 2
90+
Case 3
91+
$iFlags = 1 + 4
92+
Case 4
93+
$iFlags = 2 + 4
94+
EndSwitch
95+
Return $iFlags
96+
EndFunc ;==>AndroidSuspendFlagsToIndex
97+
98+
Func cmbSuspendAndroid()
99+
$g_iAndroidSuspendModeFlags = AndroidSuspendIndexToFlags(_GUICtrlComboBox_GetCurSel($g_hCmbSuspendAndroid))
100+
EndFunc ;==>cmbSuspendAndroid

COCBot/GUI/MBR GUI Control Attack Scripted.au3

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -175,19 +175,19 @@ Func AttackCSVAssignDefaultScriptName()
175175
EndFunc ;==>AttackCSVAssignDefaultScriptName
176176

177177
;Parse this first on load of bot, needed outside the function to update current language.ini file. Used on Func NewABScript() and NewDBScript()
178-
Local $temp1 = GetTranslated(635, 1, "Create New Script File"), $temp2 = GetTranslated(635, 2, "New Script Filename")
179-
Local $temp3 = GetTranslated(635, 3, "File exists, please input a new name"), $temp4 = GetTranslated(635, 4, "An error occurred when creating the file.")
178+
Local $temp1 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Create", "Create New Script File"), $temp2 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_0", "New Script Filename")
179+
Local $temp3 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_File-exists", "File exists, please input a new name"), $temp4 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Error", "An error occurred when creating the file.")
180180
Local $temp1 = 0, $temp2 = 0, $temp3 = 0, $temp4 = 0 ; empty temp vars
181181

182182
Func NewScriptDB()
183-
Local $filenameScript = InputBox(GetTranslated(635, 1, -1), GetTranslated(635, 2, -1) & ":")
183+
Local $filenameScript = InputBox(GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Create", -1), GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_0", -1) & ":")
184184
If StringLen($filenameScript) > 0 Then
185185
If FileExists($g_sCSVAttacksPath & "\" & $filenameScript & ".csv") Then
186-
MsgBox("", "", GetTranslated(635, 3, -1))
186+
MsgBox("", "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_File-exists", -1))
187187
Else
188188
Local $hFileOpen = FileOpen($g_sCSVAttacksPath & "\" & $filenameScript & ".csv", $FO_APPEND)
189189
If $hFileOpen = -1 Then
190-
MsgBox($MB_SYSTEMMODAL, "", GetTranslated(635, 4, -1))
190+
MsgBox($MB_SYSTEMMODAL, "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Error", -1))
191191
Return False
192192
Else
193193
FileClose($hFileOpen)
@@ -201,14 +201,14 @@ EndFunc ;==>NewScriptDB
201201

202202

203203
Func NewScriptAB()
204-
Local $filenameScript = InputBox(GetTranslated(635, 1, -1), GetTranslated(635, 2, -1) & ":")
204+
Local $filenameScript = InputBox(GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Create", -1), GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_0", -1) & ":")
205205
If StringLen($filenameScript) > 0 Then
206206
If FileExists($g_sCSVAttacksPath & "\" & $filenameScript & ".csv") Then
207-
MsgBox("", "", GetTranslated(635, 3, -1))
207+
MsgBox("", "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_File-exists", -1))
208208
Else
209209
Local $hFileOpen = FileOpen($g_sCSVAttacksPath & "\" & $filenameScript & ".csv", $FO_APPEND)
210210
If $hFileOpen = -1 Then
211-
MsgBox($MB_SYSTEMMODAL, "", GetTranslated(635, 4, -1))
211+
MsgBox($MB_SYSTEMMODAL, "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Error", -1))
212212
Return False
213213
Else
214214
FileClose($hFileOpen)
@@ -224,23 +224,23 @@ EndFunc ;==>NewScriptAB
224224

225225

226226
;Parse this first on load of bot, needed outside the function to update current language.ini file. Used on Func DuplicateABScript() and DuplicateDBScript()
227-
Local $temp1 = GetTranslated(635, 5, "Copy to New Script File"), $temp2 = GetTranslated(635, 6, "Copy"), $temp3 = GetTranslated(635, 7, "to New Script Filename")
227+
Local $temp1 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_0", "Copy to New Script File"), $temp2 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_1", "Copy"), $temp3 = GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_1", "to New Script Filename")
228228
Local $temp1 = 0, $temp2 = 0, $temp3 = 0 ; empty temp vars
229229

230230
Func DuplicateScriptDB()
231231
Local $indexofscript = _GUICtrlComboBox_GetCurSel($g_hCmbScriptNameDB)
232232
Local $scriptname
233233
_GUICtrlComboBox_GetLBText($g_hCmbScriptNameDB, $indexofscript, $scriptname)
234234
$g_sAttackScrScriptName[$DB] = $scriptname
235-
Local $filenameScript = InputBox(GetTranslated(635, 5, -1), GetTranslated(635, 6, -1) & ": <" & $g_sAttackScrScriptName[$DB] & ">" & @CRLF & GetTranslated(635, 7, -1) & ":")
235+
Local $filenameScript = InputBox(GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_0", -1), GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_1", -1) & ": <" & $g_sAttackScrScriptName[$DB] & ">" & @CRLF & GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_1", -1) & ":")
236236
If StringLen($filenameScript) > 0 Then
237237
If FileExists($g_sCSVAttacksPath & "\" & $filenameScript & ".csv") Then
238-
MsgBox("", "", GetTranslated(635, 3, -1))
238+
MsgBox("", "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_File-exists", -1))
239239
Else
240240
Local $hFileOpen = FileCopy($g_sCSVAttacksPath & "\" & $g_sAttackScrScriptName[$DB] & ".csv", $g_sCSVAttacksPath & "\" & $filenameScript & ".csv")
241241

242242
If $hFileOpen = -1 Then
243-
MsgBox($MB_SYSTEMMODAL, "", GetTranslated(635, 4, -1))
243+
MsgBox($MB_SYSTEMMODAL, "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Error", -1))
244244
Return False
245245
Else
246246
FileClose($hFileOpen)
@@ -258,15 +258,15 @@ Func DuplicateScriptAB()
258258
Local $scriptname
259259
_GUICtrlComboBox_GetLBText($g_hCmbScriptNameAB, $indexofscript, $scriptname)
260260
$g_sAttackScrScriptName[$LB] = $scriptname
261-
Local $filenameScript = InputBox(GetTranslated(635, 5, -1), GetTranslated(635, 6, -1) & ": <" & $g_sAttackScrScriptName[$LB] & ">" & @CRLF & GetTranslated(635, 7, -1) & ":")
261+
Local $filenameScript = InputBox(GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_0", -1), GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Copy_1", -1) & ": <" & $g_sAttackScrScriptName[$LB] & ">" & @CRLF & GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_New_1", -1) & ":")
262262
If StringLen($filenameScript) > 0 Then
263263
If FileExists($g_sCSVAttacksPath & "\" & $filenameScript & ".csv") Then
264-
MsgBox("", "", GetTranslated(635, 3, -1))
264+
MsgBox("", "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_File-exists", -1))
265265
Else
266266
Local $hFileOpen = FileCopy($g_sCSVAttacksPath & "\" & $g_sAttackScrScriptName[$LB] & ".csv", $g_sCSVAttacksPath & "\" & $filenameScript & ".csv")
267267

268268
If $hFileOpen = -1 Then
269-
MsgBox($MB_SYSTEMMODAL, "", GetTranslated(635, 4, -1))
269+
MsgBox($MB_SYSTEMMODAL, "", GetTranslatedFileIni("MBR Popups", "Func_AttackCSVAssignDefaultScriptName_Error", -1))
270270
Return False
271271
Else
272272
FileClose($hFileOpen)

0 commit comments

Comments
 (0)