EVT is a binary event format used by Atlus in Persona 5. It is used to setup cameras, objects, animations, dialog and more in cutscenes where you can't control the character. In other circumstances where dialog is shown but you still briefly control the character, those scenes are likely using BF instead.
EVTEditor is a program by ShrineFox based on TGE's EvtTool, featuring a GUI with a timeline. You can open an event PAK or EVT with it to add, modify and reschedule commands and objects. If the event PAK contains a BMD, you can edit the decompiled text on the fly. Download it here.
EvtTool is a program by TGE that dumps the contents of an EVT, ECS or LSD binary to an editable JSON file, which can be opened with a text editor such as Notepad++. By dragging an EVT onto the EXE, a JSON will be generated (and vice versa). You can download EvtTool here.
Alternatively you can use the program through the commandline by passing in the file path to either an EVT or a JSON file (in case you want to batch the conversion, for example).
The beginning of an EVT file is comprised of event parameters (such as ids, duration), followed by object definitions (object ID, type, resource IDs, animation IDs).
After those, commands make use of the object ids to set positions, play animations, execute script procedures and show messages. Each command has its own specific parameters and a short descriptor (e.g. MSD_).
Below are a list of all commands and their functions (to the best of our knowledge).
|Chap||Camera haptic feedback?|
|CSD_||Camera Set Data. Sets up camera parameters such as position, rotation, fov.|
|FdS_||Fade Scene. Displays a black or white fade in/out effect depending on the type set.|
|FS__||Field Scene. Indicates which field object should be loaded as the current scene.|
|MLa_||Model Look At. Makes a model object look at a target position.|
|MMD_||Model Movement Data. Makes a model object move in a way specified by the parameters.|
|MRot||Model Rotation. Rotates a model object.|
|MScl||Model Scale. Scales a model object.|
|MSD_||Model Set Data. Sets up positioning data for a model object.|
|Msg_||Message. Displays a message in a BMD by the id in the message name, contains a lot of other parameters which seemingly don't do a whole lot.|
|Scr_||Script. Executes a procedure in the event script BF by its index.|