We have less than one month to finish the demo so no time to lose : here is week 3 of our demo dev diary !
Since we are not going to have sound in the first demo presented to the Paris Event in September (yeah it sucks, I know), we need to provide some other feedbacks to the player.
So I thought it would be cool to have some rumble support.
We have 2 kind of rumbles:
- Rumbles generated by the engine and linked to the Finite State Machine of the fox. For example, if the fox falls from high height, the rumble will be more and more huge.
Here is a partial FSM (Finite State Machine) of our fox. The dark dot indicates on which state we begin (Standing state here). Then the arrows show the conditions (or events) to encounter to go to another state. I indicate in a comment (a kind of post-it) where we interfaced the rumble code.
- Scripted rumbles
When we animate objects, we sometimes want them to make some rumble at given time. Instead of making the rumble myself in code, I decided to reuse the Blender path integration done last week. Here is an example animation of a falling red object (yeah I love abstract programmer scene) that shows the use of “animated rumbles”:
The rumble is not played automatically, but the script reads the speed curves values for left and right motors of the gamepad, and changes rumbles values if there is no other rumbling with a better priority that is already triggered (because the player is near that rumble for example).
In order to accompany rumble, I implemented a rough camera shaking function. It’s triggerable from script so I can look the moment in the timeline where I want the shake to occure.
For now, the shaking is not driven by path, but maybe in the future, if we want to make several camera shaking.
I spent most part of the week implementing scripts to bring life to objects made by William or make generic scripts to integrate them in the upcoming William assets.
I don’t want to reveal too much things so I put here 4 screenshoots of various scripts done this week. It’s up to you to guess what it’s about !
This week was dedicated to animation.
I’m not really good at drawing and it is sometimes frustrating to be able to draw only what i can and not what i want. But with animation I feel like I can do whatever I want (with time) so I love animating things. And our art style made of flat colors is a blessing cause it allows me to cheat a little bit when I’ve got difficulties.
So, I worked on 4 main objects : a falling tree, a leaning tree, a growing tree and a human structure I can’t explain the behaviour without spoiling the demo players will play in Paris in September. But it’s quite easy to see what is it, isn’t it ?
The growing tree is more interesting than others so I’ll talk about it in details.
Maybe you’ve already seen a growing tree in a previous video we posted : the programmer sandbox.
This tree was made for our previous fox that was taller and jumped higher than our actual little fox. It’s branch is 3 meter from the ground, and our little fox can only jump 1,5 meters.
My first idea was to take the same tree with only one branch and put a rock under it so the fox would jump from the rock to the branch. But the player can seed and make the tree grows, and putting a rock close to each possible tree position is not very subtle…
The second idea could have been to take the same tree and just change the position of the branch, but it was not natural enough and the tree was more and more horrible to my eyes, too simple and square shaped.
So the best way was to make another tree, with 2 branches and more complex / organic shapes. The demo will have only one type of growing tree but there will be many in the final game, of course.
We have no time to make a video of the animated elements right now, sorry.
There’s still a lot of work to do for the demo so we have to stop writing now and go back to Blender.
See you next week !