Angelox: This is a snip of an older Changelog I found a while ago. I always thought (still do), we shouldn't forget who pioneered this emulator. (started Feb 9th, 2002). LEST YOU FORGET... ------------------------ - June 5th, 2003 - ------------------------ Bigpull: Fixed 6* regen rate while sitting. (bad merge?) Fixes for OP_MoveItem code. Added an IsEquipable() check use number_in_stack from struct Stackable items make stacks now Fixes for CreateObject Delete item and save ------------------------ - May 18th, 2003 - ------------------------ Image: Bug fixes for doors, work better now. ------------------------ - May 17th, 2003 - ------------------------ Image: Doors now have their own class, this fixes bugs and lowers mysql requests on linux. ------------------------ - May 13th, 2003 - ------------------------ Image: Fixed a vulnerability. kathgar: Fixed Pointblank AEs.. should no longer say out of range. Implemented Fear in a temporary way that covers everything except moving Charm should now have a random length(fear aswell) ------------------------ - May 10th, 2003 - ------------------------ LethalEncounter/Image: Login issue fixed (weather packet was outdated for login). ------------------------ - April 28th, 2003 - ------------------------ kathgar: #scribespellsort implemented Fixed partial spell resists, should now be possible ------------------------ - April 21th, 2003 - ------------------------ kathgar: Fixed finishing blow to not work on players, and chances/levels Added spell critical hits, didn't bother with the message though ------------------------ - April 19th, 2003 - ------------------------ LethalEncounter: Regen bug fix. LethalEncounter: Addon.ini fix. ------------------------ - April 13th, 2003 - ------------------------ LethalEncounter: Fixed the commands so that it would again read from the addon.ini file. LethalEncounter: Fixed a bug that was causing waypoint mobs to continue walking without the pause LethalEncounter: BOATS! To set them up run the sql file included called boats.sql. (NOTE this is for the default db, if you have a different version then you must convert the ids to your db, the names are stormbreaker and sirensbane) ------------------------ - April 11th, 2003 - ------------------------ Trumpcard: Added support for 'generic' starting items. 0 in any of the fields is treated as a wildcard. (class of 0 for race for example will make the item available for all races that match the other select criteria). Trumpcard: Added NPCid to output for #npcstats command. ------------------------ - April 4th, 2003 - ------------------------ Bigpull: changed MobAI allow heals on Clients at 50% health, Bigpull: added ipc to NPCType and npc_types, Bigpull: maybe fixed random crash on groupdisband, Bigpull: add Group::ReOrder() to assign new group leader, Bigpull: Tweaked BecomeNPC ae spells Bigpull: Tweaked merchant sell price ------------------------ - April 4th, 2003 - ------------------------ LethalEncounter: Added various fixes to item drops and added a new table called object that you use for ground spawn items. Note: Type 0 is for stuff that doesnt disappear when you click them. Use 1 for regular items. ------------------------ - March 27st, 2003 - ------------------------ Image: Fixed item drops ------------------------ - March 21st, 2003 - ------------------------ Kasai: Added LD packet SendAppearancePacket(18, 1/0) so *LD* appears by the player name when charmed/feared to Client::AI_Start/Stop ------------------------ - March 20th, 2003 - ------------------------ Bigpull: Combat fixes, npc shouldn't hit for less than their db min_dmg Bigpull: Npc's only dual wield when they are of appropriate level Bigpull: preliminary Reagent comsumption checks (TODO: remove reagents) Bigpull: New npc combat tables in Attack (TODO, add to db as cached info) Bigpull: CanThisClass*() functions no longer check the wrong skill Bigpull: Dual wield and Double attack should be behaving normaly now LethalEncounter: Fixed some stuff with logging, added a new column to eventlog.Run the following command to update your db: alter table eventlog add column event_nid int(11) not null default 0; ------------------------ - March 19th, 2003 - ------------------------ LethalEncounter: Added logging for loots and trades. Quagmire: Added support for players being charmed Quagmire: Added linkdead state for clients Quagmire: Speed tweak in #finditem Wes: Quests - Added event_waypoint for when an npc reaches a waypoint, also added $wp, returns the waypoint the npc is travelling to if any. Wes: MobAI - Re-wrote waypoint and grid loading for the better. Wes: Client - Added command #wpadd. Syntax: #wpadd [random|patrol|circular] [pause_time]. Adds waypoint to the database if didn't find a grid for the spawn it creates a new one for the npc and adds it to that grid. (Note: The npc won't start on the correct pathing until it has completed one full waypoint->waypoint cycle). Wes: Made another update to spawn2 and mobai removed my debug printfs =P ------------------------ - March 17th, 2003 - ------------------------ Wes: Quests - Added small simple syntax checks to Parser::LoadScript. Wes: Quests - Moved all non-parser class based functions to basic_functions.h Wes: Quests - Re-wrote variable code to be linked list instead of char[] array. Wes: Quests - Added me() command me("The ground begins to shake beneath you"). Wes: Quests - Fixed alot of the $identifiers and added $npc_status(npctypeid) or $npc_status(npc_name) returns "up/down". Wes: Quests - Added write("filename","Text") this writes text but adds a "\n" to the end (new line). Added $read(filename,line) returns the text on line of filename. Wes: Quests - Added new syntax to add custom functions. "function function_name { say("Received: $param1 $param2 $param3 $param4 $param5") } ". Call it: EVENT_SAY { function_name("pa,ra,me,ter,s") } Wes: Entity - Added GetMobByNpcTypeID(int16 npctypeid) to entity list. Wes: Spells - Added if (this->IsClient()) in front of Trump's skill check code. Trumpcard: Fix for low level damage calculation. Bigpull: PersistantZonestate fixed Bigpull: Found and added Pvp con flag (TODO: Make it only used on pvp servers (DONE)) Bigpull: Con corpse shows the timer remaining (TODO: show the rez timer for pc corpses) Bigpull: Show logging level's via Status LogFile->write() Bigpull: Ifdef'd AddonCmd stuff (it's not ready just tired of editing stuff to commit) Bigpull: added GetCorpseByID() Bigpull: GMtraining for the first time directly modifies pp.skills[], IncreaseSkill() does a += and it's trashing the skill ------------------------ - March 16th, 2003 - ------------------------ Wes: Quests - Fixed coma bug, added $day, $time, $faction_name, $guild_name. Re-wrote a few of the parsing functions using hopefully faster code calls, slight reduction in memory usage. Wes: Quests - Changed %variables to be either global or npc specific. Example: %variable.g = "something"; <--- Global ".g". %variable = "something"; <--- npc specific Wes: Quests - Added EVENT_SLAY for when an NPC slays a pc. Wes: Quests - Fixed a bug in the ParseIf() function, if the condition was "||" and it was at the string length of the if statement it'd always return true even if the statement was false after the "||". ------------------------ - March 16th, 2003 - ------------------------ Trumpcard: Added deityid and zoneid to starting_items. Trumpcard: Added in skill increases for arcane skills. ------------------------ - March 12th, 2003 - ------------------------ Bigpull: Added class_skill table (class_skill.sql) Bigpull: (Linux) if shared memory attach fails fal thru to malloc. Trumpcard: Updated zonepoints and zonepoints_raw with updated data. Bigpull: Fixed a bug in Deleteitem code, should work properly with stacks Bigpull: Found and merged in Gm trainer fixes (TODO: add a db table with who gets what when, This is hardcoded client side, so need to be in the db.sql) Quagmire: Added automatic backups of the character_ table into character_backup table ------------------------ - March 12th, 2003 - ------------------------ Trumpcard: Expanded tradeskills format. Need to alter tradeskillsrecipe table to support. Trumpcard: Tradeskills will return stacks of items and failed products. LethalEncounter: Added logging for merchants now also. You will need to use a db variable to enable it. ------------------------ - March 9th, 2003 - ------------------------ khuong: added Scruffy's Weather code remember to run the weather.sql to add new column to zone table. Quagmire: Fixed some major bugs in the network code. Including that LD where you cant type anything. Quagmire: Reduced the datarate on larger fights by doing some preliminary server side filtering. ------------------------ - March 8th, 2003 - ------------------------ Quagmire: All players now have their PVP flag set (temporarily) while in the arena zone. Quagmire: Added #nukeitem and #equipitem Quagmire: Fixed some bugs in the network code Quagmire: Added more negative faction values Quagmire: Redid factions completely, old data isnt convertable Hogie: Fixed /who all gm to not show non-green named characters Bigpull: linux shared memory is live use LD_LIBRARY_PATH= Bigpull: (old stuff) Merged patches from web : MerchantsKeepItems, Regen matching, Track stats of edibles, Fixed GM Trainer lockups (maybe) ------------------------ - March 7th, 2003 - ------------------------ Trumpcard: Merged Scruffy's timecode changes. LethalEncounter: Added a limit of 10 to the guilds on Guildwars. khuong: Removed #zonespawn rewrote db spawning commands to #npcspawn Quagmire: Enenabled and fixed-up the Maps Quagmire: Added #zonelock Quagmire: Added negative faction values for special AI cases ------------------------ - March 5th, 2003 - ------------------------ Quagmire: Added a new MobAI Quagmire: Removed NPCAI Quagmire: Added npc_spells and npc_spells_entries database tables ------------------------ - March 4th, 2003 - ------------------------ LethalEncounter: Made a lot of changes to the item equip code. You can now give npcs items and they will equip them. LethalEncounter: Added procs for NPCs. They will now use the proc from the weapon they wield. ------------------------ - March 2nd, 2003 - ------------------------ Trumpcard: Modified flow of attack a bit. Should not get crits/cripplings blows/finishing blows on misses. LethalEncounter: Made a few changes to the loot messages. It *should* work exactly like live now. LethalEncounter: Fixed the equip_item feature so that npcs will equip items from the db and gain stats from them. Still beta, will polish it up later. ------------------------ - February 27th, 2003 - ------------------------ Quagmire: Changed crc32 class to use inline assembly Quagmire: Fixed sending packets w/o an ack request. ------------------------ - February 25th, 2003 - ------------------------ khuong: redid #level command to remove level restrictions if target is a NPC LethalEncounter: Fixed Hide LethalEncounter: Finished loot messages, it will now display then in a tell. Check it out :P Quagmire: Rewrote login server with Mesh mode Quagmire: Found and fixed alot of small bugs in TCPConnection ------------------------ - February 21st, 2003 - ------------------------ khuong: Added flag command to world console. LethalEncounter: Added loot messages for the looter only :/ Quagmire: Items will now auto-equip when looting Trumpcard: Added brewing tradeskill. ------------------------ - February 19th, 2003 - ------------------------ Trumpcard: Tradeskills fix and Deleteitem patch. Quagmire: Added support asyncronous database queries Quagmire: Made the client login big database data reads asyncronous ------------------------ - February 18th, 2003 - ------------------------ Image: Fixed item buying, you will no longer lose money!!! (Selling is still a few copper off, but nothing major) Baron-Sprite: Mage pets have been nerfed until their specifics are done. ------------------------ - February 16th, 2003 - ------------------------ Image: Fixed some spell hacks. Image: Fixed item charges. LethalEncounter: Added a new table called eventlog that will log commands only right now, but can be expanded rather easily to log whatever you want. Read eventlog.txt for some basic info about it. Quagmire: Updated player corpses a bit, items within bags now show up as within the bag and get looted with the bag ------------------------ - February 11th, 2003 - ------------------------ Image: Made merchant buying/selling more functional. LethalEncounter: Fixed DW for monks. Trumpcard: Merged bigPulls fix for item stack selling. ------------------------ - February 10th, 2003 - ------------------------ LethalEncounter: Lowered the damage done to pets so they have a fighting chance. LethalEncounter: Raised the regen rate on pets. Image: Fixed various death bugs with spells. ------------------------ - February 9th, 2003 - ------------------------ LethalEncounter: Fixed a bug that was causing a lot of lag when it wasnt necessary. LethalEncounter: Added a few checks for skills to see if the player increased them. Hogie: Changed version to 4.2-DR3 Hogie: Readded Horses. They work properly now except they dont change colors or have different runspeeds. (That will come later). Hogie: Changed GetUniqueName back to 2 numbers. Horses will NOT work with 3 number's after mob names. You just need to clean up your databases! ------------------------ - February 8th, 2003 - ------------------------ Image: Fixed pet spell names. Image: Fixed an NPC movement bug. Hogie: Removed old ItemSummon GM Check on hard coded numbers (It is now checked from the GM Flag on the item only. Make sure you have them flagged -1 for that part! Quagmire: Made the Variables table cached in memory Quagmire: Fixed a bug in CalcSpellValue ------------------------ - February 7th, 2003 - ------------------------ Image: Fixed selling items to merchants. LethalEncounter: Added some code so that trades will now work with coins. It will not display until you zone though :/ ------------------------ - February 5rd, 2003 - ------------------------ Image: Fixed npc types, no longer overflows. Image: Guild wars additions Quagmire: Fixed alot of the lag on #repop, moved npc faction into npctype so it'd be cached (and in memshare), and made loottables and lootdrops caching in memory ------------------------ - February 3rd, 2003 - ------------------------ Image: Fixed the attack bug NPCs have been experiencing. Quagmire: Fixed alot of memleaks Quagmire: Added ability to send/recieve ooc/broadcast/tells/gmsay from consoles Quagmire: Added "compression=[on/off]" value to db.ini ------------------------ - February 2nd, 2003 - ------------------------ LethalEncounter: Added a couple of checks to see if the user had increased in skill level for a few skills. LethalEncounter: Added a check so that damage will be based on AC. Image: Fixed a bug with #copychar. Image: Fixed a bug with NPC's attacking each other. ------------------------ - February 1st, 2003 - ------------------------ Image: Fixed stat bonuses (Weren't properly saved) Trumpcard/Image: Fixed a memory leak in calculation of item / spell additions, caused crashes from the leak. Image: Totally revamped area effects and added faction checks on attacks. ------------------------ - January 30th, 2003 - ------------------------ Image: Fixed a bug with static reboots. Image: Fixed a GuildWars attack bug. Image: Fixed a faction bug that made some npcs consider ally due to wrong deity. Image/LethalEncounter: Fixed a serious bug with NPC attacking which would cause them to stop attacking all together. Image: Added item rewards for guilds (Mean't for GuildWars) ------------------------ - January 27th, 2003 - ------------------------ Trumpcard: Level/Class checks for Dodge, Riposte, and Parry. Also some code cleanup in attack. LethalEncounter: Fixed the book code for viewing books with the new client. Image: Fixed a death crash. Image: Bug fixes for groups and dueling. ------------------------ - January 26th, 2003 - ------------------------ Trumpcard: Changed backstab bonus calc to a formula for levels above 51 rather than a switch. Trumpcard: Added skew for lower level characters chancetohit calculation. Image: Bug fix for casting spells on self, would lockup. Image: Bug fix for NPCs attacking themselves. kathgar: Fixed bufferoverflow in Client::FindItem() discovered by kaidaydiwod(whatever his name is =P) ------------------------ - January 26th, 2003 - ------------------------ Image: Added code to limit who can loot a NPC corpse, groups still need work but a single person is setup properly. Image: Put a level check on critical hits for warriors. Image: Added checks to make sure the mob was of a decent level to Dual Wield or Double Attack. ------------------------ - January 22nd, 2003 - ------------------------ Trumpcard: Set hp_regen based on level (if set at 0 in npc_types) Trumpcard: Weapon proc target set based on goodeffect flag of spell. ------------------------ - January 17th, 2003 - ------------------------ Joolz: Guess what? Login works again! ------------------------ - January 15th, 2003 - ------------------------ Trumpcard: Lyenu's zonespawn code. ------------------------ - January 13th, 2003 - ------------------------ Lethal Encounter: Added a que for /tells so that users can send messages to others even when they are offline. neotokyo: put the pet assist code in the correct function neotokyo: added consider corpse (just a dummy now, need to get the real message in) neotokyo: removed Lethals double attack fix neotokyo: fixed a crash in attack.cpp (NPC::Attack) ------------------------ - January 12th, 2003 - ------------------------ Lethal Encounter: Added a sub to remove all spells from a player when they die to avoid the meta65 problem. Lethal Encounter: Fixed TRIGGER_ATTACK until Wes gets done with the new version. Lethal Encounter: Added a Check that should disable double attack for mobs that are less than lvl 13. Lethal Encounter: Added #Manaburn until we get the hotkeys working correctly. Lethal Encounter: Changed #movechar so that a normal user can use it. If the user isnt a GM, however they will only be able to move characters on their account. Lethal Encounter: Added the ability for guards to attack newbie spawns when they wander to within agro range. Baron-Sprite: Using Summon Warder would sometimes cause a character to go perma-LD. It will now display a message that it was taken out of the game and to use the spirit line of spells. Baron-Sprite: Added Soveraign's pet assist master code. Lethal Encounter: Added a check to while(RunLoops), so that it didnt try to get a connection on the same ip and port, like it was doing. Trumpcard: Few code optimizations, and various warning fixes. ------------------------ - January 11th, 2003 - ------------------------ Trumpcard: Level check option in quest structure. neotokyo: Focus items neotokyo: resist system neotokyo: a few bugfixes -) #mana works without error message again -) bard songs should be more stable -) a few out of bounds in array indices ------------------------ - January 10th, 2003 - ------------------------ Baron-Sprite: #zone now lets you put y x z coordinates after it. #zone zonename will still function as normal. Joolz: Login NOW WORKS. Zone entry still broken, but the packet handling code is now robust to handle packets within packets. Trumpcard: Ifdef'/defines for FreeBSD compiles, and freebsd makefile. Joolz: Added intial code to handle 0x7642 (Compressed Packet) It may not accept logins correctly, but it DOES handles the packet in the queue. ------------------------ - January 9th, 2003 - ------------------------ Lethal Encounter: Fixed the banking system dealing with money. It will now save your money when you log off. ------------------------ - January 8th, 2003 - ------------------------ neotokyo: changed the way mez works added charm npcs ------------------------ - January 7th, 2003 - ------------------------ Baron-Sprite: Making a pet with #makepet that uses the horse race number will now work. Baron-Sprite: Spawning a pet using #makepet with the race number for horses will no longer crash the zone. ------------------------ - January 6th, 2003 - ------------------------ Image: Made it so NPCs will only add you to hate if you are connected (client connecting big no no) Baron-Sprite: Added Mistwalker/Tunarebane proc/pet. neotokyo: recoded the attack system a bit: monsters now really double attack instead of just doubling the damage fixed the issue with dual wield fixed a bug with root breaking in melee fixed a bug with pet aggro not transmitted to their masters fixed a bug with xp given for every mob fixed a bug that could cause "unable to focus" message on procs fixed a bug in the Backstab code ------------------------ - January 1, 2003 - ------------------------ LethalEncounter: Made a small change to NPC::AssignWaypoints, there was a chance that it would crash the zone on an illegal call. ------------------------ - December 31st, 2002 - ------------------------ Trumpcard: Added Edgar's (LE) cleanup of client.cpp. This puts the status selection in a switch. Trumpcard: Added Edgar's (LE) code for NPCMessage. This can replace Message and MessageClose, and will strip trailing 0's from NPC names. Trumpcard: Bug code has been moved into its own class. This will make it easier to manage as it won't interfere with current database functionality, and it can be removed more readily. ------------------------ - December 29th, 2002 - ------------------------ Hogie: Fixed Merchant buying/selling of stacked items Trumpcard: Slam, archery, and throw support. (Bob) neotokyo: added support for spell procs (i.e. Call of Sky) Trumpcard: Additions and updates for tradeskills (Lethal Encounters patch)) neotokyo: added a seperate database for bugs. there are 2 RunQuery Functions: one that defaults to eq, and one that needs the db-connection to be specified Trumpcard: Added #bug. Bug reporting function that will upload to central bug tracking database. Format is #bug ------------------------ - December 28th, 2002 - ------------------------ Hogie: Added a check for the GMFlag in item->common to deny people access to gm flagged items. neotokyo: Added DamageShield and ReverseDamageShield (need to add EnvDamage Packets though!) neotokyo: Rewrote the NPC Special Attack System. there can be 4 flags now which need to be specified as a string, ie. if you want to have a NPC Summon and Enrage #npcspecialattk ES 0 - use EFRS to set all special attacks. (the same is valid for entries in the DB. the old system wont work anymore - any existing values need to be rewritten - sorry) the order in which flags are specified is not important - any order should work. Flurry, Rampage, Summoning and Enraging should work, but will need some tweaking probably TODO: add some values into the npc_types, so we can fine tune specific mobs ------------------------ - December 27th, 2002 - ------------------------ neotokyo: cleaned the windows build files a bit, added profiling build neotokyo: added better support for haste items and spells (needs some work still though) -- "#haste" no longer functioning ------------------------ - December 24th, 2002 - ------------------------ Image: Put some checks in, still crashes on #repop,needs to be looked into. Image: Fixed another bug, grid is a int16 and the 'memory' was assigning as an int8 Image: Fixed a waypoint bug where if you #gassigned a non-existant grid it would crash the zone. Trumpcard: Added makefileopt and makefiledebug for world and zone. Generic makefiles with high gcc performance optimization settings and debug flags. Trumpcard: Updates to Bob's forage code for table specific foraging Baron-Sprite: Added Enchanter pets. Trumpcard: Added Scruffy's new timezone code. Trumpcard: Several linux build fixes/compile warnings. Trumpcard: Doorfix for linux. (elevator code not working correctly yet.) ------------------------ - December 23rd, 2002 - ------------------------ Image: Put in a divide by 0 bug fix (lethalencounter) Baron-Sprite: Added in Mistwalker pet. Hogie: Fixed /who all so that it really doesn't show non GM chars as *GM*+ anymore Hogie: Fixed the world bug for some people where they couldn't get in. Hogie: Updated version to 0.4.1-DR3 ------------------------ - December 22nd, 2002 - ------------------------ Image: Put in some new code for doors (Thanks to Daeken for the new door struct) Add the following columns to your db: alter table doors add column doorisopen smallint(4) NOT NULL default '0'; alter table doors add column liftheight int(4) NOT NULL default '0'; Linux requires some code for doors to totally work properly, win32 shouldnt have a problem Todo: Someone figure out why emumemshare isnt grabbing the information from liftheight plz! Image: Fixed a bug in #setaapts (crashes the zone when you put -1) Hogie: fixed #permarace bug (changed your gender when it shouldnt have) Hogie: fixed #permagender bug (you couldn't target anybody else and do it) ------------------------ - December 20th, 2002 - ------------------------ Image: Fixed a guild war faction bug. Image: Added a sync timer for the current EQ time. Trumpcard: various minor fixes/warnings changes for linux neotokyo: rewrote the hatelist system neotokyo: added code, that only max 3 NPCs will aggro on a single mob (you can still have more if you attack them yourself, they just dont aggro by themself) neotokyo: added some faction code for NPCs without faction attached so they will now con a bit different as before Image: Fixed zoning (properly to the next zone at the database coords). Leave Z coords alone now! Image: Fixed #zsave Wiz: fixed z-issues neotokyo: fixed a few issues with the guildwar code neotokyo: added the client queuing functionality ------------------------ - December 19th, 2002 - ------------------------ Image: Mob_Update now has checks so it doesnt update an NPC unless its necessary (NPC moved). (Brings your ping down BIG time in areas with lots of NPCs) Image: Changed the network code a bit more. Image: Put in the GuildWars setup, need to add the new tables if you want to use it (I suggest not using it for now). xorlac: Cleaned up the *10 /10 Z cord funkiness neotokyo: tweaked the NPC behavior a bit (spell choice) neotokyo: fixed some minor bugs (CombatRange, Zonebootup) neotokyo: added spellshield support ------------------------ - December 18th, 2002 - ------------------------ neotokyo: GM training should work with either skills and languages (as a consequence i rewrote part of the skill system, which would need some retesting now. as far as i can tell it works) Wiz: NPC wandering is functional. Smoothed out the movement code a lot. Wiz: Rune code added Wiz: Added in custom quest triggers. ------------------------ - December 17th, 2002 - ------------------------ Baron-Sprite: Optimized Beastlord and Shaman pets, they will be created after being summoned much faster then before. Baron-Sprite: Added Beastlord pets. neotokyo: added some functions to mob/client/npc so PoP AA will work, once we figure out the details neotokyo: added movementspeed to the Stats_Bonus struct, and coded wrapper functions for Runspeed/Walkspeed --> NPCs can now be snared neotokyo: rewrote the way "Root" was handled to be like a buff, not needing any special cases like before neotokyo: fixed some npc behavior glitches, where npcs didnt move back to their spawnplace after being pulled Xorlac: Minor fix to hate lists - removed crashing bug Xorlac: Minor fix to bulkzonespawnpackets - it shouldn't throw an exception now for datarate > 10.0 Wiz: Changed hate lists to have damage/hate work correctly, and calculation of who gets the exp be based on damage of self or self's group. ------------------------ - December 16th, 2002 - ------------------------ Baron-Sprite: All pet commands now have the proper messages and appearances(sit/stand ect), and gui should update accordingly. neotokyo: fixed some issues with bard songs. they should now terminate via "recast" as in live eq. neotokyo: rather major update to the npc code. the npc behavior is now controlled via a finite state machine take a look into npcai.cpp for more details neotokyo: some small features: NPC will help near NPCs of same race if AILevel is >= 6 added a class for LogFile - should create less Lag than writing to stdout (use via global variable g_LogFile) Pets should behave more nicely now: /pet guard is implemented 2 new commands: #fov and #manastat (for testing purposes (actually i forgot to remove them, well i hope it doesnt hurt anyone)) fixed a self made bug in the consider system, where all red conning mobs were conning blue added the random timer for NPC buffing again: this time in the NPC behavior code, not the spawn code added probably a ton of bugs and other things i forgot now :-/ ------------------------ - December 15th, 2002 - ------------------------ Xorlac: Cleanup of group handling. Plenty of bugs left - just removed a few crashing ones. Hogie: Added a check to see if a user already has that Lore tagged item in their inventory. Image: Took care of the stamina issue. Image: Took care of some disconnection issues. ------------------------ - December 14th, 2002 - ------------------------ Trumpcard: Added in Bobs changes for database foraging. Hogie: GM's can now unflag and not be seen as gm on the /who list. Hogie: Non-GM Flagged characters on 100+ accounts are no longer flagged automatically when you zone in. Image: GM's can now set last names to be 63 chars in length. Image: Removed the random spawn timer, no longer needed. Image: World->Zone updated, fixed quite a few disconnection issues. Baron-Sprite: Added the 60+ names for classes in /who all. Hogie: Fixed the db.sql file from last release. Image: EQNetwork Updated, ZoneSpawns are sent differently depending on your datarate. Baron-Sprite: Added in shaman pets. ------------------------ - December 13th, 2002 - ------------------------ Xorlac: Removed several crashing bugs in client zone handling. ------------------------ - December 12th, 2002 - ------------------------ neotokyo: some improvements in the npc behavior code neotokyo: wizard familiars now zone with you ------------------------ - December 12th, 2002 - ------------------------ neotokyo: added random spawn timer for zone startup and #repop neotokyo: added familiars, and buff code for SE_ResistAll and SE_ManaPool Trumpcard: additional pet code modifications, and epic mage pet fix (Baron Sprite) Xorlac: Removal of some unessacry mutex intialization calls (common/mutex.h) Wiz: Fixed a check in spells.cpp that was causing the spell to jam the client. Wiz: Added in pulsing for bard songs. Ducking or starting a new song will stop whatever song you are singing. Wiz: Fixed group joining/disbanding. ------------------------ - December 11th, 2002 - ------------------------ Trumpcard: added in Baron Sprites fleshed out necro pet code neotokyo: fixed a bug in runquery (sometimes it reported a db-error when there wasnt one) neotokyo: doors should now load without SHAREMEM too neotokyo: added advanced npc behavior neotokyo: fixed some bugs in hatelist neotokyo: added frenzy support neotokyo: recoded/fixed some of the spell calculation functions neotokyo: added stamina/fatigue opcodes support neotokyo: added bodytype (banedamage) support neotokyo: fixed a bug with h2h combat and weapon procs ------------------------ - December 10th, 2002 - ------------------------ Trumpcard: Modified Loottable code to use original method. Putting Wiz's Poollooting method in an optional ifdef so we can implement it incrementally. Designwise it's the better way to do it, but not completely functional with existing database structure. (eqdb format) ------------------------ - December 9th, 2002 - ------------------------ Trumpcard: eqLive client loot fix. New packet structure for lootCorpse (thanks Image!) ------------------------ - December 8th, 2002 - ------------------------ Hogie: Updated a label or 2 in the item struct so noobs know what they do. Trumpcard: Fix for LoadDoors(). Wiz: Fix for world.exe command line options. ------------------------ - December 6th, 2002 - ------------------------ Wiz: I HATE Z_POS. Wiz: Fixed zoning... somewhat. It'll now read bind points/safe points instead of static values. ------------------------ - December 4th, 2002 - ------------------------ Wiz: Looting stackable items will now put them in an already existing stack of the same item, if you have one. Wiz: Fixed selling of stackable/worn items to merchants. Wiz: Added in a fix for merchant structure reading inventory slots wrongly. (Increased size of itemslot from int8 to int16) Wiz: Added in loot changes - will now only pick one item from a lootdrop group per multiplier set in loot entries, and use chance correctly. Wiz: Feign Death is now functional. Wiz: Sense Heading will now increase in skill when used. Wiz: Modified factions - mobs will always show up as indifferent if feigned, threateningly if not scowl and fighting the mob. Wiz: Removed "faction did not change" message. Fixed min/max factions. ------------------------ - November 30th, 2002 - ------------------------ Trumpcard: Fixes for linux compiles under gcc3.2. Everything should be able to be built out of the box with both gcc3.2/2.95 Trumpcard: Updates to the default makefile. Removed linking to Quest.o, and changed default mcpu486 to march=i586 Trumpcard: Removed calls to LoadDoors and GetDoors under linux. This uses sharedmem functionality. ------------------------ - November 20th, 2002 - ------------------------ Image: #zonestatus shows new information, how many static zones are up, how many bootable zones are up (running a zone), and how many zones are available to boot up. ------------------------ - November 19th, 2002 - ------------------------ Image: Made some fixes in spells Image: Fixed the merchants suggested item to buy. Image: Doors are now loaded into emumemshare this does two things (dbupdate.sql included): -Saves bandwidth (Every time a client zoned in, it would find all the doors for the zone through the db) -Allows lifts to function (However, the door struct needs some work for them to work properly, plus they must be setup in the db) ------------------------ - November 18th, 2002 - ------------------------ Image: New zone feature, limit the amt of clients in a zone (new db column, maxclients int(3) NOT NULL default '0') Image: Before you zone, it now checks if its possible to bootup the zone. Image: Put in neotokyo's aggro changes. Image: Fixed item drops ------------------------ - November 17th, 2002 - ------------------------ Image: Have a fake /decline in for temporary use. Image: Duel's are basically in, need a little polishing to totally work (/decline, already dueling someone else, etc.) ------------------------ - November 16th, 2002 - ------------------------ Image: Avatar and Neutralize Magic setup properly (in a swich instead of if statements) Image: Zone points now work properly. Image: Updated OP_DeleteSpawn and OP_ZoneChange (should improve zoning times). Image: Put in neotokyo's lifetap code. Image: Put in neotokyo's exp bug fix. Image: Put in neotokyo's right click fizzle fix. Image: Put in neotokyo's shrink/growth fix. ------------------------ - November 15th, 2002 - ------------------------ Image: /assist now works. Image: Put in Baron-Sprite's druid pet code. Image: Put in the loot fix by Trumpcard ------------------------ - November 12th, 2002 - ------------------------ Scruffy: Time of day is now saved to a file (eqtime.cfg) and read on server startup. ------------------------ - November 11th, 2002 - ------------------------ Image: Bug fixed in #flag Image: Updated opcodes for newspawn Image: Fixed spawn struct Quagmire: Added CheckServerName to LWorld.cpp, it does checking on allowed characters in world names. Currently set to allow most used ones. Fixes the ass who was purposely crashing clients with a bad server name. Quagmire: Updated encryption/compression to live (but Spawn_Struct needs fixing) Quagmire: Updated send zone spawn bulk and put spawn packets into a queue that auto-switches to bulk mode if more than 5 spawns per 100ms (aka, should hit when #repop is used) ------------------------ - November 10th, 2002 - ------------------------ Image: World maxplayers is now handled from login->world, you will get a message on the login screen if the world is full. (people with status above 80 bypass this) ------------------------ - November 9th, 2002 - ------------------------ Image: 2/0 Debug Error fixed. Image: Unique names can now go up to 999 (500 was the last setting). Image: Moved a part of client attack code to a switch instead a ton of if statements. ------------------------ - November 8th, 2002 - ------------------------ Image: Channels moved into a switch Image: Backstab, Flying Kick, etc. fixed Image: Fixed the loot bug (you would get stuck if a corpse had items you did not loot and you clicked 'done') ------------------------ - October 31th, 2002 - ------------------------ kathgar: New crypto changes, just some constants and combining NewSpawn and ZoneSpawn.. i don't know the opcode changes though, someone needs to do them and quagy, check my code <3 ------------------------ - October 29th, 2002 - ------------------------ Quagmire: Fixed EMuMemShare crash when there's no npc_types in the db ------------------------ - October 28th, 2002 - ------------------------ Scruffy: Updated #timeofday to set the time on the world server. Using #time without arguments will print the current time and help. Scruffy: Updated #date to include optional arguments. Scruffy: Updated EQTime to support time zones. Scruffy: Updated the #date command to set the date on the world server. Using #date without arguments will print the current time and help. Scruffy: Fixed several potential crash bugs when zone->Init failed. Scruffy: Updated zone->Init to be more descriptive when bailing. Scruffy: Zone server will now sync with the world time in zone->Init now. ------------------------ - October 27th, 2002 - ------------------------ Scruffy: Added in support for world based time of day. This will soon be updated to include support for setting custom time of days for each server. ------------------------ - October 26th, 2002 - ------------------------ Image: Fixed the bug where people would jump forever (same with NPCs) Image: Able to level to 65 now. Image: Code polishing, zoning should be better now. Scruffy: Allowed admin status 200+ to go to level 255. Scruffy: Added Test Server to the available build configurations. Scruffy: Fixed illusions (#race, /becomenpc, etc). Shawn319: Changed #race to allow 0-329 race numbers (and broke zone), scruffy fixed it :) ------------------------ - October 25th, 2002 - ------------------------ Image: Slow zoning fixed. Quagmire: Updated packet_functions to work with EQLive. Image: BulkZoneSpawns now works properly Image: SpawnStruct updated Image: Removed the conversions for playerprofile, they no longer work. Scruffy: Changed zoning to use the new internal error messages. ------------------------ - October 18th, 2002 - ------------------------ Image: Added the conversion for the new patch, converts 0.3.9-0.3.11 and 0.3.10-0.3.11 Image: NewSpawn increased 4 bytes (Didnt update the struct correctly, all zone spawns come up as players) Image: Now able to zone in. (ZoneEntry is now 356 bytes, instead of 352) Image: Able to login to world, create a character, and enterworld. Image: Added new opcodes for TEST SERVER, need to #define TEST_SERVER in eq_opcodes.h Quagmire: Added "enablestats" line to loginserver.ini under LoginConfig block Quagmire: Fixed EMuMemShare when there were no items in the database. Quagmire: Added PlayerProfile/NewSpawn/ZoneSpawn decrypting to PacketCollector (warning: uses mem reading for key!) Quagmire: Fixed upload server defaults in packetcollector. ------------------------ - October 15th, 2002 - ------------------------ Image: Fixed a bug with addon.ini Image: Charcreation should be fixed Scruffy: Another day, another MyEQPlayer update... This time, the four unknown bytes at the end were removed. This should hopefully be the last update. ------------------------ - October 13th, 2002 - ------------------------ Image: Fixed a /who all bug with status flagging (banning, suspending) Quagmire: Added a new project: EMuShareMem. Win32 DLL that lets all the zone servers on one machine share items memory ------------------------ - October 12th, 2002 - ------------------------ Image: Fixed buffs stacking and buff fading issues on zoning (No longer should die from double stacks) ------------------------ - October 11th, 2002 - ------------------------ Image: Possibly fixed the spam of opcodes in the world server kathgar: Fixed the spell struct to the right size, made it load it all Added provitional spell resist code..would need resists for the mobs/clients.. major db fix for the mobs..clients you could do, but I don't know if there is a special spellresist packet(like fizzle) or not so I just left it out.. also, need a partial resist thing.. like only X percent damage.. still some unknowns in spell struct.. not all 0s either.. kathgar: Added charm ending code, there are no level restrictions on charm, it does not have a random duration.. blah blah blah doesn't resist.. just comment out the stuff for SE_Charm if you want a 'legit' server kathgar: Fixed charselect colors.. i think Quagmire: Changed MiniLogin to work with multiple accounts using IP based authentication ------------------------ - October 10th, 2002 - ------------------------ Scruffy: Added defination for AT_Trader (Appearance code for trader mode). Scruffy: Fixed Test Server's PlayerProfile. ------------------------ - October 7th, 2002 - ------------------------ solar: spells can fizzle now. ------------------------ - October 5th, 2002 - ------------------------ Scruffy: Fixed Z axis on zoning/login. Scruffy: Cleaned up #zsave. ------------------------ - October 3rd, 2002 - ------------------------ Scruffy: Fixed PlayerProfile for Test Server. To use this change, you must define TEST_SERVER. If you do not define TEST_SERVER, EQEmu will compile with the live PlayerProfile. Scruffy: Added the new Alternate Advancement abilities to the struct. To use this change, you must define TEST_SERVER_AA. Image: Began the LS->World Access code ------------------------ - October 2nd, 2002 - ------------------------ Image: Added some code to fix /guildinvite, it will say Unknown invite response.. invite them once more and it will work. Image: Reworked a bit of the world->zone zone->world net connection. Image: When holdzones is on, if you have static zones, they will now reboot as that zone. Image: Fixed a bug where if the zone that was being rebooted was on another computer, it would not connect to the world. Note: 0.3.9 world/zone servers cannot communicate with older versions of the emulator. ------------------------ - October 1th, 2002 - ------------------------ solar: reworked the pvp check stuff, spells and pets too. it *should* be right now, lemme know if i missed something. solar: commented out scruffy's uninterruptible exception for GMs, since it should work correctly now. Image: Updated the AltAdvStats_Struct Image: Found AAPercent kathgar: fixed #name to work exactly like /name did made #permarace and #permaclass targetable ------------------------ - September 30th, 2002 - ------------------------ Image: Added some new evade code which does the following: -If someone is avoiding a npc by rooting, it increases their chance of casting at their target -If someone is in range of attack, they will switch targets and attack the close target Scruffy: Bumped Scribe Spell's maximum level to 65. Scruffy: Made GM casted spells uninterruptable. solar: possibly fixed faction crashes ------------------------ - September 28th, 2002 - ------------------------ Image: Fixed various bugs, including an attack bug that would give you a 0 delay. solar: went through and checked out warnings, fixed a bunch, but not done yet. solar: #copychar fixed solar: GetMonkHandToHandDamage() and GetMonkHandToHAndDelay() should work for non-client entities now too, returned with no value for non-clients before Image: Added some code to slow down spell casting (chain casting spells, causing lag) Image: Added some code to stop haste from exceeding the eqlive limit (1.2 seconds) Image: Clients should no longer attack when they are corpses solar: fixed merchant code crash, and now they should tell you that you might find a random item of theirs handy Scruffy: Cleaned up Z axis code. It should make sense now. Scruffy: Added /find. It only works intrazone now. Scruffy: Message code was terminated with extreme prejudice. Asiel: Fixed packet collector's compile issues on WIN32 systems Image: Added a ability for a NPC to not be stunned, setting banish to equal 101 makes them immune. Image: Server side buff fading should work now, except the client spams the server with requests. ------------------------ - September 27th, 2002 - ------------------------ Asiel: #serverinfo now detects Win2k3 (Windows .NET Server) Asiel: World crash bug with OP_CharCreate should be fixed. Yey Image :) Image: A group bug that would crash zones is fixed Image: Merchants fixed ------------------------ - September 26th, 2002 - ------------------------ Image: NPCs should now help their pets if you attack the pet Asiel: World and zone are now ANSI compliant for WIN32 systems using STL and Namespaces (dirty code, will clean up and will reduce to look not so much like 2 different include sets) ------------------------ - September 25th, 2002 - ------------------------ Asiel: Changed the generic items struct to reflect thing we now know rather then just int8 unknown[size] Asiel: Began my campaign to beat the killer ANSI namespace compatibility on WIN32 systems Image: Spell buff fading fixed Image: Can no longer attack people with special combat skills unless both are PVP Image: Added the view code, allows you to use the new item links. solar: you won't riposte/block/dodge/parry spells anymore ------------------------ - September 24th, 2002 - ------------------------ Image: NPCs now regen mana/hp Image: #filters command added, add 'alter table account add serverfilters tinyblob;' to your database ------------------------ - September 23rd, 2002 ------------------------- Image: Pets could summon pets, fixed. Image: Now able to delete spells from your spell book. solar: fixed berserk spam solar: fixed hp regen ticks. heal over time, the works, is all accurate and synced between server and client now solar: fixed a case in GetConLevel where it could return garbage, now it's initialized to 0 which should be 'even con', but it should be looked at in more detail ------------------------ - September 22nd, 2002 - ------------------------ T7g: Fixed character creation so all faces are saved correctly when a character is created. solar: fixed WesQuests.cpp up a bit, but my next task is rewriting that. solar: bumped up the buffers used internally by the Message() functions, so you can send message longer than 255 chars (needed for npc quest speech) solar: cleaned up some trivial warnings in a few files (no functional changes) -------------------- - September 21st, 2002- -------------------- Image: Fixed the pet issues Image: Inspect answer bug fixed Image: Group invite bug fixed Image: Three bugs dealing with trading and inspect request should be fixed solar: rewrote hatelist completely, sorry image :) T7g: Fixed the character creation routine to save the player face value to the right spot (Does not work for Luclin faces on Ccreate!) solar: tuned rate of keepalives to keep the lag bar green solar: PVP melee, given both players are PVP, but pets in pvp still need work. solar: fixed loot tables, monsters drop items now solar: fixed 'randomness' solar: fixed spell issues regarding pets and PVP -------------------- - September 20th, 2002- -------------------- Image: NPCs should no longer walk off now after a hatelist is wiped Image: Fixed hatelist bug, pets will now back off, npcs will stop attacking when you mem blur Image: Possibly fixed the 4/3 crash Image: Client death fixed Image: Updated the death structure Image: Cleaned up the zoning code Image: Put in some code (currently for testing) to see if it helps keep alive clients while too many packets are being sent. -------------------- - September 19th, 2002- -------------------- solar: added common/files.h and updated the open calls to use the defines so the names of the config files can be changed easily. -------------------- - September 18th, 2002- -------------------- kathgar: chaotic backstab and finishing blow kathgar: Fixed a bug in SetExp that was giving you the wrong number of aapoints, I think solar: 2 crashes fixed in attack.cpp, fixed a crash in spells.cpp. -------------------- - September 17th, 2002- -------------------- khuong: fixed zheader struct and saving the zhdr to a cfg file... solar: fixed a crash in attack.cpp, fixed crash in common/seperator.h, removed a debug message regarding damage shields that i left in there by mistake last patch. -------------------- - September 16th, 2002- -------------------- solar: fixed riposte/dodge/block/parry, fixed the miss/hit thing in melee, cleaned up attack.cpp, fixed some typos, updated assassinate code SPDAT_RECORDS: if you set it higher than the highest id in your spells_en.txt plus 1, your zone will not start -------------------- - September 14th, 2002- -------------------- kathgar: fixed Growth/shrink.. added trival charm code.. -------------------- - September 13th, 2002- -------------------- kathgar: fixed parts of several structs, PlayerProfile-Deity, found some unknowns in GMTrainee, began new merchant struct -------------------- -September11th,2002- -------------------- kathgar: put in solar's Assassinate code -------------------- - September 7th, 2002- -------------------- kathgar: Fixed a LOT of warnings kathgar: Added CancelMagic effect Image: Fixed a crash due to merchants Image: Groups are now working to full extent of EQLive. -------------------- - September 6th, 2002- -------------------- Image: Group update struct fix, groups partially working, need some more work. Image: Item struct should be fixed, items converted, thanks for your help Lurker :) -------------------- - September 4th, 2002- -------------------- Image: Updated to EQLive Image: Added cases for new ViewPetition and DeletePetition -------------------- - September 3rd, 2002- -------------------- Image: Guilds fixed Image: Guild struct updated Image: Item drops fixed. Image: A bug that would cause the crash to zone on picking up an item is fixed. -------------------- - August 31st, 2002- -------------------- Image: Unique names have now been extended to 500 instead of the original 100, this should fix luclin zones. Image: You will no longer get berserk messages on entering zone Image: Spell fading fixed Image: Fixed /pet commands -------------------- - August 30th, 2002- -------------------- Image: Added some more safe-guards for pets attacking clients Image: Incorrect account flagging for hacking has been fixed. Image: Zoning fixed! Image: Pets will now cast damage shields (if they have that capability) Image: NPCs will now cast spells again while fighting Image: You can now summon the magician epic pet Image: NPCs weapons are fixed Image: Added basics for GuildMasters, still need to understand the special skill system for them. Image: Fixed #spawn, no longer will crash the zone server. Image: Setup the Instill Doubt opcode, doesnt matter much at the moment. Image: Found the proper place that face is held in playerprofile, meaning, facial features fixed. Image: Found skill points in player profile (points that you use at your guild master). -------------------- - August 26th, 2002- -------------------- Image: Changed some packets in world, only sent at certain times (now able to get to a new zone, but disconnects while loading) khuong: Readded Wes's/kathgars changes .. dodge/riposite/AA/crictical hits and other stuff(wes will list them) -------------------- - August 25th, 2002- -------------------- Image: Added a dummy packet Image: Fixed a zone opcode Image: Updated the Death struct, should work now. Image: Updated a world packet thats sent when going to char selection screen (Was off every byte but 3) -------------------- - August 22th, 2002- -------------------- kasai: Fixed world disconnect bug on Linux (not sure who muffed it up in the first place). -------------------- - August 22th, 2002- -------------------- kathgar: Merged a bunch of changes that Wes made.. dodge/riposte/blah blah.. get him to list them -------------------- - August 21th, 2002- -------------------- kathgar: AA Percent doesn't work, we have the struct wrong.. you will get 10% even if the aa menu doesn't show it, unless the AddExp() is messed up(double checked it..) -------------------- - August 18th, 2002- -------------------- kathgar: Fixed AApercent and added the innate stat bonuses(STR-CHA) and should have fixed it so you get the % of aa exp you set -------------------- - August 15th, 2002- -------------------- Image: Note, safe_deleting timers will NOT FIX ZONING!! :) Kasai: Added Queue Flush for zoning. Added RemoveData(); function to Client_Process.cpp and EQNetwork.cpp. Make sure to check out "Client_Process.cpp / Client.h / EQNetwork.cpp / EQNetwork.h" to get these new changes. Zoning should be fixed.. -------------------- - August 11th, 2002- -------------------- kathgar: Added DEFAULTSTATUS, so you can set people to vpriv automatically.. or well.. 255 if you want.. Added Unavailzone, if you cannot autobootup a server for someone from charselect, move them to Added [WorldServer] to loginserver.ini.. -------------------- - August 9th, 2002 - -------------------- kathgar: Added memsets where we just new uchar'd, we don't want dirty memory. -------------------- - August 7th, 2002 - -------------------- kathgar: Fixed static zones and added version to stdout -------------------- - July 31th, 2002 - -------------------- Hogie: Changed BazaarItemInspect_Struct to use ItemStruct inside there. Hogie: Changed PacketCollector to sniff When you inspect an item in Bazaar mode. kathgar: Added idiotmessage for missing spells_en.txt, no clue why the is_open check isn't droping it though Added pushup and pushback, constants might need a little tweaking Fixed AOESpell member of enity, AOE Spells WILL hit you now -------------------- - July 30th, 2002 - -------------------- Lyenu: Added some /bazaar functionality. For now consider it a very nice GUI search tool compliments Lyenu and VI. (FYI, I will make it be based off the bazaar system when I finish /trader, if people want I'll make a option to leave it as a search feature) -------------------- - July 29th, 2002 - -------------------- Lyenu: Fixed CastOn_Struct, spells now work again. kathgar: Fixed group spells to work on self when not grouped Added the pushup and pushback to spells Pyrotek: Added MD5Auth routine to the Database class Modified Login Server to authenticate from our forums/bugzilla database using md5 -------------------- - July 26th, 2002 - -------------------- Lyenu: Fixed Kathgar's spell fixes. -------------------- - July 16th, 2002 - -------------------- Image: Fixed zoning, new opcode: 5901 -------------------- - July 8th, 2002 - -------------------- Hogie: Added GPL Statement to all source files that are GPL licensed. Hogie: Added GPL License file -------------------- - June 14th, 2002 - -------------------- Lyenu: Updated the Item_Struct to match the new one introduced. I also correct a lot of problems that I noticed in it. -------------------- - June 13th, 2002 - -------------------- Lyenu: They added 4 bytes to NewZone_Struct at the end. I just added 4 blank bytes to the end of each file (they are all done like that on EQ it appears...) -------------------- - June 1st, 2002 - -------------------- Image: Fixed /toggle's structure Image: Worked on NPC casting a bit Image: Fixed a NPC Special Attack Bug Quagmire: World list fixed -------------------- - May 31th, 2002 - -------------------- Quagmire: Mapped operator << to Message() on zone/client. Quagmire: Added ThrowError define, changed current throws to use it. Quagmire: Misc fixes to EQNetwok. -------------------- - May 30th, 2002 - -------------------- Lyenu: Added in Kamikaze's hand to hand code for levels 61-100. Quagmire: Fixed a mutex deadlock in EQNetwork -------------------- - May 28th, 2002 - -------------------- Image: Added client_state = DISCONNECTED to the end of GM op_camp, and to normal delete_spawns, there is a bug in the net code, this is a temporary patch to disconnect clients. Scruffy: Added TCPConnection to the zone make file to resolve dependencies on Linux. Scruffy: Fixed a compile problem with the updated netcode on Linux. -------------------- - May 27th, 2002 - -------------------- Hamled: Added #message commands (list, send, delete, help, get), client.cpp, database.cpp, database.h, client_process.cpp changed, and eqmessages.sql added -------------------- - May 26th, 2002 - -------------------- Quagmire: Fixed the login_versions feature Image: Added a login_versions feature to the login server, will allow us to block older versions. Image: New zone table setup Scruffy: Cleaned up zoning and GM zone change. Image: Fixed zoning with spells, thank you Lyenu for the log. Image: Fixed some quest scripting Image: Fixed the npc_types table in the database Scruffy: Changed experience lost on death. Experience loss will no longer happen if you have negitive experience or you are a GM. Lyenu: Found AAExp and AAPercentage -------------------- - May 25th, 2002 - -------------------- Image: /becomenpc's now give you EXP on their death Image: Fixed spell casting on pets Image: Servers now show how many players are on their server on server select. Scruffy: Hopefuly fixed the crash bug on Linux when a ZoneServer would send it a certain packet... Scruffy: Fixed skills. Scruffy: Added GM check on SpellCasting. Scruffy: Added GM check and BecomeNPC check on /pet attack. Image: Added $MAXCLIENTS, you can now set the maxclients you want TOTAL on your server. if $MAXCLIENTS is not defined or equal to -1, its infinite. Image: Updated GroupUpdate Struct, seems that they took uint8 unknown1[160] to a uint16, made disband impossible (So disband is fixed) Image: Fixed ressurections Image: Fixed /invite for groups Image: Fixed the beeping sound that came out of world when creation of a new char Image: Fixed meditation so it won't go from 252 -> 0 Image: Fixed /becomenpc so you can cast spells on a /becomenpc client Image: Fixed locking up when casting a "harmful spell" on someone that is not a PVP player. Image: Fixed world features (flag, holdzones, adduser, etc.) -------------------- - May 23rd, 2002 - -------------------- Quagmire: Put read-only protection on items & NPCs cached in memory -------------------- - May 22nd, 2002 - -------------------- Quagmire: Fixed bank item charges Lyenu: Updated to all the CFG files I current have converted from my raw packet file. More will be added soon, HUGE thanks to Owen for all the header data! Image: Took out a petition "clearing", it did not work, and it seems the EQ client takes care of petition clearing. Image: You now get EXP from killing mobs Scruffy: Added an access check to the BecomeNPC command. BecomeNPC no longer works for anyone below access level 80. -------------------- - May 21st, 2002 - -------------------- Quagmire: Fixed the encrytion on spawn packets Lyenu: Added the check in for the GM column of starting items. 0 = Admin < 100 Only; 1 = GM & Players Both; 2 = Admin >= 100 Only. Enjoy ;-) Scruffy: Fixed a world server crash on Linux when the world server tried a bad send() command. -------------------- - May 20th, 2002 - -------------------- Scruffy: Fixed the /zone command. Scruffy: Changed character names so that they can now be 63 characters in length rather than 15. You will need to use the "nameupd.sql" file to change the database to make it work. -------------------- - May 19th, 2002 - -------------------- Scruffy: Fixed a Linux compile bug in the new netcode. -------------------- - May 18th, 2002 - -------------------- Quagmire: Rewrote network code Scruffy: Fixed petitions. All petition functions now work except check in. Scruffy: Fixed a crash bug with the new netcode. Scruffy: Fixed several GM commands. Scruffy: Fixed a crash bug in zone name lookup. Scruffy: /Goto has been fixed. Scruffy: /Summon has been fixed. Scruffy: /BecomeNPC should now work as it does on live. Scruffy: Fixed safe coords when using the CFG coords. -------------------- - May 15th, 2002 - -------------------- Lyenu: Star Wars tomorrow! No time for work! =D -------------------- - May 14th, 2002 - -------------------- Image: Verant now requires a response to spell memorization for gems? (Now sends the packet received back out to the client) Lyenu: Fixed a small error in PP. This should fix our "necklace bug". -------------------- - May 13th, 2002 - -------------------- Image: Updated GMSummon, now will summon, however the loc system is screwed up? Image: Updated /lfg to proper size Image: /name fixed Image: /surname fixed Image: /lastname fixed Lyenu: Fixed NewZone_Struct (I know Scruffy said he fixed it, but it was off at a few places, it is not correct and has been tested) Quagmire: Enabled the "Change password" button. Quagmire: Put in decryption for new registrations via EQGame.exe and mapped out the structure. (didnt make the packets do anything yet) Quagmire: Fixed zoning via #zone -------------------- - May 10th, 2002 - -------------------- Scruffy: Fixed zhdr. You will need new CFG files. The old ones will NOT work. Lyenu: Merge the old source2 CHAGELOG with source1. (It's wise to keep it in there =P) Scruffy: Fixed the location of the GM flag in playerprofile. -------------------- - May 9th, 2002 - -------------------- Quagmire: Moved both Loginserver.cpp files over to use TCPConnection classes Merkur/Quagmire: Cracked encryption on eq login packets, LoginCrypto.exe now uses username/password DB fields instead of Auth field. Scruffy: Fixed several compile errors and warnings. Lyenu: Added some code to clear the unknowns in PP, will just make it cleaner =P -------------------- - May 7th, 2002 - -------------------- Image: Usedspells now in zonedump.h is a 210 char.. In the database, usedspells can now be extended to 210, no higher or it can crash. Merkur: Fixed some zonecrashbugs -------------------- - May 6th, 2002 - -------------------- Image: Put in access levels for setaaxp and setaapts to 100. Darkman: Added in Alternate Advancement. You will need to use aa.sql and aa.txt to modify the database correctly. (Scruffy checked this in and fixed a few bugs) Scruffy: Added in new commands: #setaaxp and #setaapts -- Both commands do not have an access level at this time. -------------------- - May 4th, 2002 - -------------------- Image: Added a delete to root_timer in npc.cpp, (Possible memory leak?) Lyenu: Added OP_AAButtons. The packet structure is sortof weird... Here what I got when I clicked the down button (it's always either on "Current aapercent" or off): OPCode: 0x1422, size: 256 0: 6F 6E 20 39 30 00 DA BC - EF 7D D2 BF 4C 6C F4 00 | on 90....}..Ll.. 16: D0 23 82 26 92 49 BA 3E - D2 39 4C 3E 2D DD 3D BF | .#.&.I.>.9L>-.=. 32: E3 73 35 BF 40 8B 32 BF - C6 2D 90 BD D0 3C 9F BD | .s5.@.2..-...<.. 48: 00 00 80 3F 15 BA 02 00 - 00 00 00 00 15 BA 02 00 | ...?............ 64: 05 00 00 00 4C 0E 82 26 - 08 0E 82 26 00 01 00 00 | ....L..&...&.... 80: 6B 24 00 34 00 00 00 00 - 08 9D 39 3F 00 00 00 00 | k$.4......9?.... 96: B2 79 82 0B D0 EB F3 05 - 00 00 00 00 74 0D 83 01 | .y..........t... 112: 04 00 00 00 C0 61 3F 0E - 02 00 00 00 00 00 00 00 | .....a?......... 128: 01 00 00 00 D0 EB F3 05 - 50 EA F3 05 70 FF 7F BF | ........P...p... 144: 70 FF 7F 3F FF ED 9A C1 - FA 24 8F 45 18 3B 01 45 | p..?.....$.E.;.E 160: 05 0C 14 C5 FA 24 8F 45 - 18 3B 01 45 87 50 26 45 | .....$.E.;.E.P&E 176: 02 70 6D 45 18 3B 01 45 - DF F0 15 45 04 70 6D 45 | .pmE.;.E...E.pmE 192: 18 3B 01 45 2A B8 03 C5 - 24 29 30 45 0E 45 0E C5 | .;.E*...$)0E.E.. 208: 7C 5A 4D 44 60 FB 41 0E - 7C 3E 7D 01 10 E6 16 3F | |ZMD`.A.|>}....? 224: 7F 56 D4 3D 33 FB A5 3E - 4C 6C F4 00 88 22 82 26 | .V.=3..>Ll...".& 240: DE 76 C8 3E 10 7B 67 3E - B1 1E 67 3F C5 9D 7E 3F | .v.>.{g>..g?..~? Lyenu: Added aaexp and aapercent into the playerprofile_struct. Merkur: Fixed a bug, that caused bad charges/stacks when trading items Merkur: Added Manaregeneration. Also Mediate will now increase when you use it. Merkur: Fixed a bug, that could cause a crash when you attack with 'unknown' weaponskills Hogie: Added SETALLSKILL, SETSKILL & ADDSKILL to Quests. Hogie: Fixed a small memory leak with /kill and /kick. Hogie: Fixed %CHARLEVEL% in quests & hopefully made all 3 extra %CHAR% vars linux also. Hogie: Moved an array out to 250 length for hostnames instead of 17 that was causing problems with auto reboot of zones. Hogie: Added a Player AA Point Struct... Right now it sends only 10 points for everything, but it IS a start. Scruffy: Added in environmental damage. All non GM players will now have the correct amount of environmental damage deducted from their HP. GM HP will not be affected (although you might die if the HP "lost" is over what you currently have...I don't have a way to fix that yet because it's done clientside). Scruffy: Made runmode changes not show up as an unknown opcode in console anymore. -------------------- - May 3rd, 2002 - -------------------- Hogie: Added DOANIMATION code by Malevolent from boards to quests Hogie: Added Forage code (new stuff) by Malevolent from boards Hogie: Added Mend code (new stuff) by Wiz from boards Hogie: Stopped people from using #spawn to lvl themselves past 60 (you can no longer get 61 by exp! wahha). Merkur: Rewrote the errorhandling function. Also it will now write an entry into 'eqemudebug.log' when it crashes -------------------- - May 2nd, 2002 - -------------------- Image: To stop the requiring of addon.ini for world/login I have moved it to zone.cpp Hogie: Changed Quest scripts... No longer zonename.qst, it is now npcid.qst This lets us have a LOT more quests per zone than before. Hogie: Fixed scripts... %CHARNAME%, %CHARRACE%, & %CHARCLASS% all work now on win32.. the level kills the server, so left it out. Merkur: Zone.exe will now close instead of trying to go to sleepmode if an error occours Merkur: World.exe supports now a Reboot-Zones mode. If this mode is activated and it loose the connection to one zone (zone.exe crashed or something) it will autoreboot a new zone. It also works, if you have your zone and worldservers on different comps. To use this mode start world.exe with the parameter "-holdzones" or put "holdzones" = 1 into your database. Merkur: Fixed a bug, which could cause problems with items/looting/inventory when a player dies. -------------------- - May 1st, 2002 - -------------------- Hogie: Added 2 Quest commands. PVP & CHANGEFACTION. Examples: PVP: on PVP: off Will set the PVP flag on the player that hailed. CHANGEFACTION: 1 20 will add 20 to the faction number 1 (BetaNuetral) Hogie: changed the way faction works for GMs. Now everything is the right faction, but nothing will aggro you. Scruffy: Made /kick and /kill work like on Live. I also added WorldKick and GMKill to the Client class for easy access. Scruffy: Fixed a minor glitch with eq_packet_structs.h redefining an already defined variable. This was causing a lot of nasty warnings on compile. Merkur: Added exp-resurrection spells (its the same as on live ;) ). You NEED to do a corpsewipe before you use this new version. Merkur: Added summoncorpse spells Merkur: You can now be interupted, if you move while casting a spell Merkur: Harmtouch, LOH etc now have the correct recasttime -------------------- - April 29th, 2002 - -------------------- Image: Put in a max. argument check for spell casting, should stop crashing for @NPCSPELLS to be over 10) Merkur: Merged Mals kick-code Merkur: Exp-deaths are now in. If you are higher than level 5 and die, you will loose exp (and maybe your level). -------------------- - April 27th, 2002 - -------------------- Hogie: Removed the couts from login that caused major spam when linked. Hogie: Added checks to login server for Stats creation & clearing of auth db (Only Standalone and Master do these now) Image: First addon.ini code, get the new addon.ini from the source directory. -------------------- - April 25th, 2002 - -------------------- Lyenu: Merged in the code from Source1. It'll make it easier for me to merge it together later =) Lyenu: Fixed a problem in GetZoneName that would cause world to crash. Lyenu: Found a small error in my for PP. The change doesn't mean having to do another character wipe as it was VERY minor =) Lyenu: Fixed unknown at the end of PP, it was to big making PP size 8308 when PP is only 8244. Lyenu: There is an error saving the characters to the DB after creating one and updating the profile. I'll fix this soon, sorry =P Lyenu: Currently the start zone for all characters is 1 (South Qeynos). I'll update this once I fix the problem above. Lyenu: Removed the memset's for all the unknowns for the time being. I'll put them back in when I get un-lazy =P Lyenu: Deleted the common/world/zone folders contents and re-uploaded them from fresh new copies =) Got some extra files that weren't needed in there somehow =/ -------------------- - April 24th, 2002 - -------------------- Merkur: Added root for NPCs Merkur: Added mezz for NPCs and PCs (atm it won't break on PCs even if you take damge tho - for NPCs it works fine) Merkur: NPCs will now aggro you if you cast any bad effect on them Lyenu: Updated PlayerProfile(Everything should correct.. well besides the location of GM =) ) Lyenu: Updated SZE Packet, I think might of not finished it though, I'll check right now =P Lyenu: Updated Character Selection Struct Lyenu: Updated NewZone_Struct Lyenu: Fixed Character Selection Lyenu: Added zoneidnumber to the table zones Lyenu: Zones are now numbered, list of zones and their numbers in zonenumbers.txt Lyenu: Added functions GetZoneIDNumber and GetZoneName to database.cpp/h Lyenu: Started work on character creation fix, but world crashes right after client connects to world and verifies the key. Lyenu: Added my code to StarTeam so the dev team can help me while I'm asleep =P -------------------- - April 23rd, 2002 - -------------------- Shawn319: Changed "Mob says: You will not engage me, Shawn!" to "Mob shouts,'you will not evade me, Shawn!' " -- No longer, now its red -image Shawn319: Added more items to #summonitem kill player list. Items 27181-27194 & 31910-31959 now KILL anyone under status 100. Merkur: Fixed some more z issues Merkur: Fixed DA & DW Merkur: Fixed an error in my dmg formula that caused NPCs to hit for much less dmg than intended -------------------- - April 22th, 2002 - -------------------- Merkur: Rewrote the NPCattack formula. Its now based on level, class, randomness and current buffs of the NPC. If the NPC has database min-maxdmg values, the new formula is overwritten by these values. Also AC is now more important to avoid damage because it will absorb up to 50% of the damage taken (at 2000AC,~11% at 100 AC etc) -------------------- - April 21th, 2002 - -------------------- Merkur: Fixed memory leaks in image's spelltimers code Merkur: If NPCs are not aggro and have full HPs they will cast buffs only Merkur: Added goodEffect (from board) and badEffect flag to the spellstruct Hogie: Changed attack code some. Made it so NPCs can have haste/slow now too Hogie: Added spell code for Heal over Time spells (Torpors, Celestrial Heal, etc) Hogie: Added spell code to make haste come from spells Hogie: Added spell code to make slow come from spells (ie, Turgur works now). Hogie: Added spell code to make slow/haste wear off when the buff fades. Hogie: Added basic code for shrink spell. (it makes you gnome size no matter what). -------------------- - April 20th, 2002 - -------------------- Image: Added random timers to the spell casting to avoid major lag. Image: Fixed a bug that caused zones to crash on bootup (tried to put more information in the used_spells char than possible) Merkur: Fixed Z probs with #zoneing, #dbspawn, #npctypespawn and Petspells -------------------- - April 19th, 2002 - -------------------- Merkur: fixed a bug, that caused zones to crash (or fatal error) if there they had more then ~300 spawns Merkur: fixed NPC interupting it should now be very hard to interupt a NPC (since they all have 250 channeling skill) Merkur: Updated NPC_Types with some new fields. ATM the old DB is supported too, means you don't have to update but you won't be able to source the sql updatefiles if you don't oh btw: BACKUP your database before source anything :) Image: Got some basic enemy attack code for casting (NPC's attacking enemies with spells) Image: Did some code changes, added AddQueuedSpell(int spell_id) which is a bool and will return true/false. Image: NPC's now requeue the spell if they are interrupted because of being attacked while trying to cast. Image: On top of npc.cpp is #define SPELLQUEUE, if this is not commented, it will give the spell information for the npc and casting information. Image: Extended the spell queue from 12 to 20. -------------------- - April 18th, 2002 - -------------------- Image: Put first test code for npc spell casting (Spells for self casting) Merkur: Fixed some Z issues including: badspawn (you need to source the update sql files), "invisible" Mobs in dungeons (because the mob moved but didn't corrected Z) and move/attack animation (no more "jumps") -------------------- - April 16th, 2002 - -------------------- Merkur: Fixed zonespawnbulkpackets. This should reduce the traffic & lag while zoning a lot (since we need to send arround 70%-80% less data, see inventorybulk below) Merkur: Added a new experimental collector. -------------------- - April 15th, 2002 - -------------------- Quagmire: Added datarate limiting. See #datarate command. -------------------- - April 14th, 2002 - -------------------- Hogie: Fixed the TRIGGER_ITEM script event (per the forums by strychn) Hogie: Added %CHARCLASS%, %CHARRACE% to the npc scripts (per the forums by Malevolent) Hogie: Fixed the sold items reappearing after zoning/camping/LD. Hogie: Fixed the wrong skill going up bug. We had the wrong numbers for skills. Hogie: Fixed the #level problem with BST class. Hogie: Added login_stats table to Login server. This is a dump every 90 secs of the number of players & zones & servers online connected to all servers.Scruffy: Removed the InverseXY variable from the variable DB. To inverse XY, you now must compile the servers with INVERSEXY defined. This should fix the heading errors. Scruffy: Changed MovePC to have two modes, nonsummon and summon. Please note that nonsummon (default) mode will attempt to correct Z, unlike summon mode. Scruffy: Changed the wode variable to title. Hogie: Added Number of Zones & Players in login server processing (And Chat #listworlds command). Hogie: Added the 50+ names for classes in /who all. Hogie: added checking in for #title. GM+ can set titles on other people now. Hogie: cleaned up #level. If not 100+ status, can only #level to 60. 100+ can level to 100 max -------------------- - April 13th, 2002 - -------------------- Hogie: added where number of zones & number of clients are sent to the login server for statistics. misanthropicfiend: Fixed Login server for Linux compiles (and world and zone too). Hogie: fixed image's login server console so it doesn't break on linux or non-public mode. Merkur: Fixed the client expbar. It shows now how much exp you need to level and if it's full you WILL level :) Also I adjusted Exp a bit: you will level 5* faster now. Merkur: Implemented groups. The following group-things are supported atm: - Basic group actions (create,disband, invite etc) - only zonewide - Groupchat - Groupspells - GroupExp Merkur: Fixed SendInventoryBulk(). (means we only send one compressed packet now instead of up to 250 uncompressed to the client) Quagmire: Checked in the login server linking code, still a lil rough. See the new LoginServer.ini template. -------------------- - April 12th, 2002 - -------------------- Merkur: Fixed unlimted charges-items. -------------------- - April 11th, 2002 - -------------------- misanthropicfiend: Fixed Login server on Linux. hogie: moved door/zonepoint fuctions from database.cpp to zone/client.cpp so Login/Chat compiles dont complain. ------------------- - April 10th, 2002 - ------------------- ** TO USE OLD WORLD DATA, YOU MUST EITHER FLIP THE X AND Y COLUMN VALUES IN THE DATABASE OR SET "InverseXY" TO "1" IN variables. IT IS RECOMMENDED TO FLIP THE X AND Y COLUMN VALUES IN THE DATABASE RATHER THAN USE "InverseXY". ** Scruffy: Fixed X and Y locations in EQEmu. Scruffy: Made it so that 250+ users can set level to 255. It is not recommended to go over 100 however due to bugs. Scruffy: Made GM flagged characters ally to every NPC in game. Scruffy: Made GM flagged characters not able to get faction hits. You will still receive faction gains however. Scruffy: Added opcodes for drinking, safe fall suceed, and boat control. Scruffy: Fixed duplicate messages with #gm. Scruffy: Made the default coords more safe. Scruffy: Fixed #loc, zhdr, etc for the XY flip. Scruffy: Added "InverseXY" to the variable table. If "InverseXY" is set to 1, it will cause the spawn data to be loaded using the old YX system. Note that "InverseXY" does not work at this time on the old zone state dump data. Merkur: Charges are now working. Useing an expandable item with spelleffect will decrease its charges and it won't cast anything if it is out of charges(like intended). Merkur: Added serverside item stacks-support. You can now stack items and they will be saved. Also the numbers on dropped items, trades, sells etc is now correct. You might get errors if you use old chars, if this should happen I recommend creating a new char with this version. ------------------- - April 8th, 2002 - ------------------- Hogie: Found Title's for names (for others to see). ------------------- - April 5th, 2002 - ------------------- Shawn319: Fixed typo in "world.exe flag" argument. ------------------- - April 5th, 2002 - ------------------- Image: Fixed PC casting on self and saying "spell is too harmful". Image: Fixed crashing when trying to cast a spell with no target. Lyenu: Fixed PVP-Checks for spells, they are now in and working correctly (also, PVP/Non-PVP can't touch eachother with eachothers spells at all). Lyenu: Disable the casting of harmful spells between non-PVP players. ------------------- - April 4th, 2002 - ------------------- Merkur: Continued and finished Hogies trading-fix. You can now trade item/bags with Players or NPCs. Be warned: If you don't have enough space in your inventory the items will be lost. Shawn319: Added remarks to both boot5zones batfiles to make them easier to use. Shawn319: Added comments in INI files. ------------------- - April 3nd, 2002 - ------------------- Merkur: If a fatal error occurs, zone.exe will no longer crash. If possible it will send a warning to all players in this zone and go into sleepmode if not it will close the programm. Merkur: Adjusted NPCs attacks a bit: They have now a chance to miss, based on level and your AGI. Also your AC will now reduce damage a bit. ------------------- - April 2nd, 2002 - ------------------- Scruffy: Added structs for /becomenpc Scruffy: Added #copychar Merkur: Fixed a bug that caused the server to sent all NPC Spawnpackets twice to the first client Merkur: Fixed insta interrupting (duck,jump). You will no longer freeze when your spell is interrupted and you can recast a spell Merkur: PCs and NPCs Spells can now be interrupted if they take damage depending on channeling skill Lyenu: Merkur update some of checks in attack.cpp, would crash when attack a NPC. Also I re-wrote the checks for Client::Attack and made it so NPCs can't attack themselves. Hogie-: Added #movechar (GM+) to move characters into different zones. Does not update x/y/z, dont use on people online. Misanthropicfiend: Fix EntityList::ListNPCs to avoid infinite loop and use strupr & strstr to allow substring matching on name (include ../common/unix.h on Linux to define strupr) ------------------- - April 1st, 2002 - ------------------- Merkur: Fixed a bug that caused objects (dropped items) not to spawn for new clients which enters the zone Scruffy: Fixed an issue with safe coordinates having the X and Y value reversed. Scruffy: Added PVP flagging to ServerZoneEntry. Scruffy: Made Luclin Face more intelligent (this should fix NPC and PC face issues). Scruffy: More zoning cleanup. Scruffy: New variable in database... UseCFGSafeCoords... 1 is ON, everything else is OFF. Scruffy: Made it so that when you zone, you should now go to the correct safe coords in the zone, instead of always going to the database safe coords. Lyenu: Found PVP in PP. Lyenu: Added PVP checks in attack.cpp Lyenu: Added ServerType to variables. 0 = Normal Server; 1 = PVP Server INSERT INTO variables VALUES ('ServerType','0'); ------------------- - March 31st,2002 - ------------------- Hogie: Recreated the release database sql file. Updated items (About 9300 items), zone points (Partly from Drawde's db) Scruffy: Cleaned up the zone player function. Misanthropicfiend: Some fixes to WesQuests.cpp for Linux Scruffy: Fixed Linux compile. Image: Rampage is now in. Image: Fixed a few bugs with my npcspecialattk code Image: Added #npcspecialattk Hogie: Added #gmspeed (100+) on/off (new Account table format. Use the new one) Hogie: Added version tag to Servername on LoginServer List. Hogie: Changed character zonename & x/y/z position to be read from new columns in character_. Use the new format. Merkur: Added zonepoints-code. It needs to be collected from live EQ though (see next point ;) ). Merkur: Added zonepointcollector. Merkur: Made it so that you zone to the targetzone savepot if there is no zonepoint for it in the DB (targetzonepoints are in the table "zonepoints") ------------------- - March 30th,2002 - ------------------- Image: Added Enrage Image: Merkur helped fixing a banish bug Image: Maxdmg/Mindmg now customizable in npc_types Image: NPCSpecialattks column now customizable: Char ----- Effect ----------------- A Summon B Enrage C Rampage D Flury E Summon, Enrage, Rampage, Flury F Summon, Enrage G Summon, Rampage H Summon, Flury I Enrage, Rampage J Enrage, Flury K Summon, Enrage, Rampage L Summon, Enrage, Flury M Summon, Rampage, Flury N Enrage, Rampage, Flury *Currently only summon,enrage,rampage is setup. However, you can still set it to that char, it just will not use the flury effect. Merkur: Added the command "#guild setdoor {guildEQid}" (GM+). Use this and click on the door you want to become a guilddoor. Merkur: Doors will open with the right animation now (use new table) ------------------- - March 29th,2002 - ------------------- Merkur: Thanks to Lyenu I was able to put in most doors of Norrath. We have 1100 doors atm ;) Merkur: Added second part of objectcode: Doors are in and working now. Merkur: Added guildhalls. You can set every door to open only if a player of a special guild clicks on it. ATM you need to set this in door_table, later NPCs will sell halls Shawn319: Fixed small errors in #help list. (My first entry into changelog :) Shawn319: Renamed gmquest to QuestTroupe (as it should be) ------------------- - March 28th,2002 - ------------------- Image: Added banish code, need the newest db (hogie is going to upload) it adds a banish column into npctypespawns, putting a level in this column will make the specific npc banish anything greater or equal to the level in the banish column. Image: Have some test summon code *evil grin* they summon and do a "flury" attack I guess you could say they will attack 3 times when they summon (they summon by being 1) lvl 55+, 2) after 9 timers go by for attack_timer, 3) hatelist in the top 25 Merkur: Added first part of objectcode: You can now drop items (or bags with items) and they can be picked up later. They will disappear when the zone shuts down. ------------------- - March 27th,2002 - ------------------- Lyenu: Fixed a few bugs in Image's #listnpc code. Lyenu: Added FLAG_ACCOUNT into quest scripting. ------------------- - March 26th,2002 - ------------------- Image: An attempt to modify #listnpcs to be more efficient instead of having a spam of npcs. If this works, I plan on using it on some other commands such as corpse listings. Lyenu: Added #npcloot money pp gp sp cp ------------------- - March 25th,2002 - ------------------- Merkur: put in experimental networkcode. It *should* stop any disconns, lags and packetlosts (and it did in tests) Merkur: money is now being saved Scruffy: Fixed ServerZoneEntry_Struct to be more in line with the data on regular EverQuest. This will probably also fix "fRadius = 0 Bug -- The Return". Scruffy: Uploaded new petition table (newpetitions.sql). Scruffy: Fixed crash bug with faction tables. #spawn and friends are now usable now and should not crash the zone. Scruffy: Fixed the opcode for OP_SetDataRate ------------------- - March 24th,2002 - ------------------- Scruffy: Fixed PlayerProfile. Scruffy: Added support to Luclin faces for players and NPCs, however NPCs will use the default face (because there is not Luclin face support in the database yet). Scruffy: Fixed or added functionality to all GM commands. Scruffy: Added the ability to update safe coordinates for zone function in the database functions. Scruffy: Moved alot of GM level quest related commands down to QuestTroupe level. This should make it easier for QuestTroupe to run quests. Scruffy: Changed GM flagging to allow QuestTroupe to become GM flagged (although they will not be able to flag themself and they're character is not automatically GM flagged). Scruffy: Added commands to Chat Server. Use #help. Lyenu: Made zone think PP is 8108... other way was making playerprofile length mismatches. Lyenu: Updated OP_Save & 0x5521 to work with new PlayerProfile size. ------------------- - March 22nd,2002 - ------------------- Merkur: factiondata is now stored in memory. This should stop serverside lag caused by the NPC Ai ------------------- - March 20th,2002 - ------------------- Merkur: Added Tradeskills (Baking, Tailoring, Fletching and Jewelry Making) Merkur: Added table for tradeskills (tradeskill.sql) Hogie: Added code for books:) Use ` (by the 1 key) as a newline in the text. CREATE TABLE books ( name varchar(15) NOT NULL default '', txtfile text NOT NULL, UNIQUE KEY name (name) ) TYPE=MyISAM; Hogie: There was a small problem with the zone sleep code which caused some (if not most) of the CTD problems we have had. Added code to reset the Entity's last_insert_id back to 0 on the Clear() function. Lets see how this works ------------------- - March 19th,2002 - ------------------- Hogie: Added where /name, /lastname and /surname all update without having to zone. Hogie: Broke SZE out. It has more of the unknowns found now. Hogie: Took out the Admin Perma Sow... Sorry, but we need it to be able to be toggled... Hogie: Changed #gm to use target (or if a npc or no target, it does it to the local gm). Hogie: Changed it so player corpses will be left at all if you do NOT have a new variable in the variables table. varname: leavecorpses value = 0 This is a kinda temp fix for the CTD bug. Scruffy: Today's patch is now supported. Fixed wearchange and sze structs. Scruffy: Fixed a few problems with clients connecting. Scruffy: Character GM flagging is now in. You can toggle the GM flag by using the #gm command. Scruffy: Characters created by a GM+ will automatically have the GM flag enabled. Scruffy: You will now respawn with equip if you are below level 10. Admin death has not changed. Scruffy: Added a permanent speed increase for GM+. Scruffy: /name now works. Scruffy: Added corpse as a spell target type. Scruffy: Made deathtouch quieter. Scruffy: Made groupspells act like selfonly spells (for now). Scruffy: Made zoneserver use the safepoint data in the zone.cfg file. This should eliminate the safepoint bug in arena. ------------------- - March 18th,2002 - ------------------- Heko: Added basic backstab and taunt functionality. Heko: Added iksar delay for monk hand to hand. Lyenu: Added #npcloot [show/add/remove] [itemid/all], this will replace #showloot ------------------- - March 16th,2002 - ------------------- Scruffy: Fixed the Crash to Desktop (fRadius = 0) bug that everyone loved to hate. Scruffy: Added messages to EXP Update and zone repop. Scruffy: Eliminated some spam when a player logged into zone. Scruffy: Fixed a few Linux compile problems. ------------------- - March 14th,2002 - ------------------- Hogie: Fixed the NPC Perma-Stun bug from last Pre-Release (doh!). Hogie: Has a real database in the release this time. Hogie: Added hekowrk/kaiyodo's Haste/DW/DA code Hogie: Fixed an offhand weapon bug (would always punch when you first zoned in until you reequiped it) Merkur: Added basic NPC Ai Merkur: Added AI aggrolimit (max 11 mobs) ------------------- - March 13th,2002 - ------------------- Lyenu: Added Merkur's inspect, consider, and updated merchant code Lyenu: Added the code into world server for the starting items. Lyenu: This is the DB table for starting items. ------------------- - March 7th, 2002 - ------------------- hogie: SZE Changed with the patch. They added 4 bytes (maybe its an int32?) to the end of it. Updated the struct. Logging in works again. misanthropic: Fixed NPC Stun code misanthropic: Made Linux compile fixes. misanthropic: #serverinfo for linux works. ------------------- - March 6th, 2002 - ------------------- hogie: Added Client Stuns. Stunning a NPC currently doesn't work... Looking into it ------------------- - March 5th, 2002 - ------------------- hogie: Added lacidar's emote code from the boards. Seems to work fine:) hogie: Fixed the Multi-Zone Petition checkout process so it is removed from the queue of the "other" admins hogie: Merged RoByte's GetRawItemAC() & GetCasterClass() functions. Mana should now be based off the correct Stat. T7: Added serverinfo commmand ------------------- - March 4th, 2002 - ------------------- hogie: Fixed problems with the attack code using wrong skill. Works great now. ------------------- - March 3rd, 2002 - ----------------- Scruffy: Added loads of commands and features to Chat Server. Also fixed the congested chat issue. For a list of the commands, try the new #help command. ----------------- - March 3rd, 2002 - ----------------- ------------------- T7: Changed #help to make it much less bandwith intensive and much easier to read ----------------- - March 2nd, 2002 - ----------------- hogie: Fixed a lot of the memory Leads with Wes's code. Also made it compile with current code. It works:) hogie: When you use #summonitem as a gm+ (100+), all items will be dropable until you zone/camp. This allows Gms to trade "nodrop" items to people since nodrop checking is client side. When you trade, the item is marked nodrop to the other person, so they can't trade it afterwards quagmire: Added loginport= to LoginServer.ini. Lets you choose which port to connect to for login services without recompiling. ------------------ - Mar 1st, 2002 - ------------------ Scruffy: Made the wearchange on login requeue itself until the client is fully connected. This also eliminates a few item graphics bugs (such as boots not having tinting). ------------------ - Feb 27th, 2002 - ------------------ Scruffy: Fixed the bug where attacking would automatically default to no weapon, even if you did have a weapon on you. Also improved the code for the addition of duel wield and ranged weapons. Scruffy: Fixed a bunch of Linux compile problems in Zone's worldserver packet processing code and in the new #version command. ------------------ - Feb 26th, 2002 - ------------------ T7: Added #version to zoneserver - Shows the current zoneserver version, time the file was compiled, and last time the file was modified. T7: Added version to worldserver console Shows the current worldserver version, time the file was compiled, and last time the file was modified. T7: Fixed the weather code a little T7: Added lock/unlock to the worldserver console help menu ------------------ - Feb 24th, 2002 - ------------------ Scruffy: Added in commands... #class, #permarace, #permagender, #pkill, #unpkill, #freeze, #unfreeze Scruffy: Added in manual weather changing... See #weather 3 Scruffy: Fixed certain aspects of #weather to work better. Scruffy: Added all the known classes into class table. Scruffy: Fixed a 0 multiplier bug with unknown classes at level 60+ in SetMaxHP. Scruffy: Added the /webupdate opcode for future use. Yodason: Hey guess what.... AOES no longer crash zone! Tested at 100 mobs all agroing just minor lag ------------------ - Feb 23rd, 2002 - ------------------ T7: Added #weather (Status 80+ only) - Toggles weather status, on/rain/snow Scruffy: Fixed a crashing bug with zoneheader.Scruffy: Added a few command aliases for existing commands. The new aliases are: #zcolour (#zcolor), #spfind (#findspell) ------------------ - Feb 19th, 2002 - ------------------ Image: Added some radius code to help fix lag on servers, the radius can be set using QueueCloseClients, default is 600 which is roughly from WFP gates to 3/4 of the way to East Commonlands zone point in WFP. ------------------ - Feb 10th, 2002 - ------------------ Hogie: Fixed Grouping so you dont have to target the leader to follow Hogie: Made /hideme work. It only works on yourself (Client doesn't send for others!) Basic Code can be used for other invisi too. Yodason: Trading works (kindof) Yodason: Lock login server if no zones up DB MERCHANT CHANGES.. CREATE TABLE npc_types ( id int(11) NOT NULL auto_increment, name text NOT NULL, level tinyint(2) unsigned NOT NULL default '0', race tinyint(2) unsigned NOT NULL default '0', class tinyint(2) unsigned NOT NULL default '0', hp int(11) NOT NULL default '0', gender tinyint(2) unsigned NOT NULL default '0', texture tinyint(2) unsigned NOT NULL default '0', helmtexture tinyint(2) unsigned NOT NULL default '0', size tinyint(2) unsigned NOT NULL default '0', hp_regen_rate int(11) unsigned NOT NULL default '0', mana_regen_rate int(11) unsigned NOT NULL default '0', loottable_id int(11) unsigned NOT NULL default '0', merchant_id int(11) NOT NULL default '0', PRIMARY KEY (id) ) TYPE=MyISAM; # # Dumping data for table 'npc_types' # # # Table structure for table 'merchantlist' # CREATE TABLE merchantlist ( merchantid int(11) NOT NULL default '0', slot int(11) NOT NULL default '0', item int(11) NOT NULL default '0', PRIMARY KEY (merchantid, slot) ) TYPE=MyISAM; ####### For Petition Table ####### CREATE TABLE `petitions` ( `dib` INT UNSIGNED DEFAULT '0' NOT NULL AUTO_INCREMENT PRIMARY KEY, `petid` INT UNSIGNED NOT NULL, `charname` CHAR(32) NOT NULL, `accountname` CHAR(32) NOT NULL, `lastgm` CHAR(32) NOT NULL, `petitiontext` TEXT NOT NULL, `zone` CHAR(32) NOT NULL, `urgency` INT NOT NULL, `charclass` INT NOT NULL, `charrace` INT NOT NULL, `charlevel` INT NOT NULL, `checkouts` INT NOT NULL, `unavailables` INT NOT NULL, `ischeckedout` TINYINT NOT NULL, INDEX (`petid`) ) TYPE = MYISAM COMMENT = 'Table for Petitions'; hogie: /who all works kinda like live now. full character names, accountids, zone names, race/class/level (if it equals). hogie: Petitions clear when you zone now (to stop bugs) hogie: Petitions are saved across zone.hogie: Petitions can be checked out, escalated/downgraded & checked back in. APPENDTEXT DOES NOT WORK! hogie: Petitions can be deleted. hogie: Petitions are deleted from the queues of other people when you check one out. Locks them:) ----------------- - Feb 9th, 2002 - ----------------- Hogie: Added #lock (ServerOp Only) - Locks the server at the Login Server Hogie: Added #unlock (ServerOp Only) - Unlocks the server at the Login Server Hogie: Added #motd (GM+ Only) - Changes the MoTD on the server while it is up. Clients need to Go back to Char Select to see new one Hogie: Fixed #setallskill max to 252. 253+ wont let hotkeys be made Hogie: Started Grouping. I can get the Invite Request over to the invited person, and the Follow Button hit to come back to the group leader, group leader's name goes yellow, and /g channel can be talked into, but server doesnt see it, and no group list shows up for either. Need some logs, but maybe somebody else can figure these out. OP_GroupInvite, OP_GroupFollow, OP_GroupDisband are in, and GroupXXXXX_Struct are in too. To Follow, you ***MUST*** Target the leader! Hogie: Fixed #createacct :) Yodason: Merchants work.