๐Emotes
Emotes are enabled by default and are accessed by players pressing B
and clicking an icon.
Implementation
The main implementationof emotes is in JM_PlayerEmoteComponent
Other key classes include:
Emote Selection - The set of emotes that appear in the Emote Wheel UI (
WBP_EmoteSelector
) are configured via the Roles table using the Emote Selection property.Emote Selection can be overridden at runtime via Blueprint on the
JM_PlayerEmoteComponent
Creating new emotes
Emotes are configured by creating a Primary Data Asset of the type J_EmotePrimaryAsset
.
These emotes can then be added to the default selection set on the role component or set as overrides at runtime.
Configuration
Enabling/Disabling Emotes for a role
Emotes can be disabled per game role in your project's roles data table by:
In your editor, enable
Emotes Enabled
in theRole Configuration Overrides
section of theRole Configuration
section of the roles data table to expose it.Change the
Emotes Enabled
setting totrue
orfalse
to enable or disable emotes for this role
Configuring Default Emote Selection
You can configure which emotes are available in your experience in your project's roles data table by:
In your editor, enable
Emote Selection
in the Role Configuration Overrides section of theRole Configuration
section of the roles data table to expose it.Assign a
J_EmoteSelectionData
asset to the Emote Selection setting.
By default these emotes are available:
Field | Description |
---|---|
Profile as Emote | Emote used to show the Player's profile picture |
Pick Me Emote | This emote is used in place of the Player's profile picture when Profile as Emote is disabled via the live config flag |
Emotes | This is an array containing all other emotes. To use the default |
Changing settings at runtime
Blueprint functions
Emote Selection can be changed at runtime by calling the following functions on the JM_PlayerEmoteComponent
:
OverrideEmotesEnabled
OverrideEmoteSelectionSlotAtIndex
OverrideEmoteSelectionSetFromAsset
OverrideProfileAsEmote
OverridePickMeEmote
Overrides can be cleared with the following functions:
ClearEmotesEnabledOverride
ClearAllEmoteSelectionOverrides
ClearEmoteSelectionOverrideAtIndex
ClearProfileAsEmoteOverride
ClearPickMeEmoteOverride
Live Config Settings
All emote settings live in game.json
Key | Default Value | Description |
---|---|---|
Emotes.Enabled | true | Project wide setting to enable/disable emotes |
Emotes.EmoteWheelEnabled | true | Project wide setting to enable/disable the emote wheel UI |
Emotes.ClearEmoteSelectionOverridesOnRoleChanged | false | Setting to optionally clear all override settings on role changes. See Overriding Emote Settings at Runtime |
Emotes.MaxObjectPoolSize | 20 | Max number of Emote objects to pool. |
Emotes.MaxSoundDistance | 5000.0 | Max distance for emote sounds to be heard |
Debugging in Editor
Console commands are available for all of the above functions to test functionality:
M2.Emotes.OverrideEmotesEnabled [bool Enabled]
- Overrides Emotes enabledM2.Emotes.OverrideEmoteSelectionSlotAtIndex [Index Emote Name]
- Overrides an emote slot at Index with the given Emote Primary Asset name e.g.M2.Emotes.OverrideEmoteSelectionSlotAtIndex 5 PDA_Emote_Icon_ThumbsUp
M2.Emotes.OverrideEmoteSelectionSetFromAsset [Emote Selection Asset Name]
- Overrides all emotes with the given Emote selection asset name e.g.DA_EmoteSelection_Default
M2.Emotes.OverrideProfileAsEmote [Emote Name]
- Overrides the Profile As Emote slot with the given Emote Primary Asset name e.g.PDA_Emote_Icon_ThumbsUp
M2.Emotes.OverridePickMeEmote [Emote Name]
- Overrides the Pick Me Emote slot with the given Emote Primary Asset name e.g.PDA_Emote_Icon_ThumbsUp
M2.Emotes.ClearAllEmoteSelectionOverrides
- Clears all emote selection overridesM2.Emotes.ClearEmoteSelectionOverrideAtIndex [Index]
- Clears emote selection override in slot with the given IndexM2.Emotes.ClearProfileAsEmoteOverride
- Clears the Profile As Emote overrideM2.Emotes.ClearPickMeEmoteOverride
- Clears the Pick Me Emote override
Last updated