[Adventurer] Pet Translator

Desert pet level Pet Translator is ready for testing.

Another @Bryukh level, so he’ll handle your feedback.

2 Likes

I think you need to disable all glasses that allow hero to see through the walls for this level.

1 Like

Yeah, I use the infinity glasses and my Anya is attacking the fence instead of attacking the munchkins. Also, I can’t go back and change my gears…

Edit: I have to do other level in the desert first, change my glasses, then go back to this level. Success.

We are trying to avoid this practice. If you are using high-tier glasses, then I think you should understand how it works. There are neutrals and you can see them.

How is it possible? You can change equipment: Game menu → change hero

Yes, @Bryukh please don’t disable the glasses, would be annoying to have to constantly swap which glasses I have on. If I have high end glasses, I need to be able to exclude the enemies I don’t want to fight.

1 Like

Yep. I usually use high-tier glasses but without “through walls” because I don’t see any usage of it for non-wizard heroes type and usually I need to use additional “filters”.

Almost all levels in the campaigns can be solved by warrior-default heroes with minimal equipment for the area (except special or advanced levels). However, if you want to use high-tier equipment and heroes (if you know how to use them) to beat leaderboards, then why we should limit you :slight_smile:

1 Like

`Level worked well.

There was a missing " ) " in the python code for the introduction and I also submitted a patch for this level.

I don’t know if it will come up with other game play, but the green team is also included in hero.findEnemies() so if the player doesn’t account for that in some cases they may get results that they don’t expect and be confused.

1 Like

With “through wall” glasses?

Yes. I guess that would be true. I was looking to get a high score.

findEnemies search for all units which are not in the same team. So neutral is “enemy” team. You can filter by enemy.team

I have never done that. Is it a parameter passed to the function or are you talking about going back through the array and using the property enemy.team to remove the ones you don’t want?

I mean just filter.

python

enemies = [en for en in hero.findEnemies() if en.team == "ogres"]

(I’m not sure that filter and lambda works in CoCo)

Oh, I didn’t realize you can do that. I usually click Levels in the top left of page, go back to the map, and click the current level again to change gears. Thanks for the tips :slight_smile:

Hmm I understand your reasoning about not disabling the through wall glasses, but I think you should factor that some of the students are not immediately aware of the specific feature of the glasses. Almost everyone in my clan wants to buy the coolest armor their gems could buy. If there’s anything better than the current glasses, they HAVE to use it.

Maybe you could add a hint about the behavior of neutral/enemy in the infinity glasses. That way people don’t get frustrated when their “coolest glasses” fails them. Also, I would suggest CodeCombat to add a separate section of a more detailed items catalog. So we’ll have something like function reference/manual with examples.

@Bryukh @nick It is a shame we cannot pass a team into the hero.findEnemies() function. I am guessing that this might iterate through a list twice?

var ogreTeamEnemies = [];
var enemies = hero.findEnemies()         ( 1x )
for (var i = 0; i < enemies.length; i++ ) {         (1x)
    if (enemies[i].team === "ogres") {
        ogreTeamEnemies.push(enemies[i]);
}

Wouldn’t it be easier to write:

var ogreTeamEnemies = hero.findEnemies("ogres");

It’s used for many levels where you need to check Yaks or yetis’ types.

added a patch for LUA

1 Like

level is fun but all about copy-paste

Loved this level! Beat it without any problem. Thanks so much for the level @Bryukh!