No, labels and conditionals have nothing to do with weights.
They are used as "conditional statements" (
https://en.wikipedia.org/wiki/Conditional_(computer_programming)), otherwise known as "if-then-else" statements.
- type: researchRetaliation
label: 1
- type: beginnerRetaliation
conditionals: [-1]
label: 2
- type: experiencedRetaliation
conditionals: [-1, -2]
label: 3
- type: veteranRetaliation
conditionals: [-1, -2, -3]
label: 4
- type: geniusRetaliation
conditionals: [-1, -2, -3, -4]
label: 5
- type: superhumanRetaliation
conditionals: [-1, -2, -3, -4, -5]
These vanilla labels and conditionals mean:
- try generating "1. researchRetaliation"
- if 1. failed, then try generating "2. beginnerRetaliation"
- if 1. and 2. both failed, then try generating "3. experiencedRetaliation"
- if 1. 2. and 3. all failed, then try generating "4. veteranRetaliation"
- if 1. 2. 3. and 4. all failed, then try generating "5. geniusRetaliation"
- if 1. 2. 3. 4. and 5. all failed, then try generating "superhumanRetaliation"
To answer your questions:
a/ if you remove labels and conditionals... this (if-then-else) logic will be removed... and all mission script commands will be executed like this:
- try generating "researchRetaliation"
- try generating "beginnerRetaliation"
- try generating "experiencedRetaliation"
- try generating "veteranRetaliation"
- try generating "geniusRetaliation"
- try generating "superhumanRetaliation"
b/ if you don't use a different unique label for each mission script command, OpenXcom will not be able to make sense of it... and will intentionally crash