2006

EverQuest Emulator Server code changes for year 2006

12/24/2006

  • KLS (WildcardX) Fix for generic tradeskill container combines

  • KLS (WildcardX) Fix for quest::depop and multipul mobs in the same zone that share a NPCType ID

  • KLS (WildcardX) Zones can now be flagged to disallow offensive actions.

  • KLS (WildcardX) Fix for zone weather, should no longer rain in places with no set weather, such as dungeons.

  • KLS Interrupts should only be caused by melee, not spell damage now

  • KLS Roots should only break on spell damage now.

  • KLS DoT Focus effects should work correctly

  • KLS Spell Formula 122 (Splurt) should now function correctly.

  • KLS Berserkers should find themselves with the ability to double attack.

  • KLS Curse, poison and disease counters should no longer be factored into stacking, should keep certain dots and certain slows from overwriting and blocking each other.

  • KLS Complete Heal buffs will no longer stack with or overwrite other complete heal buffs.

    Required SQL:

    ALTER TABLE zone ADD cancombat tinyint(4) NOT NULL default '1';

    UPDATE zone SET cancombat = 0 WHERE short_name = 'nexus';

    UPDATE zone SET cancombat = 0 WHERE short_name = 'poknowledge';

    UPDATE zone SET cancombat = 0 WHERE short_name = 'potranquility';

12/19/2006

  • KLS Fixed up Illusions a bit

  • KLS Fixed a bug where the base2[0] field of a spell was not getting loaded correctly

  • KLS Implemented Sacrifice Spells

  • KLS Implemented Call of the Hero Spells

  • KLS Implemented Silence spells

  • KLS Implemented Invis Vs Animal Spells

  • KLS Implemented Illusion Copy Spells

  • KLS Implemented Dispel Detrimental Spells

  • KLS Dispel Magic spells will skip spells with poison or disease counters.

  • KLS Spells that imbue items(summon items with reagents, sacrifice) will not be affected by reagen conservation focus.

  • KLS If a player is at max level the experience he has will cap at the max experience to gain the next level instead of being able to gain experience past his visible experience bar.

  • KLS The max level you can group with and gain experience is now YourLevel*1.5 instead of YourLevel+8.

  • KLS You'll only get an experience loss message if you actually lose exp now, no more You lost experience messages when you take a 0% rez.

12/15/2006

  • FatherNitwit Fix for possible crash when NPCs are immune to damage.

  • KLS Small fix for newly created player corpses, hopefully they will no longer act like they are npc corpses.

  • KLS Changed how recourse works a bit, it is now done after the resist check.

  • KLS Group spells should be able to land on the caster's pet now.

  • KLS Fixed crazy Bash/Kick damage.

12/09/2006

  • KLS Stun immune should apply to spin effects such as those found in One Hundred Blows.

  • KLS Some cleanups in special attack and resist code.

  • KLS Added a define SKILL_MAX_LEVEL in features.h that lets you define how high level you can get skills from the database, defaults to 75.

  • KLS Damage shields wont proc on yourself any longer to avoid some wierdness. They only ever procced on yourself under special conditions so it shouldn't be noticable.

12/03/2006

  • FatherNitwit Fixed a few issues related to quest global expiration.

12/01/2006

  • KLS NPC ghosting fix with rule support.

  • FatherNitwit Fixing up spell set loading crash.

  • KLS More skill fixes

  • KLS Moved the old class_skills system over to the new skills system.

11/28/2006

  • FatherNitwit (bleh) Added #hatelist command.

  • FatherNitwit (bleh) Work on windows build issues.

  • FatherNitwit Optimized merchant list query during zone boot.

  • FatherNitwit Fix a few race related issues in eqbuilder.

11/26/2006

  • FatherNitwit Fixed berserker skill cap issue that KLS found.

11/25/2006

  • KLS The way resists are calculate have been changed and are now somewhat tweakable with rules, and partial hits should work correctly.

  • KLS Ripostes have been seperated from the attack code and will now apply to all attacks.

  • KLS Skills and Spells that directly modify melee damage should now work and be applied to all attacks.

  • KLS Some fixes and optimizations in the attack code.

  • KLS Familiars will no longer aggro like regular pets.

  • KLS Damage Shield Bonuses on items should no longer be backwards.

  • KLS Heals will report the amount of damage healed to their targets and casters.

  • KLS Pets will now spawn at %t`s pet instead of %t's pet, the client filters out ' in certain things like combat and considering.

  • KLS Stun Immunity will now only apply to the stun portion of the spell instead of the whole spell.

  • KLS Instrument Mods should send correctly on the reapplication of bard pulses.

  • KLS Spells should no longer check instant heals/damage portions of the spell for stacking purposes, several spells that should have stacked before but didn't now should properly.

=11/24/2006

11/20/2006

  • KLS Skill system tweaks and bug fixes.

  • KLS Bard songs will now skill up while they are being sung instead of just when first cast.

=11/19/2006

11/07/2006

  • KLS Changed how critical hits work, as a result things that could not crit before like special attacks, now can.

  • KLS Cleave like effects should be fixed to do an increase of your already standing chance to critical instead of a flat increase.

  • KLS Reworked much of the special attack code.

  • KLS Applied haste to combat skill timers, they should give trouble much less often.

  • KLS Monk skill damage will be more random but the max damage they can do has not changed.

  • KLS Skills should be avoided less often, they were being avoided twice in the code instead of once.

  • KLS Implemented basic strikethrough.

11/06/2006

  • FatherNitwit (Cripp) periodic auto save.

  • FatherNitwit LostZaphod's possible win32 azone fix. (untested)

  • FatherNitwit (cbodmer) Regen multiplier rules.

11/04/2006

  • Rogean Haste Fixes: Fixed Haste/Slow as well as Bard Songs (Including Overcap).

11/03/2006

  • KLS Added Magoth's stun opcodes for both Titanium and 0.6.2 clients

  • KLS Changed Object Clear opcode for Titanium

10/30/2006

  • FatherNitwit (KLS) Fixes for max endurance calc on zone in

  • FatherNitwit (KLS) Fix for rulesystem category issue.

  • FatherNitwit Added rule support to world (no runtime manipulation yet)

  • FatherNitwit Load the 'default' ruleset from the DB if no variable is set.

  • KLS Fix for client corpses not appearing to clients who witnessed their death until they zone.

  • KLS Updated detrimental and healing spell aggro.

  • KLS Hate mods from spells should now work. (Enchanter Visage/Shadowknight Voice line of spells)

  • KLS Found and implemented the Hate Added in detrimental spells. (Shadowknight Terror line of spells)

  • KLS Change to let special messages use their correct types.

  • KLS Group fix for leader being unable to invite a 3rd party member until he/she zones.

  • KLS GroupInvite2 opcodes found for both Titanium and 0.6.2, make sure to get the updated .conf files.

  • KLS Glow messages should only go off for instant spells.

  • KLS How haste calculations have been calculated has been reworked somewhat, haste shouldn't break any more, nor should all hastes stack.

10/28/2006

  • FatherNitwit Fix for NPC weapon appearance due to loot items.

  • aza77 Fixed SendAppearancePacket

  • aza77 Fixed a PvP bug that caused the zone to crash on death

10/26/2006

  • FatherNitwit WildcardX's name cleanup.

  • FatherNitwit Tweak for 64 bit pointer support in the item code of the struct strategy.

  • FatherNitwit More const cleanup in npc.h

10/22/2006

  • FatherNitwit added EVENT_COMBAT triggered when an NPC engages any form of

  • FatherNitwit combat and when combat is over. $combat_state signals which.

  • FatherNitwit Hopefully fixed d_meele_texture

  • FatherNitwit Cleaned up a lot of const related issues (attrs, AAs, and more)

  • FatherNitwit Moved a lot of NPC specific stuff from Mob into NPC

  • FatherNitwit Reworked special attacks a bit (monk, kick, backstab):

  • FatherNitwit they now use the standard combat hit chance forumals based on offense/defense instead of always hitting

  • FatherNitwit they are now subject to damage avoidance (parry, riposte, etc.) like normal attacks

10/21/2006

  • FatherNitwit Hopefully fixed spawn timer variance.

10/18/2006

  • FatherNitwit Maybe fixed issue with losing items when zoning in mysql 5.

  • FatherNitwit Fixed issue with color saving properly.

10/15/2006

  • FatherNitwit (KLS) Implemented Endurance

  • FatherNitwit (KLS) Implemented support for seperate discipline timers

  • FatherNitwit (KLS) Fix for haste & slow issue on NPCs

  • FatherNitwit (KLS) Fixed faction not changing issue (caused by min/max sticking fix)

  • FatherNitwit (KLS) Changed con level code to be more accurate

  • FatherNitwit Made /pet attack range a rule (Pets:AttackCommandRange) default to 150.

  • FatherNitwit (KLS) Changed how consider and consider corpse is handled a bit, consider corpse should be more informative

  • FatherNitwit (KLS) Fixed bug with charged/stacked items on corpses.

  • FatherNitwit (KLS) Support for leaving naked corpses

  • FatherNitwit Added rules: Character:DeathExpLossLevel, Character:CorpseDecayTimeMS

  • FatherNitwit Character:LeaveNakedCorpses

  • FatherNitwit Replaced db variable 'leavecorpses' with rule Character:LeaveCorpses

  • FatherNitwit (KLS) hopefully fixing monk kill crash.

  • FatherNitwit (KLS) made it so you can snare things while they're rooted

  • FatherNitwit (KLS) made it so beneficial songs will stack with beneficial spells

  • FatherNitwit (KLS) made it so a beneficial effect and a detrimental of an effect don't conflict

  • FatherNitwit (KLS) let dots of the same resist type stack so long as they aren't the same spell

  • FatherNitwit cleanup windows logging a bit

  • FatherNitwit (eq4me) GCC 4+ build fixes

10/05/2006

  • FatherNitwit (KLS) Fix for explicit spell stacking rule problem.

10/02/2006

  • FatherNitwit (InsaneWallaby) Tradeskill skill gain fix.

  • FatherNitwit (WildcardX) Improved spawnstatus command.

  • FatherNitwit (number6) Work around for lay hands/harm touch recovery time hang.

  • FatherNitwit Possible fix for faction sticking at min/max.

09/21/2006

  • FatherNitwit Revert part of bard mod fix, and fix it right.

09/20/2006

  • FatherNitwit Prevent stats from going negative.

  • FatherNitwit Try to prevent skills from wrapping above 252 (still no support for higher)

  • FatherNitwit Minor shop close tweak.

  • FatherNitwit (Zuesrooster) Potential bard modifier fixes.

=09/07/2006

08/20/2006

  • FatherNitwit Zero out buff counters when we occupy a new slot.

08/16/2006

  • FatherNitwit Glorandwarf's updated AA.h

08/14/2006

  • FatherNitwit More work on titanium AAs by Glorandwarf.

  • FatherNitwit (Zuesrooster) Fix for pet self buffing.

08/10/2006

  • FatherNitwit Changed logic in quest parser to potentially avoid windows crash (Zuesrooster)

  • FatherNitwit (Zuesrooster) fixed aggro quest related crash.

  • FatherNitwit Untested update of OP_AugmentItem (John Adams)

  • FatherNitwit A little bit further on AAs (Glorandwarf)

07/27/2006

  • FatherNitwit Added door info dump on click (DOORS__INFO)

07/23/2006

  • FatherNitwit Enforce some zone requirements on zone in too.

  • FatherNitwit Fixed minor tradeskill crash.

07/23/2006

  • FatherNitwit (EverHood) Archery/self PvP mitigation changes

  • FatherNitwit (EverHood) Regen tweaks

  • FatherNitwit (EverHood) Fix DoT damage and messages

  • FatherNitwit Killed erronious double-effects on regen/HoT buffs

  • FatherNitwit Fixed replace-container client side appearance issue.

07/17/2006

  • FatherNitwit Added new rules subsystem to allow game rules to be changed

    at runtime. more about this will come as time goes on.
  • FatherNitwit Added #rules command to manage rules data from in game.

  • FatherNitwit Renamed old #rules to #serverrules

  • FatherNitwit Moved max level into the rules system (Character:MaxLevel)

  • FatherNitwit Added GM-trained tradeskill caps to rule system (Skills:MaxTrainTradeskills)

  • FatherNitwit Fixed intimidation skill cap

  • FatherNitwit Fixed adventure opcodes for adventure merchants on Ti.

  • FatherNitwit Fix interrupt cast opcode for Ti.

  • FatherNitwit Tweak to missing-spell-creagent case, might fix it?

    Requred SQL:

    CREATE TABLE rule_sets (

    ruleset_id TINYINT UNSIGNED NOT NULL auto_increment,

    name VARCHAR(255) NOT NULL,

    PRIMARY KEY(ruleset_id)

    );

    INSERT INTO rule_sets VALUES(0, "default");

    UPDATE rule_sets SET ruleset_id=0;

    CREATE TABLE rule_values (

    ruleset_id TINYINT UNSIGNED NOT NULL,

    rule_name VARCHAR(64) NOT NULL,

    rule_value VARCHAR(10) NOT NULL,

    INDEX(ruleset_id),

    PRIMARY KEY(ruleset_id,rule_name)

    );

07/16/2006

  • FatherNitwit (EverHood) Implemented Eye of Zomm and Bind Sight

  • FatherNitwit Reworked Eye of Zomm code

07/16/2006

  • aza77 Fixed the lift issue + keyitems at doors

  • aza77 Fixed + modified traps and added a new type of trap

    ALTER TABLE traps ADD message VARCHAR( 200 ) NOT NULL AFTER effectvalue2 ;

07/13/2006

  • FatherNitwit Fixed zone crash when removing a guild member.

  • aza77 Added in game guild creation variables.GuildCreation + commands #guildcreate #guildapprove #guildlist

  • FatherNitwit Fixed feign aggro crash.

07/12/2006

  • aza77 Added triggered only doors.

07/10/2006

  • FatherNitwit Adding EverHood's lull fixes.

07/09/2006

  • FatherNitwit Wizardanim has dicovered the opcode to partiall fix AAs for Ti!!

  • FatherNitwit EverHood's Mob ghost running on (feign)death fix.

  • FatherNitwit Redid walkspeed code to be caclualted from runspeed (EverHood inspired)

  • FatherNitwit Fixed up run AA speed mods.

  • FatherNitwit Added EVENT_NPC_SLAY when NPCs kill another NPC. (fanman55 inspired)

  • FatherNitwit Fixed up a long running memory issue in quest::ChooseRandom

    ALTER TABLE npc_types DROP walkspeed;

07/05/2006

  • aza77 Added variables.Rules + commands #rules #acceptrules

    ALTER TABLE account ADD rulesflag TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0';

07/04/2006

  • FatherNitwit Maybe fixing feign memory.

  • FatherNitwit EverHood's temp pets and group recourse fixes.

  • FatherNitwit EverHood's NoLongerEngaged AI fix.

  • FatherNitwit bufgix in log.ini reading.

06/29/2006

  • aza77 Get the SQL right:

    ALTER TABLE npc_types CHANGE hp_regen_rate hp_regen_rate INT( 11 ) NOT

    NULL DEFAULT '0';

    ALTER TABLE npc_types CHANGE mana_regen_rate mana_regen_rate INT( 11 ) NOT

    NULL DEFAULT '0';

06/28/2006

  • FatherNitwit Added EverHood's feign memory fixes

  • FatherNitwit Reverted regen of 0 to mean "auto config", and negative to mean "no regen"

  • aza77 Changed hp_regen + mana_regen such that negative values indicate no regen

    ALTER TABLE npc_types CHANGE hp_regen_rate hp_regen_rate INT( 11 ) NOT

    NULL DEFAULT '0';

    ALTER TABLE npc_types CHANGE mana_regen_rate mana_regen_rate INT( 11 ) NOT

    NULL DEFAULT '0';

    UPDATE npc_types SET hp_regen_rate = '0' WHERE hp_regen_rate = '-1';

    UPDATE npc_types SET mana_regen_rate = '0' WHERE mana_regen_rate = '-1';

06/27/2006

  • aza77 Added quest::setnextinchpevent + $inchpevent

  • aza77 Added quest::sethp

06/25/2006

  • aza77 Fixed PVP appearance issues

  • FatherNitwit Fixed the #logsql command

06/20/2006

  • FatherNitwit tweaked some ability timers and fixed up ranger crit damage

06/18/2006

  • FatherNitwit necro DOT feign death fix (unicorn97211)

  • FatherNitwit Disable kill-pet-on-feigndeath by default (features.h FEIGN_KILLS_PET)

    MySQL 5 compatibility increases (WildcardX):

    alter table account DROP packencrypt;

    alter table character_ change extprofile extprofile blob NULL;

    alter table player_corpses change data data blob NULL;

    alter table player_corpses_backup change data data blob NULL;

06/15/2006

  • aza Added MySQL5 support (FOR CUSTOM COMPILE ONLY)

    ALTER TABLE spawn2 CHANGE condition _condition MEDIUMINT(8) UNSIGNED NOT

    NULL DEFAULT '0';

06/07/2006

  • FatherNitwit Fixed SetAATitle (#title), and experted it to perl.

  • FatherNitwit Fixed quest money reward printing. (WildcardX)

06/03/2006

  • FatherNitwit Fixed a client-side inventory appearance issue, may help with trade bugs.

05/31/2006

  • FatherNitwit (aza) Added quest::unscribespells

  • FatherNitwit fixed ranger critical hit chance.

  • FatherNitwit Implemented conditions on windows.

  • FatherNitwit maybe made NPCs stop buffing pets.

  • FatherNitwit Fixed npc spawn limits.

  • FatherNitwit Fixed feign death missing opcode.

  • FatherNitwit Hopefully fixed an issue causing server to slow down terribly after being up for a day+.

  • FatherNitwit Fixed crash on zone/world shutdown.

    ALTER TABLE spawnentry DROP spawn_limit;

    ALTER TABLE spawngroup ADD spawn_limit tinyint(4) NOT NULL default '0';

    ALTER TABLE altadv_vars ADD class_type int unsigned NOT NULL DEFAULT 0;

05/06/2006

  • FatherNitwit (aza) Enabled newer froglok classes.

  • FatherNitwit (aza) Enabled several berserker combat skills.

  • FatherNitwit Fixed possibly infinite recursion in map code.

  • FatherNitwit Holding EQStreams open until they send all their data.

  • FatherNitwit Trying to fix death disconnect (and failing)

  • FatherNitwit Maybe fixed tinkering searching.

04/24/2006

  • FatherNitwit Added new HTTP functionality for moving chars between accounts.

04/21/2006

  • FatherNitwit Fixed bane damage loading problem.

04/20/2006

  • FatherNitwit Hopefully fixed the unidentified stream crash and some memory leaks.

  • FatherNitwit Fixed weapon affinity huge proc bonuses

  • FatherNitwit Fixed spell-granted procs not getting removed.

  • FatherNitwit Implemented the 'procrate' field on items.

04/13/2006

  • FatherNitwit Fixed the issue of charmed mobs getting assists from their old friends.

  • FatherNitwit Changed version number to 0.7.0

04/13/2006

  • FatherNitwit fixed a crash related to client destructors and tradeskills

  • FatherNitwit Adding the incstats canges from aza on the forums.

04/01/2006

  • FatherNitwit FINALLY found and fixed the netcod crash I introduced a while back.

  • FatherNitwit Fixed bard group buff tics.

  • FatherNitwit Fixed the global guild chat going to everybody problem.

03/27/2006

  • Doodman Added queuing for future packets, fixing lag reported by Richardo

03/25/2006

  • FatherNitwit Fixed character deletion to remove guild member entries. (Aeris1)

03/24/2006

  • Doodman Added live struct strategy. Can get to char select

03/22/2006

  • Doodman Fixed Ti items

  • Doodman Added some field name mappings to load_13thfloor_items script.

    UPDATE items SET stackable=1 WHERE itemtype IN (14, 15, 17, 18, 19, 27, 37, 38, 55, 56);

03/22/2006

  • FatherNitwit Refactored the netcode to move the opcode manager back into the stream.

03/21/2006

  • Doodman Merge up from Source branch

  • Doodman Fixed CreateItem

03/20/2006

  • FatherNitwit Fixed invisibility vs. undead to only apply to undead mobs.

  • FatherNitwit Added slot column to starting items to support much more robust configurations.

  • FatherNitwit Updated char backups. (noted by typhoon)

    Required SQL:

    ALTER TABLE starting_items ADD slot MEDIUMINT NOT NULL DEFAULT -1;

    ALTER TABLE character_backup ADD class TINYINT NOT NULL DEFAULT 0;

    ALTER TABLE character_backup ADD level MEDIUMINT UNSIGNED NOT NULL DEFAULT 0;

    ALTER TABLE character_backup DROP guild;

    ALTER TABLE character_backup DROP guildrank;

    ALTER TABLE character_backup DROP publicnote;

03/19/2006

  • FatherNitwit A bunch of minor changes, should help some bugs in 0.6.6.

  • FatherNitwit Wrote basic guild management pages, much more needed.

03/18/2006

  • FatherNitwit Queue fix in netcode, should help crashing problem.

  • Doodman Redid world port allocation not start looking for a port at the begining each time

  • Doodman Made zone send it's port to world on connect, in case it is reconnecting to a restarted world

  • FatherNitwit Changed version number to 0.6.6

  • FatherNitwit Un-broke some outbound TCP connection stuff I broke to allow reconnecting.

  • FatherNitwit Completely rewrote guilds in both world and zone.

  • FatherNitwit Removed guilds from shared memory.

  • FatherNitwit Removed the seperation between EQ ID and DB ID.

  • FatherNitwit Fixed countless rediculous things about guilds.

  • FatherNitwit Any change in guild state should update in real time now.

  • FatherNitwit Guild leadership may need re-establishing since it changed from account to char based.

  • FatherNitwit Guild structure in database has changed significantly.

    Note: custom rank stuff is too much work for me to preserve in the DB, since I doubt

    anybody uses it, so if you have them, you can figure it out yourself or remake them.

    Required SQL:

    ALTER TABLE character_ ADD class TINYINT NOT NULL DEFAULT 0;

    ALTER TABLE character_ ADD level MEDIUMINT UNSIGNED NOT NULL DEFAULT 0;

CREATE TABLE guild_ranks ( guild_id MEDIUMINT UNSIGNED NOT NULL, rank TINYINT UNSIGNED NOT NULL, title VARCHAR(128) NOT NULL, can_hear TINYINT UNSIGNED NOT NULL, can_speak TINYINT UNSIGNED NOT NULL, can_invite TINYINT UNSIGNED NOT NULL, can_remove TINYINT UNSIGNED NOT NULL, can_promote TINYINT UNSIGNED NOT NULL, can_demote TINYINT UNSIGNED NOT NULL, can_motd TINYINT UNSIGNED NOT NULL, can_warpeace TINYINT UNSIGNED NOT NULL, PRIMARY KEY(guild_id,rank) );

guild1 < guild2 by definition.

CREATE TABLE guild_relations ( guild1 MEDIUMINT UNSIGNED NOT NULL, guild2 MEDIUMINT UNSIGNED NOT NULL, relation TINYINT NOT NULL, PRIMARY KEY(guild1, guild2) );

CREATE TABLE guild_members ( char_id INT NOT NULL, guild_id MEDIUMINT UNSIGNED NOT NULL, rank TINYINT UNSIGNED NOT NULL, tribute_enable TINYINT UNSIGNED NOT NULL DEFAULT 0, total_tribute INT UNSIGNED NOT NULL DEFAULT 0, last_tribute INT UNSIGNED NOT NULL DEFAULT 0, banker TINYINT UNSIGNED NOT NULL DEFAULT 0, public_note TEXT NOT NULL DEFAULT '', PRIMARY KEY(char_id) );

ALTER TABLE guilds DROP eqid; ALTER TABLE guilds DROP rank0title; ALTER TABLE guilds DROP rank1title; ALTER TABLE guilds DROP rank1; ALTER TABLE guilds DROP rank2title; ALTER TABLE guilds DROP rank2; ALTER TABLE guilds DROP rank3title; ALTER TABLE guilds DROP rank3; ALTER TABLE guilds DROP rank4title; ALTER TABLE guilds DROP rank4; ALTER TABLE guilds DROP rank5title; ALTER TABLE guilds DROP rank5; ALTER TABLE guilds ADD tribute INT UNSIGNED NOT NULL; ALTER TABLE guilds ADD motd_setter varchar(64) NOT NULL DEFAULT '';

INSERT INTO guildmembers (char_id,guild_id,rank,public_note) SELECT id,guild,guildrank,publicnote FROM character WHERE guild > 0 AND guild < 1500;

ALTER TABLE character DROP guild; ALTER TABLE character DROP guildrank; ALTER TABLE character_ DROP publicnote;

03/11/2006

  • FatherNitwit Redid netcode outbound queue to properly handle sequence wrapping.

03/10/2006

  • Doodman Worked up serialization for Ti and Live (/snicker)

  • Doodman Converted the item table to match live (13th-floor) changes below (apply both)

  • Doodman Worked items to be compatible for both (kept loreflag and loregroup)

    6.2 -> Ti:

    ALTER TABLE items CHANGE loreflag loregroup int not null;

    ALTER TABLE items CHANGE UNK117 UNK123 int not null;

    ALTER TABLE items CHANGE UNK150 UNK157 int not null;

    ALTER TABLE items CHANGE UNK145 UNK152 int not null;

    ALTER TABLE items CHANGE UNK140 UNK147 int not null;

    ALTER TABLE items CHANGE UNK135 UNK142 int not null;

    ALTER TABLE items CHANGE UNK130 UNK137 int not null;

    ALTER TABLE items CHANGE UNK124 UNK130 int not null;

    ALTER TABLE items CHANGE UNK121 UNK127 int not null;

    ALTER TABLE items CHANGE UNK118 UNK124 int not null;

ALTER TABLE items ADD augslot1unk int not null AFTER augslot1type; ALTER TABLE items ADD augslot2unk int not null AFTER augslot2type; ALTER TABLE items ADD augslot3unk int not null AFTER augslot3type; ALTER TABLE items ADD augslot4unk int not null AFTER augslot4type; ALTER TABLE items ADD augslot5unk int not null AFTER augslot5type; ALTER TABLE items ADD enduranceregen int not null AFTER manaregen; ALTER TABLE items ADD notransfer int not null AFTER stacksize; ALTER TABLE items ADD UNK133 int not null AFTER notransfer;

Ti -> Live: ALTER TABLE items ADD UNK134 varchar(255) not null AFTER UNK133;

ALTER TABLE items CHANGE UNK130 potionbeltslots int not null; ALTER TABLE items CHANGE UNK133 stackable int not null;

03/08/2006

  • FatherNitwit (BatCountry) Fixed throwing item crash.

  • FatherNitwit (Hvitrev) Implemented Primsatic and Chromatic resists.

03/07/2006

  • FatherNitwit Fixed up adding a launcher to not falsely report an error.

  • Doodman Fixed sending old style info from world->ls (fixing minilogin)

  • Doodman Fixed TCPConnection cleanup on socket closed by the remote

03/06/2006

  • Doodman Fixed deadlock when zones are shutting down.

  • Doodman Fixed MakeUpperString and MakeLowerString to function correctly on a NULL string

  • Doodman Made HTTPSocket inherit from TCPConnection instead of using

  • Doodman Fixed HTTP POST processing (needs a good workout still)

03/05/2006

  • FatherNitwit Developed stream proxy, stream identifier, and struct strategy to support dynamic structures.

  • FatherNitwit Developed initial patch support for 0.6.2 and Titanium.

03/04/2006

  • FatherNitwit Fixed some broken logging in world.

  • FatherNitwit Fixed the potential crash when zone connects to world.

03/04/2006

  • FatherNitwit Significantly refactored the old TCPConnection/TCPServer code.

  • FatherNitwit Rewrote almost the entire web server to get rid of most of the socket lib.

  • FatherNitwit Removed everything but the HTTP framework from the socket lib.

  • FatherNitwit Rewrite better have fixed the windows crash.

02/28/2006

Changed version number to 0.6.5-DR1

  • Doodman Put in new XML configuration object and made zone/world use them

  • Doodman Added auto ip configuration to world/LS

  • Doodman Added auto ip/port configuration to zone

  • Doodman Reworked logging in world to use the new logsys

  • Doodman Made TCPConnection detect a closed socket like it should

  • FatherNitwit Significantly refactored world for better code organization.

  • FatherNitwit Significantly refactored the database object for better organization.

  • FatherNitwit Fixed several valgrind errors.

  • FatherNitwit Developed a custom webserver for world.

  • Doodman Developed direct database support from perl.

  • FatherNitwit Wrote many objects and pages for world.

  • Doodman Wrote many objects and pages for world.

  • Doodman Moved addon.ini (commands) into the database with world pages.

  • FatherNitwit Developed a launcher for zone.

  • FatherNitwit Developed world HTTP pages to manage launcher.

  • FatherNitwit Fixed several issues with stats loading from the database.

  • FatherNitwit Fixed high stat loading from the database.

  • FatherNitwit Added #grid max command to help with grid creation.

  • FatherNitwit Significant adjustments to combat, should bring things closer to live. Make sure your mobs have stats in the DB!

  • FatherNitwit Fixed procs for NPCs with proc-only spell sets.

CREATE TABLE launcher ( name VARCHAR(64) NOT NULL, dynamics TINYINT UNSIGNED NOT NULL, PRIMARY KEY(name) );

CREATE TABLE launcher_zones ( launcher VARCHAR(64) NOT NULL, zone VARCHAR(16) NOT NULL, port MEDIUMINT NOT NULL DEFAULT '0', PRIMARY KEY(launcher,zone) );

CREATE TABLE commands ( command varchar(20) NOT NULL default '', access tinyint(3) unsigned NOT NULL default '0', PRIMARY KEY (command) );

01/20/2006

  • FatherNitwit Reworked melee and ranged attack code significantly.

  • FatherNitwit Properly support recomended level on weapon DMG now.

  • FatherNitwit Re-implemented racial/body bane damage and elemental damage.

  • FatherNitwit Added "Immune to Non-Magical Melee" flag to NPCs (W)

  • FatherNitwit Added "Immune to non-Bane Melee" flag to NPCs (O)

  • FatherNitwit Added canbind flag to zone table to completely prevent binding in certain zones.

    Required SQL:

    ALTER TABLE zone ADD canbind TINYINT NOT NULL DEFAULT '1';

01/14/2006

  • FatherNitwit Fixed ranged misses not generating hate.

  • FatherNitwit Find is as working as good as it ever was (straight line)

01/13/2006

  • FatherNitwit Made some changes to buff stacking rules reguarding DoTs and beneficial overwrite.

01/12/2006

  • FatherNitwit Fixed the "Buffs do not apply effects in client after zoning" issue.

01/09/2006

  • FatherNitwit Made NPCs actually load: resists, attack_speed, findable

  • FatherNitwit npc_types cleanup day (they dont work or are not used):

    ALTER TABLE npc_types ADD attack_speed float NOT NULL default '0';

    ALTER TABLE npc_types DROP ipc;

    ALTER TABLE npc_types DROP banish;

    ALTER TABLE npc_types DROP social;

01/08/2006

  • FatherNitwit Fixed more windows compile errors on .net 2003+...

01/07/2006

  • FatherNitwit Fixed VS.net projects and compiling. (.net 2002)

01/04/2006

  • FatherNitwit Fixed the quad special attack to not require triple in order to work.

01/03/2006

  • FatherNitwit Added new debug logging facility. Will be implemented further in the time to come

  • FatherNitwit Added command #mlog to manipulate the new logging facility.

  • FatherNitwit Load log settings from log.ini if present.

  • FatherNitwit Made GM's fade detrimental buffs when they die.

  • FatherNitwit Reworked much of the spell casting subsystem.

  • FatherNitwit Reworked bards, they should work OK now!

  • FatherNitwit Debug Logging written for: spell casting, spawns, spawn conditions

  • FatherNitwit Fixed block training for monks and beastlords

  • FatherNitwit Fixed damage shields

  • FatherNitwit Fixed a bunch of spell stacking issues

  • FatherNitwit Properly enforced range checking on all spells.

  • FatherNitwit Hopefully fixed long recast delay enforcement.

  • FatherNitwit Removed rule that disallowed beneficial spells cast by NPCs on PCs

  • FatherNitwit Hopefully fixed pottery firing.

  • FatherNitwit Fixed NPC buffing faction checks.

  • FatherNitwit Added LOS checks for detrimental AOE spells.

  • FatherNitwit Changed version number to 0.6.4DR1