canon's People
canon's Issues
Implement touch-enabled controls for mobile
At the moment, you need a keyboard (ASDW space) to play.
The mobile experience requires some kind of joystick to be present, or a native interface.
We could do: left-right movements with left thumb, angle and power with right thumb.
When tab is inactive, timeouts run at 1Hz
To fix: attach timeouts to web workers instead of the window object
Find the backstory / style of the game
If we're to design a new HUD, a new map, new sprites for the characters, then we need to define first what is the flavor, style, ambiance of the game.
Is it retro? Futuristic? Both? Cartoonish? Steampunk?
Past & present sound boring to me. Mages could do, with a medieval fantastic style, although the ballistic part makes little sense (you "launch" a spell above the mountain?!).
Gunbound is cartoonish, not too serious, borderline absurd (the mobiles have eyes and mouths, just like small pets manned by their owners). I like it but we have to find something different.
Horrendous perf in Firefox
The simulation runs twice as slowly in FF
Redesign the HUD
It's fugly right now and doesn't give accurate information (who is our player, HP left, last shot's power & angle).
Make the viewport (and hud and all) 100% width 100% height
The viewport size should dictate the size of the camera.
We must use JS to detect the width and height of the player's window, then feed it to the viewport + camera.
Controls for shooting on desktop are awkward
The current system is unclear: players don't realize that they must hold space to shoot. Even if they to, they can't cancel the action so they have to shoot to full power / overshoot.
Implement wind mechanics
The game is very deterministic at the moment. Wind will bring randomness, skill and fun.
HUD is obstructing the view
The HUD should overlay the game as little as possible. If anything happens in the left corner or y>=500, we can't see the action & players anymore.
Camera movements should fix that, but for the vertical part, the HUD should be on top of nothing, and the game should be above it.
Find better & legal music
We don't have the rights to the current music and should probably find something different anyway (less... heavy?)
Player-ground collisions make movements non-smooth
Ever since implementing collision from http://higherorderfun.com/blog/2012/05/20/the-guide-to-implementing-2d-platformers/ the movements when climbing a slope have become noticeably not smooth.
Performance issues
With two instances of the client + 1 server my computer starts heating off badly.
Could come from various things, but I'm confident we could fix most of it considering the game is a small 2D simple-physics simulation.
If bullet misses collision with the ground, it never stops falling
Beyond world bounds, the bullets should disappear without exploding
Pure cosmetic: change the background as the day passes
Redesign the tanks
Mobiles are ugly and don't really make sense right now.
Maps can desynchronize between server and client
Not sure what the cause is yet, but the effect is that the server and the client don't agree on an explosion, and hence disagree on the map and the collision.
The client keeps predicting movements according to how he sees the map, and the server keeps sending corrections for the clients' positions.
This problem never happened before we resized the viewport. Maybe the calculations are different now?
Design 3 more weapons
The current cannon is OK-ish, a bit boring though. We don't have a clear idea of what should come next.
Bug when game skips the even rounds
To repro:
on branch planet
be red player
go to edge of planet, fall
from there, do a full power 0° shot
from then on, round 2*n will be skipped
Design a new default map
Current map was a nice filler, but it's ugly and not optimized for the game mechanics.
Sound effects are terrible
Only two sounds implemented, one for shooting and one for explosion. They are both terrible. They should be replaced by something better.
redesign movements and physics to accomodate for a point-based gravity
at the moment, gravity goes down the screen, and movements on X axis are left-right movements only. for slopes and stuff like that, it's going to be a problem
Deal with what happens when there is no ground left
Is it a hard soil then? How is that fun?
Is it the void, and the player dies? Can we make this mechanic fair? I think it's fun.
Camera movement
Currently the player camera sees the entire battlefield. It should
- follow the current player more closely
- loosely follow the bullet that is fired, even if it means unzooming
- let the player take control of it somehow (arrows? drag and drop?)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.