Logic Gadgets: Puppet Interface

Icon
Name of gadget Puppet Interface
Section Gameplay Gear
Number of Tweak pages 3
Author LadylexUK, QuietlyWrong
Last updated 14 June 2019 [EA v1.04]

Description

Although the blank puppet’s own tweak menus provide a modicum of control (you can make the puppet follow a tag, from turning its head to running towards one), to really take direct control of the basic biped you’ll need a Puppet Interface. If you open up the microchip of a brand new blank puppet, you’ll find at least one of these already set up by default – the advanced version has several!

The gadget’s tweaks are divided into one page for inputs and two for outputs. The inputs are used to control the puppet’s basic movement itself. The outputs provide a wealth of information about what is currently happening to the puppet, from whether it is sliding downhill to the exact position it is in its jump animation. These can be used to drive animations, sound effects or all manner of other logic in conjunction with the other gadgets – anything from emitting a special double-jump visual effect to providing a height readout in a puppet-flinging minigame.

It is well worth looking at the Puppet Interfaces already found on the default Blank Puppet and working out how they have been used to control the puppet and its associated effects.

Example Tutorial (adapted from Media Molecule)
The following steps describe how you might change the way a default puppet is moved around by the player. The normal behaviour is to move and turn with the left stick and to change the camera orientation with the right stick. In this example, we’ll change forward/backward movement to the left stick and rotational direction to the right stick.

  1. Stamp a basic blank puppet.
  2. Scope in and open its “Puppet Logic” microchip.
  3. Turn the power off on its existing puppet interface.
  4. Stamp a new puppet interface onto the chip.
  5. Open the puppet interface’s tweak menu.
  6. Open the controller sensor’s tweak menu.
  7. Arrange the controller sensor tweak menu and puppet interface tweak menu to make it easy to connect wires from one to the other. You’ll need some space between them for another couple of gadgets.
  8. Connect the controller sensor’s “Right Stick” output (page 2) to the puppet interface’s “Turn to Face” input.
  9. Stamp a splitter gadget on to the chip.
  10. Connect the “Left Stick Local” output (page 3) to the splitter input. This separates the left stick’s output signal into separate left/right (X) and up/down (Y) components.
  11. Stamp a second splitter gadget to further split the first splitter’s output.
  12. Connect the “up/down” output from the first splitter into the second splitter’s input. This discriminates between positive (down) and negative (up) values from the left stick.
  13. Connect the second splitter’s “negative” output into the puppet interface’s “go forwards” input.
  14. Connect the second splitter’s “positive” output into the puppet interface’s “go backwards” input.
  15. Tweak the puppet itself and increase the “turn speed” setting to a higher speed – perhaps 190°/s.
  16. Start test mode.
  17. Possess the puppet and try moving around with the new (weird!) twin-stick set-up.

Tweak Menus

Click on arrows to reveal

Tweak Menu 1: Inputs
Puppet Interface 1
  1. Tweak Menu page 1: Inputs
  2. Jump
    2a. Input
  3. Walk
    3a. Input
  4. Turn to Face
    4a. Input
  5. Lean
    5a. Input
  6. Go Forwards
    6a. Input
  7. Go Backwards
    7a. Input
  8. Power
  1. Menu page indicator
  2. Jump
    Send a signal to this input to initiate a puppet’s “jump” action. Typically this is connected from the controller sensor’s “X button” output.
  3. Walk
    Send a signal to this input to instruct a puppet to walk in a particular direction. Typically this is connected from the controller sensor’s “Left Stick” output.
  4. Turn to Face
    Send a directional signal to this input to make the puppet turn to face in that direction.
  5. Lean
    Send a directional signal to this input to make the puppet lean in the corresponding direction – this is typically connected to the controller sensor’s “Motion Sensor” output.
  6. Go Forwards
    This input can be used to make the puppet walk or run forward (depending on signal strength).
  7. Go Backwards
    This input can be used to make the puppet walk or run backward (depending on signal strength).
  8. Power
    This is where you turn the gadget on/off.
Tweak Menu 2: Outputs Page 1
Puppet Interface 2
  1. Tweak Menu page 2: Outputs Page 1
  2. Jumped
    2b. Output
  3. Double Jumped
    3b. Output
  4. Landing Impact
    4b. Output
  5. Predicted Landing Impact
    5b. Output
  6. Fell Out of Scene
    6b. Output
  7. Distance from Ground
    7b. Output
  8. Walking Strength
    8b. Output
  9. Running Strength
    9b. Output
  10. On Ground
    10b. Output
  11. Left Heel Strike
    11b. Output
  12. Right Heel Strike
    12b. Output
  13. Foot Impact
    13b. Output
  14. Power
  1. Menu page indicator
  2. Jumped
    Outputs a signal when the puppet jumps. The output is an “impact” fat wire, conveying the jump and a position signal in addition to the surface type (determined by the impacted sculpture’s “audio surface type” setting).
  3. Double Jumped
    Outputs a signal when the puppet double-jumps (i.e. during the trajectory of an initial jump).
  4. Landing Impact
    Outputs an impact signal conveying the force of landing, position and the surface type.
  5. Predicted Landing Impact
    Outputs a signal which gives the predicted landing impact intensity, before the landing so that the character might be made to shout out in horror, for example, if a jump looks to be of dangerous height.
  6. Fell Out of Scene
    Outputs a signal if the puppet has fallen from the scene – i.e. it will not land on anything, and might be used to respawn the character, for example.
  7. Distance from Ground
    A simple reading of the distance between the puppet and the ground (or any solid sculpt) directly beneath.
  8. Walking Strength
    Provides the current strength at which the puppet is walking, from 0% (stationary) to 100% (maximum walking speed).
  9. Running Strength
    Provides the current strength at which the puppet is running, from 0% (maximum walking speed) to 100% (maximum running speed).
  10. On Ground
    Provides a signal if the puppet is on the ground. This may be of a fractional value if the character is essentially treated as being on the ground but not in direct contact, for example, in mid-stride while running.
  11. Left Heel Strike
    Outputs an impact signal when the puppet’s left foot touches the ground – might be used to play sound effects or even leave a trail of footprints.
  12. Right Heel Strike
    Outputs an impact signal when the puppet’s right foot touches the ground – might be used to play sound effects or even leave a trail of footprints.
  13. Foot Impact
    Outputs an impact signal when either foot touches the ground.
  14. Power
    This is where you turn the gadget on/off.
Tweak Menu 3: Outputs Page 2
Puppet Interface 3
  1. Tweak Menu page 2: Outputs Page 2
  2. Velocity
    2b. Output
  3. Acceleration
    3b. Output
  4. Deceleration
    4b. Output
  5. Lean Speed
    5b. Output
  6. Upper Body Movement
    6b. Output
  7. Lower Body Movement
    7b. Output
  8. Foot Scrape Amount
    8b. Output
  9. Jump Ascent
    9b. Output
  10. Jump Peak
    10b. Output
  11. Jump Descent
    11b. Output
  12. Sliding
    12b. Output
  13. Power
  1. Menu page indicator
  2. Velocity
    This outputs the current velocity of the puppet. This is a 3D vector so you can split it into it separate axes if desired.
  3. Acceleration
    This outputs the current acceleration of the puppet. Another 3D vector.
  4. Deceleration
    This outputs the current deceleration of the puppet. Also a 3D vector.
  5. Lean Speed
    This outputs the puppet’s current lean speed. You might use it to control a character’s exertion sounds.
  6. Upper Body Movement
    This outputs a signal representing the movement of the puppet’s upper body. You might use this to trigger sounds of clothes rustling.
  7. Lower Body Movement
    This outputs a signal representing the movement of the puppet’s lower body sections.
  8. Foot Scrape Amount
    This outputs a signal representing the degree to which the feet are scraping on the ground, for example if the puppet has high skateyness.
  9. Jump Ascent
    Outputs a signal that decreases as the puppet’s jump takes it from ground to the apex of its trajectory – typically used (with the next two tweaks) to create more detailed animations.
  10. Jump Peak
    Outputs a signal that to indicate the proximity of the puppet to the top of its jump – it rises as the puppet ascends, reaches maximum and comes back down again as the puppet’s jump takes it from the ground to the apex of its leap and back down again.
  11. Jump Descent
    Outputs a signal that increases as the puppet’s fall from the apex of a jump takes it back to the ground.
  12. Sliding
    Outputs a signal to indicate that the puppet is sliding down a steep slope (angle higher than the puppet can climb).
  13. Power
    This is where you turn the gadget on/off.

Lex Tips

Useful Tutorials

Comments and Feedback

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Create a free website or blog at WordPress.com.

Up ↑

%d bloggers like this: