Tuesday, May 6, 2014

Dev Blog 84 - Working on Respawn

Working on re-designing and improving the respawn system to both clarify that the player has died and is respawning, as well as lessen the impact/jarring nature of the immediate respawn.




So far I've tried a few different approaches. My first idea was to pause right after respawn, have Teli's alpha fade in and out a few times to denote "respawning", and then unpause. This proved impossible after I discovered that any coroutines or invocations called before a "pause" is triggered, will exit after Time.timeScale is set to 0. So there wasn't a way I could pause, wait for the animation to finish, and then unpause. I tried a few tricks involving Invoke( ) and coroutines, which got me a little closer to what I wanted but ultimately didn't solve the problem.

The solution I will end up implementing (after writing this post) is two-fold:

First, right when death occurs I will have a text exclamation point pop up over Teli's head, paired with the death animation it should make it super clear the player character has died.

Second, after respawn occurs, instead of pausing I will let Teli continue as normal. However, here is where I will mess with the alpha values to fade in & out, to denote that Teli has respawned.

I think that this solution may still be a little jarring, but it's an improvement.

Update 1 @ 3PM: Respawning is done, successfully implemented the above two-fold solution. Also added a death sound effect.

Update 2 @ 8PM: Re-cutting level 4, trying to improve timing

Update 3 @ 9:30PM: Level 4 re-cut and re-implemented, sounds much better, timed perfectly. Re-cutting level 5 now.

No comments:

Post a Comment