Engine demo – Character encounters

Phew, this took a bit longer than I expected it to – I kept finding more and more things I wanted to implement for the test content seen in this video –  but the next gameplay video is finally ready for display.  This time, we’re taking a look at character encounters.  A full explanation can be found in the video (now with narration!), so I’ll just stop talking and post the video:

More details about just what is seen in this video appear after the break.

So for those who are really keen to understand the progress thus far (which I’m assuming you are, since you clicked to see more), the following things are new as of this video:

  • Character encounters – Obviously.  More specifically, you can now define character encounters, which hold multiple questions and interrogations, and you can also specify which of those are enabled at the start.  The ones that aren’t enabled at the start can be enabled as easily as saying “EnableConversatinon <ID>” within the conversation or action in which you want them to be enabled.
  • Evidence addition – Similar to questions and interrogations, when you define evidence, you can now also specify which are available at the start (if any).  Those that aren’t available at the start can be enabled within a conversation by saying “EnableEvidence <ID>”.
  • Variable background music – Within the context of a conversation, you can now say “PlayBgm <ID>”, “StopBgm”, “PauseBgm”, and “ResumeBgm” to muck around with the music that’s currently playing.
  • Inline sound effects – A new bit of markup to dialog has been added, which is of the form {PlaySound:ID}.  Adding this to a piece of dialog causes the sound effect with the specified ID to be played when the part of the dialog in which it appears is written to the screen.  Examples of this are the glass smashing and the “ding” sound when Twilight says “impossible”.
  • Character shaking – One of the most amusing things in the Ace Attorney series was the ridiculous way in which characters seemed to almost take physical damage whenever a new fact came to light that was damaging to their case.  That has now been implemented.
  • Custom animations during dialog – Last, but not least, I’ve put together a rudimentary animation engine that enables case-makers to define a scene with a background and elements in it, and then to control the elements’ position and tinting transitions within each frame.  Once an animation can be defined, it can be brought on screen just by saying “StartAnimation <ID>” within a conversation, and then you can advance to the next frame by saying {NextFrame} within a piece of dialog.  An example of this is the animation of Scootaloo by the Carousel Boutique in Apple Bloom’s recollection.

And that’s about it thus far!  Thanks for watching and reading.

Leave a Reply

Your email address will not be published. Required fields are marked *