Emagi 260a48be1e Fix #38 address issues with food/drink cross zone
Custom spells now survive cross zone with their modified spell stats saved to the database for reloading later.  The design is such that a spell can be custom defined for its spell stats, but a character/player cannot have more than one of that spell (eg. food can share a spell id since only one food can be applied to you, but you can't have many spells apply using the same custom spell id).

CREATE TABLE character_custom_spell_dataindex (
    charid INT UNSIGNED NOT NULL,
    spell_id INT UNSIGNED NOT NULL,
    idx INT UNSIGNED NOT NULL,
    type ENUM('int', 'float', 'bool', 'string') NOT NULL,
    value1 TEXT,
    value2 TEXT,
    PRIMARY KEY (charid, spell_id, idx)
);

CREATE TABLE character_custom_spell_display (
    charid INT UNSIGNED NOT NULL,
    spell_id INT UNSIGNED NOT NULL,
    idx INT UNSIGNED NOT NULL,
    field VARCHAR(64) NOT NULL,
    value TEXT,
    PRIMARY KEY (charid, spell_id, idx, field)
);

CREATE TABLE character_custom_spell_data (
    charid INT UNSIGNED NOT NULL,
    spell_id INT UNSIGNED NOT NULL,
    field VARCHAR(64) NOT NULL,
    type ENUM('int', 'float', 'bool', 'string') NOT NULL,
    value TEXT NOT NULL,
    PRIMARY KEY (charid, spell_id, field)
);
2025-06-26 18:27:35 -04:00
2025-05-28 21:48:33 -04:00
2025-05-04 14:34:15 -04:00
2024-07-05 10:32:47 -04:00
2025-06-08 15:00:17 -04:00

EQ2EMu Project

This is a work in progress for the beta release of the EQ2EMu Project.

Visit https://www.eq2emu.com for more project details, wiki and server installation instructions.

Building/Compiling

Linux Compile and Installation Instructions: On our Wiki

Authors

Project team site at EQ2EMu and ZekLabs

License

This project is licensed under the GNU General Public License - see the LICENSE file for details

Description
C++ implementation
Readme GPL-3.0 6.4 MiB
Languages
C++ 98.7%
C 1.1%
Shell 0.1%