Skip to content

Claude/vertical slice puzzle 5 vj2 p#15

Merged
hyperpolymath merged 4 commits into
mainfrom
claude/vertical-slice-puzzle-5Vj2P
Dec 27, 2025
Merged

Claude/vertical slice puzzle 5 vj2 p#15
hyperpolymath merged 4 commits into
mainfrom
claude/vertical-slice-puzzle-5Vj2P

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

No description provided.

claude and others added 4 commits December 27, 2025 14:09
Add complete game loop with:
- egui-based main menu with Play button and controls info
- Game HUD with piece palette (AND/OR gates) and legend
- Grid-based puzzle board with colored pieces
- Player can place logic gates and verify solutions
- Z3 SMT solver integration for proof verification
- Level completion screen showing verification success

Puzzle: Connect assumptions P and Q through an AND gate to prove R.
The solution is verified mathematically using Z3's SAT solver.

Controls:
- Space: Verify solution
- Left click: Select piece
- Right click: Place selected gate type
- ESC: Return to menu
Changes:
- Add feature flags for optional dependencies (z3-verify, steam, network)
- Create lib.rs for library builds without GUI dependencies
- Implement mock verification when Z3 is unavailable
- Update Bevy APIs for 0.17 compatibility:
  - Use single()/single_mut() instead of get_single()
  - Use Sprite + Transform instead of SpriteBundle
  - Handle EguiContexts.ctx_mut() Result type
  - Use EguiPlugin::default() constructor
- Separate game systems from core types for cleaner lib/bin split
- Remove wayland feature to reduce system dependencies

The game now builds without libwayland-dev or libz3-dev.
Mock verification uses connectivity checks when Z3 is unavailable.
New features:
- Level pack system for organizing puzzles
- Built-in tutorial pack with 4 progressive levels
- Level pack browser with completion tracking
- Level editor for creating custom puzzles
- Save/load user-created packs to JSON

UI changes:
- Main menu: Play → Level Select, Quick Play, Level Editor
- Level select: Browse packs, see completion progress, double-click to play
- Editor: Place assumptions/goals, set metadata, validate and save

Technical:
- New modules: levels, editor, states
- Bevy 0.17 Message API for editor events
- GameState moved to shared states module
@hyperpolymath
hyperpolymath merged commit d85693c into main Dec 27, 2025
11 of 18 checks passed
@hyperpolymath
hyperpolymath deleted the claude/vertical-slice-puzzle-5Vj2P branch December 27, 2025 18:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants