I love universal monster macros, as it allows me to quickly get a monster set up and ready to go from a template, complete with macros, with minimal effort. The only universal macro I found difficult was spells... well this is what I came up with and it works for me. Firstly a quick word, I wrap the following macro in another macro so that I can hide all the errors for the unknown spells: %{selected|SpellMacro}&{noerror} The macro to pull up a list of all the spells the monster knows: @{wtype} &{template:default}{{name=@{selected|character_name} Cantrips
}}{{Spell Save DC @{selected|spell_save_dc}= +@{selected|spell_attack_bonus} to hit with spell attacks
}}{{Cantrip:At Will=
[@{repeating_spell-Cantrip_$0_spellname}](~selected|repeating_spell-Cantrip_$0_spell)
[@{repeating_spell-Cantrip_$1_spellname}](~selected|repeating_spell-Cantrip_$1_spell)
[@{repeating_spell-Cantrip_$2_spellname}](~selected|repeating_spell-Cantrip_$2_spell)
[@{repeating_spell-Cantrip_$3_spellname}](~selected|repeating_spell-Cantrip_$3_spell)
[@{repeating_spell-Cantrip_$4_spellname}](~selected|repeating_spell-Cantrip_$4_spell)
[@{repeating_spell-Cantrip_$5_spellname}](~selected|repeating_spell-Cantrip_$5_spell)
}}{{Level 1: @{selected|lvl1_slots_total} slots=
[@{repeating_spell-1_$0_spellname}](~selected|repeating_spell-1_$0_spell)
[@{repeating_spell-1_$1_spellname}](~selected|repeating_spell-1_$1_spell)
[@{repeating_spell-1_$2_spellname}](~selected|repeating_spell-1_$2_spell)
[@{repeating_spell-1_$3_spellname}](~selected|repeating_spell-1_$3_spell)
[@{repeating_spell-1_$4_spellname}](~selected|repeating_spell-1_$4_spell)
[@{repeating_spell-1_$5_spellname}](~selected|repeating_spell-1_$5_spell)
}}{{Level 2: @{selected|lvl2_slots_total} slots=
[@{repeating_spell-2_$0_spellname}](~selected|repeating_spell-2_$0_spell)
[@{repeating_spell-2_$1_spellname}](~selected|repeating_spell-2_$1_spell)
[@{repeating_spell-2_$2_spellname}](~selected|repeating_spell-2_$2_spell)
[@{repeating_spell-2_$3_spellname}](~selected|repeating_spell-2_$3_spell)
[@{repeating_spell-2_$4_spellname}](~selected|repeating_spell-2_$4_spell)
[@{repeating_spell-2_$5_spellname}](~selected|repeating_spell-2_$5_spell)
}}{{Level 3: @{selected|lvl3_slots_total} slots=
[@{repeating_spell-3_$0_spellname}](~selected|repeating_spell-3_$0_spell)
[@{repeating_spell-3_$1_spellname}](~selected|repeating_spell-3_$1_spell)
[@{repeating_spell-3_$2_spellname}](~selected|repeating_spell-3_$2_spell)
[@{repeating_spell-3_$3_spellname}](~selected|repeating_spell-3_$3_spell)
[@{repeating_spell-3_$4_spellname}](~selected|repeating_spell-3_$4_spell)
[@{repeating_spell-3_$5_spellname}](~selected|repeating_spell-3_$5_spell)
}}{{Level 4: @{selected|lvl4_slots_total} slots=
[@{repeating_spell-4_$0_spellname}](~selected|repeating_spell-4_$0_spell)
[@{repeating_spell-4_$1_spellname}](~selected|repeating_spell-4_$1_spell)
[@{repeating_spell-4_$2_spellname}](~selected|repeating_spell-4_$2_spell)
[@{repeating_spell-4_$3_spellname}](~selected|repeating_spell-4_$3_spell)
[@{repeating_spell-4_$4_spellname}](~selected|repeating_spell-4_$4_spell)
[@{repeating_spell-4_$5_spellname}](~selected|repeating_spell-4_$5_spell)
}}{{Level 5: @{selected|lvl5_slots_total} slots=
[@{repeating_spell-5_$0_spellname}](~selected|repeating_spell-5_$0_spell)
[@{repeating_spell-5_$1_spellname}](~selected|repeating_spell-5_$1_spell)
[@{repeating_spell-5_$2_spellname}](~selected|repeating_spell-5_$2_spell)
[@{repeating_spell-5_$3_spellname}](~selected|repeating_spell-5_$3_spell)
[@{repeating_spell-5_$4_spellname}](~selected|repeating_spell-5_$4_spell)
[@{repeating_spell-5_$5_spellname}](~selected|repeating_spell-5_$5_spell)
}}{{Level 6: @{selected|lvl6_slots_total} slots=
[@{repeating_spell-6_$0_spellname}](~selected|repeating_spell-6_$0_spell)
[@{repeating_spell-6_$1_spellname}](~selected|repeating_spell-6_$1_spell)
[@{repeating_spell-6_$2_spellname}](~selected|repeating_spell-6_$2_spell)
[@{repeating_spell-6_$3_spellname}](~selected|repeating_spell-6_$3_spell)
[@{repeating_spell-6_$4_spellname}](~selected|repeating_spell-6_$4_spell)
[@{repeating_spell-6_$5_spellname}](~selected|repeating_spell-6_$5_spell)
}}{{Level 7: @{selected|lvl7_slots_total} slots=
[@{repeating_spell-7_$0_spellname}](~selected|repeating_spell-7_$0_spell)
[@{repeating_spell-7_$1_spellname}](~selected|repeating_spell-7_$1_spell)
[@{repeating_spell-7_$2_spellname}](~selected|repeating_spell-7_$2_spell)
[@{repeating_spell-7_$3_spellname}](~selected|repeating_spell-7_$3_spell)
[@{repeating_spell-7_$4_spellname}](~selected|repeating_spell-7_$4_spell)
[@{repeating_spell-7_$5_spellname}](~selected|repeating_spell-7_$5_spell)
}}{{Level 8: @{selected|lvl8_slots_total} slots=
[@{repeating_spell-8_$0_spellname}](~selected|repeating_spell-8_$0_spell)
[@{repeating_spell-8_$1_spellname}](~selected|repeating_spell-8_$1_spell)
[@{repeating_spell-8_$2_spellname}](~selected|repeating_spell-8_$2_spell)
[@{repeating_spell-8_$3_spellname}](~selected|repeating_spell-8_$3_spell)
[@{repeating_spell-8_$4_spellname}](~selected|repeating_spell-8_$4_spell)
[@{repeating_spell-8_$5_spellname}](~selected|repeating_spell-8_$5_spell)
}}{{Level 9: @{selected|lvl9_slots_total} slots=
[@{repeating_spell-9_$0_spellname}](~selected|repeating_spell-9_$0_spell)
[@{repeating_spell-9_$1_spellname}](~selected|repeating_spell-9_$1_spell)
[@{repeating_spell-9_$2_spellname}](~selected|repeating_spell-9_$2_spell)
[@{repeating_spell-9_$3_spellname}](~selected|repeating_spell-9_$3_spell)
[@{repeating_spell-9_$4_spellname}](~selected|repeating_spell-9_$4_spell)
[@{repeating_spell-9_$5_spellname}](~selected|repeating_spell-9_$5_spell)
}}