-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlevel4.ts
More file actions
19 lines (17 loc) · 1.67 KB
/
level4.ts
File metadata and controls
19 lines (17 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { Level } from './types';
export const level4: Level = {
id: 4,
title: "Privilege Escalation: The Bit Flip",
description: "A security gate blocks the exit at X=600. The system checks a boolean flag 'isAdmin' to determine access rights. Currently: FALSE (0x00 in memory). Required: TRUE (0x01). Open the HEX EDITOR (suggested tool) to view raw memory bytes. Find offset 0x30 which contains the ACCESS_FLAG byte. Double-click the byte, change from '00' to '01', and watch the gate unlock. This is direct memory manipulation - you're editing the raw binary data that controls game logic.",
requiredSkill: "Hex Editing & Boolean Manipulation",
objective: (s) => s.isAdmin === true,
hint: "1. Switch to HEX EDITOR tool (it will be suggested). 2. Look for GREEN highlighted byte at offset 0x30 (row 0x...030). 3. Single-click to inspect it (shows as bool), double-click to edit. 4. Enter '01' (for TRUE). 5. Gate unlocks. Alternative: Use Memory Scanner to scan for Boolean value 0, then change to 1.",
tutorPersona: "The Operator: Authority is an illusion. In the real world, becoming admin requires credentials, authentication, trust. In memory, it is just a switch at offset 0x30 in the process heap. A single byte flip - 0x00 to 0x01 - separates 'GUEST' from 'ROOT'. Edit the hex. The system will obey.",
memoryLayout: [{ key: 'isAdmin', label: 'ACCESS_FLAG', type: 'bool', offset: 0x30 }],
initialState: { isAdmin: false },
platforms: [
{ id: 'p1', x: 0, y: 280, width: 590, height: 40, type: 'static' },
{ id: 'p2', x: 630, y: 280, width: 170, height: 40, type: 'static' }
],
hazards: [{ id: 'gate', x: 600, y: 0, width: 20, height: 280, damage: 0, type: 'firewall' }]
};