"TronStix" video progress update #3!
Sod copyright laws, I'm not selling this :-) Also, volume warning! Turn volume down a bit while watching for clarity.
Added:
Tron style graphics for arena, joysticks (now with little animation around base) and disc. Your character is a beetle, basically a "bug" in the system (Hard to see it in video).
Tron Legacy background music ("Derezzed" by Daft Punk).
Disc throw and reflect sound effects (placeholders, to be replaced with Tron disc sounds. Sound doesn't match video below but is accurate while playing)
Changed:
Disc now reflects accurately off walls.
Once thrown, you have to chase down and catch your disc.
Throwing is now pull-back and release rather than aim and release.
To do:
Add enemies with basic behaviours (aim, throw, evade, chase etc) which will be red beetles with red discs.
Add scoring system and highscore table.
Add splash screen with menus for settings and scores etc.
***************
What's new:
All graphics are now changed, including joysticks and bugs! Animations have been added for wall reflect sparks, enemy "recharge" and enemy derez. I've actually been lazy (or clever depending how you see it) and made one animation which I use in different ways for all three things :-) All graphics and animations generated by the app on startup.
You can now set the maximum number of enemies in play so you're not swarmed if you're a new player, and you can choose to show the score workings (in real time) or not, which leads me to....
What's changed:
Scoring! I wanted to reward more difficult play, while keeping it within reason. The old system in the last video is ridiculous. I was applying multipliers based on game speed AND spawn rate AND number of enemies, and you got points with those multipliers just for an enemy appearing on the screen as well as for kills. You could have got a massive score just by pumping up the spawn rate and avoiding being killed as long as possible.
The new system simply rewards accuracy, with a little bonus for each enemy on screen. The new system is 10 points for a kill, with a 2.5 point bonus for each enemy on screen, multiplied by 10 if your disc hasn't bounced on the wall first. Each time your disc bounces off a wall you lose 2 off the multiplier down to a minimum of 2. So if you kill an enemy with a direct hit with one other enemy on screen it's (10 + 2.5 * 2) * 10 = 150 points. If you kill an enemy after the disc has bounced twice, with two other enemies on screen it's (10 + 2.5 * 3) * 6 = 105 points. So you see, accuracy is very important, as is fighting with more enemies on screen.
What's to come:
A game timer. I'll be limiting each game to 60 seconds (separate from game speed which only effects bug and disc movement speed). This is where pushing up the spawn rate, number of enemies and game speed can have an effect as you only have 60 seconds to get your high score. This will stop players simply picking off single enemies at lowest game speed to "infinity" for top scores.
Health. It can be frustrating at high game speed to lose after 10 seconds of play several times in a row. A decent health system should offer a bit of a buffer as long as it's done right.
Sound effects and Music! tongue emoticon
Next up: Game timer and health, with visual indicators! Plus some music for the main menu, and splitting the settings into a different screen rather than the main screen. Also need to look into a suggestion that I alter the size and make-up of the joystick images to eliminate the square "clipping" that kinda ruins the look!
https://youtu.be/N6-LO3raESg
Not posting the spk as it's identical to previous.
Well, this has been an embarrassingly long time since my last video update! I'm trying to pick up the pace again so hopefully I can code and update more often.
So, since my last update I've made a few changes and additions! First here's the video: https://youtu.be/v5xgELUbDkc
Here is video update #8, which I was going to use but then did a load of coding and made it redundant! I'm including it as it's the first time I added a smoke effect, but before I switched to glview: https://youtu.be/ug13fBuABZo
1) Changed the rendering from using app images to glview which is immensely faster! The extra fps meant extra speed, so I had to slow the game down and change the animations to compensate! The joysticks no longer animate to show where your thumb is. There really is no point showing a moving image underneath your thumb as it can't be seen! The joysticks are pretty much now "touch pads". Functionally identical but the performance gain was very noticeable.
2) The menu has been redesigned to look more "gamelike" including currently redundant buttons for multiplayer, settings and help etc. Also included new menu music, which the video didn't actually show as I didn't give it chance to start, but I'll include it in a future vid!
3) Added difficulty levels. This was as simple as choosing four different settings and sticking labels on them, but it gives players chance to ask "What score do you have on Normal?" which brings me to.....
4) Persistent highscores! Now you can close the game and have your highscores saved for next time. There are actually potentially 80 highscores, one for each combination of settings, but they're all saved anyway. Next addition will be names so you know who owns what scores.
5) It's no longer a one hit death. The player starts with 100 health. Each hit loses 20 health. Pretty straightforward! Originally this was shown with text only, then an image was included that would show red on black the percentage of health remaining. This still ate up fps, so now I use a little trick by resizing a red image box over a black image box. Does the same thing with no hit to performance.
6) Matches do not last forever. You have 60 seconds to get your high score! The timer is shown in the same way as the health, only with a yellow bar that depletes every second. At the moment nothing happens when the timer reaches 0, but it is intended that the enemies stop spawning and your health drips to 1, then it's basically all or nothing with whatever's left.
7) You can now deflect enemy discs! If you hold your disc out without letting go, you create a shield that can knock away enemy discs. Every deflection also "absorbs energy" and you gain 5 health! Currently a little buggy as you may notice in the video. It isn't intended that you can catch an enemy disc within the shield xD
8) Extra fps means extra effects! I've added an emitter that generates a smoke effect, which makes enemy explosions look a lot better and gives a lot more oomph to player damage and death. Since health was added I've also included a red flash under the arena and added a new sound for it. Enemy "rez in" also looks better thanks to using an existing animation under the arena rather than the previous simple circle.
To complete the single player portion of the game, I need to add: Names to highscores, personalized player colours (clever use of masks), score screen on player death, better visual indication of score using the currently blank area on the right of the screen, a pause button and menu, better custom game menu, a working settings menu, either a tutorial or practice area, then opening splash screen and "about" section. At that point I could release it as "Early Access" and continue with multiplayer aspects like free for all matches with dynamic arenas and highscore sharing etc :-)