Play Home Contribute GitHub Join Us Discourse Staff Members GitHub Contribution Guides Team

[Adventurer] Nine Gems


The level Nine Gems is ready for testing!

This is a challenge level, intended to be difficult and make players think about solving the problem, not just about the code syntax.


Completed without problems. (JS)

Did notice that Hints gave out too much, making this level too easy.
Maybe instead of three hints, only give then the first two, that will help the coder get an idea of how to solve this level, but not too much much that they can solve it without trying.


I agree with _TD_RodYT. Level is easy enough if you’ve seen this puzzle before. If you haven’t seen the puzzle, I can see including a couple hints, but hints shouldn’t take away any thinking. Unless the goal of the level is to get solvers to always remember to check the hints before attempting a level.

Or you could add a spoiler warning on a hint page before giving the second move, to warn someone that really wants to solve it themself.


This Level is not in i18n.


Love this level, super easy. Did not require reading the hints to pass, only logic. Never tried this puzzle before but I loved it :slight_smile:


I solved it with 3 moveXY :wink: I can solve it with 0 moveXY, but the referee requires at least 2.


You can not use more than 4 moveXY
Usage of

move( gem.pos );

is unlimited

So my solution
99 move + 3 moveXY
Who more :slight_smile:


I will enable i18n after some feedback and revisions. I don’t want to make people translate the hints/guides/etc if I wind up changing them based on testing :slight_smile:

My goal with this level is to shake loose preconceived ideas about how to solve problems, and I think that goal is achieved once you see the solution and go “Duh! Of course!” whether or not you came upon the solution yourself.

A secondary goal is to reinforce the idea that if you get stuck, you can look at the hints for help :slight_smile:

There should be a script that fires a pop-up message after about 35 seconds of the player not typing anything, that mentions the hints. So hopefully they have had some time to think about how to solve it, but aren’t yet frustrated enough to have quit the level.

I’m considering leaving out the third move hint, but I feel like some students might still get stuck there… so I’m currently erring on the side of being a bit easier, for the newer coders who may run into this (it’s linked up early in the Forest).

I hope that new players come away from the level thinking “Next time I’ll figure out the answer myself!” and are less likely to give up when they get stuck on a future level. :slight_smile:


Given those goals, I think it is good with a couple minor tweaks.

  1. I think the pop-up about checking hints came too quickly, I was still
    thinking through my solution when it came up. I think those that are
    struggling will be the ones that start right away, then get confused later.
    Maybe wait a minute instead of 35 seconds.

  2. Add a warning on hint 2 that the next hint gives it away, so don’t hit
    it if you want to figure it out yourself. Once I’m in the hints section, I
    don’t tend to close it til I’ve read them all.


I like the idea of adding a spoiler warning for hints that could potentially give away an answer. I’d much rather have at least kneaded the grey matter a little before being given the answer.

This was a fun problem to solve!

Completed with the warrior and basic items.


Will attempt that. Thanks :slightly_smiling_face:

How. Is. This. Possible.


Wonder if there’s a way to submit a patch to fix that cheat. @Bryukh
But then again the goals do not state anything about just move so I suppose that it’s not against the rules. Also this is a forest level and most forest level players do not have boots with move so maybe it was not considered in the making of this level.
Maybe that’s where the puzzle is? :stuck_out_tongue_winking_eye:


I didn’t use move :wink: However, I used some high-tier equipment.


I am having significant difficulty trying to get my code to work. I discovered a way to solve this puzzle using a single moveXY, but the code suddenly breaks after 5 gems. Is this level bugged?

My code is:

var i = 10;
while (true) {
var item = hero.findNearestItem();
if (item) {
var pos = item.pos;
var x = pos.x;
var y = pos.y;
hero.moveXY(x, y);
i -= 1;
} else {


I have tried varying my code and achieved the same results.

Alternate Code:

while (true) {
var item = hero.findNearestItem();
if (item) {
var pos = item.pos;
var x = pos.x;
var y = pos.y;
hero.moveXY(x, y);


Please help.


Read the hints. You will have to travel to a series of x,y coordinates in order to get the right angle to collect all the gems. The hints basically give it all away.


Thanks, I actually never saw that there were multiple steps to the hint.


Level can’t solved on python


This should be fixed now. Please try again!

If it still doesn’t work, you may need to clear your browser cache.


Try to browse “How to connect 9 dots with 4 straight lines?” by google. If you are a sluggard.


Please do not post final solutions. Thanks.