Finderski said: Actually, they may not need to, if you can give GiGs more information. As I understand your dilemma, you'd like a drop down with a list of classes to choose from. Then when a selection is made, have other fields pre-fill or be selected based on that class. It sounds like you should be able to accomplish that with a sheet worker. To help construct the sheet worker, we'd need to know what are the list of classes, what are the additional fields that would be impacted by each class selection, do you have code (html and css) for the basic structure of the sheet for that class information, etc. Once we know what we are working with, chances are we can help you. GiGs is awesome with sheet workers, he just needs a little more to work with. Oh, that's good then! Alright, so the initial test I was trying to do was to see if I could have it change the options on other fields. If I could get it to do that, then I'd try to get into the more messy stuff later on like adding to a skill page anything you get by default for the class. I don't think I'm going to go that far right now, I'd more like basic functionality to start with and worry about fancy stuff once the basics work. To give a few specifics for this case though, there are 12 classes, each having 3 specializations and 3 prestige classes unique to such. Ideally, once you select a base class, it would update the dropdown options for the specialization and prestige options to only show the valid options. There a bunch of other things I'd like to do with that later on, but for now understanding the basics is the most important step. So here's the other information for an idea of what this would look like: <div class="header-block"> <div class="undertext">Class</div> <select class="long-text-input" type="text" name="attr_baseclass"> <option value="archer">Archer</option> <option value="beguiler">Beguiler</option> <option value="druid">Druid</option> <option value="guardian">Guardian</option> <option value="maestro">Maestro</option> <option value="mage">Mage</option> <option value="rectora">Rectora</option> <option value="pugilist">Pugilist</option> <option value="rogue">Rogue</option> <option value="spellbreaker">Spellbreaker</option> <option value="summoner">Summoner</option> <option value="warrior">Warrior</option> </select> </div> That I was able to do without any real problems. It creates a dropdown for your base class, select it from the list, yay. You can change classes later on so eventually I'll need to be able to have like a button or some method of that adding the selected class to a list on the sheet, but it's not that important at the moment. Next off, the theory would go that this would have a similar set of options for a given class, so a similar dropdown for specialization, and a third for prestige classes. <div class="header-block"> <div class="undertext">Specialization</div> <select class="long-text-input" type="text" name="attr_archerspec1"> <option value="patient">The Patient Hunter</option> <option value="biting">Biting Wind</option> <option value="kindred">Kindred Spirit</option> </select> </div> <div class="header-block"> <div class="undertext">Specialization</div> <select class="long-text-input" type="text" name="attr_beguilerspec1"> <option value="curse">Curses & Toxins</option> <option value="illusion">Illusion</option> <option value="distortion">Distortion</option> </select> </div> Specifically, once you complete a specialization you can pick a new one afterward, so the attribute would have to be attr_archerspec1 to differentiate from a second or third spec gained later on. It doesn't really matter for the moment, but I'd implement it that way now to save myself trouble later on so I don't have to change a ton of variable names in the future. Two example sets should be enough to see if it works to switch back and forth between them anyway. One question while I think of it, being the "illusion" and "curse" option values, do those set the attribute of beguilerspec1 to those values, or do they count as attributes of their own? Since I'd probably need to set up illusion and curses as attributes later on for spells, and I'm not sure how the information is being organized fully from just looking at it. I think they're just the text value of the beguilerspec1 attribute, not their own, independent attributes, so I should be able to have separate attr_illusion and attr_curse variables later on, but best to check now before it breaks everything. Anyway, same idea though, prestige classes work in a very similar way to specializations, both modify the base class by giving it extra abilities. The specific details would be your base class goes from 1-20, at level 1 you pick a specialization which gains levels at the same rate up to 10, so 1-10 is spec1. At level 11, you get a second specialization after the first is completed, and your first prestige class, so 11-20 is 1-10 for spec2 and prestige1. Though you cap out on your base class at 20, you can keep gaining character levels so could keep mastering all the specializations and prestige classes if you really wanted to, or could change to a new base class at 10 or 20 and pick a new specialization and eventually prestige there as well. It's meant to allow for indefinite growth over time for multiple campaigns if you want to keep a character around that you like. You don't really get much stronger after the level 20 cap, mostly it just gives you greater versatility. Sorry, a bit too much information probably, but it's for future reference since eventually I'll be trying to model that into the character sheet, but it's not really a necessity at the moment. So yeah, the prestige stuff, same concept. <div class="header-block"> <div class="undertext">Prestige</div> <select class="long-text-input" type="text" name="attr_archerprest1"> <option value="none">None</option> <option value="prism">Prism</option> <option value="woodwaen">Woodwaen</option> <option value="ballistae">Ballistae</option> </select> </div> <div class="header-block"> <div class="undertext">Prestige</div> <select class="long-text-input" type="text" name="attr_beguilerprest1"> <option value="none">None</option> <option value="weaver">Weaver</option> <option value="mesmer">Mesmer</option> <option value="oracle">Oracle</option> </select> </div> That would at least give the prestige dropdowns to choose from, I'm just not sure how to use a sheet worker to actually tell it to change which one to look at. I assume it would somehow involve changing something like the attr_archerprest1 to attr_beguilerprest1 and having that attribute change update the option values that are available, but reading through the sheet worker page of the wiki hasn't really made it clear how to do that yet. It's probably clear to someone who knows what they're doing, but it's definitely going over my head currently. Anyway, probably too much information, but hopefully it gives you everything you need to understand where I'm eventually going with this and what my current goals are. TL: DR - setting class to "archer" on the dropdown should change the specialization dropdown to have the options "Patient Hunter" "Biting Wind" and "Kindred Spirit" as the only choices shown. Anything else past that, I'll deal with later. As long as I can get it to update information at all, it should be fine. I also just discovered, while writing this, that apparently the preview doesn't actually run the sheet workers... so I may have actually had something working previously, didn't realize it, and threw it out. That... kinda sucks. It would have been nice to have known that. At least I now know for the future.