If you’re open to using jsr223, I’ve just shared a general purpose scene rule that lets you easily define as many scenes and states as you want in an array structure. You can set each item using a specific command (“ON”, “45”, “OFF”, etc…) or with an setting item name which will grab the state of that setting item and apply it to the item you are updating.
The jsr223 rule is in the post here.
Unfortunately jsr223 does not seem to be working in openHAB2 yet, but the rule works great in OH1.