Spockie-Tech
Site Admin
Joined: 31 May 2004
Posts: 3160
Location: Melbourne, Australia
|
Since I'm familiarising myself with Processing at the moment for a job, which is Java-based (although not JavaScript) , I rationalised that spending a bit of time having a look at this diversion would be constructive to gain an overview of different Java-ish techniques.
A nice concept, but inconsistently and patchily done.
The premise that you can edit *this bit of the source code file, but not *that bit, is a bit of an unlikely frog to swallow, but I suppose its the only way to keep the challenge purely in the coding realm, unrealistic as it may be.
If thats what real Javascript is roughly like though, its no-wonder that so many people hate on it. What a mess. Function definitions nested inside each other and object definitions, event-triggered behaviours with no clear trigger methods and all sorts of weirdness. Im only a dilettante O.O. Coder, being more of a linear machine code hack, but that structure looks way wacky to me. Is Javascript really like that ?
Some of the puzzles hang together well, others seem like they tried to be clever, but have many un-obvious but trivial ways of bypassing what it seems like was the puzzle they wanted you to solve.
I got up to about level 17 in an hour or so, then got bored and went looking to see what others had done with it.
Whoa, some incredibly arcane complex solutions (particularly the Robot A.I. level), which I solved with about 3 lines of code and a couple of map reloads to get a layout reasonably compatible with my simple solution, and others that looked like they would be hard, but were simple if you made some guesses about the API functions that would require significant javascript experience and werent documented anywhere in the game.
Thats probably the weakest part of the game. The API functions are badly documented, you cant refer back to functions doc'ed in earlier levels easily, and some of the workaround fudges people used to implement global variable types were creative, but would never be necessary in a real programming language.
Overall, its trying to walk the fine line between excluding the 99% of the population that doesnt know anything about programming, and making it trivially easy for anyone who does
B for concept, E for Effort
Something like Robocode - http://robocode.sourceforge.net/
or the older Core-Wars http://en.wikipedia.org/wiki/Core_War
with a plot-line/story wrapped around it would have been better.
Nice find though Steve _________________ Great minds discuss ideas. Average minds discuss events. Small minds discuss people
|