Closed crazedsanity closed 10 years ago
The SQL for basic conversion would be something like:
CREATE TABLE csbt_skill_table (
skill_id serial NOT NULL PRIMARY KEY,
skill_name text NOT NULL UNIQUE,
is_untrained bool NOT NULL DEFAULT false,
has_suffix bool NOT NULL DEFAULT false
);
INSERT INTO csbt_skill_table
SELECT distinct(skill_name) FROM csbt_character_skill_table ORDER BY skill_name;
ALTER TABLE csbt_character_skill_table ADD COLUMN skill_id integer;
UPDATE csbt_character_skill_table AS cs SET skill_id=s.skill_id FROM
(
SELECT s.skill_id, s.skill_name FROM csbt_skill_table AS s
)
WHERE cs.skill_name=s.skill_name;
ALTER TABLE csbt_character_skill_table DROP COLUMN skill_name;
There should be an administration page for adding new skills as well, or some way for adding (and deleting) these skills (should be in another request).
Also, there should be a way to "group" them into things like "3.5" or some such... so that when a character sheet is created, there's a way to determine what the default set of skills would be. Defining a default set of attributes and such would be nice, as well, so that other systems could be supported.
Upon further consideration, I think this would be a lot of work with not a lot of benefit. It might be more useful in the future, but right now there's too much else to do. Closing.
Instead of using free-form skill names, they should be in a system-defined list. DM's or admins (or maybe both) should be able to add/update/remove them. Skills from existing characters should be converted to use them (consider creating the master list from existing character sheets if they exist, but use a pre-defined list otherwise). These skills should have a bit indicating that it can be used untrained.