I'm happy to answer questions and help anyone's who's stuck and needs a hint, but it seems like the HN community has already been doing a good job of the latter :-)
I'm still experimenting with the fascinating intersection of code, games, and language. Here's the latest thing I'm working on in the area (albeit in a very different vein, and still very much a work-in-progress): http://app.wordbots.io/
I figured out how to do "SQL Injection" types of attacks against a lot of the levels. I figured this all out without examining any source, BTW - this solution was made purely from in game information. For example, I would never have known about "_endOfStartLevelReached" if the game didn't complain about it being "not a function"
You are supposed to program a robot to traverse a maze, but instead I just ended the robot's function so I could get access to the main scope and do whatever I want:
}
});
map.placeObject(map.getWidth() - 2, 20, 'greenKey');
map.placeObject(map.getWidth() - 1, map.getHeight() - 1, 'exit');
var tmp = map._endOfStartLevelReached
//Needed so the rest of the function is ignored
map = {
"defineObject": () => {},
"getWidth": () => {},
"getHeight": () => {},
"placeObject": () => {},
"_endOfStartLevelReached": tmp
};
map.defineObject('robot2', {
'behavior': function (me) {
}
});
I hope they don't fix this though, it was exhilarating (and rewarding) trying to outsmart the game
This is awesome. Very unique puzzles. I have been introducing my students to games that involve programming (I recently made one for them to try called Harvest Memory [1]). This is one of the best I have seen yet. I'll show it to them next class and see how they do.
Do they intend for you to be able to draw more than 1 exit? cuz on the 4th level, i just drew a 2nd exit inside the cell and the game didnt complain when i used it.
I got bored with just beating the game and added some flare on level 20 by using a canon and photon torpedoes and kappa-face explosions[1]. Because why not.
It's quite amazing (and quite a lot of ways of cheating are disabled). I got to level 14 by making my player basically become the same as the arrow keys to direct the bot.
Reminds me of the good days of "find the next level" games where the clue could be in an image metadata or just about anything (modern CTF are on a whole other level).
Is there any way to reset a level or the game completely? I somehow managed to block myself off from the computer on my first edit and now refreshing the game leaves me stuck and unable to access it.
One thing I like about this game is that it loads and starts very fast. Chromium tells me it loads in 1.05s and starts after an additional 0.01s. That's fast enough that it seems instantaneous to me when I click on the link.
Also, I like the cheating message that you get in the Chromium console (unfortunately it doesn't seem to work in Firefox). :-)
The maze is random and will regenerate when you execute the program, so you need to be lucky to pull that off. I mean, you can just reload until it works, and I think that is a solution within the spirit of the game too, but quite an inelegant one :)
Mine was to bypass the maze solving completely by instead breaking out of the function scope to declare a global direction variable that lets the phone toggle the direction of the robot, then just press R to take a step in the chosen direction ;) Stupid? Elegant? Rule-breaking? You decide...
Hands down my favorite and (very) security oriented game is https://overthewire.org/wargames/bandit/ --- It's actually a series of games but this is the first one. I learned so much playing these.
It is not intended to be impossible. It seems to require using a portion of the game that has not been previously introduced. Try exploring portions of the game that are available to you.
It's really exciting to see that there's still interest in this little game Greg and I made all those years ago!
I wrote up a postmortem on Untrusted back in 2014 that may be of interest if you'd like to learn more about how the game was created: http://alex.nisnevich.com/blog/2014/10/17/some_words_on_untr...
I'm happy to answer questions and help anyone's who's stuck and needs a hint, but it seems like the HN community has already been doing a good job of the latter :-)
I'm still experimenting with the fascinating intersection of code, games, and language. Here's the latest thing I'm working on in the area (albeit in a very different vein, and still very much a work-in-progress): http://app.wordbots.io/
Alex
P.S. I though I'd end with a shout-out to some super-cool games by other people that have been inspired by Untrusted: - INJECTION by TOASTEngineer: https://schilcote.itch.io/injection - Programmer Adventure (interface in Russian): https://programmeradventure.github.io/