How about you have two lists A and B. In List A you have all 30 items. This woudld be a single selct list. They coudl select the item in the list that they would rakn as #1 and you coudl add it to list B as item #1 (then remove it from list A co they cannot pick it again). Then allow then to keep doing this until the list A is exhausted. List B does not have to be a dropdown ...it coudl be text that is hidden and modified each time they choose a new item from th elist.
It woudl take some coding but it woudl not be too bad.
paul