Introduction
BlocklyAts currently offers limited features for debugging plugins, which can make it challenging to troubleshoot runtime errors and unexpected behavior. This section provides several tips to help you prevent common errors from the start.
General Tips
- Example projects are available in the 
examplefolder of the software directory. - Press the 
Shiftkey within the editor to view a list of available hotkeys. - Attempting to access a variable that has not been assigned a value will result in a runtime error. To prevent this, it is good practice to assign a default value to all variables in the "when plugin loads" or "when init" event.
 
Value Types
Understanding data types is a fundamental concept in programming. If your plugin only handles numbers, type-related issues are less of a concern. However, when working with text and lists, a clear understanding of the type system is essential. Please read the dedicated article on types.
Meanings of BVE ATS Values
In the BVE ATS API, many statuses and data points are represented by integer values. Please read this article for a detailed explanation of what these integers represent.
Simple Debugging
The software includes basic features to assist with debugging. Please read the dedicated article on debugging.
Manipulating Handles
Handle states can only be set within the Elapse event. This operation affects a single frame; if the state is not set again in the subsequent frame, it will revert to the player's input.
In contrast, sound and panel statuses are persistent once set.
Using the "Move handle" block does not affect the return value of the "Handle position" blocks.
Horn Activation
- For a music horn, the event is triggered both when it starts and stops playing.
 - For other horn types, the event is triggered only when it starts playing.