Most simulation software is organized in 3 main sections:
Assembler follows this threefold organization (setup/simulate/post-process), which is typical also of plugins such as Kangaroo and Karamba for Grasshopper.
A typical Grasshopper definition thus requires such organization, shared also by all example files:
This section prepares the assets used in the simulation:
In the most basic setting, you will only need one or more AssemblyObjects kinds and their relative Heuristic rules (which are automatically generated).
Simulate the Assemblage growth using the Assembler Engine.
Analyze results and post-process the resulting Assemblage, displaying geometries (Collision Meshes and/or associated XData), analyzing connectivity and operating using contextual information in the Assemblage (ex. selective placement: place envelope shading elements only on vertical surfaces facing south, place stairs in a selected volume, etc.)