darkstar
darkstar copied to clipboard
Elemental ID Ordering Inconsistent
I have:
- [x] searched existing issues (http://github.com/darkstarproject/darkstar/issues/) to see if the issue I am posting has already been addressed or opened by another contributor
- [x] checked the commit log to see if my issue has been resolved since my server was last updated
Client Version (type /ver
in game) : n/a
Source Branch (master/stable) : master
Additional Information (Steps to reproduce/Expected behavior) :
I am presenting the can of worms. A lot of us already know this, but I couldn't find it reported as an Issue.
Days of the week go in an order inconsistent with retail's elemental wheel. The fault is on SE here, and our ordering of the days is correct.
However, in many locations our ordering of elements follows the days of the week instead of retail's wheel.
It causes people to try to use the subEffect table to represent an elemental spirit instead of the magical element, using a family bridge to link family to the subEffect. This is because despite how the spirit pacts spells follow the elemental wheel (as do our elements for the spirits) our elemental table in Lua doesn't.
But we can't simply replace the values in the Lua table, because our element column for spells uses the day of the week values. This also causes our element columns to not increase in a linear order with our spell lists.
This inconsistency makes our elemental modifiers not go in the same order as our elemental listing. (The modifiers go in the correct order, the inconsistency is with our element tables).
It causes our Damage Types to not go in the same order as the Subeffects just 20 lines below the type definition, or the order of the elements in queries for resistances.
For fun, before seeing the order our Enspells go in, try to guess what it is. Then give COR shots and PUP Maneuvers a guess. How about Avatar perpetuation reduction?
It causes our internal crystal elements to be misaligned with the item IDs for those crystals:
INSERT INTO `item_basic` VALUES (4096,0,'fire_crystal','fire_crystal',12,516,35,0,13);
INSERT INTO `item_basic` VALUES (4097,0,'ice_crystal','ice_crystal',12,516,35,0,30);
INSERT INTO `item_basic` VALUES (4098,0,'wind_crystal','wind_crystal',12,516,35,0,14);
INSERT INTO `item_basic` VALUES (4099,0,'earth_crystal','earth_crystal',12,516,35,0,13);
INSERT INTO `item_basic` VALUES (4100,0,'lightning_crystal','lightng._crystal',12,516,35,0,30);
INSERT INTO `item_basic` VALUES (4101,0,'water_crystal','water_crystal',12,516,35,0,15);
INSERT INTO `item_basic` VALUES (4102,0,'light_crystal','light_crystal',12,516,35,0,80);
INSERT INTO `item_basic` VALUES (4103,0,'dark_crystal','dark_crystal',12,516,35,0,77);
Which results in additional effort in mapping the item ID to the correct element.
It causes you to, upon reading the comment "We are able to get the correct elemental mod here by adding the element to it since they are in the same order" to go verify what that order mods for "reduce fail rate when using ELEMENT crystal" go in. It works out in the end, but you had to go confirm to make sure. What about Moghancements?
I'll spare a treatise about everything relating to, or depending on, weather, and/or days of the week.
I doubt it'd be too controversial to say that the only thing that should follow SE's days of the week order is our definition of days of the week. Everything else should be using the elemental wheel which SE uses for everything besides week days.
Now, if there were a "Hard Fix" tag, this would earn it due to how pervasive these inconsistencies are throughout the project. I certainly have no plans to open the worm can and start digging through it. But if someone feels particularly ambitious, here's something you can look into.
Yep this has been brought up before. Nobody has fixed it because nobody wants to be responcible for defending it against people “fixing” the fix when they inevitably get confused from there being multiple different elemental orders.