You can modify field descriptions and red warning messages on-the-fly, possibly to reflect changes in requiredness. Example, on changing the priority toBlocker(orHighestin newer Jira versions), the Description help text changes:
To do this you put a validator on for example, "Priority", with the following code:
def formField =getFieldById(getFieldChanged())def descField =getFieldById("description")def priority = formField.getValue()?.name
if(priority =="Highest"){// choose priority by name
descField.setHelpText("Please explain why priority is Highest.")
descField.setRequired(true)}else{
descField.clearHelpText()
descField.setRequired(false)}