Play Home Contribute Github Join Us! Discourse Staff Members Github Contribution Guides Team

Clash of Clones Help - Sarven Desert

Hi, I’ve been stuck on this for nearly a month now. No matter what I do, I end up dying in the middle of the battle. I’m not sure what to do because I’ve used all my weapons’ special attacks. Here is my code:

while (true) {
    var enemy = hero.findNearestEnemy();

    if (enemy) {

        hero.attack(enemy);
            hero.shield();
            hero.bash(enemy);
                           
    }
    if (enemy && hero.isReady("cleave")) {
        hero.cleave(enemy);
    }
}

I tried targeting my clone as well, but I still died.

I looked at earlier posts about Clash of Clones in other topics. Some say you don’t need a primary weapon, but completing this level with no primary weapon isn’t possible. Other posts say I need a shield with good bash damage, and I’m using the Painted Steel Shield, which has great bash damage. Any other suggestions?

P.S. I haven’t subscribed so I can’t use other heroes.

Here is my equipment:
Annotation 2020-05-11 091437

You should buy emperor’s gloves to defeat the archers. Try to put bad gear on you and control your hero with flags, too.

1 Like

I don’t have enough gems to buy the Emperor’s Gloves. I’ll try using flags.

Try to cleave the enemy archers .

1 Like

And that should work fine(p.s. try to also attack shamans)

I tried cleaving the enemy archers (and soldiers) but one cleave isn’t enough to kill one of them.

Then attack after the cleave using the attack() method until you can use cleave() again.

1 Like

And after you kill all the archers, run and attack the shamans

I’m not sure what to do. For some reason my character simply stands there for a few seconds and then attacks. Here is the code:

hero.moveXY(81, 69);
while (true) {
    var enemy = hero.findNearestEnemy();
        if (enemy) {
            hero.bash(enemy);
            hero.attack(enemy);
            
            if (hero.isReady("cleave")) {
                hero.cleave(enemy);
                hero.attack(enemy);
            }
            
        }
    }

I’m not sure what to do. For some reason my character simply stands there for a few seconds and then attacks. Here is the code:

hero.moveXY(81, 69);
while (true) {
    var enemy = hero.findNearestEnemy();
        if (enemy) {
            hero.bash(enemy);
            hero.attack(enemy);
            
            if (hero.isReady("cleave")) {
                hero.cleave(enemy);
                hero.attack(enemy);

            }
            
        }
    }

I nearly killed all of the enemies, though.

Bash has a cooldown. How do you know you’re ready to use it?

1 Like

I was quite close, only about 3 enemies were left. If there was a way to attack without stopping, I’m sure I can win.

You should check if bash is ready to use before using it.

1 Like

Oops… I didn’t know bash had a cooldown! I’ll try using if (hero.isReady(“bash”))

2 Likes

Yes. Now you should be able to finish the level

I tried doing that but my character still stands there after the first cleave and attack. Code:

while (true) {
    var enemy = hero.findNearestEnemy();
        if (enemy) {
            hero.attack(enemy);
            
            if (hero.isReady("cleave")) {
                hero.cleave(enemy);
            }
            
            if (hero.isReady("bash")) {
                hero.bash(enemy);
            }
        }
    }

Is it something to do with where I kept the if bash is ready?