VTuber Editor - Basic Flow Guidance By Blockly

1. What is Basic Flow?

Basic Flow, Combine a series of statement flows together by stacking blockly, Then execute it in sequence. In short, we can do many interesting interactive effects, interactive scenes and even blockly games through our basic flow.Its principle is similar to Google blockly. Of course, in addition to the basic flow mentioned, advanced flow will also be opened later, which can bring more creative output, including video, twitch chat reaction, twitch emote extension and so on.

So, today, let's show you what Basic Flow is all about? Or you can go directly to experience: https://live3d.io/

2. Blockly Introduction To Basic Flow

(1) Event:

It includes start events and various transition events, which are used to quickly and simply control the special effect process, monitor the status and input.

"When the basic flow start" is the "head building block". Only when it is triggered, the building block queue contained in it will be executed in turn.

Name Parameter Describe
When the basic flow start none Head building block. When you click start, this building block starts execution.
When action progress

for example:
When avatar play <action?> to <start?> progress

<action?> : refers to the action played by avatar
<start?> : what progress is played? Start, end, 1 / 3, 2 / 3
When the progress of avatar executing an action is detected, it starts to execute the relevant internal building blocks
When emotion progress

for example:
When avatar play < emotion?> to <start?> progress

< emotion?> : refers to the expression played by avatar
<start?> : what is the progress of playback? There are start and end
When it is detected that Avatar has executed or finished executing an expression, it starts to execute the relevant internal building blocks
When vfx progress

for example:
When VFX <vfx?> <start/stop>

< vfx?> : refers to the special effects played by avatar
< start/stop > : play or stop
When it is detected that a special effect is executed or finished, the relevant internal building blocks are executed
When asset is

for example:
When <self?> 【size/alpha/rotate/x/y】【>/>=/==/<=/</!=】<n?>

<self?>:refers to the asset object in the current scene When it is detected that the status of an attribute [size/alpha/rotate/X/y] of the resource object changes, start to execute the relevant internal building blocks

(2) Behavior

Used to execute some dynamic resources [actions, expressions, special effects], etc

Avatar play action <?> With <body/lower body/upper body/head/gesture> <?>: action resources Let avatar play an action resource, with body/lower body/upper body/head/gesture
Avatar play emotion <?> at【slow/normal/fast】speed <?>: expression resources Let avatar play an expression resource quickly, normally and slowly
Play/Stop effect <?> <?>:special effects resources in the current scene Stop / play special effects existing in a scene
Note: special effects resources need to be added in advance
Set <?> X: {0} Y: {0} <?>:refers to the asset object in the current scene
{0}: modifiable number
Set the location of asset objects in the scene
<?> change x/y by {10} <?>:refers to the asset object in the current scene
{10}: modifiable number
Make the position of the asset object in the scene X / y overlay 10
Note: a negative number represents a decrease

(3) Looks:

Lets you adjust the appearance properties of an asset object

show/hide <?> <?>:Refers to the asset object in the current scene Show or hide an object
Set <?> size to {100}% <?>:Refers to the asset object in the current scene
{100}: modifiable number
Note: parts of avatar are also included
Set the size of an object to how many times
Change <?> size by {10}% <?>: Refers to the asset object in the current scene
{10}: modifiable number
Note: parts of avatar are also included
Sets how much the size of an object increases or decreases
Note: a negative number represents a decrease
Set <?> alpha to {100}% <?>: Refers to the asset object in the current scene
{100}: modifiable number
Set the transparency of an object
Change <?> alpha by {10}% <?>: Refers to the asset object in the current scene
{10}: modifiable number
Sets how much transparency an object increases or decreases
Note: a negative number represents a decrease
Set <?> rotate to {0} <?>: Refers to the asset object in the current scene
{0}: modifiable number
Sets the degree of rotation of an object
Change <?> rotate by {0} <?>: Refers to the asset object in the current scene
{0}: modifiable number
Sets how much an object's rotation increases or decreases
Note: a negative number represents a decrease

(4) Ani

It is used to adjust the object attributes in how many seconds. At present, it is linear

Set <?> size to {100}% in {2} s <?>: Refers to the asset object in the current scene
{100}: modifiable number
{2}: modifiable number
How many seconds to change the size of the object
Set <?> alpha to {100}% in {2} s <?>: Refers to the asset object in the current scene
{100}: modifiable number
{2}: modifiable number
How many seconds to change the transparency of an object
Set <?> size to {90} in {2} s <?>: Refers to the asset object in the current scene
{90}: modifiable number
{2}: modifiable number
How many seconds to change the rotation of the object
Set <?> X: {0}, Y: {0} in {2} s <?>: Refers to the asset object in the current scene
{0}: modifiable number
{2}: modifiable number
How many seconds to change the position of the object

(5) Logic

sync none Execute the building block statements synchronously
Repeat do none Loop execution
Repeat {1} times do {1} modifiable number Execute after several time Loop
Repeat until <trigger> times do <trigger> :Refer to the introduction of trigger Loop until trigger is triggered
Wait {1} s {1} modifiable number Wait a few seconds
Exit the loop none End loop
If <trigger> do <trigger> :Refer to the introduction of trigger If trigger is triggered, execute the corresponding building block
If <trigger> do {} else do <trigger> :Refer to the introduction of trigger If trigger is triggered, execute the corresponding building block, otherwise execute another building block
Wait until <trigger> do <trigger> :Refer to the introduction of trigger Wait there until trigger triggers

(6) Trigger

<?> show/hide <?> Refers to the asset object in the current scene Detect whether the object is show or hidden
Avatar play action <?> to [start,end,1/3,2/3] progress <?> action resources Detect the progress of avatar playback action resources
Avatar play emotion <?> to start/end progress <?> expression resources Detect the progress of avatar playing expression resources
<?> size [</<=/>/>=] {1} <?> Refers to the asset object in the current scene
{1} modifiable number
Detect whether the object property is greater than or less than a number
Effect <?> play/stop <?> special effects resources in the current scene Detect whether a special effect play or stop

3. Later stage plan of flow function module

  1. Add more interesting statements, such as detecting twitch chat, etc
  2. Add statements to change the scene, for example, let the background switch and transition through automatic or shortcut keys
  3. Add sentences to change characters and their appearance
  4. Increase the ability to record video
  5. Increase UGC sharing community

There are more wonderful, please look forward to~

Here are some tips to help you make better use of this featureIf you still can’t solve your problem, you can get in touch with us in the following ways: