MetaSoul

Loading...
Searching...
No Matches
Information

Summary

The plugin is 100% made with Unreal C++ libraries, they are not the same has the standard C++ libraries, while you can for sure use std C++ to operate the plugin this is not recommended by Unreal. If you just want the blueprint info, its still recommended to read this page then feel free to skip the C++ content.
As of this moment the Plugin operates in 2 main ways by TCP and UDP sockets thru a api installed at your machine and the other option is by RESTAPI + Socket.IO, for heaviers applications the first approach is recommended.

Basic Information

Emotion Names: The default names you have to call the emotions inside the emotional map are as follow: channelEXCITED, channelCONFIDENT, channelHAPPY, channelDESIRE, channelTRUST, channelFEAR, channelSURPRISE, channelINATTENTION, channelSAD, channelREGRET, channelDISGUST, channelANGER and channelPAINPLEASURE Feel free to change then to whatever you like or change the array completely, like to a really simple default integer array, etc.

Inject Emotion Function: The default names you have to call to update the correct emotions are as follow: excite, sure, happy, desire, trust, fear, surprise, innattention, sad, regret, disgust and anger Those unfortunately aren't changeable, all the others values are strings representings numbers, for more information check the EPU section describing the wave or inject function.

Emotional Buffer: It will be a 256 byte stream, the trick part is that the last segment has the okay command together, basically in a string format the last part will be a random number + command like this "96CMD\_OK", take care in cause you are building your own custom method.

RESTAPI and Socket.IO Commands: The current list of restapi commands are follow, POST requests -

MODE | NAME | INPUTS
--- | --- | ---
POST | login | {‘epuid’: ‘’, ‘secret’: ‘’, ‘type’: ‘’}
POST | send_text | {‘epuid’: ‘’, ‘secret’: ‘’, ‘‘message’: ’: ‘’}
POST | request_buffer | {‘epuid’: ‘’, ‘secret’: ‘’}
GET | get_config | {‘secret’: ‘’}
PUT | logout | {‘epuid’: ‘’, ‘secret’: ‘’}
PUT | logout_all | {‘secret’: ‘’}
PUT | auto_push | {‘secret’: ‘’, ‘on’: ‘’}
PUT | auto_off | {‘secret’: ‘’, ‘on’: ‘’}
PUT | append | {‘secret’: ‘’, ‘on’: ‘’}
PUT | words_per_min | {‘secret’: ‘’, ‘value’: ‘’}
PUT | custom_wave | {‘epuid’: ‘’, ‘secret’: ‘’, ‘type’: ‘’, ‘level’: ‘’, ‘duration’: ‘’, ‘origin’: ‘’, ‘apex’: ‘’, ‘curve’: ‘’}
PUT | resume | {‘epuid’: ‘’, ‘secret’: ‘’}
PUT | pause | {‘epuid’: ‘’, ‘secret’: ‘’}
PUT | soft_reset | {‘epuid’: ‘’, ‘secret’: ‘’}
PUT | heartbeat | {‘epuid’: ‘’, ‘secret’: ‘’}

The Socket.IO commands are:

MODE | EVENT NAME | NAMESPACE | INPUTS
--- | --- | --- | ---
Socket.IO | tts | "/" | {‘epuid’: ‘’, ‘mdad’: ‘bool’}
Socket.IO | mdad | "/"+<EPU_ID> | {‘epuid’: ‘’, ‘mdad’: ‘list of integers’}

Unreal Engine 5: All features in the plugin are tested and working in UE5, but at the moment we aren't shipping a plugin to UE5 because there is no retro compatibility at this point. It's still very straightforward to get it working in a project running a UE5 early access version, the worse thing that can happen is the art assets to be broken as there is total rework in those areas between Unreal 4 and 5.