Qwen 3.8 27B NVFP4 Think: medium | Benchmark #168

Described in:Icy Tower-like game built by Qwen 3.6 and Qwen 3.8 as agents

Benchmark summary

Icy Tower-like game built in SC# as an agent

ModelQwen 3.8 27B QuantizationNVFP4 ModeThink: medium

The model builds an Icy Tower-like tower jumper game in SC# as an agent: it writes the app, compiles it, runs its own tests and fixes the code. Hidden tests check the rules from the task; each hidden test is its own result.

Score 1/14 7.1% passed
1 passed12 failed1 broken14 total 1 AI query 4 tool calls TOKENS IN118 127 TOKENS OUT25 634

Results by difficulty

1 group
Level Unknown / other
1 / 14 7.1%
passed
1 AI query 4 tool calls IN118 127 OUT25 634

Results by category

1 group
Category Other
7.1% 1/14 passed
1 AI query 4 tool calls TOKENS IN118 127 TOKENS OUT25 634

Tests with multiple category tags are counted in each matching category, so category totals may exceed the report total.

Benchmark items
Script / test Status Tokens
Building Games in SC#: Icy Tower-like tower jumper 1 passed12 failed1 broken
7.1%
IN118 127 OUT25 634
!
IcyTowerThe model builds an Icy Tower style game from the task as an agent; this item passes when the app compiles and can be exported, and each hidden test is its own item.1 AI query 4 tool calls
Broken IN118 127 OUT25 634
×
Hidden_CameraFollowsThe camera keeps the top of the player at least 60 px below the top of the screen.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: cameraY == -384 - 24 - 60 Context: cameraY -200 Values: cameraY = -200 (line 376)
Failed IN0 OUT0
×
Hidden_ComboTwo or more combo jumps of at least 2 floors each add (floors of the combo)^2 when the combo ends with a short jump.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: floor == 4 && comboJumps == 1 && comboFloors == 2 && comboTimer == 89 Context: first combo jump: jumps 0, floors 0, timer 0 Values: floor = 2 comboJumps = 0 comboFloors = 0 comboTimer = 0 (line 316)
Failed IN0 OUT0
×
Hidden_ComboTimerThe combo ends when its timer runs out, 90 frames after the last combo jump.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: comboJumps == 2 && comboTimer == 89 Context: jumps 0, timer 0 Values: comboJumps = 0 comboTimer = 0 (line 336)
Failed IN0 OUT0
×
Hidden_FloorsGrowThe floor lists grow with the player and keep following the floor rule.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: highestFloor == 30 Context: highestFloor 0 Values: highestFloor = 0 (line 422)
Failed IN0 OUT0
×
Hidden_GameOverAndRestartA player whose top goes below the bottom of the screen loses; nothing moves then, and Enter starts a new game.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: cameraY == -263 && !gameOver Context: the top of the player is 239 px below the top of the screen: still on the screen (cameraY -262) Values: cameraY = -262 gameOver = false (line 391)
Failed IN0 OUT0
✓
Hidden_InitialStateAfter AppInit the player stands on the ground, the counters have their starting values, and the floors follow the floor rule.0 AI queries 0 tool callsHiddenTest
Passed IN0 OUT0
×
Hidden_JumpingA jump starts with vy = -(8 + 0.5 * |vx|), only from a floor; gravity adds 0.5 per frame up to 10.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: !onGround && Hidden_Near(vy, -7.5) && Hidden_Near(playerY, -7.5) Context: a standing jump: vy 0, y 0 Values: onGround = true (line 250)
Failed IN0 OUT0
×
Hidden_LandingA falling player lands on a floor it overlaps; it jumps through floors from below.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: hiddenTop < -48 && onGround && floor == 1 && playerY == -48 && vy == 0 Context: through floor 1 from below and onto it: floor 0, y 0, highest point 0 Values: hiddenTop = 0 onGround = true floor = 0 playerY = 0 vy = 0 (line 281)
Failed IN0 OUT0
×
Hidden_RunningLeft and Right speed the player up by 0.4 per frame up to 6; without keys the speed shrinks by 15 % per frame and stops below 0.05.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: Hidden_Near(vx, 1.2) && Hidden_Near(playerX, 152 + 0.4 + 0.8 + 1.2) Context: speeding up: vx 0, x 152 (line 212)
Failed IN0 OUT0
×
Hidden_ScreenShowsTheTowerThe screen shows the walls, the floors on the screen in their colors, the player and the texts. Texts and part B drawings may cover a few pixels, so the pixel counts allow a small loss but nothing extra.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: cameraY == -320 && playerY == -200.5 Context: cameraY -320, playerY -192 Values: cameraY = -320 playerY = -192 (line 458)
Failed IN0 OUT0
×
Hidden_ScrollingScrolling starts at floor 5, moves the camera up by scrollSpeed every frame and gets 0.5 faster every 900 frames, up to 5.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: scrolling && scrollFrames == 1 && scrollSpeed == 1 Context: started: frames 0, speed 0 Values: scrolling = false scrollFrames = 0 scrollSpeed = 0 (line 352)
Failed IN0 OUT0
×
Hidden_WalkingOffA player who walks off the end of a floor falls, and lands on a lower floor.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: !onGround Context: walked off the end at x 157 Values: onGround = true (line 303)
Failed IN0 OUT0
×
Hidden_WallBounceThe player bounces off a wall with three quarters of the speed in the other direction.0 AI queries 0 tool callsHiddenTest
Assertion expression evaluated to false: playerX == 288 && Hidden_Near(vx, -6 * 0.85 * 0.75) Context: right wall: x 285, vx 6 Values: playerX = 285 (line 237)
Failed IN0 OUT0