Commit Graph

135 Commits

Author SHA1 Message Date
gpt-engineer-app[bot] d13fa4f454 Changes 2026-01-06 23:55:01 +00:00
jory 49abc06046 Complete 2P Pacman implementation with invincibility and fixes
- Add 2P multiplayer mode with individual scoring and lives
- Implement player elimination system with continue/restart options
- Fix collision detection for moving into ghosts
- Add 3-second respawn invincibility like original Pacman
- Visual effects: pulsing/glow during invincibility, smoother animations
- Controls: P1 uses WASD+arrows in 1P, WASD only in 2P; P2 uses arrows
- Fix continue in 1P mode transferring surviving player state
- Revert ghost AI to simple targeting for reliability
2026-01-07 00:24:56 +01:00
jory a06d538170 Implement 2P Pacman mode with proper collision detection and ghost AI
- Add 2P mode selection and controls (P1: WASD/Arrows, P2: IJKL)
- Implement individual scoring and lives for both players
- Fix collision detection for both moving into ghosts and ghosts moving into players
- Add player elimination system with continue/restart options
- Revert ghost AI to original working logic
- Add visual smoothing with CSS transitions and effects
- Fix standing still collision bug
2026-01-06 23:36:44 +01:00
jory b42ff297eb Fix Tetris 2P preview block synchronization issue
- Prevent duplicate piece shapes when generating next pieces
- Enhanced randomTetromino() with excludeShape parameter
- Update piece placement logic to avoid visual duplicates
- Improve initial state generation for both players
- Add P1 and P2 next piece previews in 2P mode
2026-01-06 21:54:11 +01:00
gpt-engineer-app[bot] 4a1879354b Add Zen Mode toggle
Implement Zen Mode that hides all UI except Matrix background and MusicPlayer, toggleable via Z key. Adds useZenMode hook, integrates into Index to render/hide UI accordingly, and enables Escape to exit.

X-Lovable-Edit-ID: edt-718e1520-c8f0-4fbc-b60d-412ed28dddb1
2026-01-06 09:31:21 +00:00
gpt-engineer-app[bot] 3b32652ae5 Changes 2026-01-06 09:31:20 +00:00
gpt-engineer-app[bot] 48613225a7 Integrate YouTube and SoundCloud
- Add client-side YouTube and SoundCloud music integrations
- Implement API key settings UI stored in localStorage
- Replace previous separate tabs with integrated in-page YouTube/SoundCloud modules
- Update Music page to include YouTube, SoundCloud, and custom URL playback options
- Introduce YouTubePlayer and SoundCloudPlayer components with basic search, playback, and favorites
- Add TypeScript typings for media APIs and related hooks

X-Lovable-Edit-ID: edt-252ad380-84c1-420a-8bd4-f9daeb5bc1ec
2026-01-06 00:04:17 +00:00
gpt-engineer-app[bot] 0753b8ff20 Changes 2026-01-06 00:04:17 +00:00
jory 7cf34c1c9b Fixed spamming left/right keys causes blocks to infinitly float 2026-01-04 16:42:46 +01:00
gpt-engineer-app[bot] ce25dd9f6c Consolidate multiplayer UI
- Remove separate /games multiplayer entries; integrate 1P/2P mode into Snake and Tetris views with on-screen toggle
- Display 2P side-by-side boards on desktop; disable 2P on mobile
- Improve Breakout by slowing ball speed
- Remove SnakeMultiplayer route and related files
- Update App routing to drop snake-2p path

X-Lovable-Edit-ID: edt-619f10f3-377b-4f5e-92d8-c9a92a608368
2026-01-03 00:50:07 +00:00
gpt-engineer-app[bot] 75946c9feb Changes 2026-01-03 00:50:06 +00:00
jory 1a6227bf48 Dont lazy load components so pages load instantly and sidebar.tsx on mobile phone is fixed 2026-01-03 01:32:45 +01:00
jory f48c3a68f9 Use proper is mobile hook instead of calculate ourselves 2026-01-03 00:22:51 +01:00
jory d1217c7ed7 Fixed the layout of the mobile screen on all /games 2026-01-03 00:17:38 +01:00
gpt-engineer-app[bot] e98bb0aad6 Fix mobile arcade controls
- Hide terminal icon on mobile, add responsive scrollbar to sidebar, improve mobile control docking
- Expand MusicContext to support more stations, adjust mobile dropdown behavior
- Move audio controls below settings, enable multi-source intro video prior to exports
- Add multiplayer Snake 2P, update layouts to place controls and visuals side-by-side on desktop, compact on mobile
- Enable YouTube/SoundCloud playback for music player

X-Lovable-Edit-ID: edt-38b6abba-b972-46f2-b601-29f2baac8110
2026-01-02 22:01:18 +00:00
gpt-engineer-app[bot] b70c67b5b2 Changes 2026-01-02 22:01:17 +00:00
gpt-engineer-app[bot] ca38e98ca5 Enhance mobile UI and multiplayer
- Hide terminal icon on mobile and add vertical scrollbar to sidebar
- Add robust radio API fallbacks for MusicContext
- Fix mobile dropdown to auto-close on route change
- Introduce 2-player multiplayer for arcade games (Snake 2P, prep for others)
- Update app structure to route snake-2p and keep intro/video flow intact

X-Lovable-Edit-ID: edt-a2080411-825e-495f-8e7e-9c2a15a36c9c
2026-01-02 21:32:33 +00:00
gpt-engineer-app[bot] f0defcbaa1 Changes 2026-01-02 21:32:32 +00:00
jory 467e4a53d1 Auto detect if javascript is enabled and if not display message 2025-12-27 23:58:22 +01:00
jory a7d5bc436e Fixed the /oscilloscope view to show the correct fields at right locations 2025-12-21 19:51:34 +01:00
gpt-engineer-app[bot] f3263cd29e Fix intro video and visuals
Introduce reliable intro.webm playback before main video, switch to webm-first intro with proper frame handling; reorganize oscilloscope controls, add spectrum visualization support, and adjust audio inputs placement and mic controls. Update oscilloscope to render spectrum mode and side-by-side layout with live display options.

X-Lovable-Edit-ID: edt-8fca3b32-298d-48b9-97c3-d077b9c82892
2025-12-21 18:10:01 +00:00
gpt-engineer-app[bot] 8ecd8da712 Changes 2025-12-21 18:10:00 +00:00
gpt-engineer-app[bot] 043b06d6ea Add intro to export
Integrate intro.mp4/intro.webm at start of exports with fade-in; fix mobile music player hover behavior; move drop/upload and mic controls beneath oscilloscope content for mobile-friendly layout. Also adjust UI to place audio input below main display.

X-Lovable-Edit-ID: edt-d9fc8a84-3564-4af4-b79d-75465466c78c
2025-12-21 17:45:07 +00:00
gpt-engineer-app[bot] 432537e79f Changes 2025-12-21 17:45:07 +00:00
jory dd01c54fb6 added intro video which has to be added in the code for the generation of a oscilloscope video 2025-12-21 18:39:27 +01:00
gpt-engineer-app[bot] c96d9f210e Arrange oscilloscope layout beside controls and shrink mini view on mobile
Move oscilloscope display to sit next to settings/controls (side-by-side layout) and make mini oscilloscope smaller on mobile to avoid blocking terminal and music icons, with updated responsive sizing.

X-Lovable-Edit-ID: edt-09ee86ef-59e1-4283-a96d-d4ea6abbe5cf
2025-12-21 15:18:55 +00:00
gpt-engineer-app[bot] 64fec848fe Changes 2025-12-21 15:18:54 +00:00
gpt-engineer-app[bot] 6693f94b65 Improve oscilloscope init and sync
- Ensure oscilloscope starts immediately and animates at full FPS
- Sync visualization with audio element without relying on slow timeupdate
- Update OscilloscopeDisplay to read from audio element directly and handle seek properly
- Adjust playback integration in Oscilloscope.tsx to pass proper refs and props

X-Lovable-Edit-ID: edt-073ab13c-7eb6-4c9d-b2fd-ac84088b119a
2025-12-21 15:00:46 +00:00
gpt-engineer-app[bot] 2b85bc4825 Changes 2025-12-21 15:00:46 +00:00
gpt-engineer-app[bot] 8fd0ef4f53 Refactor oscilloscope UI
- Rename ControlPanel to OscilloscopeControls for clarity
- Integrate live audio playback with a progress bar and time display
- Remove MP4 export; WebM only with updated export options
- Align oscilloscope components to use shared audio analyzer context
- Enable immediate oscilloscope initialization and live display modes (Combined/XY)
- Improve styling and responsive sizing of mini/full oscilloscope views

X-Lovable-Edit-ID: edt-28a85a31-f522-4420-8353-3be1a784d5c4
2025-12-21 14:55:20 +00:00
gpt-engineer-app[bot] 9997558c3a Changes 2025-12-21 14:55:19 +00:00
gpt-engineer-app[bot] 53f2dc6e96 Fix oscilloscope init and mode
- Ensure oscilloscope renders immediately by initializing audio analyzer context on load
- Simplify live display mode to support only Combined and All/XY, and wire display mode to live visualization
- Adjust panels to reflect new mode options and ensure live data switches render correctly
- Update OscilloscopeDisplay to honor live display mode changes and use shared audio analyzer
- Minor tweaks to MiniOscilloscope for consistent visualization and navigation behavior

X-Lovable-Edit-ID: edt-33738654-f505-4a6a-9854-8683f1b4efdb
2025-12-21 14:30:48 +00:00
gpt-engineer-app[bot] 6e3d0e8918 Changes 2025-12-21 14:30:47 +00:00
gpt-engineer-app[bot] cc2612918c Clarify oscilloscope modes
- Separate live display controls from export display mode
- Allow live visualization options (line thickness, grid, glow) to affect the real-time graph
- Update Oscilloscope to pass new liveSettings to panels and display components
- Fix duplicate variable declarations in OscilloscopeDisplay drawFrame logic

X-Lovable-Edit-ID: edt-fc124d7f-b9d9-4269-96b8-0925004fe070
2025-12-21 14:24:16 +00:00
gpt-engineer-app[bot] 8173565521 Changes 2025-12-21 14:24:15 +00:00
gpt-engineer-app[bot] e02bd14b2b Tune oscilloscope visuals
Remove idle NO SIGNAL state, widen mini oscilloscope, align with theme colors, and connect full oscilloscope to shared audio analyzer to visualize music and sound effects continuously. Also updated OscilloscopeDisplay to use shared analyzer data.

X-Lovable-Edit-ID: edt-8830a45a-8e37-44e7-b833-ddf573c55606
2025-12-21 14:09:40 +00:00
gpt-engineer-app[bot] d4f544168d Changes 2025-12-21 14:09:40 +00:00
gpt-engineer-app[bot] cdc0f6d45e Fix audio routing
- Implement shared AudioAnalyzer flow by wiring MiniOscilloscope and MusicContext to a single AudioContext and AnalyserNode
- Route music and sound effects through the shared analyzer
- Restore and enlarge mini oscilloscope, ensure it opens /oscilloscope on click
- Update App wiring to include AudioAnalyzerProvider and adapt contexts accordingly

X-Lovable-Edit-ID: edt-787fd745-f007-47ee-b161-626997f20f27
2025-12-21 13:55:17 +00:00
gpt-engineer-app[bot] a9235fdb3f Changes 2025-12-21 13:55:16 +00:00
gpt-engineer-app[bot] 3f05ec4015 Link mini oscilloscope to music
- Fix connection to music audio for MiniOscilloscope by wiring to MusicContext audioElement and ensuring real-time waveform from active audio sources.
- Update MiniOscilloscope to discover and attach to all current and future audio elements, with idle animation and click navigation to /oscilloscope.
- Adjust MusicContext to expose audioElement for external consumers.

X-Lovable-Edit-ID: edt-731dd6ba-bc18-4933-beb8-3df453876b84
2025-12-21 13:47:32 +00:00
gpt-engineer-app[bot] 56862114ec Changes 2025-12-21 13:47:32 +00:00
gpt-engineer-app[bot] fd8f1671ca Add live oscilloscope bar
Introduce a new MiniOscilloscope bar at bottom that links to /oscilloscope, modify MainLayout to render it, and fix offline video export scaffolding to support audio chunks and buffer, enabling integration with oscilloscope feature. Adjust layout to ensure accessibility and navigation.

X-Lovable-Edit-ID: edt-b2174f84-2f48-457a-857a-e5f0e9c64c83
2025-12-21 13:39:54 +00:00
gpt-engineer-app[bot] e23f6b55fb Changes 2025-12-21 13:39:53 +00:00
jory 614811167f Audio Playback Controls
- Playback Speed Control: 0.5x, 1x, 1.5x, and 2x speed options
- Looping Toggle: Enable/disable automatic looping of audio playback
- Seeking: Click anywhere on the oscilloscope display to jump to that position in the audio
 Export Options
- Resolution Selection: Choose from 640×480, 1280×720, or 1920×1080
- Frame Rate Options: 24, 30, or 60 FPS
- Format Selection: WebM or MP4 (if supported)
- Quality Settings: Low, Medium, or High quality presets
 Microphone Calibration
- Real-time Level Monitoring: Visual indicator showing current microphone input level
- Gain Control: Adjustable gain slider (0.1x to 3x) to optimize input levels
- Visual Feedback: Color-coded level indicator (red=too loud, yellow=good, green=too quiet)
- Calibration Mode: Dedicated calibration panel that appears when mic is active
2025-12-21 14:29:17 +01:00
jory cde5f34858 Command History
- Up/Down Arrow Navigation: Users can now press ↑/↓ to navigate through previously executed commands
- History Storage: Commands are stored in state and persist during the session
- Duplicate Prevention: Avoids adding the same command multiple times consecutively
- Reset on Typing: Manual typing resets the history navigation position
 Tab Completion
- Auto-complete: Pressing Tab completes partial commands that match available commands
- Single Match: If only one command matches, it completes the full command
- Multiple Matches: If multiple commands match, displays all possible completions in the terminal output
- Case-insensitive: Works regardless of input case
2025-12-21 13:57:47 +01:00
jory 1495a9a5c5 Implemented Oscilloscope correctly now
Have tested it with a 5 minute long audio file
Bigger files and different formats still needs testing
2025-12-21 13:51:16 +01:00
jory ad6587978a Correct files to integrate with the site for a good audio to a/v osciloscope converter
Now has to be only implemented in the actual website
2025-12-21 13:21:20 +01:00
jory e227743728 Osciloscope integrated but video exported is broken 2025-12-20 15:50:04 +01:00
jory 26584ea848 Before attempting to integrate osciloscope properely. STILL BROKEN NOW 2025-12-20 15:34:07 +01:00
gpt-engineer-app[bot] 6fa754a1eb Harder human verification
Improve the Taobao-style canvas verification by adding visual noise, distortion, and OCR-resistant features to letters/numbers to deter AI detection while remaining readable to humans.

X-Lovable-Edit-ID: edt-903ac302-29fd-483d-a2f3-bdbeeec1df22
2025-12-11 08:10:24 +00:00