Welcome to WPilot. WPilot is a browser-based, multiplayer, space shooter inspired by old classic such as XPilot, Thrust and Gravity Force.
The game is a "proof-of-concept" project, where we are trying too push what's possible in browser without using any third-party plugins. The game is built using HTML5 technologies. Read more
Server List | |||||
Server name | Ping | Region | Map | Players | |
Hi, refresh server list to play | |||||
Loading server list... | |||||
No servers available? Start a server of your own or watch a video in the Media section. |
The gameplay is pretty simple, avoid getting shoot while shooting your opponents. The first player that reaches the score limit wins the round.
Your ship is easy to maneuver, but hard to master. The up-arrow will thrust your ship in current direction. Use your left- and right-arrow to rotate your ship left and right. Your only defense against walls, and opponent bullets is your shield, access it by down-arrow. While activated, you are indestructible. The shield isn't free of charge though, it will quickly drain our energy.
There are two ways to defeat your opponent and get points. You can either bump into them with your shield activated or you can shoot them with your canon. Each bullet cost a bit of energy, so try to save some incase you'll need the shield.
Each game starts in warm-up mode. It let's you try things out and battle a bit until enough players are ready.
When you are ready for some real action, press the r-key. When enough players is ready, the game starts.
What would a space-shooter be without compelling enhancements? WPilot contains three kinds of destructive powerups, each one improving your vessel's arsenal. Powerups are possible to combine and can help even the worst pilots to get a few kills.
You score a point when blowing up an opponent and you will loose a point when crashing into a wall due to bad maneuvering skills. The first player that reach the round limit wins.
You can taunt, chat or salute your opponents by pressing the enter-key. The prompt can also be used to issue commands. For example, you can change your name in-game by typing "/name your_name" (without the quotes).
WPilot contains a total of five official maps. You can create your own map with the built-in map-format.
This is the built-in standard map. Search and destroy your opponent in the outer rim or try to get some powerups in the center area.
Four areas with several small passages between them, camp a single area or outmaneuver your foes in the passages?
A small minimal map, designed for maximum conflict.
The map contains two main areas. Each area is separated by the wall of death. The only way to go between the areas it to thrust through the small passages which is hard, so be careful.
The map contains two small rooms containing powerful powerups. Risk getting ambushed for the ultimate power.
We have recorded a couple of videos of WPilot in action. The videos can be found in our channels over at Youtube and Vimeo.
We appreciate new material, please let us know if have something you wish to contribute.
WPilot is unfortunately not playable in all browsers. This compatibility list helps you find a browser that is supported by WPilot. The browser rank gives you an indication of how well the game perform.
The Recommended indicates that the browser is fully supported. There can be some quirks but nothing major.
The Not recommended indicates that the game should run, but that there's one or more major quirks that causes the game to run badly. Read the description for more information.
The Not supported indicates that the game won't run at all. There may be support for the browser in a future release, but no guarantee.
Yesterday's browser wasn't built to handle fast graphics applications and low-latency game network protocols.
This is about to change dramatically, the browser standard factory is currently cooking up some very interesting new features for our browsers. New HTML5 technologies such as Canvas, WebSocket and WebGL will change the way we think of games and applications in the browser.
The goal of this projects was/is to test how far we can get using only the browser. No third-party plugins such as Flash, Silverlight and Unity3D. (Not entirely true though, Flash is used to emulate the WebSocket interface in browsers that lacks the feature)
As you can see the results so far is pretty impressing. The game engine runs at 60 ticks per second. Each game tick handles collision data, movement and game rules. The server is constantly sending position updates to each client which requires a low-latency connection between the two parties.
The native implementation of WebSocket (In Safari and Google Chrome) handle this very well. The fallback plugin is kind of unstable on the mac but seems to do a good job on Windows machines.
WPilot and similar applications will be more stable and faster as browser vendors continues to implement new and exciting features listed in the HTML5 draft.
So you are interesting in setting up a server of your own, that's great! The entire server is built in something called node.js. Node.js is a framework built on top of Googles lighting fast Javascript engine V8
First, download and install node.js (see instructions on project homepage). Then, download the latest version of WPilot. Extract the zip to directory of choice. All server configuration is done via a set of command-line switches. You can get list of all available switches by typing:
$ ./wpilots.js -H
You probably want to change the server name, region and port no. Use the --name switch to change name, the --region switch to change region and the --ws_port to change the TCP port to listen on.
The WPilot server has a built-in HTTP-server that delivers all client releated data. The server is by default started and is serving the data at port 8000. Set the --http_port switch to 0 to disable HTTP server.
The current version of the server is a so called BETA version. Things can break. You can put server in "debug-mode" by adding the --debug switch, which will print additional debug information in the console. This may help you to track down bugs.
We have limited server capacity, so please concider to list your server in The Public server list (the list at the top of this page).
Send your "ws://" host address to email to dahlberg.johan AT gmail com. We will list it as soon as possible.
You can also fork the git repo and add the address directly
WPilot comes with a set of maps. All maps is located in the the "$INSTALLDIR/maps" directory. You can choose to circle between multiple maps at startup. Use the --map for each map you want to play. It's also possible to change map in-game.
As an administrator you can change maps and kick players in-game. You need to start the server with the switch "--admin_password password" (where password is your password), this enable the in-game admin mode. To authorize you in-game, type:
/sv_password password
After authorization you can issue admin commands. For example, the command:
/sv_map maps/battle_royale.json
will change map to Battle Royale. You can also kick unwanted players with:
/sv_kick player_name reason
Note: The reason argument MUST be entered in order to kick someone.
This is an Open Source project, anyone can download and play around with the code.
The easiest way is to post an issue ticket over at GitHub. You can also mail me at dahlberg.johan AT gmail com.
Bug fixes and optimizations is appreciated. If you are an expert on Opera or maybe find a way of getting this to work on IE, we'd really appreciate your contribution to the main project.
First fork the WPilot GIT-repository with the following command:
$ git clone git://github.com/jfd/wpilot.git
When you are done with your bug-fix or performance increaser, press the "pull request" -button in your forked repository.
Lead developer - Johan Dahlberg
Collision coding - Linus Larsson
Original sounds - Emanuel Dahlberg
This software is released under a MIT-style license. You can do pretty much what you want with it.