I have mostly been working on refinements this past week. I added more randomization and synonyms, and attempted to make some of the sentences less clunky. When the orientation of a shape is different in every dimension from the last shape (so, offset in its x, y, and z coordinates), it’s difficult to create a concise phrase to describe it. An example of a phrase like that would be “3 blocks left, 1 block down, and 2 to the right of that.” Trying to put such a long phrase into my already existing sentences wasn’t working so well; it was too much information at once. So now if I get such a long orientation, I split that off into a separate instruction rather than trying to fit it into another sentence.
I’ve also modified how the builder speaks. Previously, they would say “Done!” after each of the Architect’s instructions were given. But that isn’t very natural; now the builder only speaks at all about 22% of the time (based on the frequency of the human builder’s responses), and when they do they can say a few different phrases (done, okay, finished, etc).
There’s still more work to be done to improve these instructions. One thing I need to add is the phrase “on the ground.” Most shapes will start on the ground and be built from the bottom up, but right now I only describe their location in space relative to the last shape built. Most of the time I shouldn’t even need to include the difference in the two shapes’ y coordinates if the new shape starts on the ground.