nova64 0.2.5 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.md +25 -8
  2. package/bin/nova64.js +165 -0
  3. package/dist/assets/console-CY_kygm3.js +14 -0
  4. package/dist/assets/console-CY_kygm3.js.map +1 -0
  5. package/dist/assets/main-l0sNRNKZ.js.map +1 -0
  6. package/dist/assets/sky/studio/nx.png +0 -0
  7. package/dist/assets/sky/studio/ny.png +0 -0
  8. package/dist/assets/sky/studio/nz.png +0 -0
  9. package/dist/assets/sky/studio/px.png +0 -0
  10. package/dist/assets/sky/studio/py.png +0 -0
  11. package/dist/assets/sky/studio/pz.png +0 -0
  12. package/dist/assets/vanilla-Dcuy32gi.js +2 -0
  13. package/dist/assets/vanilla-Dcuy32gi.js.map +1 -0
  14. package/dist/console.html +899 -0
  15. package/dist/docs/BENCHMARK.md +77 -0
  16. package/dist/docs/CHEATSHEET.md +255 -0
  17. package/dist/docs/EFFECTS_API_GUIDE.md +577 -0
  18. package/dist/docs/EFFECTS_QUICK_REFERENCE.md +331 -0
  19. package/dist/docs/FONT_CHARACTER_REFERENCE.md +219 -0
  20. package/dist/docs/FREE_GLB_ASSETS.md +330 -0
  21. package/dist/docs/FULLSCREEN_BUTTON_FEATURE.md +296 -0
  22. package/dist/docs/GAMEPAD_SUPPORT.md +348 -0
  23. package/dist/docs/GAME_IMPROVEMENTS.md +278 -0
  24. package/dist/docs/GAME_QUALITY_STATUS.md +300 -0
  25. package/dist/docs/MIGRATION_GUIDE.md +553 -0
  26. package/dist/docs/NOVA64_3D_API.md +356 -0
  27. package/dist/docs/NOVA64_API_REFERENCE.md +1406 -0
  28. package/dist/docs/NOVA64_UI_API.md +503 -0
  29. package/dist/docs/UI_SYSTEM_SUMMARY.md +445 -0
  30. package/dist/docs/VOXEL_ENGINE_GUIDE.md +662 -0
  31. package/dist/docs/VOXEL_QUICK_REFERENCE.md +386 -0
  32. package/dist/docs/api-3d.html +750 -0
  33. package/dist/docs/api-effects.html +385 -0
  34. package/dist/docs/api-improvements.md +121 -0
  35. package/dist/docs/api-skybox.html +407 -0
  36. package/dist/docs/api-sprites.html +321 -0
  37. package/dist/docs/api-voxel.html +337 -0
  38. package/dist/docs/api.html +543 -0
  39. package/dist/docs/assets.html +306 -0
  40. package/dist/docs/audio.html +340 -0
  41. package/dist/docs/blogs.html +286 -0
  42. package/dist/docs/collision.html +316 -0
  43. package/dist/docs/console.html +247 -0
  44. package/dist/docs/editor.html +297 -0
  45. package/dist/docs/font.html +247 -0
  46. package/dist/docs/framebuffer.html +247 -0
  47. package/dist/docs/fullscreen-button.html +297 -0
  48. package/dist/docs/gpu-systems.html +247 -0
  49. package/dist/docs/index.html +580 -0
  50. package/dist/docs/input.html +491 -0
  51. package/dist/docs/physics.html +311 -0
  52. package/dist/docs/screens.html +311 -0
  53. package/dist/docs/storage.html +311 -0
  54. package/dist/docs/textinput.html +332 -0
  55. package/dist/docs/ui.html +488 -0
  56. package/dist/examples/3d-advanced/code.js +695 -0
  57. package/dist/examples/adventure-comic-3d/code.js +342 -0
  58. package/dist/examples/audio-lab/code.js +150 -0
  59. package/dist/examples/boids-flocking/code.js +270 -0
  60. package/dist/examples/crystal-cathedral-3d/code.js +706 -0
  61. package/dist/examples/cyberpunk-city-3d/code.js +1383 -0
  62. package/dist/examples/demoscene/README.md +192 -0
  63. package/dist/examples/demoscene/code.js +1081 -0
  64. package/dist/examples/demoscene/meta.json +21 -0
  65. package/dist/examples/dungeon-crawler-3d/code.js +1117 -0
  66. package/dist/examples/f-zero-nova-3d/code.js +865 -0
  67. package/dist/examples/f-zero-nova-3d/code_old.js +1555 -0
  68. package/dist/examples/fps-demo-3d/code.js +744 -0
  69. package/dist/examples/game-of-life-3d/code.js +338 -0
  70. package/dist/examples/generative-art/code.js +632 -0
  71. package/dist/examples/hello-3d/code.js +325 -0
  72. package/dist/examples/hello-skybox/code.js +183 -0
  73. package/dist/examples/hello-world/code.js +19 -0
  74. package/dist/examples/input-showcase/code.js +109 -0
  75. package/dist/examples/instancing-demo/code.js +315 -0
  76. package/dist/examples/minecraft-demo/code.js +387 -0
  77. package/dist/examples/model-viewer-3d/code.js +114 -0
  78. package/dist/examples/mystical-realm-3d/code.js +1203 -0
  79. package/dist/examples/nature-explorer-3d/code.js +1318 -0
  80. package/dist/examples/particles-demo/code.js +522 -0
  81. package/dist/examples/pbr-showcase/code.js +140 -0
  82. package/dist/examples/physics-demo-3d/code.js +948 -0
  83. package/dist/examples/screen-demo/code.js +267 -0
  84. package/dist/examples/shooter-demo-3d/code.js +1286 -0
  85. package/dist/examples/space-combat-3d/IMPLEMENTATION_SUMMARY.md +109 -0
  86. package/dist/examples/space-combat-3d/README.md +135 -0
  87. package/dist/examples/space-combat-3d/code.js +1332 -0
  88. package/dist/examples/space-harrier-3d/code.js +923 -0
  89. package/dist/examples/star-fox-nova-3d/code.js +1116 -0
  90. package/dist/examples/star-fox-nova-3d/code_backup.js +410 -0
  91. package/dist/examples/star-fox-nova-3d/code_broken.js +1821 -0
  92. package/dist/examples/storage-quest/code.js +209 -0
  93. package/dist/examples/strider-demo-3d/IMPROVEMENT_OPTIONS.md +285 -0
  94. package/dist/examples/strider-demo-3d/cache-test.html +132 -0
  95. package/dist/examples/strider-demo-3d/code-fixed.js +582 -0
  96. package/dist/examples/strider-demo-3d/code-old.js +1537 -0
  97. package/dist/examples/strider-demo-3d/code.js +1462 -0
  98. package/dist/examples/strider-demo-3d/code.js.bak2 +1169 -0
  99. package/dist/examples/strider-demo-3d/fix-game.sh +53 -0
  100. package/dist/examples/super-plumber-64/README.md +128 -0
  101. package/dist/examples/super-plumber-64/code.js +1185 -0
  102. package/dist/examples/super-plumber-64/index.html +88 -0
  103. package/dist/examples/test-2d-overlay/code.js +32 -0
  104. package/dist/examples/test-font/code.js +51 -0
  105. package/dist/examples/test-minimal/code.js +21 -0
  106. package/dist/examples/ui-demo/code.js +306 -0
  107. package/dist/examples/wing-commander-space/README.md +180 -0
  108. package/dist/examples/wing-commander-space/code.js +1285 -0
  109. package/dist/examples/wizardry-3d/CHANGELOG.md +366 -0
  110. package/dist/examples/wizardry-3d/code.js +3928 -0
  111. package/dist/index.html +666 -0
  112. package/dist/os9-shell/assets/index-DIHfrTaW.css +1 -0
  113. package/dist/os9-shell/assets/index-KchE_ngx.js +483 -0
  114. package/dist/os9-shell/assets/index-KchE_ngx.js.map +1 -0
  115. package/dist/os9-shell/index.html +23 -0
  116. package/dist/os9-shell/nova-icon.svg +12 -0
  117. package/index.html +6 -1
  118. package/package.json +37 -32
  119. package/public/assets/sky/studio/nx.png +0 -0
  120. package/public/assets/sky/studio/ny.png +0 -0
  121. package/public/assets/sky/studio/nz.png +0 -0
  122. package/public/assets/sky/studio/px.png +0 -0
  123. package/public/assets/sky/studio/py.png +0 -0
  124. package/public/assets/sky/studio/pz.png +0 -0
  125. package/public/os9-shell/assets/index-KchE_ngx.js +483 -0
  126. package/public/os9-shell/assets/index-KchE_ngx.js.map +1 -0
  127. package/public/os9-shell/index.html +10 -1
  128. package/runtime/api-2d.js +301 -21
  129. package/runtime/api-3d/pbr.js +45 -1
  130. package/runtime/api-3d.js +1 -0
  131. package/runtime/api-effects.js +90 -3
  132. package/runtime/api-gameutils.js +476 -0
  133. package/runtime/api-generative.js +610 -0
  134. package/runtime/api-skybox.js +54 -0
  135. package/runtime/api-voxel.js +139 -28
  136. package/runtime/gpu-threejs.js +13 -9
  137. package/runtime/ui.js +2 -2
  138. package/src/main.js +20 -0
  139. package/public/os9-shell/assets/index-B1Uvacma.js +0 -32825
  140. package/public/os9-shell/assets/index-B1Uvacma.js.map +0 -1
@@ -0,0 +1,109 @@
1
+ # Space Combat Implementation Summary
2
+
3
+ ## ✅ All Issues Fixed!
4
+
5
+ ### 1. Start Button Now Works
6
+
7
+ - **Changed**: `isKeyPressed()` → `isKeyDown()`
8
+ - **Result**: Space, Enter, and clicking all start the game
9
+ - **Location**: Line 309 in code.js
10
+
11
+ ### 2. Console.log Spam Removed
12
+
13
+ - **Removed**: 3 console.log statements
14
+ - **Result**: Clean console output during gameplay
15
+ - **Locations**:
16
+ - Line 5 (loading message)
17
+ - Line 85 (init message)
18
+ - Line 315 (start message)
19
+
20
+ ### 3. Game Over Restart Fixed
21
+
22
+ - **Added**: Space and Enter keys for restart (in addition to R)
23
+ - **Added**: Pulsing prompt text
24
+ - **Result**: Multiple ways to restart game
25
+ - **Location**: Line 1048 in code.js
26
+
27
+ ### 4. Pause System Added
28
+
29
+ - **Added**: Proper pause state handling
30
+ - **Result**: ESC pauses, ESC again resumes
31
+ - **Location**: Lines 318-324 in code.js
32
+
33
+ ## Game Features
34
+
35
+ ### Flight Controls
36
+
37
+ ✅ W/S - Pitch up/down
38
+ ✅ A/D - Yaw left/right (auto-roll)
39
+ ✅ Q/E - Strafe
40
+ ✅ Shift - Boost
41
+
42
+ ### Combat
43
+
44
+ ✅ Space - Fire lasers
45
+ ✅ M - Fire missiles
46
+ ✅ T - Target lock
47
+
48
+ ### Systems
49
+
50
+ ✅ Energy management
51
+ ✅ Shield regeneration
52
+ ✅ Health tracking
53
+ ✅ Wave progression
54
+
55
+ ### HUD
56
+
57
+ ✅ Health/Shield bars
58
+ ✅ Energy meter
59
+ ✅ Radar with enemy tracking
60
+ ✅ Target lock indicator
61
+ ✅ Score and kills
62
+
63
+ ## Testing Checklist
64
+
65
+ - [x] Start with Space key
66
+ - [x] Start with Enter key
67
+ - [x] Start by clicking START button
68
+ - [x] No console spam
69
+ - [x] Flight controls responsive
70
+ - [x] Lasers fire correctly
71
+ - [x] Missiles track targets
72
+ - [x] Enemy AI attacks
73
+ - [x] Pause/unpause works
74
+ - [x] Game over displays
75
+ - [x] Restart works
76
+ - [x] HUD displays correctly
77
+ - [x] 60 FPS performance
78
+
79
+ ## Files Modified
80
+
81
+ 1. **examples/space-combat-3d/code.js**
82
+ - Removed 3 console.log statements
83
+ - Fixed start input detection
84
+ - Added pause state handling
85
+ - Improved game over restart
86
+
87
+ 2. **examples/space-combat-3d/README.md**
88
+ - Updated fixed issues section
89
+ - Added clean console note
90
+
91
+ 3. **COMMIT_MESSAGE_SPACE_COMBAT.txt** (NEW)
92
+ - Complete documentation of implementation
93
+ - Technical details
94
+ - Feature list
95
+ - Testing results
96
+
97
+ ## How to Play
98
+
99
+ 1. Select "Wing Commander Space Combat" from dropdown
100
+ 2. Press **SPACE** or **ENTER** (or click START)
101
+ 3. Use **WASD** to fly
102
+ 4. Press **SPACE** to shoot
103
+ 5. Press **T** to lock targets
104
+ 6. Press **M** to fire missiles
105
+ 7. Survive the waves!
106
+
107
+ ## Status: ✅ COMPLETE
108
+
109
+ All issues resolved, game fully playable!
@@ -0,0 +1,135 @@
1
+ # Wing Commander Space Combat
2
+
3
+ First-person space combat game inspired by Wing Commander, Star Fox, and classic space shooters.
4
+
5
+ ## Features
6
+
7
+ ### ✈️ First-Person Flight Combat
8
+
9
+ - True first-person cockpit view
10
+ - Full 6DOF movement (pitch, yaw, roll, strafe)
11
+ - Realistic flight physics with inertia
12
+ - Boost system for high-speed maneuvers
13
+
14
+ ### 🎯 Combat Systems
15
+
16
+ - **Dual Lasers**: Rapid-fire energy weapons
17
+ - **Homing Missiles**: Lock-on tracking missiles
18
+ - **Target Lock System**: Press T to lock onto enemies
19
+ - **Energy Management**: Balance between weapons and shields
20
+
21
+ ### 🤖 Enemy AI
22
+
23
+ - Intelligent enemy fighters with multiple behavior states
24
+ - Approach, circle, and retreat tactics
25
+ - Enemy ships fire back at player
26
+ - Progressive wave system with increasing difficulty
27
+
28
+ ### 🌌 Asteroid Field
29
+
30
+ - Dynamic asteroid field with 50 asteroids
31
+ - Rotating asteroids that can be destroyed
32
+ - Asteroids respawn to maintain field density
33
+ - Destructible obstacles add tactical elements
34
+
35
+ ### 📊 HUD & Interface
36
+
37
+ - **Health/Shield bars**: Track your survivability
38
+ - **Energy meter**: Monitor weapon power
39
+ - **Radar system**: Track nearby enemies
40
+ - **Target lock indicator**: Shows when locked
41
+ - **Speed gauge**: Monitor your velocity
42
+ - **Score tracking**: Points and kills counter
43
+
44
+ ### 🎮 Controls
45
+
46
+ **Flight:**
47
+
48
+ - `W/S` or `↑/↓` - Pitch up/down
49
+ - `A/D` or `←/→` - Yaw left/right (auto-roll for realism)
50
+ - `Q/E` - Strafe left/right
51
+ - `Shift` - Boost (increases speed)
52
+
53
+ **Combat:**
54
+
55
+ - `Space` - Fire lasers
56
+ - `M` - Fire missile (requires target lock)
57
+ - `T` - Target nearest enemy
58
+
59
+ **System:**
60
+
61
+ - `Enter/Space` - Start game
62
+ - `Escape` - Pause
63
+ - `R` - Restart (on game over)
64
+
65
+ ## Gameplay Tips
66
+
67
+ 1. **Target Lock**: Press `T` when facing an enemy to lock on. This enables missile tracking.
68
+
69
+ 2. **Energy Management**:
70
+ - Lasers cost 5 energy per shot
71
+ - Shields regenerate slowly when not taking damage
72
+ - Energy regenerates at 20/second
73
+
74
+ 3. **Shields First**: Your shields absorb damage before hull integrity is affected. Keep them up!
75
+
76
+ 4. **Use Boost Wisely**: Boost increases speed but makes you harder to control. Use for evasion or closing distance.
77
+
78
+ 5. **Strafe in Combat**: Use Q/E to strafe sideways while keeping enemies in front. Makes you harder to hit!
79
+
80
+ 6. **Asteroid Cover**: Use asteroids as cover from enemy fire.
81
+
82
+ 7. **Lead Your Shots**: Enemies are moving - aim ahead of them!
83
+
84
+ ## Technical Details
85
+
86
+ ### Performance
87
+
88
+ - 50 asteroids with rotation and collision
89
+ - Multiple enemies with AI
90
+ - Projectile physics and tracking
91
+ - Particle explosions
92
+ - Smooth 60 FPS performance
93
+
94
+ ### Fixed Issues
95
+
96
+ - ✅ **Start button working**: Changed from `isKeyPressed()` to `isKeyDown()` for reliable input
97
+ - ✅ **Multiple input methods**: Enter, Space, or clicking all work
98
+ - ✅ **Clean console**: Removed all console.log spam
99
+ - ✅ **Restart on game over**: Press Space, Enter, or R to restart
100
+
101
+ ### Game Balance
102
+
103
+ - Player Health: 100
104
+ - Player Shields: 100
105
+ - Missiles: 10 (no resupply)
106
+ - Enemy Health: 3 hits
107
+ - Laser Damage: 1
108
+ - Missile Damage: 5
109
+
110
+ ## Wave System
111
+
112
+ - Wave 1: 3 enemies
113
+ - Wave 2: 5 enemies
114
+ - Wave 3: 7 enemies
115
+ - Each wave: +2 enemies
116
+ - Bonus score: 1000 × wave number per completion
117
+
118
+ ## Future Enhancements
119
+
120
+ - Power-ups (health, shields, missiles)
121
+ - Different enemy types (bombers, interceptors)
122
+ - Capital ship battles
123
+ - Multiplayer dogfights
124
+ - More weapon types (plasma cannon, torpedoes)
125
+ - Nebula effects and environmental hazards
126
+ - Mission objectives beyond survival
127
+
128
+ ## Credits
129
+
130
+ Inspired by:
131
+
132
+ - Wing Commander (Origin Systems)
133
+ - Star Fox (Nintendo)
134
+ - TIE Fighter (LucasArts)
135
+ - Elite Dangerous (Frontier)