It's not just Silverlight, though. IMO, the approach taken by both WotC and Trapdoor on D&D technologies is fundamentally wrongheaded. Both of them tried to program in all the rules of the game; to have the computer not just keep track of your character/campaign data, but also
apply the rules to that data. For example, the character generator walks you through the process of creating a character, making sure you only take skills you're entitled to, feats you're allowed, et cetera, et cetera. And then it crunches all the numbers for you as well.
Why is this wrongheaded? Three reasons:
- The software is much more complex, because it has to have the entire rulebook programmed into it.
- Any time new rules come out, or old rules are revised, you have to overhaul the software to accommodate the changes.
- And the real killer: D&D is played differently at every table. People make house rules. People make homebrewed stuff. The more your application "knows" about the rules, the less useful it is to anyone who doesn't play the game strictly by RAW. (And in 5E with its focus on rulings over rules, even playing strictly by RAW doesn't guarantee that a group will interpret the rules the same way the app designers do.)
For my money, electronic D&D tools should take a giant step away from trying to apply the rules. Instead, they should focus on providing easy access to the data (spells, skills, feats, class abilities, and so forth), and letting you quickly pull that data together in a useful way. I'm envisioning a tool where you start with a blank character sheet. You enter "Elf" in the Race section, and a little window pops up: "Import Race Abilities?" with options "High Elf," "Wild Elf," "Drow Elf," and "Do Not Import." If you click on one of the race options, it pulls in all the special abilities for your selected race, and puts them in the appropriate box on your sheet. Then you can go in and modify them however you like. If you click "Do Not Import," it just leaves everything like it is.
A tool like this would be vastly easier to build and maintain, and it would also do a far better job of supporting house rules and homebrewed options. There would still be a few areas where you'd do automatic calculation (e.g., skill bonuses); but even there, the option should exist to turn off autocalc and enter the numbers by hand.