I am confused by what exactly you want the controller to do in this situation: program 1 wants valve 1 to turn on at 8:00 for 20 minutes, and program 2 wants valve 1 to turn on at 8:00 for 30 minutes. Since they are asking the same valve at the same time for two different things, which one do you want the controller to do?
If I understand it correctly, you want Valve 1 and 5 to run at the same time, so are 2 and 6, 3 and 7, and 4 and 8, right? I don’t think there is an easy way for the current firmware to perform this. One solution is to use 4 programs: basically set all valves as parallel (non-sequential) stations, and have valve 1 and 2 in the first program, start at 8:00, run for 20 minute; then valve 2 and 6 in the second program, start at 8:20, run for 20 minutes, and so on.
What you described would be possible if we have the concept of ‘sequential groups’ — where valves in the same group are scheduled sequentially, and valves in different groups can run in parallel. This isn’t supported in the firmware yet.