Variable Types, Lua vs Block Code, Hierarchy Terms
The 9 Variable Types
In short, a variable is a value that can change. In RetroStudio, there are 9 main variable types.
1 - Numbers. These are probably exactly what you are thinking of, they are numbers, such as 15, -24, 201.24, and so on
2 - Strings. Strings are essentially pieces of text such as sentences.
3 - Booleon. Booleon values are logic values. They are either true or false.
4 - Nil. Think of nil as essentially an empty variable. 0. If a variable is nil, then it means that variable is empty
5/6 - Color Values. In RetroStudio, there are 2 types of color variables, BrickColors, and Color3. BrickColors are preset values of colors typically used on parts (bricks). Color3 values use RGB (red, green, and blue) values to create different colors.
7/8- Vectors. Vectors are used to represent positions and rotations. Vector2 only measures X and Y values. Vector3, however, can measure X,Y, and Z values. Vector3's are typically used for 3D environments while Vector2 are for 2D.
9 - CFrames. Cframes are used to represent both position and rotation values in one variable. In RetroStudio, they are typically used for models
Children & Parents (in scripting)
In scripting, children are the objects placed under another object, and the object holding the child is called the parent. Think of the parent as a house, right, and think of the children as the things inside that house. The parent objects essentially house those children objects. We call these terms "hierarchy terms."
On this image, it shows the parent and the children. If we put a script inside of the part, how would we refer to the folder inside that script? Well, since the script would be inside of the part, we would have to first use "script.Parent" which refers to the Part itself. Then, if we want to get the parent of the part, we simply do "script.Parent.Parent", which would refer to the Folder. The folder would be 2 levels from the script, so we would have to use ".Parent" 2 times
RetroStudio's block coding is a simplified version of normal Lua (the programming language Roblox uses in scripts). It uses blocks to represent chunks of code visually, making it easier for people to understand