Jump to content
ratakantez

HOW TO USE CSV MAKER 2020 v1.8

Recommended Posts

HOW TO USE CSV MAKER

I made a program that will help people who want to do easier about making csv.
This is small guide for program.

I made a small guide and lets see what program have. 

 

 

WHAT IS CSV MAKER/WHAT IS CSV

Spoiler

CSV is a simple text that help program to tell what the order is about to do list.. If you know about coding this and owner of programs let you to do this, you can give your command in CSV file. Thank that Mybot has realy good feature for this and thanks too much especialy @sardo..

Anyway CSV Maker was a tool and now i marge it with Mybot and this too let people who, doesnt know anything about coding CSV text file,  to make CSV File.. You can choose troops, drop points and add these to CSV file with simple button..

 

HOW CODER/DEVELOPER/MODDER OR SOMEONE CAN ADD TO OFFICIAL OR MOD VERSION OF MYBOT?

 

Spoiler

I try to put all code in one folder so this should be easy...
I wrote these here, maybe i can not stay forum enough or someone cant reach me when they want.. You can use it whenever you want..

Install AutoIt from
  https://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe

First Step :
Open ..\COCBot\GUI\MBR GUI Design Child Attack - Activebase Attack Scripted.au3
ADD between >>> GUICtrlSetOnEvent(-1, "ApplyScriptAB") and GUICtrlCreateGroup("", -99, -99, 1, 1;

;~ #############################################################################################################################
;~ ########CSV MAKER 2020 GUI FOR WIDENESS OPTION###############################################################################
;~ #############################################################################################################################
			RandomiseGUI_InABScriptedAttackFile();##############################################################################
;~ #############################################################################################################################
;~ #############################################################################################################################

Second Step : 
Open ..\COCBot\GUI\MBR GUI Design Child Attack - Deadbase Attack Scripted.au3
ADD between >>> GUICtrlSetOnEvent(-1, "ApplyScriptDB") and GUICtrlCreateGroup("", -99, -99, 1, 1;

;~ #############################################################################################################################
;~ ########CSV MAKER 2020 GUI FOR WIDENESS OPTION###############################################################################
;~ #############################################################################################################################
			RandomiseGUI_InDBScriptedAttackFile();##############################################################################
;~ #############################################################################################################################
;~ #############################################################################################################################

Third Step : 
Open ..\COCBot\MBR Functions.au3
ADD after >>> #include "functions\Other\ForumAuthentication.au3" (Line 287)

;##########CSV MAKER###################################################
;######################################################################
#include "CSVMAKER2020\Configs.au3";###################################
#include "CSVMAKER2020\GUI.au3";#######################################
#include "CSVMAKER2020\GUI_CONTROLS.au3";##############################
#include "CSVMAKER2020\CSVMaker.au3";##################################
#include "CSVMAKER2020\FuncAndGui\variable.au3";#######################
#include "CSVMAKER2020\FuncAndGui\AddNotes.au3";#######################
#include "CSVMAKER2020\FuncAndGui\DropFunc.au3";#######################
#include "CSVMAKER2020\FuncAndGui\Hotkeys.au3";########################
#include "CSVMAKER2020\FuncAndGui\MakeFile.au3";#######################
#include "CSVMAKER2020\FuncAndGui\SideFile.au3";#######################
#include "CSVMAKER2020\FuncAndGui\TrainGui.au3";#######################
#include "CSVMAKER2020\FuncAndGui\WaitFunc.au3";#######################
#include "CSVMAKER2020\FuncAndGui\Randomise\RandomiseAB.au3";##########
#include "CSVMAKER2020\FuncAndGui\Randomise\RandomiseDB.au3";##########
;######################################################################
;######################################################################

Fourth Step : 
Open ..\COCBot\functions\Attack\AttackCSV\ParseAttackCSV.au3
ADD after >>> Local $aLines = FileReadToArray($g_sCSVAttacksPath & "\" & $filename & ".csv") (Line 39)

;Randomise Starts...
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************
	If ($g_bDoRandomiseDB And $g_iMatchMode = $DB) or ($g_bDoRandomiseAB And $g_iMatchMode = $LB) Then
		DirCreate(@ScriptDir & "\CSV\Attack\CSVFileThatWillConvert\")
		$ConvertedFileInAttack = @ScriptDir & "\CSV\Attack\CSVFileThatWillConvert\randomised_" & $filename & ".csv"
		FileDelete($ConvertedFileInAttack)
		Sleep(250)
		FileOpen($ConvertedFileInAttack,0)
		Local $BattleCSVLog = $g_sProfilePath & "\" & $g_sProfileCurrentName & "\BattleCSVIndexLog_"& $CSVFileName_inDB_Combo_For_Randomise &".log"
		FileOpen($BattleCSVLog,0)
		FileWrite($BattleCSVLog,"*****************************************************************************************************" & @CRLF)
		FileWrite($BattleCSVLog,_NowDate() & " --- " &  _NowTime(5) & @CRLF)
		FileWrite($BattleCSVLog,"*****************************************************************************************************" & @CRLF)

		$ReadFile = $g_sCSVAttacksPath & "\" & $filename & ".csv"
		$CSVLines = FileReadToArray($ReadFile)

		For $a = 0 To UBound($CSVLines) - 1
			If 	StringInStr($CSVLines[$a],"DROP  |",1) > 0 Then
				$NewDropCommand = $CSVLines[$a]
				For $b=1 to 8
					If 	StringInStr($CSVLines[$a],"W" & String($b),1) > 0 Then
						$SplitCSVLine = StringSplit($CSVLines[$a], "|")
						If String(StringStripWS($SplitCSVLine[9],8)) = "W" & String($b) Then
							If Int(StringStripWS($SplitCSVLine[3],8))-$b <= 0 Then
								$LowIndexLimit = 1
							Else
								$LowIndexLimit = Int(StringStripWS($SplitCSVLine[3],8)) - $b
							EndIf
							If Int(StringStripWS($SplitCSVLine[3],8))+ $b > 10 Then
								$HighIndexLimit = 10
							Else
								$HighIndexLimit = Int(StringStripWS($SplitCSVLine[3],8)) + $b
							EndIf
							$IndexOfDropCommand = Random($LowIndexLimit,$HighIndexLimit,1)
							If $IndexOfDropCommand < 10 Then
								$StringNewIndex = $IndexOfDropCommand & "          "
							Else
								$StringNewIndex = $IndexOfDropCommand & "         "
							EndIf
						EndIf
						$NewDropCommand = "DROP  "
						For $c=0 To UBound($SplitCSVLine)-3
							If $c=1 Then
								$NewDropCommand = $NewDropCommand & "|" & $StringNewIndex
							Else
								$NewDropCommand = $NewDropCommand & "|" & $SplitCSVLine[$c+2]
							EndIf
						Next
					EndIf
				Next
				$AddedCommand = $NewDropCommand  & @CRLF
				SetLog($NewDropCommand,$COLOR_INFO)
			Else
				$AddedCommand = $CSVLines[$a] & @CRLF
			EndIf
			FileWrite($ConvertedFileInAttack,$AddedCommand)
			FileWrite($BattleCSVLog,$AddedCommand)
		Next
		FileWrite($BattleCSVLog,"<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>" & @CRLF & @CRLF)
		FileClose($ConvertedFileInAttack)
		FileClose($BattleCSVLog)
		$aLines = FileReadToArray($ConvertedFileInAttack)
		SetLog("Random Indexes that you set, changed randomly.",$COLOR_SUCCESS)
		SetLog("You can see randomised log file in..",$COLOR_SUCCESS)
		SetLog($BattleCSVLog,$COLOR_SUCCESS)
	EndIf
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************
;~ *******************************************************************************************************************************************

                  
Fifth Step : 
Open ..\COCBot\functions\Config\readConfig.au3
ADD after ReadConfig_641_1() (Line 257)
                  
;##########################################                  
ReadConfig_Randomise();####################
;##########################################                  

Sixth Step : 
Open ..\COCBot\functions\Config\saveConfig.au3
ADD after SaveConfig_Debug() (Line 242)
                  
;##########################################                  
SaveConfig_Randomise();####################
;########################################## 
                  
                  
Seven Step : 
Open ..\COCBot\functions\Config\applyConfig.au3
ADD after ApplyConfig_641_1($TypeReadSave) (Line 134)
                  
;##########################################################                  
ApplyConfig_Randomise($TypeReadSave);######################
;##########################################################   
                  
                  
Eightth Step :
                  
Click Right to Mybot.au3 in MainFolder and 
Click Compile Script (x86)
                  
                  DONE

            




 

 

WHY DID CSV MAKER RELASE DATE IS TOO LATE?? 

 

Spoiler

First of all, I owe everybody apology. Because the dates I gave you did not match the release date. However, you know that the life we live sometimes does not allow our hobbies or entertainment. Plus please know that i am just a math teacher.. Not a computer tech or engineer or someone who realy know about coding.. I am still learning something new. When i saw bug it takes days or week to fix it.. Mybot and CSV MAKER are always enjoyable hobbies for me, but until last month.

My work was overly made me tired. My mother-in-law had hernia surgery, my wife and son had flu. what more could it be? Now i am sick, you can heat from video :) Eachtime different voice :)) Nevertheless, I tried to make you such this project in the most descriptive and most bugless way. I hope you enjoy and you make your own CSV to decrease of report chance in game.. Have fun. 

By the way, thaks for helping, @Chilly-Chill, @TFKNazGul and @Boldina to help me about logic problem. 

 

 

WHAT IS ATTACK SIDE IN TOOL MENU? WHY ARE WE START CODING WITH BOTTOM RIGHT IN TOOL?

 

Spoiler

 

 

SHOULD WE USE NOTE TEXT OR WHAT IS IT??

 

Spoiler

 

 

WHAT IS TRAIN SETTING? WHAT SHOULD I DO AFTER PUSHING SAVE TRAIN BUTTON?

 

Spoiler

 

 

 AFTER START BUTTON WHAT SHOULD I DO? WHAT IS DROP AND HOW TO USE IT?

 

Spoiler

 

 

WHAT IS WIDENESS? HOW TO USE IT? AND A LITLE EXPERIMENT

 

Spoiler

 

WHEN SUFFLE OPTION WILL BE AVALIABLE? WHAT IS IT?

 

 

Spoiler

This is not avaliable for now.. This feature will let you to group your troops and in group bot will shuffle group... For example you will drop 5 balloon in one group and you will drop warden in one group and you will drop king in one group. Normally bot drops them in order but with these feature groups will drop in random.. CSV Maker will shuffle them in each battle.. I ll do while i have time.. I hope it doesnt take too much..

 

 

 

Video will have English and Turkish Subtiltle ( I starts translating)... You can add SubTitle of your language if you want.. It is open.

 

 

CHOOSING ATTACK SIDE

tr.gif

Here you will give points to building(s) to decide your attack side. 

Bot slice village 8 pieces and find buildings that you give points in each piece.

After this, bot calculate total points in each piece and side which has higest point will be your main side. 

tr.gif

In program, Assume that your main side is Main Side which will be showed with red arrow.

tr.gif

Or if you want to decide your side without giving number you can choose a specific side by choosing one of them. 

Bot will not use Image Recognise to find your Main Side. Main side will be your choosing side.

 

TRAIN SETTINGS

 

tr.gif

 

If you know what troops you will use, you can set your training setting for bot. 

 

tr.gif

 

This is not a preparing for drop point in your attack. This will only set your train setting on bot if you click apply button.

Remember apply button is at Mybot>>Attack Plan>> Dead/Active Base >> Attack >> Scripted Attack

tr.gif

 

Usefull for newbie user to set train setting. 

 

tr.gif

 

Plus, If you choose 1 for hero bot will activate when their health is red

if you choose 2 bot will activate hero after xxx sec. You can set time.

if you choose 3 bot wait for both red health and time. 

 

NOTES, FILE NAME, STARTING

 

 

tr     tr.gif

 

Here if you add Notes, your notes will be showed at Script Page 

And You can wirte a specific name for your file. (Bot will create with NoName__ if you dont write anythin other.)

 

 

 

NOW YOU ARE READY TO START!!

 

 

 

 

 

tr.gif

 

 

 

Some Extra Tips :

In Attack Side Option, 

Give points more than one building. Because bot can have problem to detect building that you give points. 

Some times Heros or other objects can be problem to detect.

 

While you are adding drop points, Use Sleep option. 

Program automatically choose 100-120 ms for troops, 50-70 ms for spell. But if you choose sleep option each troops will be wait after droping differently. 

This make your csv look like human.

 

If you want to activated your Hero even if it has more health,  add it two times. First for dropping, second for activating.

If you want to breake your Siege, you can add it two times too. First is for dropping. Second is for breaking.

 

Spell circle radius is 1 and half blue drop point button approximatelly. if you click a blue drop point, you can set next spell from this size.

 

Try not to drop corners. (Side Number = 10 )Because these drop point can be out of edge because of some other buttons in game. Especially left and bottom cornor.

 

 

Rest is your logic and fun. I hope you enjoy. Have a good days.

 

 

v 1.2 with RandomX_X and RANDOMY_X

  RANDOM X and RANDOM Y are the amount of randomness to use when dropping. For Example If you have a randomX of 5 and a randomY of 4, then the bot will drop each troop between [droppointX-5, droppointY-4] and [droppointX+5, droppointY+4]. A higher randomness amount may make the bot look more humanlike

5.png 10.png

This both pictures has same drop point and first one has 5 randomness second one has 10 randomness.  but this is only for spell for now..

tr

Assume that each 12-15 pixel has 1 addtile approximetaly

Edited by ratakantez
v 1.8
  • Like 3
  • Upvote 8

Share this post


Link to post
Share on other sites
1 hour ago, Rafaela Santos said:

gl with your project bro, but 'm prefer the hardcore way lol

Thank mate.. Now maybe csv user and maker increase than before.. hopefully

Share this post


Link to post
Share on other sites

i am a newbe i want to write or edit a csv of gibarch with my own compostion on all side thnaks for the program

ps: feeling inspired

 

 

Edited by Nullpixel
  • Like 1

Share this post


Link to post
Share on other sites

a video added to guide.. i hope it feels more easier now.

Plus if you like and want to contribute, you can add your subtitle of your language. It is open for video... 

  • Upvote 4

Share this post


Link to post
Share on other sites

this is beautiful i did my own script for DE elixer th10 i got 80k in about 10-12 raids no zaps, the more closest to my human strategie, giants, qwiz, pekka wallbreakers

Share this post


Link to post
Share on other sites
On 11/10/2019 at 8:57 PM, badghost said:

Nice work @ratakantez:thumbsup:!!!

Thanks..

12 hours ago, Chilly-Chill said:

This looks really cool, I will give it a try soon. :beer:

I hope you enjoy :))

On 11/15/2019 at 2:35 AM, dudufcb said:

this is beautiful i did my own script for DE elixer th10 i got 80k in about 10-12 raids no zaps, the more closest to my human strategie, giants, qwiz, pekka wallbreakers

Grtz for you.. You can share your CSV in CSV Share section.. Then Comunnity can use it too..

On 11/11/2019 at 1:19 PM, Nullpixel said:

i am a newbe i want to write or edit a csv of gibarch with my own compostion on all side thnaks for the program

ps: feeling inspired

I hope you can.. I can help if you stucks...

 

 

Version 1.2 is on Community Code Section now and New Guide added 

 

 

  • Upvote 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...