I'd love any available pointers on this as well. For example, each attribute of each spell on the 5e sheet is stored under its own 'repeating' address. I can manually import using my !setattr script, IF able to accurately predict the next number in the sequence. So a spell in my world looks like this: !setattr --repeating_spellbookcantrip_0_spellname|Acid Splash --repeating_spellbookcantrip_0_spellschool|Conjuration --repeating_spellbookcantrip_0_spellritual| --repeating_spellbookcantrip_0_spellcasttime|1 action --repeating_spellbookcantrip_0_spellrange|60 feet --repeating_spellbookcantrip_0_spellcomponents|V, S --repeating_spellbookcantrip_0_spellduration|Instantaneous --repeating_spellbookcantrip_0_spellconcentration| --repeating_spellbookcantrip_0_spelltypeadvanced|1 --repeating_spellbookcantrip_0_spelldescription|You hurl a bubble of acid. Choose one creature within range, or choose two creatures within range that are within 5 feet of each other. A target must succeed on a Dexterity saving throw or take 1d6 acid damage. This spell's damage increases by 1d6 when you reach 5th level (2d6), 11th level (3d6), and 17th level (4d6).
...and that all works fine, when there's not already a 'cantrip_0'. I can imagine looking up what's there and incrementing by one, that's not a huge deal. Except not all the attributes always exist. So the next available 'repeating_spellbookcantrip_X_spellritual' could well belong to a completely different spell. I suppose I could find a way to determine what's completely free and open and set all spell attributes using that, incrementing when I hit another 'spellname'. Seems ugly. Is there a method for this? :D