A collection of games and visualizations built with Julia and Node.js, featuring fractal battles and classic Snake.
An AI-driven battle between mathematical fractals like Mandelbrot and Julia sets. Fighters have health, defense, and special abilities. The game generates animated MP4 videos of the battles.
- Mandelbrot, Julia, and Burning Ship fractals as fighters
- AI agents with strategic decision-making
- Special abilities: Deep Zoom (power boost), Iterate Heal, Burning Burst, Variant Shift
- Defense mechanics reducing damage
- Video generation with real-time fractal animations
- Tournament mode with multiple fighters
- Ensure Julia is installed.
- Activate environment:
julia --project - Run AI battle:
julia --project main.jl(choose 'a' for AI demo) - For video: Generates
battle.mp4with fractal animations - Interactive mode: Choose 'i' for player vs AI battle
main.jl: Core game logic, fractal generation, battle simulationProject.toml: Julia dependencies (Plots, VideoIO, etc.)frames/: Generated animation framesbattle.mp4: Output video
A localhost web server serving interactive games and visualizations.
- Serves HTML pages for games
- RESTful endpoints for fractal images (PNG)
- Supports real-time animations
- Install Node.js.
- Run:
node server.js - Open http://localhost:3000 in browser
server.js: HTTP server setupindex.html: Interactive fractal battle with live animationssnake.html: Web-based Snake game
Classic Snake game playable in browser or console.
- Canvas-based graphics
- Arrow key controls
- Score tracking
- Collision detection
- Text-based display
- Readline input
- Same gameplay
- Web: Start server (
node server.js) and visit http://localhost:3000 - Console:
node snake.js(use arrow keys, q to quit)
snake.js: Console Snake gamesnake.html: Web Snake game
- Julia 1.10+
- Node.js 14+
- GitHub CLI (for repo management)
- Clone the repo:
git clone https://github.com/blakkhatt/MyGames.git - For Julia:
cd MyGames && julia --project - For Node.js: Ensure Node.js installed
- Fractal Battles:
julia --project main.jl - Web Games:
node server.jsthen http://localhost:3000 - Console Snake:
node snake.js
Feel free to fork and add more games or features!
MIT License