- Snappiness
- Sprites, clones (for every nessecary sprite(10 pts) and when clone block (5 pts), for every nessecary nesting + 25 pts)
- Nessecarily used HOFs/hyperblocks (only counts if used hyperity) (+2 pts for each, +10 pts instead if it drastically increases the speed)
- Nessecarily used metaprogramming blocks (+5 pts each)
- Common hacks that make the code run faster (2 pts each)
- Really clever hacks that use snappy features and speed up things a lot (30 pts each, please publish it on the forums)
- Overally intellegent problem solution +100pts
- Unnessecarily long if-then/if-then-else chains which could have been replaced with a dictionary (-1 pts for each branch)
- Clarifiedness
- Penalty of unnessecary objects: (x10 if causing performance problems) a sprite -15 pts, a sprite nesting relation -30 pts, a loop/HOF -15 pts (always looping over nothing or one item), a metaprogramming block -5 pts
- Helpful comment +5 pts for each
- Meaningless identifier names (variable/block) -20 pts for each
- A jumble of code with no comments thus is really hard to comprehend -10 pts each
- General clean code (able to tell what it does in a glance, minus the probable jumble of math formulas, so please keep your math formulas in custom blocks) +50 pts
- Helpful project notes (+0.005 for each block in project, round to integer)
- Nice UI (at minimum not just a white background?) +25 pts
- Unbugginess
- -20 pts if found All my clones suddenly disappear
- Bad performance caused by weird convertion chains of linked->array->linked->array... -15 pts
- JS function usage that could be replaced with a library block(external functions,-25 pts each)/a hyperblock(tight consuming loops,-40 pts each)
- Laggy while not doing something that was expected to be slow(e.g media computation) -round(50*(60/fps-1)) pts
- Big display bug -50 pts each
- Big logic bug -75 pts each
Remember, you can make whatever you want, so you don't have to follow this.