Jump to content

Laser Hexagon: Difference between revisions

From tmplab
New page: == Description == A personal remake of Terry Cavanagh's [http://superhexagon.com/ SUPER HEXAGON obstacle race game]. Also borrowing some nice ideas from Vittorio Romeo's [http://vittorior...
 
No edit summary
Line 2: Line 2:
A personal remake of Terry Cavanagh's [http://superhexagon.com/ SUPER HEXAGON obstacle race game].
A personal remake of Terry Cavanagh's [http://superhexagon.com/ SUPER HEXAGON obstacle race game].


Also borrowing some nice ideas from Vittorio Romeo's [http://vittorioromeo.info/projects.html OPEN HEXAGON] remake.
Also borrowing some nice ideas from Vittorio Romeo's [http://vittorioromeo.info/projects.html OPEN HEXAGON remake].


Tailored for laser projection.
Tailored for laser projection.
[http://www.tmplab.org/video/HEXAGONLAZER.webm Video here (W.I.P. 2015/01/29)]


== Game features ==
== Game features ==
Line 11: Line 13:
Written in Python, using the [http://www.pygame.org/wiki/about pygame framework].
Written in Python, using the [http://www.pygame.org/wiki/about pygame framework].


Core laser control routine (dac.py module) from Brandon Thomas (Echelon)'s [https://github.com/echelon/laser-asteroids Laser Asteroids] game.
Core EtherDream controller's protocol management (dac.py module) from Brandon Thomas (Echelon)'s [https://github.com/echelon/laser-asteroids Laser Asteroids] game.


On-screen (pygame drawing primitives-based) display too, in order to be able to play or design the game even with no laser at hand.
On-screen (pygame drawing primitives-based) display enables to play or design the game even with no laser at hand.


Designed with wire-frame in mind : since lasers can only draw lines, therefore even the obstacles are lines rather than solid polygons !
Designed with wire-frame in mind : since lasers can only draw lines, therefore even the obstacles are lines rather than solid polygons !
Level scripting mimics Vittorio Romeo's LUA scripts "spawn-then-wait" concept (but in a more basic way since I'm not as skilled as him !) thanks to Python's ''yield'' statement. Instead of writing complex state machines, levels get written as simple sequential programs !
Open Hexagon's floating/rotating walls, as well as Super Hexagon's scenery-bound walls subject to the opening/closing sector effect.
... and of course, source code intended to be released as soon as the game gets substantial playable content !

Revision as of 22:01, 30 January 2015

Description

A personal remake of Terry Cavanagh's SUPER HEXAGON obstacle race game.

Also borrowing some nice ideas from Vittorio Romeo's OPEN HEXAGON remake.

Tailored for laser projection.

Video here (W.I.P. 2015/01/29)

Game features

(work in progress)

Written in Python, using the pygame framework.

Core EtherDream controller's protocol management (dac.py module) from Brandon Thomas (Echelon)'s Laser Asteroids game.

On-screen (pygame drawing primitives-based) display enables to play or design the game even with no laser at hand.

Designed with wire-frame in mind : since lasers can only draw lines, therefore even the obstacles are lines rather than solid polygons !

Level scripting mimics Vittorio Romeo's LUA scripts "spawn-then-wait" concept (but in a more basic way since I'm not as skilled as him !) thanks to Python's yield statement. Instead of writing complex state machines, levels get written as simple sequential programs !

Open Hexagon's floating/rotating walls, as well as Super Hexagon's scenery-bound walls subject to the opening/closing sector effect.


... and of course, source code intended to be released as soon as the game gets substantial playable content !