versioned spell errors

EQ2Emulator Development forum.

Moderator: Team Members

Post Reply
Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

versioned spell errors

Post by Jabantiz » Tue Apr 23, 2013 10:22 pm

This was based off of John's item stats idea for stat type and subtype across different client versions.

On my server the spell errors are now correct in SF, DoV, and CoE. The spell errors are stored in the DB and loaded into the MasterSpellList on server startup or on a /reload spells. When we send the packet it will now grab a value based on the error id and client version. I also identified several errors that we did not have defines for.

The DB patcher gave me an error when I tried to commit the table, error in syntax next to =244

Code: Select all

CREATE TABLE `versioned_spell_errors` (
	`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
	`version` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
	`error_index` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
	`value` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
	`name` CHAR(64) NOT NULL DEFAULT '' COLLATE 'latin1_general_ci',
	PRIMARY KEY (`id`),
	UNIQUE INDEX `SpellErrorIDX` (`version`, `error_index`)
)
COLLATE='latin1_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=244;
Here is the inserts for the table

Code: Select all

INSERT INTO `versioned_spell_errors` (`id`, `version`, `error_index`, `value`, `name`) VALUES
	(1, 1193, 1, 8, 'SPELL_ERROR_NOT_ENOUGH_KNOWLEDGE'),
	(2, 1193, 2, 11, 'SPELL_ERROR_INTERRUPTED'),
	(3, 1193, 3, 13, 'SPELL_ERROR_TAKE_EFFECT_MOREPOWERFUL'),
	(4, 1193, 4, 14, 'SPELL_ERROR_TAKE_EFFECT_SAMESPELL'),
	(5, 1193, 5, 19, 'SPELL_ERROR_CANNOT_CAST_DEAD'),
	(6, 1193, 6, 20, 'SPELL_ERROR_NOT_ALIVE'),
	(7, 1193, 7, 21, 'SPELL_ERROR_NOT_DEAD'),
	(8, 1193, 8, 22, 'SPELL_ERROR_CANNOT_CAST_SITTING'),
	(9, 1193, 9, 23, 'SPELL_ERROR_CANNOT_CAST_UNCON'),
	(10, 1193, 10, 24, 'SPELL_ERROR_ALREADY_CASTING'),
	(11, 1193, 11, 25, 'SPELL_ERROR_RECOVERING'),
	(12, 1193, 12, 26, 'SPELL_ERROR_NON_COMBAT_ONLY'),
	(13, 1193, 13, 27, 'SPELL_ERROR_CANNOT_CAST_STUNNED'),
	(14, 1193, 14, 28, 'SPELL_ERROR_CANNOT_CAST_STIFFLED'),
	(15, 1193, 15, 29, 'SPELL_ERROR_CANNOT_CAST_CHARMED'),
	(16, 1193, 16, 30, 'SPELL_ERROR_NOT_WHILE_MOUNTED'),
	(17, 1193, 17, 31, 'SPELL_ERROR_NOT_WHILE_FLYING'),
	(18, 1193, 18, 32, 'SPELL_ERROR_NOT_WHILE_CLIMBING'),
	(19, 1193, 19, 33, 'SPELL_ERROR_NOT_READY'),
	(20, 1193, 20, 34, 'SPELL_ERROR_CANT_SEE_TARGET'),
	(21, 1193, 21, 36, 'SPELL_ERROR_INCORRECT_STANCE'),
	(22, 1193, 22, 37, 'SPELL_ERROR_CANNOT_CAST_FEIGNDEATH'),
	(23, 1193, 23, 38, 'SPELL_ERROR_INVENTORY_FULL'),
	(24, 1193, 24, 39, 'SPELL_ERROR_NOT_ENOUGH_COIN'),
	(25, 1193, 25, 40, 'SPELL_ERROR_NOT_ALLOWED_HERE'),
	(26, 1193, 26, 41, 'SPELL_ERROR_NOT_WHILE_CRAFTING'),
	(27, 1193, 27, 42, 'SPELL_ERROR_ONLY_WHEN_CRAFTING'),
	(28, 1193, 28, 45, 'SPELL_ERROR_ITEM_NOT_ATTUNED'),
	(29, 1193, 29, 46, 'SPELL_ERROR_ITEM_WORN_OUT'),
	(30, 1193, 30, 48, 'SPELL_ERROR_MUST_EQUIP_WEAPON'),
	(31, 1193, 31, 49, 'SPELL_ERROR_WEAPON_BROKEN'),
	(32, 1193, 32, 50, 'SPELL_ERROR_CANNOT_CAST_FEARED'),
	(33, 1193, 33, 51, 'SPELL_ERROR_TARGET_IMMUNE_HOSTILE'),
	(34, 1193, 34, 52, 'SPELL_ERROR_TARGET_IMMUNE_BENEFICIAL'),
	(35, 1193, 35, 53, 'SPELL_ERROR_NO_TAUNT_SPELLS'),
	(36, 1193, 36, 54, 'SPELL_ERROR_CANNOT_USE_IN_BATTLEGROUNDS'),
	(37, 1193, 37, 55, 'SPELL_ERROR_CANNOT_PREPARE'),
	(38, 1193, 38, 56, 'SPELL_ERROR_NO_ELIGIBLE_TARGET'),
	(39, 1193, 39, 57, 'SPELL_ERROR_NO_TARGETS_IN_RANGE'),
	(40, 1193, 40, 58, 'SPELL_ERROR_TOO_CLOSE'),
	(41, 1193, 41, 59, 'SPELL_ERROR_TOO_FAR_AWAY'),
	(42, 1193, 42, 60, 'SPELL_ERROR_TARGET_TOO_WEAK'),
	(43, 1193, 43, 61, 'SPELL_ERROR_TARGET_TOO_POWERFUL'),
	(44, 1193, 44, 62, 'SPELL_ERROR_WONT_WORK_ON_TARGET'),
	(45, 1193, 45, 63, 'SPELL_ERROR_TARGET_INVULNERABLE'),
	(46, 1193, 46, 64, 'SPELL_ERROR_TARGET_IMMUNE'),
	(47, 1193, 47, 65, 'SPELL_ERROR_TARGET_ENGAGED'),
	(48, 1193, 48, 66, 'SPELL_ERROR_TARGET_NOT_GROUPED'),
	(49, 1193, 49, 67, 'SPELL_ERROR_TARGET_IN_USE'),
	(50, 1193, 50, 68, 'SPELL_ERROR_TARGET_GROUP_HAS_SPELL'),
	(51, 1193, 51, 70, 'SPELL_ERROR_TARGET_ALREADY_ENGAGED'),
	(52, 1193, 52, 71, 'SPELL_ERROR_CANNOT_ENGAGE'),
	(53, 1193, 53, 72, 'SPELL_ERROR_NOT_A_FRIEND'),
	(54, 1193, 54, 73, 'SPELL_ERROR_NOT_AN_ENEMY'),
	(55, 1193, 55, 74, 'SPELL_ERROR_TARGET_INVENTORY_FULL'),
	(56, 1193, 56, 75, 'SPELL_ERROR_FINISH_DUELING_FIRST'),
	(57, 1193, 57, 76, 'SPELL_ERROR_ILLEGAL_TARGET_ATTACK'),
	(58, 1193, 58, 77, 'SPELL_ERROR_NOT_WHILE_MENTORING_PVP'),
	(59, 1193, 59, 78, 'SPELL_ERROR_NOT_WHILE_MENTORING_BENEFICIAL'),
	(60, 1193, 60, 79, 'SPELL_ERROR_ILLEGAL_TARGET_HEAL_OUTSIDE_LEVEL_RANGE'),
	(61, 1193, 61, 80, 'SPELL_ERROR_NOTHING_TO_CURE'),
	(62, 1193, 62, 81, 'SPELL_ERROR_NOT_ENOUGH_POWER'),
	(63, 1193, 63, 82, 'SPELL_ERROR_NOT_ENOUGH_HEALTH'),
	(64, 1193, 64, 83, 'SPELL_ERROR_NOT_ENOUGH_CONC'),
	(65, 1193, 65, 84, 'SPELL_ERROR_MISSING_COMPONENT'),
	(66, 1193, 66, 85, 'SPELL_ERROR_OUT_OF_CHARGES'),
	(67, 1193, 67, 86, 'SPELL_ERROR_LACK_AMMO'),
	(68, 1193, 68, 87, 'SPELL_ERROR_NO_RANGED_EQUIPPED'),
	(69, 1193, 69, 88, 'SPELL_ERROR_RANGED_NEEDS_REPAIR'),
	(70, 1193, 70, 89, 'SPELL_ERROR_LACK_WEAPON_TYPE'),
	(71, 1193, 71, 90, 'SPELL_ERROR_NOT_ENOUGH_SAVAGERY'),
	(72, 1193, 72, 93, 'SPELL_ERROR_ALREADY_PREPARED'),
	(73, 1193, 73, 94, 'SPELL_ERROR_ALREADY_HAVE_SPELL'),
	(74, 1193, 74, 96, 'SPELL_ERROR_NOT_SMART_ENOUGH'),
	(75, 1193, 75, 99, 'SPELL_ERROR_NO_HOSTILE_SPELLS'),
	(76, 1193, 76, 100, 'SPELL_ERROR_NO_BENEFICIAL_SPELLS'),
	(77, 1193, 77, 101, 'SPELL_ERROR_CANNOT_MOUNT_NOW_SITTING'),
	(78, 1193, 78, 102, 'SPELL_ERROR_CANNOT_MOUNT_NOW_DEAD'),
	(79, 1193, 79, 103, 'SPELL_ERROR_CANNOT_MOUNT_NOW_CLIMBING'),
	(80, 1193, 80, 104, 'SPELL_ERROR_CANNOT_MOUNT_NOW_FORM'),
	(81, 1193, 81, 105, 'SPELL_ERROR_CANNOT_MOUNT_NOW_WATER_TO_DEEP'),
	(82, 1193, 82, 107, 'SPELL_ERROR_ALREADY_CAST'),
	(83, 1193, 83, 108, 'SPELL_ERROR_LOTTERY_IN_PROGRESS'),
	(84, 1193, 84, 109, 'SPELL_ERROR_NOT_IN_PVP'),
	(85, 1096, 1, 8, 'SPELL_ERROR_NOT_ENOUGH_KNOWLEDGE'),
	(86, 1096, 2, 11, 'SPELL_ERROR_INTERRUPTED'),
	(87, 1096, 3, 13, 'SPELL_ERROR_TAKE_EFFECT_MOREPOWERFUL'),
	(88, 1096, 4, 14, 'SPELL_ERROR_TAKE_EFFECT_SAMESPELL'),
	(89, 1096, 5, 19, 'SPELL_ERROR_CANNOT_CAST_DEAD'),
	(90, 1096, 6, 20, 'SPELL_ERROR_NOT_ALIVE'),
	(91, 1096, 7, 21, 'SPELL_ERROR_NOT_DEAD'),
	(92, 1096, 8, 22, 'SPELL_ERROR_CANNOT_CAST_SITTING'),
	(93, 1096, 9, 23, 'SPELL_ERROR_CANNOT_CAST_UNCON'),
	(94, 1096, 10, 24, 'SPELL_ERROR_ALREADY_CASTING'),
	(95, 1096, 11, 25, 'SPELL_ERROR_RECOVERING'),
	(96, 1096, 12, 26, 'SPELL_ERROR_NON_COMBAT_ONLY'),
	(97, 1096, 13, 27, 'SPELL_ERROR_CANNOT_CAST_STUNNED'),
	(98, 1096, 14, 28, 'SPELL_ERROR_CANNOT_CAST_STIFFLED'),
	(99, 1096, 15, 29, 'SPELL_ERROR_CANNOT_CAST_CHARMED'),
	(100, 1096, 16, 30, 'SPELL_ERROR_NOT_WHILE_MOUNTED'),
	(101, 1096, 17, 31, 'SPELL_ERROR_NOT_WHILE_FLYING'),
	(102, 1096, 18, 32, 'SPELL_ERROR_NOT_WHILE_CLIMBING'),
	(103, 1096, 19, 33, 'SPELL_ERROR_NOT_READY'),
	(104, 1096, 20, 34, 'SPELL_ERROR_CANT_SEE_TARGET'),
	(105, 1096, 22, 36, 'SPELL_ERROR_CANNOT_CAST_FEIGNDEATH'),
	(106, 1096, 23, 37, 'SPELL_ERROR_INVENTORY_FULL'),
	(107, 1096, 24, 38, 'SPELL_ERROR_NOT_ENOUGH_COIN'),
	(108, 1096, 25, 39, 'SPELL_ERROR_NOT_ALLOWED_HERE'),
	(109, 1096, 26, 40, 'SPELL_ERROR_NOT_WHILE_CRAFTING'),
	(110, 1096, 27, 41, 'SPELL_ERROR_ONLY_WHEN_CRAFTING'),
	(111, 1096, 28, 44, 'SPELL_ERROR_ITEM_NOT_ATTUNED'),
	(112, 1096, 29, 45, 'SPELL_ERROR_ITEM_WORN_OUT'),
	(113, 1096, 30, 47, 'SPELL_ERROR_MUST_EQUIP_WEAPON'),
	(114, 1096, 31, 48, 'SPELL_ERROR_WEAPON_BROKEN'),
	(115, 1096, 32, 49, 'SPELL_ERROR_CANNOT_CAST_FEARED'),
	(116, 1096, 33, 50, 'SPELL_ERROR_TARGET_IMMUNE_HOSTILE'),
	(117, 1096, 34, 51, 'SPELL_ERROR_TARGET_IMMUNE_BENEFICIAL'),
	(118, 1096, 35, 52, 'SPELL_ERROR_NO_TAUNT_SPELLS'),
	(119, 1096, 36, 53, 'SPELL_ERROR_CANNOT_USE_IN_BATTLEGROUNDS'),
	(120, 1096, 37, 54, 'SPELL_ERROR_CANNOT_PREPARE'),
	(121, 1096, 38, 55, 'SPELL_ERROR_NO_ELIGIBLE_TARGET'),
	(122, 1096, 39, 56, 'SPELL_ERROR_NO_TARGETS_IN_RANGE'),
	(123, 1096, 40, 57, 'SPELL_ERROR_TOO_CLOSE'),
	(124, 1096, 41, 58, 'SPELL_ERROR_TOO_FAR_AWAY'),
	(125, 1096, 42, 59, 'SPELL_ERROR_TARGET_TOO_WEAK'),
	(126, 1096, 43, 60, 'SPELL_ERROR_TARGET_TOO_POWERFUL'),
	(127, 1096, 44, 61, 'SPELL_ERROR_WONT_WORK_ON_TARGET'),
	(128, 1096, 45, 62, 'SPELL_ERROR_TARGET_INVULNERABLE'),
	(129, 1096, 46, 63, 'SPELL_ERROR_TARGET_IMMUNE'),
	(130, 1096, 47, 64, 'SPELL_ERROR_TARGET_ENGAGED'),
	(131, 1096, 48, 65, 'SPELL_ERROR_TARGET_NOT_GROUPED'),
	(132, 1096, 49, 66, 'SPELL_ERROR_TARGET_IN_USE'),
	(133, 1096, 50, 67, 'SPELL_ERROR_TARGET_GROUP_HAS_SPELL'),
	(134, 1096, 51, 69, 'SPELL_ERROR_TARGET_ALREADY_ENGAGED'),
	(135, 1096, 52, 70, 'SPELL_ERROR_CANNOT_ENGAGE'),
	(136, 1096, 53, 71, 'SPELL_ERROR_NOT_A_FRIEND'),
	(137, 1096, 54, 72, 'SPELL_ERROR_NOT_AN_ENEMY'),
	(138, 1096, 55, 73, 'SPELL_ERROR_TARGET_INVENTORY_FULL'),
	(139, 1096, 56, 74, 'SPELL_ERROR_FINISH_DUELING_FIRST'),
	(140, 1096, 57, 75, 'SPELL_ERROR_ILLEGAL_TARGET_ATTACK'),
	(141, 1096, 58, 76, 'SPELL_ERROR_NOT_WHILE_MENTORING_PVP'),
	(142, 1096, 59, 77, 'SPELL_ERROR_NOT_WHILE_MENTORING_BENEFICIAL'),
	(143, 1096, 60, 78, 'SPELL_ERROR_ILLEGAL_TARGET_HEAL_OUTSIDE_LEVEL_RANGE'),
	(144, 1096, 61, 79, 'SPELL_ERROR_NOTHING_TO_CURE'),
	(145, 1096, 62, 80, 'SPELL_ERROR_NOT_ENOUGH_POWER'),
	(146, 1096, 63, 81, 'SPELL_ERROR_NOT_ENOUGH_HEALTH'),
	(147, 1096, 64, 82, 'SPELL_ERROR_NOT_ENOUGH_CONC'),
	(148, 1096, 65, 83, 'SPELL_ERROR_MISSING_COMPONENT'),
	(149, 1096, 66, 84, 'SPELL_ERROR_OUT_OF_CHARGES'),
	(150, 1096, 67, 85, 'SPELL_ERROR_LACK_AMMO'),
	(151, 1096, 68, 86, 'SPELL_ERROR_NO_RANGED_EQUIPPED'),
	(152, 1096, 69, 87, 'SPELL_ERROR_RANGED_NEEDS_REPAIR'),
	(153, 1096, 70, 88, 'SPELL_ERROR_LACK_WEAPON_TYPE'),
	(154, 1096, 72, 91, 'SPELL_ERROR_ALREADY_PREPARED'),
	(155, 1096, 73, 92, 'SPELL_ERROR_ALREADY_HAVE_SPELL'),
	(156, 1096, 74, 94, 'SPELL_ERROR_NOT_SMART_ENOUGH'),
	(157, 1096, 75, 97, 'SPELL_ERROR_NO_HOSTILE_SPELLS'),
	(158, 1096, 76, 98, 'SPELL_ERROR_NO_BENEFICIAL_SPELLS'),
	(159, 1096, 77, 99, 'SPELL_ERROR_CANNOT_MOUNT_NOW_SITTING'),
	(160, 1096, 78, 100, 'SPELL_ERROR_CANNOT_MOUNT_NOW_DEAD'),
	(161, 1096, 79, 101, 'SPELL_ERROR_CANNOT_MOUNT_NOW_CLIMBING'),
	(162, 1096, 80, 102, 'SPELL_ERROR_CANNOT_MOUNT_NOW_FORM'),
	(163, 1096, 81, 103, 'SPELL_ERROR_CANNOT_MOUNT_NOW_WATER_TO_DEEP'),
	(164, 1096, 82, 105, 'SPELL_ERROR_ALREADY_CAST'),
	(165, 1096, 83, 106, 'SPELL_ERROR_LOTTERY_IN_PROGRESS'),
	(166, 1096, 84, 107, 'SPELL_ERROR_NOT_IN_PVP'),
	(167, 0, 1, 8, 'SPELL_ERROR_NOT_ENOUGH_KNOWLEDGE'),
	(168, 0, 2, 10, 'SPELL_ERROR_INTERRUPTED'),
	(169, 0, 3, 12, 'SPELL_ERROR_TAKE_EFFECT_MOREPOWERFUL'),
	(170, 0, 4, 13, 'SPELL_ERROR_TAKE_EFFECT_SAMESPELL'),
	(171, 0, 5, 18, 'SPELL_ERROR_CANNOT_CAST_DEAD'),
	(172, 0, 6, 19, 'SPELL_ERROR_NOT_ALIVE'),
	(173, 0, 7, 20, 'SPELL_ERROR_NOT_DEAD'),
	(174, 0, 8, 21, 'SPELL_ERROR_CANNOT_CAST_SITTING'),
	(175, 0, 9, 22, 'SPELL_ERROR_CANNOT_CAST_UNCON'),
	(176, 0, 10, 23, 'SPELL_ERROR_ALREADY_CASTING'),
	(177, 0, 11, 24, 'SPELL_ERROR_RECOVERING'),
	(178, 0, 12, 25, 'SPELL_ERROR_NON_COMBAT_ONLY'),
	(179, 0, 13, 26, 'SPELL_ERROR_CANNOT_CAST_STUNNED'),
	(180, 0, 14, 27, 'SPELL_ERROR_CANNOT_CAST_STIFFLED'),
	(181, 0, 15, 28, 'SPELL_ERROR_CANNOT_CAST_CHARMED'),
	(182, 0, 16, 29, 'SPELL_ERROR_NOT_WHILE_MOUNTED'),
	(183, 0, 18, 30, 'SPELL_ERROR_NOT_WHILE_CLIMBING'),
	(184, 0, 19, 31, 'SPELL_ERROR_NOT_READY'),
	(185, 0, 20, 32, 'SPELL_ERROR_CANT_SEE_TARGET'),
	(186, 0, 22, 34, 'SPELL_ERROR_CANNOT_CAST_FEIGNDEATH'),
	(187, 0, 23, 35, 'SPELL_ERROR_INVENTORY_FULL'),
	(188, 0, 24, 36, 'SPELL_ERROR_NOT_ENOUGH_COIN'),
	(189, 0, 25, 37, 'SPELL_ERROR_NOT_ALLOWED_HERE'),
	(190, 0, 26, 38, 'SPELL_ERROR_NOT_WHILE_CRAFTING'),
	(191, 0, 27, 39, 'SPELL_ERROR_ONLY_WHEN_CRAFTING'),
	(192, 0, 28, 42, 'SPELL_ERROR_ITEM_NOT_ATTUNED'),
	(193, 0, 29, 43, 'SPELL_ERROR_ITEM_WORN_OUT'),
	(194, 0, 30, 45, 'SPELL_ERROR_MUST_EQUIP_WEAPON'),
	(195, 0, 31, 46, 'SPELL_ERROR_WEAPON_BROKEN'),
	(196, 0, 32, 47, 'SPELL_ERROR_CANNOT_CAST_FEARED'),
	(197, 0, 33, 48, 'SPELL_ERROR_TARGET_IMMUNE_HOSTILE'),
	(198, 0, 34, 49, 'SPELL_ERROR_TARGET_IMMUNE_BENEFICIAL'),
	(199, 0, 35, 50, 'SPELL_ERROR_NO_TAUNT_SPELLS'),
	(200, 0, 37, 51, 'SPELL_ERROR_CANNOT_PREPARE'),
	(201, 0, 38, 52, 'SPELL_ERROR_NO_ELIGIBLE_TARGET'),
	(202, 0, 39, 53, 'SPELL_ERROR_NO_TARGETS_IN_RANGE'),
	(203, 0, 40, 54, 'SPELL_ERROR_TOO_CLOSE'),
	(204, 0, 41, 55, 'SPELL_ERROR_TOO_FAR_AWAY'),
	(205, 0, 42, 56, 'SPELL_ERROR_TARGET_TOO_WEAK'),
	(206, 0, 43, 57, 'SPELL_ERROR_TARGET_TOO_POWERFUL'),
	(207, 0, 44, 58, 'SPELL_ERROR_WONT_WORK_ON_TARGET'),
	(208, 0, 45, 59, 'SPELL_ERROR_TARGET_INVULNERABLE'),
	(209, 0, 46, 60, 'SPELL_ERROR_TARGET_IMMUNE'),
	(210, 0, 47, 61, 'SPELL_ERROR_TARGET_ENGAGED'),
	(211, 0, 48, 62, 'SPELL_ERROR_TARGET_NOT_GROUPED'),
	(212, 0, 49, 63, 'SPELL_ERROR_TARGET_IN_USE'),
	(213, 0, 51, 65, 'SPELL_ERROR_TARGET_ALREADY_ENGAGED'),
	(214, 0, 52, 66, 'SPELL_ERROR_CANNOT_ENGAGE'),
	(215, 0, 53, 67, 'SPELL_ERROR_NOT_A_FRIEND'),
	(216, 0, 54, 68, 'SPELL_ERROR_NOT_AN_ENEMY'),
	(217, 0, 55, 69, 'SPELL_ERROR_TARGET_INVENTORY_FULL'),
	(218, 0, 56, 70, 'SPELL_ERROR_FINISH_DUELING_FIRST'),
	(219, 0, 57, 71, 'SPELL_ERROR_ILLEGAL_TARGET_ATTACK'),
	(220, 0, 58, 72, 'SPELL_ERROR_NOT_WHILE_MENTORING_PVP'),
	(221, 0, 59, 73, 'SPELL_ERROR_NOT_WHILE_MENTORING_BENEFICIAL'),
	(222, 0, 60, 74, 'SPELL_ERROR_ILLEGAL_TARGET_HEAL_OUTSIDE_LEVEL_RANGE'),
	(223, 0, 62, 75, 'SPELL_ERROR_NOT_ENOUGH_POWER'),
	(224, 0, 63, 79, 'SPELL_ERROR_NOT_ENOUGH_HEALTH'),
	(225, 0, 64, 77, 'SPELL_ERROR_NOT_ENOUGH_CONC'),
	(226, 0, 65, 78, 'SPELL_ERROR_MISSING_COMPONENT'),
	(227, 0, 66, 79, 'SPELL_ERROR_OUT_OF_CHARGES'),
	(228, 0, 67, 80, 'SPELL_ERROR_LACK_AMMO'),
	(229, 0, 68, 81, 'SPELL_ERROR_NO_RANGED_EQUIPPED'),
	(230, 0, 69, 82, 'SPELL_ERROR_RANGED_NEEDS_REPAIR'),
	(231, 0, 70, 83, 'SPELL_ERROR_LACK_WEAPON_TYPE'),
	(232, 0, 72, 86, 'SPELL_ERROR_ALREADY_PREPARED'),
	(233, 0, 73, 87, 'SPELL_ERROR_ALREADY_HAVE_SPELL'),
	(234, 0, 74, 89, 'SPELL_ERROR_NOT_SMART_ENOUGH'),
	(235, 0, 75, 92, 'SPELL_ERROR_NO_HOSTILE_SPELLS'),
	(236, 0, 76, 93, 'SPELL_ERROR_NO_BENEFICIAL_SPELLS'),
	(237, 0, 77, 94, 'SPELL_ERROR_CANNOT_MOUNT_NOW_SITTING'),
	(238, 0, 78, 95, 'SPELL_ERROR_CANNOT_MOUNT_NOW_DEAD'),
	(239, 0, 79, 96, 'SPELL_ERROR_CANNOT_MOUNT_NOW_CLIMBING'),
	(240, 0, 80, 97, 'SPELL_ERROR_CANNOT_MOUNT_NOW_FORM'),
	(241, 0, 81, 98, 'SPELL_ERROR_CANNOT_MOUNT_NOW_WATER_TO_DEEP'),
	(242, 0, 82, 100, 'SPELL_ERROR_ALREADY_CAST'),
	(243, 0, 83, 101, 'SPELL_ERROR_LOTTERY_IN_PROGRESS');

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: versioned spell errors

Post by John Adams » Wed Apr 24, 2013 6:04 am

One small request, and I know this is petty, but I'd like to rename the table to better fit our spells schema...

`spell_error_versions`

Would that work for you? This way we keep the "versions" so we know it's a reference. I'll take a look into DB Patcher now. Damn that script.

Nice work, Jab. Exactly what I hoped for with Item stats.

Does this mean we can remove the #defines in code?


Edit: Not sure why, but copying your SQL table and adding a New table, worked fine for me :) Minor Version: 36

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: versioned spell errors

Post by Jabantiz » Wed Apr 24, 2013 2:20 pm

When the copy paste failed in the db patcher I pasted it here so it is the exact same code I tried, think the patcher just hates me some times...

We still have the defines but they are the error index now, we should never have to change them, only add new ones.

I had named it versioned so if we add more tables like this , versioned_item_stats for example, they would all be grouped together in the gui editor I use. It can be changed to spells_ if you want.

Code will be on SVN in a few mins.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: versioned spell errors

Post by John Adams » Wed Apr 24, 2013 2:46 pm

Jabantiz wrote:I had named it versioned so if we add more tables like this , versioned_item_stats for example, they would all be grouped together in the gui editor I use. It can be changed to spells_ if you want.
LOL well as long as your editor is sorted :D haha... actually, I thought more about this today. I wonder if we can just have 1 table for all things we intend to version, and add a column (enum?) for what type it is? Ie., Spells, Items, etc... what do you think? Or would you rather keep them separate?

I will rename the table I posted in DB Patcher to `versioned_spell_errors` again, so when you commit version.h for 36, you should get what you posted.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: versioned spell errors

Post by Jabantiz » Wed Apr 24, 2013 2:50 pm

Just commited the code for the spell_error_versions...

As for having all versioned info in 1 table I think it would be easier to update/add new stuff if it is seprate tables, but like I always say I suck with DB's

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: versioned spell errors

Post by John Adams » Wed Apr 24, 2013 2:54 pm

Jabantiz wrote:Just commited the code for the spell_error_versions...
Aye carumba... okay, let me change the updater back then :)

Give me a minute.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: versioned spell errors

Post by John Adams » Wed Apr 24, 2013 3:06 pm

Okay, Patcher should pull down the `spell_error_versions` table and populate it with your data.

FWIW, it was 1 line of C++ code to change the table name... and about 15 places I had to update SQL to change this twice ;) That will teach me to let you name tables :mrgreen:

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: versioned spell errors

Post by Jabantiz » Wed Apr 24, 2013 3:22 pm

lol, I swear when I changed the table in the code your first comment wasn't up and the tables were, commited then came back and saw your comment...

Anyways this was mainly a test to see how well this would work and so far it looks like it is working great. Items will be a little bit more difficult but should be possible.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: versioned spell errors

Post by John Adams » Wed Apr 24, 2013 4:51 pm

That's because I am like a stealth ninja poster who sneaks up when you least expect it!

I hope I get some time to test some of this stuff you've done. Looks pretty cool. I still haven't even successfully crafted anything lol :( nor made a pet :( :(


btw, has anyone tested pets yet? HA no.

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests