Understanding Blueprints
The hardware configuration for a Doc Bot robot is defined through its blueprint. Thus, the blueprint is a definition of the chassis used, the hardware components mounted on it and the microncontroller used to control this hardware (which is actually just another component).
The blueprint is enclosed within the blueprint start and end tags. The whole hardware configuration is enclosed within those tags. Inside the blueprint tags there is to be one entry for each hardware component mounted on the chassis. The blueprint tag has two non-optional attributes, chassis and microcontroller, that define the chassis type and the microcontroller type respectively.
Within the blueprint tags you can define each of the hardware components mounted on the chassis. Each mount point on the chassis can have a hardware component attached to it. Each of these components mounted on the chassis must be defined on the blueprint between opening and closing mount tags.
The mount tag has two non-optional attributes. The first one is point, which tells the robot construction machine which specific mount point is being defined; each chassis has a different number of mount points of different types, so you should refer to the specific chassis' reference document. The second one is model, which tells the robot construction machine which hardware component is to be mounted on that mount point.
Inside the mount tags you can have several optional tags defining the hardware component's initial configuration. The configuration tags are hardware-dependant, except for the port tag which tells the robot construction machine that the hardware component being mounted should be connected to one of the microncontroller's external ports and which of those ports it must be connected to. The actual microcontroller external port it will be connected to is defined in the number attribute of the port tag. mount tags without configuration tags can be collapsed in the abbreviated form <mount point="xxxxxx" model="xxxxxx" />.
Comments can be inserted anywhere except inside other tags and before the opening <blueprint> tag, and they will be ignored by the robot construction machine. A comment tag starts with <!-- and ends with -->, and does not need a matching closing tag. Anything in between, including other tags, will be ignored.
Here is an example blueprint:
<blueprintchassis="KEL-CH01A1"microcontroller="NET-CP13E2"><!-- Heat sinkers --><mountpoint="heatsink01"model="KEL-HS66D6"/><mountpoint="heatsink02"model="KEL-HS66D6"/><mountpoint="heatsink03"model="KEL-HS66D6"/><mountpoint="heatsink04"model="KEL-HS66D6"/><!-- Gyroscope --><mountpoint="internal01"model="SEC-GY13E7"><portnumber=0/></mount><!-- Energy generators --><mountpoint="internal02"model="SEC-GE11F1"><portnumber=6/></mount><!-- Sensor arrays --><mountpoint="external01"model="WAY-SE31F2"><portnumber=1/></mount><!-- Targeting systems --><mountpoint="external02"model="SEC-WT80D3"><portnumber=2/></mount><!-- Weapons systems --><mountpoint="external03"model="KEL-WPF1A1"><portnumber=3/></mount><mountpoint="external04"model="KEL-WPF1A1"><portnumber=4/></mount><!-- Propulsion system --><mountpoint="propulsion01"model="KEL-MO66E3"><portnumber=5/></mount></blueprint>