avesanen/initialv
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
========
InitialV
========
(C) 2012-2013 Jussi Salin & Antti Vesanen
A node.js and HTML5 based cave flying game with multiplayer support. JavaScript
is generated from CoffeeScript, which is the language used for all parts
uniquely programmed in this project. JQuery and some other JavaScript libraries
are used.
-------------
To try it out
-------------
Install node.js, then go to the main initialv folder and run app.js with nodejs.
Go to http://localhost:3000/ with Chrome or other good HTML5 browser while the
server is running.
Development thoughts
--------------------
To help networking not fall out of sync, let's implement all game objects to
have these properties.
Position:
-x horizontal position (pixels)
-y vertical position (pixels)
-a angle (degrees)
Velocity
-dx horizontal velocity (pixels/second)
-dy horizontal velocity (pixels/second)
-da angle velocity (degrees/second)
Acceleration
-ddx horizontal acceleration (pixels/second^2)
-ddy vertical acceleration (pixels/second^2)
-dda angle acceleration (degrees/second^2)
A list of features not yet implemented, but would be nice some day:
[x] plasma clouds, nebulas or generally stuff on the map where you can hide. new canvas?
[x] bullets will hit own ship and other ships -> hitpoints, death
[ ] respawn and lives?
[x] docks on the ground, where ship can be recharged
[x] special weapon in another key, for example a bomb that splits to many bullets
[x] reimplement the network game code after major refactoring
[ ] design some way for players to choose map, start game and the game to end
Choice 1: one player chooses "host game", gets url to clipboard. when pasted in chats to other players,
they can join that game with that url till host launches it
Choice 2: a full blown lobby, like in some other games
[-] use json for defining map, sprites and sound lists
[ ] a loading screen which goes off only when all images and sounds are loaded