Backwoods Standoff feedback


#1

The first thing that I notice when I loaded the level with my character was that she already passed without changing the default code. That was because all the munchkins dealt less than 2000 damage before the end of the level. Having too much health shouldn’t be an issue for players at that stage of the game though. However, my character still passed without having to “wipe out the camp” so the actual goal was probably "humans must survive."
Otherwise, the level works fairly well.
I think it would also be a nice touch if the munchkins were to say a random phrase such as “eek” when frightened off.


#2

Sorry if I’m not writing correctly, but this is my first post here.
I’d like to answer that there is already added “humans must survive” goal, but when we finish the level well it’s still showing that the goal is not reached. Only if we don’t pass the level there is a note about not passing.
Other thing is - how the “Boo” should work. When I say once - the enemies run out. Next when I’ll take “wait” (5) they will attack, but after another “boo” they will step back only for a little while. So another “Boo” is not working . Is this how it suppose to look like?
During the described action I’m not using “Cleave”, so the same enemies can hear “Boo” for a few times.


#3

Yeah, I succeed, even if I don’t kill munchkins. I have enough health that if I just stand there, I win. Also, it quits before the allotted time has passed, saying I’ve succeeded.
I think you need to add an “all ogres must die” requirement.
Even though very easy for me, I think as an introduction to cleave this is a good, simple example that fits where placed on the map.


#4

Good level !
In this level player can be creative with his massage.
But this is good to the previosly stage.

Sorry for bad english.
I´m from Czech Republic


#5

Hey everyone,

Thanks for the feedback. This level is placed in the middle of the forest, so I am not too concerned about players with 2,000 health just tanking it and surviving… However, I will change the goal a bit and make it so the player -must- attack the Munchkins.

At this point the player shouldn’t have access to the wait() command. They are expected to shout something until their cleave is ready. This will keep all the Munchkins at a distance. Then, if they cleave when it is ready, they will cull the herd before too many ogres show up. I’ll add some further dialog to signify that the player is being over run.

Thanks again!


#6

I won with:

loop:
    enemy = findNearest(findNearestEnemies())
    if enemy:
        self.attack(enemy)

Using my most basic equipment


#7

loop:
self.say(“scare”)
enemy = self.findNearestEnemy()
self.cleave(enemy)


#8

I see. There appears to be a piece of code. However, there is no explanation provided with it, and it’s not even formatted properly! Please read the FAQ before you post again, format this code correctly, and tell us why you have posted this code.


#9

i just did find nearest enemy and cleave


#10

doing it ‘by the book’ and its not working. i’m stuck!!

loop {
var enemy = hero.findNearestEnemy();
if (hero.isReady(“cleave”)) {
hero.cleave(enemy);
}
else { hero.say(“message”);
}
}

It says cleave is not defined…how can this be fixed?


#11

Which sword do you have equipped?


#12

I had the wrong sword ;;;;
now I’m stuck on another one XD


#13

This is my code and I cant beat the level

i need help

enemy = hero.findNearestEnemy()
while True:
hero.cleave(enemy)


#14

Hi, it looks like you’re missing an important part of the level.

Read the sample code’s comments or read the guide for help.

If you deleted all your code and don’t have the sample code, you can always restart your code by pressing the Reload button.


#15

i just noticesed that i forget to say the message… well i did and still diddn’t work.

enemy = hero.findNearestEnemy()
while True:
hero.say(“boo!”)
hero.cleave(enemy)


#16

If the hero tries to call cleave while it is on cooldown, they will pause and wait until it is off cooldown.

Also, you are not finding the nearest enemy every second because your enemy = hero.findNearestEnemy() is outside of the loop.


#17

Ok i did what u said but the enemies aren’t pausing when my cleave is on cool down.

while True:
enemy = hero.findNearestEnemy()
hero.say(“boo!”)
hero.cleave(enemy)


#18

@Robosword

There are a few issues with the code.

  • If you “always” speak and cleave you will waste valuable combat time. Try using an if-then-else statement to do one or the other, but not both.
  • There is a function called hero.isReady("cleave") you can use to determine if the hero can cleave
  • What @Serg meant I believe was that the hero will sit around and do nothing while waiting on the ability to cleave again if you are not checking if the hero “can” cleave before attempting to cleave.

Think of it this way, if you need a quarter to cleave and only have 1 quarter. Once you have cleaved then you cannot cleave again until someone gives you another quarter. So you will just be sitting around waiting for the quarter. If the enemies are still attacking your hero at that point then you run the risk of having the enemies defeat you as you wait.

So instead of just cleaving “every” time, cleave when you are “given the quarter” or in this case when hero.isReady("cleave")

The enemies will not pause to wait for your cleave. Though that would be nice! “Hey can you ogres just wait a minute, my cleave is still powering up :slight_smile:” Yeah, they are not going to listen.


#19

its still not working so i’m assuming that i need better armour?

while True:
enemy = hero.findNearestEnemy()
hero.say(“boo”)
if enemy:
self.isReady(“cleave”)


#20

This is the default sample code for the level:

# These Munchkins are scared of the hero!
# Say something and they'll back off.
# However, once there are enough Munchkins, they will gang up and ambush! Be careful!
# Whenever you can, cleave to clear the mass of enemies.

while True:
    # Use isReady to check if the hero can cleave, otherwise say something!
    
    pass

The comment in the loop says: “Use isReady to check if the hero can cleave, otherwise say something!”

Your code is:

while True:
    enemy = hero.findNearestEnemy()
    hero.say("boo")
    if enemy:
        self.isReady("cleave")

Which when read is: “Find the nearest enemy, say ‘boo’, if an enemy exists, check if cleave is ready.”