Jump to content

ahsan iqbal

Senior Member
  • Content Count

    670
  • Donations

    0.00 GBP 
  • Joined

  • Last visited

Community Reputation

315 Forum Star

About ahsan iqbal

  • Birthday January 9

Recent Profile Visitors

4,244 profile views
  1. NOTE: this is a modified and updated thread from How to make custom attack csv files With the latest release of MyBot, you can now make your own custom attacks without editing any sourcecode. All you need to do is make a simple textfile. View an attack made with this feature below OLD 1. NOTE At the beginning of each file, you should have some notes that tell the bot what to display when your attack file is selected, like the author, date, and a brief description of your attack. This code: NOTE |Author: Ahsan - ver. 1.2- NOTE |Attack: Mass Dragon NOTE |Make Troops: All Dragon NOTE |Make Spells: 4 LightSpell , 2 Eq will produce this when selected: 2. SIDE The next step is telling the bot which side to attack from. This is done with this command: |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE | | | | | | | | | You can tell the bot to only attack from one side by adding one of these under FORCED SIDE: RANDOM TOP-LEFT TOP-RIGHT BOTTOM-LEFT BOTTOM-RIGHT You can also tell the bot to attack on the side of a certain building/buildings by putting a number underneath one of the building names. Each building's number is its how much ONE of these buildings is worth. For example, if you put 5 under EXTR. GOLD, then each gold collector is worth 5 points. The bot finds which side the building is on and adds 5 points to that side. When all buildings have been detected, then the side with the most points is the side the bot will attack from. |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE |1 |1 |3 |0 |0 |1 | | | In this example, dark drills are worth 3 points while gold/elixir pumps and the DE storage are worth 1 point. This means that, if one side of the base has 1 dark storage and one gold collector and another side has one dark drill, then the bot will attack on the side of the dark drill because that side has 3 points(1 DE drill = 3 points) and the other has 2(1 DE storage = 1 point and 1 gold collector = 1 point). EXTR. GOLD, EXTR.ELIXIR, EXTR. DARK are collector usefull for Deadbases/Zombiebase DEPO. GOLD, DEPO.ELIXIR, DEPO. DARK are storage 2.5 SIDEB The sideb is use to search advance building like EAGLE. This is done with this command: |EAGLE |INFERNO |XBOW |WIZTOWER |MORTAR |AIRDEFENSE |GEMBOX |GEMBOX | SIDEB |0 |0 |0 |0 |0 |0 |0 |0 | DEFENSE EAGLE INFERNO XBOW WIZTOWER MORTAR AIRDEFENSE 3. MAKE The next command involves calculating the troop drop points. Remember, this does not deploy troops. It simply calculates troop drop positions. These positions will be used later. You use the MAKE command like this: |VECTOR_____|SIDE_______|DROP_POINTS|ADDTILES___|VERSUS_____|RANDOMX_PX_|RANDOMY_PX_|BUILDING___| MAKE |A |FRONT-LEFT |10 |1 |INT-EXT |0 |0 | | MAKE |B |FRONT-Right|10 |1 |INT-EXT |0 |0 | | You can use this image to help you visualize the following instructions: VECTOR is the name of the drop calculation. One VECTOR is basically a list of where troops can be dropped. You can have multiple vectors, up to one for each letter of the alphabet. SIDE tells the bot which side to attack from. It uses the main side made by the SIDE command to determine which side is which. In the images below, you will see which main side was calculated by the SIDE command, and where the troops would be dropped if you put a different side in the MAKE command.Front side will be the main side where the bot will attack. DROP_POINTS is how many different places troops should be dropped(as you can see in the pic above there is numbers). If it is 1, then all troops will be dropped on one spot (in the middle), each of the 8 sections has 10 numbered drop points(circles). These are where your troops will be dropped. ADDTILES is the distance from the outer red line. In the picture, the red circles are the drop points with a ADDTILES of 1. The green circles have an ADDTILES of 2. If you want to drop spells inside the base, then you will have to make a vector with a negative(-) number for ADDTILES. VERSUS is the direction of troop drop. INT-EXT means that the bot will start dropping troops from the middle to the corners of the map(internal to external). EXT-INT means that troops will be dropped from the corners of the map to the middle of the map(external to internal). RANDOMX_PX and RANDOMY_PX are the amount of randomness to use when dropping. If you have a randomx of 2 and a randomy of 3, then the bot will drop each troop between [droppointX-2, droppointY-3] and [droppointX+2, droppointY+3]. A higher randomness amount (above 5) may give you wrong drop points or will not work as you want it,and is a higher chance of accidentally dropping into the red area. BUILDING is the option that you can drop spell(s)/troop(s) on that building you typed .building supports EAGLE, INFERNO, XBOW, WIZTOWER, MORTAR, AIRDEFENSE, TOWNHALL |VECTOR_____|SIDE_______|DROP_POINTS|ADDTILES___|VERSUS_____|RANDOMX_PX_|RANDOMY_PX_|BUILDING___| MAKE |A |FRONT-RIGHT|1 |1 | | | |INFERNO | MAKE |B |FRONT-RIGHT|1 |1 | | | |EAGLE | 4. DROP Drop commands actually drop troops. It uses the vectors you created in step 3 to determine where to drop the troops. |VECTOR_____|INDEX______|QTY_X_VECT_|TROOPNAME__|DELAY_DROP_|DELAYCHANGE|SLEEPAFTER_|___________| DROP |A-B |1-10 |1 |Drag |0 |0 |500-700 | | VECTOR: use one of the vector letters you have created with a MAKE command here. Note that you can drop on multiple vectors at the same time by separating the vector numbers with a "-". In the example above, the DROP command would drop troops on vectors A and B at the same time. NOTE:make sure that you make vector (MAKE) before use it in VECTOR INDEX: Which "drop points" to use. If you created 10 drop points with the MAKE command and put 1-10 in the INDEX column, then the bot will only drop troops on points 1 through 10 (whole side).you can use 1,5,10 that will only drop at 1 5 and 10th point of drop points.For drop spells you have to set negative(-) to drop iner side of redline or in the middle QTY_X_VECT: How many troops to drop. If you specify a range (*-*) here, the bot will choose a random value between the two numbers (*-*) you set. The number of troops that will be dropped at each point will be QTY_X_VECT/# of INDEX values.(*) any number you set TROOPNAME: Which troop to drop in this wave. Here is how to figure out the name of the troopname: DELAY_DROP: If dropping multiple troops on the same spot, how long to wait between each troop.(in ms),Delay between each troop drop DELAYCHANGE: If dropping troops on multiple spots, how long to wait after dropping on each spot. For this, SLEEPAFTER, and DELAY_DROP, you can specify a range so the bot's speed is random. SLEEPAFTER: How long to wait after dropping the wave before moving on to the next instruction.(1000=1 sec) 5. WAIT Wait is a very simple instruction, works like this: WAIT |100-300 | | | | | | | | This tells the bot to wait between 100 and 300 ms. During this time, the bot will also check for some certain end battle conditions if you have them enabled(certain amount of stars reached/0 resources left). 6. RECALC This command will make the bot check the number of remaining troops.It can be used to detect CC spell. RECALC| | | | | | | | | Doc.Oc (for those who want to make csv more advance NOTE:make sure you use DOC.OC based bot) Side |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE | | | | | | | |EAGLE | Force side can be more advance in Doc.Oc INFERNO ADEFENCE EAGLE DROPS |DEFENSE____|OPTIONS________|QTY_X_VECT_|TROOPNAME__|DELAY_DROP_|DELAYCHANGE|SLEEPAFTER_|____________| DROPS |INFERNO |R:F,B:T,S:S,L:T|1 |FSpell |0 |0 |0 | |Drop Freeze Spell on Inferno Tower(s) NOTE: You must type DROPS not DROP DEFENSE for now only selected buildings can be type (given below) INFERNO ADEFENCE EAGLE TH OPTIONS "R:F,B:T,S:S,L:T" ! Those Named as Options (Or Whatever you want to name/call it) : - Options should be entered in this Syntax: "PARAM:VALUE,ParamN:ValueN" - Option Parameters Are: "R", "B", "S" and "L" - Values T/F is Turn on/off or True/False - Values For "R" Parameter! is To Randomize Drop Point with Low Values to be More Human Like! after fair play i suggest for always randomize - Values For "B" Parameter! is To Drop Spell Between Defense! Useful for Spells Like Freeze Spell, ONLY INFERNO TOWERS are Supported for this parameter if its FALSE, Don't Drop Spell Between Defense EVEN If it was possible to affect them with ONE Spell - Values For "S" Parameter! is Side * "S" Value is SameSide, where * "O" Value is OppositeSide, ONLY Drop IF The Defense Is Located In The Other Side (Opposite), If MainSide Detected as BOTTOM, Will Drop Spell ONLY IF The Defense Is Located in TOP * "A" Value is AnySide, Drop Spell And Ignore Where it's Located And It's Side! - Values For "L" Parameter! is Locate if its true then it will locate location at start (NOTE:it will drop on destroyed buildings if enabled) Zap |Locate_____|MaxDrills__|MaxLSpell__|MaxESpell__| | | | | ZInit|True |3 |2 |1 | | | | | NOTE: make sure you use before ZAP command - ZInit is just like MAKE (drop) command - MAXDrills the number of drills to be searched - MaxLSpell is the number of max lightning spell to be use at 1 drill - MaxxESpell is the number of max earth spell to be use at 1 drill |DeploySide_|Lightning__|LCount_____|EearthQuake|ECount_____|Check______|MinDE______|DELAY_DROP | ZAP |Opposite |True |2 |True |1 |A |200 |250-500 | - ZAP is like DROP command - DeploySide i dont have to explain twise - Lightning and Earth is set to be true/fale or use/dont use - LCount and ECount max lightning - Check can be set A or Always for check if drill is there or not (destroyed) and N or No for dont check (can drop on destroyed drills) - MinDE minimum DE to check if SideP |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE | |1 | | | | | | | |VECTOR_____|SIDE_______|DROP_POINTS|ADDTILES___|VERSUS_____|RANDOMX_PX_|RANDOMY_PX_|___________| MAKE |G |FRONT-RIGHT|15 |1 |INT-EXT |2 |2 | | ----------------- |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE |1 | | | | | | | | |VECTOR_____|SIDE_______|DROP_POINTS|ADDTILES___|VERSUS_____|RANDOMX_PX_|RANDOMY_PX_|___________| MAKE |G |FRONT-RIGHT|15 |1 |INT-EXT |2 |2 | | ------------------- |EXTR. GOLD |EXTR.ELIXIR|EXTR. DARK |DEPO. GOLD |DEPO.ELIXIR|DEPO. DARK |TOWNHALL |FORCED SIDE| SIDE | | |1 | | | | | | |VECTOR_____|SIDE_______|DROP_POINTS|ADDTILES___|VERSUS_____|RANDOMX_PX_|RANDOMY_PX_|___________| MAKE |G |FRONT-RIGHT|15 |1 |INT-EXT |2 |2 | | SideP ...you can say multi side or whatever and each side will calculate current/buildings, you can use this to determine a new side in csv several times, And SideP using Parallel Search and is more fast than default method AND Rewrite the 'MAKE' command after SIDEP commands are necessary (to update the drop positions) Quality now you can use % in QTY_X_VECT, %U is to re-calculate total amount of troops |VECTOR_____|INDEX______|QTY_X_VECT_|TROOPNAME__|DELAY_DROP_|DELAYCHANGE|SLEEPAFTER_|SLEEPBEFORE| DROP |A |3-8 |50% |Ball |20-30 |10-20 |0 | | DROP |B |1-6 |50% |Ball |20-30 |10-20 |100-200 | | Enable Debug Ways to enable csv debug create EnableMBRDebug.txt in Root folder then restart bot if opened (csv debug option can be found in Debug tab) Goto *\Profiles\*\config.ini search for Debug there you will see debugAttackCSV=0 Debug csv log can be found in *\Profiles\*\logs\ debug csv image can be found in *\Profiles\*\Temp\Debug\ For redline info by @cosote The first dropdown box selects the redline logic that retrieves it from the village, and there are three: 1. ImgLoc Raw Redline (default) Using @troples cool ImgLoc library, it's the complete, unfiltered list of coordinates of all redlines found 2. ImgLoc Redline Drop Points Same ImgLoc redline, but filtered and validated by ImgLoc that it should contain only valid/deployable points 3. Original Redline (original redline routine we have in MBR for many months - before ImgLoc) Now, the reason I've made "ImgLoc Raw Redline" the default implementation is that the drop line logic kind a needs many drop points and deploy is usually better when more drop lines exists and ImgLoc deployable redline mode removes many drop points. Regarding droplines, there are basically 3 many types: "Drop Line", "Full Drop Line" and "No Drop Line". Drop line and Full Drop line also come in "fix outer corner" and "first Redline point" variances. Let me start there: 1. "Fix Outer corner" is what we used to see in CSV attacks: the 4 corners have those spiky ends 2. "First Redline point" is my new addition, where the "end" of the attack line sections are not in the rough green, but the first/nearest redline on the axis is used for the end of the drop line and the spikes are gone 3. "No Drop Line" use default outer rough green as simple drop line attack from all sides Hope I didn't get anything wrong and it's a little more explained Once you have made your attack, please share it here: https://mybot.run/forums/index.php?/forum/76-csv-attack-files
×
×
  • Create New...