I want to create an event that uses a complex price set, and I want custom validation rules that express relationships among the fields in the price set. For example, if I have a checkbox "Entire Retreat" for participants to say they're registering for the whole event, it should be an error for them also to check the boxes for any individual part of the event. Is there a general-purpose way to configure rules about the entire price set?
You need to do some planning particularly with required fields. If there is a field that you need to be required that relates to individual items you need to have an option for when it is included in the full registration. This will avoid errors.
More information on custom templates can be found here: https://docs.civicrm.org/sysadmin/en/latest/setup/directories/#custom-templates
Hope this helps.