Super Flying Thing - Update 06
Readers, I know there are some, there is a new update of the game, should be available on Android Market already.
We added different controllers and we are testing how they feel and what method of control people like best.
As always, a change log:
- Added more levels and fixed previous ones.
- Added different controllers to test.
- Added level preview on level selection screen.
- Added settings screen which lets you choose different controllers and test them.
- Added message to show which level is being previewed
- Added animation to visited planet to differentiate easily between start and destination planets.
- Changed ship to receive damage instead killing it instantly, so you now could survive in some cases.
Fixed a bug with lasers.
Remember, you can play it right now, just follow the next links:
PLAY ON PC or PLAY ON ANDROID:
Hope you enjoy it.
Multiple Android controls for Super Flying Thing
Most people tell us that the game controls are not fine yet, at least for the Android version. Based on that, we are working on multiple control implementations to test and to let the user choose which controls fits best for him.
How we manage the controls internally
To control the Ship, we created a structure named ShipController with two methods:
shouldReleaseShip() : boolean getMovementDirection() : float
The first one returns true if the Ship should be released from the planet, false otherwise. The second one returns a real number between [-1, 1] to determine the rotation direction of the Ship and the rotation speed.
That is just a structure with the values modified by the real controllers, explained next, and processed by the Ship behaviors.
Classic controller
The classic control is the current one, you have to press one half of the screen to rotate the Ship to the right and the other half to rotate the Ship to the left.
This controller performs an acceleration from 0 to 1 internally to the returned movement direction. This allows the player to rotate in slower but after pressing the controls for a while start rotating faster.
Problems with this controls are that it is too sensitive on Android, it may be enough to find better values for acceleration but we couldn’t find the best solution yet.
Axis based controller
Determines the movement rotation based on a variable Axis and the current pressed position. The Axis could be horizontal or vertical its position is defined with the first pressed position.
We are just testing and we have to play a bit with the controller values to know exactly if this controller will work or not.
Some options of the controller could be to make the Axis fixed, not dependent of the first pressed position.
Analog stick based controller
This controller behaves like an analog stick, you decide the desired Ship’s direction and the controller will do its magic to make the Ship points to that direction.
For now, the stick center is dynamic and defined with the first pressed position and the stick direction is defined with the current pressed position and the stick center.
A problem with this controller is we are afraid it could change all the original game play of the game, but could be for the best if it let players control the Ship in an easy way.
We are just testing it also, for now it doesn’t feel easy to use, but again, we need to test more controller values to know that better.
Same as the previous controller, one option could be to have the stick center fixed in some part of the screen.
Tilt based controller
Finally, the Tilt based controller is just that (not implemented yet), control the Ship using device’s sensors, never worked with that before.
No image in this case, should be easy enough to imagine.
An interesting point of this controller is that it let us recover part of the screen and that could be very important for small resolution devices where your fingers could cover a great part of the screen.
Final notes
One interesting point in testing different controls is to understand that different players need different controls, some times they need the game to adapt to them and not vice versa. We are thinking in having a controls menu or something to select the Controller you want to use and maybe some internal values.
Also, some of the controls could work for Desktop version too, have to test them a bit there to see if they fit, could be great to play using only the mouse.
As always, hope you enjoy these kind of posts.
Some funny stuff on Super Flying Thing
I was testing some code about hierarchical structures for the game entities and I tried adding a laser gun to the ship to see how it looks like and here are the results:
Testing random stuff on the game to test code gives me some new gameplay ideas, for example, shooting lasers to some targets to destroy them while avoiding killing some good targets.
Super Flying Thing - Update 05
We have a new update with new features, here is a video some of them:
As always, a change log:
- Added levels 13 and 14.
- Added a basic AI to control the ship on background game.
- Added portals which teleports the ship from one point to another
- Added lasers guns which shots lasers to destroy the ship
- Added colors to visited planets, to know if the planet is the start planet or not.
- Added played level status by showing a Tick over the levels on level selection screen.
- Added time label to show current time on level, will be (probably) part of the game objectives later.
- Incremented bounds of stars and sprites to make them easier to take.
- Fixed a bug when finishing the random/practice modes and showing the select level button
(note: if you want, you can follow commit history here)
Remember, you can play it right now, just follow the next links:
PLAY ON PC or PLAY ON ANDROID:
Hope you enjoy it.
Super Flying Thing - Update 04
More updates, yay!!, here is the magic list:
- Added an animated background with the game playing on all menu screens.
- Added nicer animation for the stars.
- Added nicer level buttons (nicer than the white rectangle at least).
- Added fonts for x-small resolution devices like Xperia X10 mini, for instructions screen mainly, thanks @deepinthewoods for reporting that (resizing current fonts didn’t work so well).
- Changed a bit the Ship 3D animation.
- Changed again, on Android, to touch the screen to release the ship, but you cannot release the ship while the camera is moving to the starting planet.
- Fixed a bug on Android when the level started and the ship automatically collided with the obstacles, and when you release the next ship, the game explodes.
- Fixed level list to start on level 1 not level 0, thanks @tom_orozco for reporting that.
- Fixed some bugs when touching BACK key on Android devices, you could exit the game if you pressed it too quickly.
(note: if you want, you can follow commit history here)
Remember, you can play it right now, just follow the next links:
PLAY ON PC or PLAY ON ANDROID:
Hope
you
like it!