Home Artists Posts Import Register

Content

Hi there,

Alex here! As you know, after working a lot on the build mode and Paramaker, we are now focusing on the live mode where you will be able to control the actions and the lives of your Parafolks. But what are we working on exactly? That’s what I will be describing in today’s post. Anna and Jérémie will also be sharing details regarding two specific tasks that they recently worked on. This post is for Patrons only so please don’t share it, thank you!

I like to think of the live mode as two big chunks:

👉 Chunk 1: Making Paras interact with the world

  • Pathfinding: make characters move from point A to point B
  • The interaction menu to select actions to perform with an object or with another Para
  • The interaction queue and action system to manage the current and pending actions of your Paras
  • The animation system to make Parafolks do all sorts of things and look natural while doing them
  • The system to adapt animations dynamically so that they work regardless of the context like the height of the character
  • ⏩ Multitasking: engineering our systems so that Paras can do multiple interactions at the same time
  • ⏩ Ability to interact with different objects and for Paras to hold objects in their hands, when making pancakes, for instance
  • ⏩ Ability to interact with other Parafolks like hugging them or having a conversation
  • 👩‍💻 Chunk 1 is a big technical challenge to develop because the code is very complex, the animations are harder to make moddable and everything needs to be optimized very well
  • 🟢 Chunk 1 is our current focus and we have made good progress so far. We will be able to showcase the above feature more and more soon and I’m looking forward to it!

👉 Chunk 2: Making Paras have an interesting life

  • ⏩ Needs and emotions
  • ⏩ Identity and personality
  • ⏩ Relationships
  • ⏩ Character autonomy and AI
  • ⏩ Skills
  • ⏩ Careers
  • ⏩ School
  • 👩‍💻 Chunk 2 is not as big of a technical challenge but requires more game design and idea testing to make sure that the gameplay is fun
  • 🟠 Chunk 2 will become our focus when chunk 1 will be in good shape. We have a lot of ideas and innovations that we are eager to start testing!

Don’t forget to take a look at our full development roadmap from time to time to see which features we are working on exactly, what’s completed and what’s left to do: paralives.com/roadmap

With that being said, recently, I have been working on two features. The first is adding multitasking support to our interaction and animation systems. The second is creating a censor rectangle to hide naked characters when they are in the shower or using the toilet, for instance. I will be talking about these features in upcoming Patreon posts!

Jérémie and Anna have been focusing on various tasks related to the animation system, dynamically adapting the character animations in various contexts and making the locomotion (walk) of the characters more natural. They will share some examples of that now.


Adjusting the Speed of Locomotion Animation

Anna here, bringing my stone to this post’s wall!

Recently, I worked on the speed of locomotion animations. By locomotion animation, I mean any animation that is used to get the character from a point A to a point B, like (but not restricted to): the walking animation, the running animation, the swimming animation…

Those animations are imported into the game without any speed: the file that I get to work with in the game from Alice, our 3D animator, contains an animation of a character walking “in place”. Then, we can move the character around directly from the game with a set speed in the code, which enables us to control the speed of the movement dynamically (as it comes from interactions triggered by the player). However, we need to adjust both the speed of the locomotion AND the speed of the animation playing, so that the leg cycle can feel smooth and realistic!


Here is what can happen if we don’t adjust both speeds correctly:

❌ If you look closely, you can see that Marvin’s feet are “sliding” a little bit instead of being planted into the ground at each step. The locomotion is too quick in comparison to the actual animation speed!


❌ In this GIF, it is the opposite: the walking speed is too slow compared to the animation.


One last detail to account for is the various heights of the characters. If we only have one walking speed for every character, setting an unique walking speed might not be enough for the walking animation to look smooth on every character.

❌ In this GIF, while Marvin and Maggie’s walks look okay, it seems that Eli has a little bit of trouble catching up and his arms are moving really fast for what should be a casual walk!


For now, we’ve decided to have two different speeds depending on the range of our character’s height, which means short characters will walk a little slower than their tall counterparts. If we need to move short and tall characters at the same speed in the future (for taking a walk as a family for example), we might need to add more animations to avoid this previous issue!

✅ Here is the current stage of locomotion animations: small Paras are a little bit slower when walking and running than tall Paras!


Taking Small Steps to Avoid Floating Around While Rotating

Jérémie here, for this part of the post!

One of the things we have to figure out for natural character movement in live mode is what to do while they are rotating. Either while moving or in-place, we don’t, as humans, just spin on ourselves or do exaggerated walking motions. We do subtle things with our feet and our whole body, and not having these things in the game gives a weird floaty effect to our characters when they rotate.

❌ As you can see, with just a plain old rotation, the movement is not natural.


So, what do we do? One simple enough solution would be to have an animation of the character rotating that we could play to make their body and feet look natural while we are spinning around, but your Paras will be able to move in all sorts of directions and we cannot make one animation for each angle! Additionally, if Paras need to rotate when they are starting or ending a movement, the animations will be different, so there’s a lot to think about!

❌ Just by adding an animation, the rotation is much more natural (but the timing is still not perfect and the feet are sliding). Also, this animation only works for rotating by exactly 180 degrees. What if the character needs to rotate by 27 degrees or 135 degrees?


The next step for me will be to ask Alice to make another rotating animation that only rotates by 90 degrees and another where the character does tiny steps but does not rotate at all which we will call the 0 degree rotation. Then, in the code, I will dynamically blend between these animations so that our character can gracefully rotate to any angle between 0 and 180 degrees!


That’s it for today, have a great weekend!

Alex, Anna and Jérémie


Comments

No comments found for this post.