I.Q. Final/Kurushi Final Puzzle List & StatsYep, use the nav that's over there → and you'll get a visual representation of all 200-600 puzzles for the selected size. That's the main point of this after all. Unlike the site for the original Intelligent Qube, there aren't any sample solutions here since nobody has written any down and I ain't doing it, sorry. Apart from this page, this site is generated by a program so that's why it has a, shall we say, minimalist design. All the colours used apart from the cube diagrams are your browser's defaults. Other Games: I.Q.: Intelligent Qube - I.Q. Remix+ - I.Q. Mania General Puzzle StatsThese stats don't include the 9x10 Tektonics puzzles, since a) those aren't part of every game and b) would just dominate.
Turn SpeedThis is how long one complete roll advance animation takes. The pause is the time between the end of one advance and the start of the next when no capturing is involved. Holding accelerate and then letting go will change the length of the one-after-next pause by a non-constant amount, even if you hold it again before the second pause happens.
I.Q AlgorithmI.Q Final uses a slightly more advanced formula than a percentage of your stage score to calculate your IQ. Not much more, but a bit. currentIQ = ( ( (cumulativeStageMultipliedScore * difficultyBonus * 10) * (100 + ( (numPerfectAndExcellentPuzzles * 55) / numPuzzles ) ) ) ) / 1000000000To break it down, the code essentially does this: previousStageScore = 0 addedAdjustedScores = 0 totalOfPerfectsAndExcellents = 0 totalPuzzles = 0 for each stage currentScoreHundreds = endOfStageScore / 100 '' Stage score is from before the stage bonus is added stageScoreHundreds = currentScoreHundreds - previousStageScoreHundreds adjustedStageScore = stageScoreHundreds * stageMultiplier addedAdjustedScores = addedAdjustedScores + adjustedStageScore difficultyAdjustedScore = addedAdjustedScores * difficultyBonus * 10 totalOfPerfectsAndExcellents = totalOfPerfectsAndExcellents + stagePerfectsOrExcellents totalPuzzles = totalPuzzles + stagePuzzlesSeen performanceBonus = totalOfPerfectsAndExcellents * 55 performanceBonus = performanceBonus / totalPuzzles performanceBonus = 100 + performanceBonus totalScore = difficultyAdjustedScore * performanceBonus iqTotal = totalScore / 1,000,000,000 '' that's 1,000 million, or a billion nextStage difficultyBonus = 100, '' Normal 110, '' Hard 115, '' Super Hard 120 '' Ultra Hard stageMultiplier = 500, '' stage 1 480, '' stage 2 250, '' stage 3 235, '' stage 4 220, '' stage 5 205, '' stage 6 185, '' stage 7 165, '' stage 8 155, '' stage F 155 '' Tektonics / is divide * is multiply Here's a C# implementation of this with example data As a check - a score of 145700 at the end of stage one (not counting the bonus) on Normal with 9 perfects or excellents from the 9 puzzles generates an IQ of 112. If you then end stage 2 with 267500 (not counting the bonus) with 15 perfects or excellents from the 18 puzzles, your IQ after 2 stages will then be 186 Tektonics uses the same algorithm, but it is calculated separately from the other stages so the totals and added scores are 0 when calculating. The IQ value generated by Tektonics is then added to the IQ generated from the normal Final stage calculation to get the total IQ. If you calculate it yourself, please use 8-byte integer types during the calculation. The numbers get too big for 4-byte integers Stage StatsAs opposed to the original, in this game you require 2 rows minimum to survive a squash on the first puzzle of the last wave of a stage. Additionally, you need 2 more if you want the next puzzle to start without waiting for the stage to finish collapsing first. So, if you only have 3 spare rows and get squashed, you will have to wait for all of the rows to collapse before the next puzzle will begin.
* - Tektonics goes on for 20 waves, each is 10 in length Puzzle RNGThe puzzle set for the entire game is decided during the black screen between the menu and the first stage. How it's decided is different to the first game. However the rand function is implemented in the same way.
Before the first stage loads:
Then for each puzzle:
How Again! WorksUnlike the first game, getting squashed by the cubes doesn't always make Again! appear and the puzzle repeat.
For Again! to happen, the squashed counter needs to be exactly 1 when the game picks the next puzzle to play. If it is 2 or more, or 0, Again! won't happen and the normal next puzzle will play instead. You cannot complete a puzzle, get squashed, and do the same puzzle again like you could in Intelligent Qube. Puzzle Determination (C#)ushort DetermineWhichPuzzle(uint seedCalc, WaveInformation wi) { // as mentioned above, seedCalc is the low 16-bits of the 32-bit result of the puzzle rng, ie it is called like // puzzleNum = DetermineWhichPuzzle(puzzRng & 0xFFFF, waveInfo); // so it is a value in the range of 0 - 0xFFFF ushort numPuzzles = wi.numPuzzles; // the number of puzzles defined for this wave size // if there are 500 puzzles for this size, use 100, otherwise use 200 uint boost = (numPuzzles != 500) ? 200u : 100u; // The '/' is divide (quotient), and '%' is modulus (remainder of division by that number) // this is whole number division, so for example 15 / 10 is 1, not 1.5. And 15 % 10 is 5. uint puzzleNum = seedCalc / 50; seedCalc = seedCalc % 50; if (seedCalc < 23) // seedCalc between 0 and 22 - 46% chance of this branch { puzzleNum = puzzleNum % boost; } else if (seedCalc < 38) // seedCalc between 23 and 37 - 30% chance of this branch { puzzleNum = boost + (puzzleNum % 200); } else // arg >= 38 // seedCalc between 38 and 49 - 24% chance of this branch { puzzleNum = ((boost + 200) + (puzzleNum % 200)); } uint temp = puzzleNum; // if the puzzleNum generated is more than the number of puzzle defined for this wave // then continually subtract 200 until we have one that is while (temp >= numPuzzles) { puzzleNum -= 200; temp = puzzleNum; } return (ushort)puzzleNum; } Other Differences To Intelligent QubeIn this game, it is not possible to run between the cubes. The collsion of the cubes overlaps the gridlines so even if you are perfectly positioned on them, you will be squashed. You also cannot squeeze underneath the cubes to mark a square while they are rolling, nor can you mark them from behind. The bug with the diagonal movement values has also been fixed so all diagonal directions move 28 units instead of left + down moving 29. |
Stage 13 puzzles per wave Stage 23 puzzles per wave Stage 33 puzzles per wave Stage 43 puzzles per wave Stage 5 |
Stage 62 puzzles per wave Stage 73 puzzles per wave Stage 82 puzzles per wave Final2 puzzles per wave Tektonics1 puzzle per wave |