Difference between revisions of "Developer:Newest Updates"

(Previous Branches)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
===EQ2 Emulator Revision Log===
+
== Recent Updates ==
 +
This is a list of the most recent updates to the current code branch. We're trying to keep this page from being too large, so for a history of previous code branch update, click the appropriate links.
  
==2/09/2008:(Rev. 66):==
 
LethalEncounter: Fixed client crash bug related to spawn IDs.
 
  
LethalEncounter: Fixed latest client to work with emu.
+
== Current Branch: 0.6 ==
 +
EQ2Emulator v0.6 was released on June 22, 2008 by Lethalencounter. [http://sourceforge.net/project/showfiles.php?group_id=140686&package_id=154393&release_id=608722 files ]
  
LethalEncounter: Renamed executables to EQ2World by request.
+
Release 0.6 additional developers: Jabantiz.
  
==2/02/2008(Rev. 65):==
+
===Build 154===
LethalEncounter: Fixed another packet size bug that affect various packets.
+
'''10/13/2008:'''<br>
 +
LethalEncounter: Fixed object corpse problem.<br>
 +
LethalEncounter: Fixed item linking problem.<br>
 +
LethalEncounter: Added temporary action state (used to suspend action when facing a player).<br>
 +
LethalEncounter: Added a couple of more quest item updates.<br>
  
LethalEncounter: Fixed the WS_DeathWindow struct.
 
  
==2/02/2008(Rev. 64):==
+
===Build 153===
LethalEncounter: Fixed a compiler error on linux.
+
'''10/13/2008:'''<br>
 +
LethalEncounter: Completed Step 1 of the item revamp.<br>
 +
::*Complete overhaul of item loading and storage.  Got rid of some obsolete fields and cleaned it up.  Items in the items table are now set with just two fields (bag_id and slot). Bag_id is 0 for inventory items, otherwise it is the unique id of the bag which it is in.  Bag_id is -3 for bank, -4 for shared bank.<br>
 +
::*Simplification of the entire items lifecycle.  A lot of the code was way more complex than it needed to be, which led to some of the item issues.<br>
 +
::*Items will be added to bags first, then inventory if the bag is full (this includes starting_items).<br>
 +
::*Enhancements/overhaul of the starting_items table - you no longer have to specify the slot as it will automatically assign a slot in the given characters inventory.  It will now properly handle EQUIPPED items as well so you can automatically dress a character upon creation.<br>
 +
::*Support for banked/shared bank items added.  No need for the character_banks table.<br>
 +
::*Numerous bug fixes with the core item behavior.<br>
 +
::*Step 2 will be in a couple of weeks and will focus on the items themselves.<br>
  
LethalEncounter: Modified /move_spawn command to enable a player to move a spawn anywhere they like.
 
  
LethalEncounter: /move_spawn will save the spawn location if it already has a spawn group id.
+
===Build 152===
 +
'''10/11/2008:'''<br>
 +
LethalEncounter: Made John Adam's requested database changes.<br>
 +
LethalEncounter: Converted race_type to model_type.<br>
 +
LethalEncounter: Added new AddQuestPrereqModelType LUA funcion.<br>
 +
LethalEncounter: Fixed crash bug with creating new NPCs as submitted by John Adams.<br>
 +
LethalEncounter: Fixed crash bug with network connections as submitted by John Adams.<br>
 +
Jabantiz: Changed code to all for visual state suspend after being hailed.<br>
 +
Jabantiz: Added GetRace LUA function.<br>
  
LethalEncounter: Fixed a problem with certain client commands.
 
  
==1/28/2008(Rev. 63):==
+
===Build 151===
LethalEncounter: Fixed a problem with account passwords that would give a bad password if the password was followed by spaces.
+
'''10/07/2008:'''<br>
 +
LethalEncounter: Added GetZoneName, GetZoneID, and GetSpawn LUA functions.<br>
  
LethalEncounter: Fixed a bug in position updates that was corrupting the first update.
 
  
LethalEncounter: Added /summon and /goto commands.
+
===Build 149===
 +
'''10/06/2008:'''<br>
 +
LethalEncounter: Fixed a crash bug with SetPlayerProximityFunction.<br>
  
LethalEncounter: Made some changes to the way exceptions are handled for zones that should isolate a crash in one zone from affecting other zones. (Unless the crash occurs in the main world thread.)
 
  
==1/26/2008(Rev. 62):==
+
===Build 148===
LethalEncounter: Fixed the display of locked servers on character select screen.
+
'''9/20/2008:'''<br>
 +
LethalEncounter: Added SetPlayerProximityFunction lua function that calls a specified LUA function when the player enters a given range and optional leaves the given range.<br>
 +
LethalEncounter: Added initial Merchant code.<br>
  
LethalEncounter: Fixed a crash bug when saving players.
 
  
LethalEncounter: Fixed the display of spells.
+
===Build 147===
 +
'''9/19/2008:'''<br>
 +
LethalEncounter: Fixed macro skillbar bug as submitted by John.<br>
 +
LethalEncounter: Fixed item and quest bugs with the 4412 client as submitted by Scatman.<br>
 +
LethalEncounter: Added lua script option to call after a NPC completes a movement in MovementLoopAdd Lua function.<br>
 +
LethalEncounter: Added voice option to the StartConversation function.<br>
 +
LethalEncounter: Added ability for quests to have a multiple rewards to choose from.<br>
 +
LethalEncounter: Added several new LUA functions for quests.<br>
 +
LethalEncounter: Fixed some issues with multiple quest items.<br>
 +
LethalEncounter: Fixed a bug with unsigned values and LUA.<br>
 +
LethalEncounter: Added QuestStepIsComplete function.<br>
  
LethalEncounter: Made a few fixes to the way the exp bar was being displayed.  The yellow/blue bars as well as the yellow/blue vitality indicators were wrong.
 
  
LethalEncounter: Vitality will now be update according to your settings for it in the variables table. You can specify the amount and how often it is given.
+
===Build 144===
 +
'''9/18/2008:'''<br>
 +
LethalEncounter: Changed /say chat distance from 500 to 30, as submitted by John Adams.<br>
 +
LethalEncounter: Changed the radius spawn combine component to only add spawns of the same type as the original spawn, as submitted by John Adams.<br>
 +
LethalEncounter: Arrow colors will now change when the player changes level, as submitted by John Adams.<br>
 +
LethalEncounter: Removed my test stuff that I had in the /name command, as submitted by John Adams.<br>
 +
LethalEncounter: Fixed quest turn in bug, as submitted by Malcolm.<br>
 +
LethalEncounter: Fixed bug that allowed you to gain xp from killing yourself.<br>
 +
LethalEncounter: Fixed HP/Power regen bug submitted by Seleandalos and John.<br>
 +
LethalEncounter: Fixed facial hair bug as submitted by John.<br>
  
LethalEncounter: Fixed an overflow problem with Timers.
 
  
LethalEncounter: Fixed a problem with the destroy spawn packet that could crash the client.
+
===Build 137===
 +
'''9/13/2008:'''<br>
 +
LethalEncounter: Modified the way that spawn scripts are stored and used.<br>
 +
::*You can now specify a spawn script for a specific spawn_id, spawngroup_id, or spawn_entry_id.<br>
 +
::*The scripts are now loaded when needed instead of loading all of them at startup.<br>
 +
::*You must specify the absolute path to the structs now.  This allows for additional organization.<br>
 +
LethalEncounter: Added /spawn set commands: spawn_script, spawngroup_script, and spawnentry_script.<br>
 +
LethalEncounter: Modified quests to take a percentage argument for the Kill and Item steps.<br>
  
LethalEncounter: Rewrote some of the packet code so that it checked the length after the packet was generated to prevent problems.
 
  
LethalEncounter: Consolidated the remove spawn packet code into one function.
+
===Build 136===
 +
'''9/12/2008:'''<br>
 +
LethalEncounter: Changed the way that /zone list worked.<br>
 +
LethalEncounter: Fixed the 'You stop fighting' bug.<br>
  
LethalEncounter: Changed the spawn set location command to not need an argument.
 
  
==1/24/2008(Rev. 61):==
+
===Build 131===
LethalEncounter: Fixed a bug with automatic updates not updating properly.
+
'''8/31/2008:'''<br>
 +
LethalEncounter: Added SetStepComplete function to Quests to take the place an automatic updating hail.<br>
 +
LethalEncounter: Fixed /reload quests<br>
 +
LethalEncounter: Fixed a few issues with multithreading.<br>
 +
LethalEncounter: Fixed a few bugs with the quest system.<br>
 +
LethalEncounter: Added several new LUA functions for the quest system.<br>
  
LethalEncounter: Added initial xp code.
 
  
LethalEncounter: Fixed a few structs in character sheet.
+
===Build 130===
 +
'''8/30/2008:'''<br>
 +
LethalEncounter: Converted spell system over to the two table spell system that will reduce redundant data considerably.<br>
 +
LethalEncounter: Changed a few column names for JA.<br>
 +
LethalEncounter: Added several new LUA commands.<br>
 +
LethalEncounter: Made quite a few struct changes to reduce redundancy.<br>
 +
LethalEncounter: Changed the wildcard for the starting tables to 255.<br>
 +
LethalEncounter: Removed the spawn type parameter requirement on several /spawn commands.<br>
 +
LethalEncounter: Added several new fields for spells thanks to paulgh.<br>
 +
LethalEncounter: Fixed a problem with the display of quests.<br>
 +
LethalEncounter: Fixed the LUA Spawn command.<br>
 +
LethalEncounter: Added display of book icon if the NPC has a chat quest update.<br>
  
LethalEncounter: Added code to save stats, coins, hp, etc.
 
  
==1/23/2008(Rev. 60):==
+
===Build 127===
LethalEncounter: Fixed world time functionality. Clients will now receive the coorect world time when they login and it will update like live.
+
'''8/18/2008:'''<br>
 +
LethalEncounter: Fixed sign display problem.<br>
 +
LethalEncounter: Fixed a couple of bugs with locks.<br>
  
LethalEncounter: Modified PacketStructs to be more tolerant of a bad configuration file.  Now it wont use the PacketStruct if the opcode is wrong.
 
  
LethalEncounter: Fixed bug with summoning bags that made them appear open until you relogged.
+
===Build 126===
 +
'''8/17/2008:'''<br>
 +
LethalEncounter: Added interruptions for spells.<br>
 +
LethalEncounter: Fixed several bugs with spells that were causing odd behaviors.<br>
 +
LethalEncounter: Fixed bug with zones not shutting down properly.<br>
  
LethalEncounter: Fixed bug with spawns that was causing the client to think it was dead since we didnt set the HP when they were /spawned.
 
  
LethalEncounter: Rewrote some of the spawn update code to prevent problems when large indexes and packets are created.
+
===Build 125===
 +
'''8/16/2008:'''<br>
 +
LethalEncounter: Fixed some spawn movement bugs.<br>
 +
LethalEncounter: Added city zone and always up options to the zones table.  This allows you to boot up a zone without anyone in it.<br>
  
==1/20/2008(Rev. 59):==
 
LethalEncounter: Fixed a crash bug when processing Skill update.
 
  
LethalEncounter: Fixed a crash bug when checking new character names.
+
===Build 124===
 +
'''8/14/2008:'''<br>
 +
LethalEncounter: Fixed some problems with factions.<br>
 +
LethalEncounter: Fixed some issues with npc attacks.<br>
 +
LethalEncounter: Fixed a bug locking up the spell que.<br>
 +
LethalEncounter: Made the quest end spawn default to the quest start spawn.<br>
 +
LethalEncounter: Fixed a couple of annoying random crashes/glitches caused by corrupted memory pointers.<br>
 +
LethalEncounter: Improved the NPC attack code.<br>
  
_Andrew: Created code to handle player falls.
 
  
LethalEncounter: Added Safe Fall skill to _Andrews fall code.
+
===Build 122===
 +
'''8/10/2008:'''<br>
 +
LethalEncounter: Added ability for NPCs to attack each other based on factions.<br>
 +
LethalEncounter: Fixed a few crash errors with /repop, spawn scripts and combat.<br>
 +
LethalEncounter: Improved the spawn movement process.<br>
  
LethalEncounter: Fixed bug that was causing a selection box to appear when logging in for the first timein the latest client.
 
  
LethalEncounter: Fixed much of the spawn code that was causing players to crash.  Crashes should be relatively rare now.
+
===Build 119===
 +
'''8/09/2008:'''<br>
 +
LethalEncounter: Added factions.<br>
 +
LethalEncounter: Fixed a crash bug associated with /spawn combine.<br>
 +
LethalEncounter: Fixed a bug with conversations.<br>
 +
LethalEncounter: Made some changes to the way NPC movement worked.<br>
  
LethalEncounter: Updated damage structs for all known damage types.
 
  
LethalEncounter: Rewrote damage functions to take advantage of the new structs.
+
===Build 118===
 +
'''8/07/2008:'''<br>
 +
LethalEncounter: Added /depop, /repop, and /spawn combine commands.<br>
 +
LethalEncounter: Made some fixes to the parser.<br>
 +
LethalEncounter: Fixed a couple of bugs with /spawn combine.<br>
 +
LethalEncounter: Added automatic retargeting of the master spawn when using /spawn combine.<br>
  
LethalEncounter: Changed fall code to display correct message when the client is damaged.
 
  
LethalEncounter: Moved some files that were previously in the common directory to the world directory.
+
===Build 115===
 +
'''8/04/2008:'''<br>'''
 +
LethalEncounter: Added AddTimer LUA function.<br>
 +
LethalEncounter: Fixed a bug with entity commands.<br>
 +
LethalEncounter: Added ability for spawns to change their heading back to the original heading after 30 seconds.<br>
  
LethalEncounter: Fixed bugs that were causing spawn updates to be sent right after an NPC was spawned.
 
  
LethalEncounter: Damage packets will now only be sent to players within a range of 30'.
+
===Build 113===
 +
'''8/03/2008:'''<br>'''
 +
LethalEncounter: Added ability to zone with the zone ID.<br>
 +
LethalEncounter: Fixed a bug that was dropping client connections more often that it should have done.<br>
 +
LethalEncounter: Made more improvements to the questing system to be more like Live.<br>
  
LethalEncounter: Updates skill code to properly send skill updates to the client.
 
  
LethalEncounter: Fixed /move that was broken in the last update.
+
===Build 110===
 +
'''8/02/2008:'''<br>'''
 +
LethalEncounter: Created questing system.  This system is very robust and allows you to use LUA scripts to do just about anything.<br>
 +
LethalEncounter: Fixed a bug with structs that was preventing substructs from using the correct version.<br>
  
LethalEncounter: Changed Spawn code to use per player indexes like Live instead of global indexes when sending spawns.
 
  
LethalEncounter: OP_MapFogDataUpdateMsg falls will now be ignored by default to get rid of some of the spam in the console window.  It will eventually be handled.
+
===Build 108===
 +
'''7/27/2008:'''<br>'''
 +
LethalEncounter: Fixed a bug with high level spawns being gray cons.<br>
  
LethalEncounter: Arrow colors will now be applied to all attackable mobs.  Non-attackable mobs will be white.
 
  
==1/14/2008(Rev. 58):==
+
===Build 107===
LethalEncounter: Applied patch that Andrew createdThis fixes many of the warnings generated on linux compiles.
+
'''6/30/2008:'''<br>'''
 +
LethalEncounter: Added /bug commandIt will now forward all bugs to the login server which will save them for future use.<br>
  
LethalEncounter: Applied bug fix sent in by Andrew that fixed a compilation problem with linux.
 
  
Diamente: Added syntax displays for EQ2 client commands.
+
===Build 106===
 +
'''6/22/2008:'''<br>'''
 +
LethalEncounter: Fixed various item bugs to work with the latest client.<br>
 +
LethalEncounter: Opcodes/structs updated to work with the latest client.<br>
 +
LethalEncounter: Version changed to 0.6.<br>
  
Diamente: Fixed a bug when attempting to /kill without a target.
+
== Previous Branches ==
 
+
[[EQ2Emulator 0.5 Release]]<br>
==1/13/2008(Rev. 57):==
+
[[EQ2Emulator 0.4 Release]]<br>
LethalEncounter: Added code for checking skill raises.
+
[[EQ2Emulator 0.3 Release]]<br>
 
+
[[EQ2Emulator 0.2 Release]]<br>
LethalEncounter: Fixed a bug when loading large int values from the database.
+
[[EQ2Emulator 0.1 Release]]<br>
 
+
[[EQ2Emulator 0.0]] - A New Beginning<br>
LethalEncounter: Modified and added quite a few skills that will be set when a character is created.
 
 
 
LethalEncounter: Update World Patcher for multiple databases.
 
 
 
==1/9/2008(Rev. 56):==
 
LethalEncounter: Changed color of servers running in debug mode to yellow on character creation server list.
 
 
 
LethalEncounter: Removed the version from the server names on character select.
 
 
 
LethalEncounter: Updates will now occur before anything else is loaded as world starts.
 
 
 
LethalEncounter: Added ability to limit update downloads if users abuse it.
 
 
 
LethalEncounter: Removed versions 0.1 to 0.3 from the valid versions list.
 
 
 
LethalEncounter: Modified LoginServer.ini file for patcher.  BE SURE TO UPDATE YOUR LOGINSERVER.INI FILE!!
 
 
 
==1/7/2008(Rev. 55):==
 
Diamente: Updated WorldStructs so that /quit and /camp function correctly again.
 
 
 
==1/6/2008(Rev. 54):==
 
LethalEncounter: Created new Skill classes to handle skills.  Converted existing code to use the classes.
 
 
 
LethalEncounter: Fixed a crash bug with items.
 
 
 
LethalEncounter: Reverted the order in which commands were sent to that of yesterday.  Some clients seem to be having problems with it.
 
 
 
==1/5/2008(Rev. 53):==
 
LethalEncounter: Updated most of the opcodes to be correct.
 
 
 
LethalEncounter: Fixed a crash bug when loading opcodes.
 
 
 
LethalEncounter: Fixed a crash bug when using the /who command.
 
 
 
LethalEncounter: Fixed a few of the old incorrect opcodes referenced in the code.
 
 
 
LethalEncounter: Items that you summon will now be saved on your character even after you log off.
 
 
 
==1/4/2008(Rev. 52):==
 
LethalEncounter: Revamped item code to make them easier to read and use.
 
 
 
Diamente: Made some updates to SendPlayerDeathWindow() and WS_DeathWindow
 
 
 
==1/3/2008(Rev. 51):==
 
Diamente: Fixed shameless error in previously SVN'ed content.
 
 
 
Diamente: Added methods for retrieving revive locations from db and (properly) displaying them as junction choices in the death window
 
 
 
Diamente: Updated player death functions; fixed death window; updated WS_DeathWindow struct
 
 
 
Diamente: Added command: /kill.  Those so inclined may indeed kill themselves by targetting themselves OR by using /kill self
 
 
 
==1/2/2008(Rev. 50):==
 
LethalEncounter: Converted chat to use PacketStructs.
 
 
 
LethalEncounter: Changed /ooc to be global.
 
 
 
LethalEncounter: Made some fixes to items.
 
 
 
Diamente: Updated /quit to ensure player saving before disconnecting.
 
 
 
==1/1/2008(Rev. 49):==
 
Diamente: Tweaked HP regen so that players who die stay dead until reviving. (Guess I need to implement reviving now...)
 
 
 
Diamente: Made small changes to the appearance of the server loading status messages for readability
 
 
 
Diamente: Fixed /camp; implemented /quit.
 
 
 
Diamente: Added WS_RequestCamp as well as initial version of WS_DeathWindow to World Structs.
 
 
 
==12/31/2007(Rev. 48):==
 
LethalEncounter: Added /spawn details command.
 
 
 
LethalEncounter: Added several more /spawn set values.
 
 
 
==12/30/2007(Rev. 47):==
 
LethalEncounter: Added /spawn target command.
 
 
 
LethalEncounter: Fixed spawn commands.
 
 
 
LethalEncounter: Made some changes to the way world stats were calculated.
 
 
 
LethalEncounter: Updated several opcodes.
 
 
 
LethalEncounter: Update /sit and /stand to use opcodes like live.
 
 
 
==12/29/2007(Rev. 46):==
 
Diamente: Fixed crash bug related to spawn death in combat.
 
 
 
==12/27/2007(Rev. 45):==
 
LethalEncounter: Fixed crash bug relating to failed database updates.
 
 
 
LethalEncounter: Made a few changes to the way that packets were being processed and compressed.
 
 
 
LethalEncounter: Fixed a bug on login that was causing clients to hang.
 
 
 
LethalEncounter: Implemented several spawn sub commands as mentioned on forums.
 
 
 
LethalEncounter: Updated some opcodes that were incorrect.
 
 
 
Diamente: Fixed issue with abandoning camp.
 
 
 
==12/26/2007(Rev. 44):==
 
Diamente: Fixed bug related to automatic zone shutdowns.
 
 
 
Diamente: Added commands: sit and stand.
 
 
 
Diamente: Added visuals to /level command; added WS_UpdateText struct to WorldStructs for client message displays.
 
 
 
==12/14/2007(Rev. 43):==
 
LethalEncounter: Updated GPL licensing information to v3.
 
 
 
==12/07/2007(Rev. 42):==
 
LethalEncounter: Finally fixed stuck on loading entities bug.
 
 
 
LethalEncounter: Added /version command.
 
 
 
LethalEncounter: Made several bug fixes for spawns.
 
 
 
LethalEncounter: Implemented /who command.  The lfg, lfw, and roleplay flags won't be implemented until we start using them.
 
 
 
LethalEncounter: Fixed several packet related crashes/issues.
 
 
 
LethalEncounter: Fixed packet issue where future synced packets would cause client to become desynced.
 
 
 
==12/02/2007(Rev. 41):==
 
LethalEncounter: Changed the way zones were loaded and saved from the characters table.  It now uses the zone name instead of the zone file.  You can also give zones shorter names for the /zone command.  Be sure to use _ instead of a space in the name though.
 
 
 
LethalEncounter: Made some changes to the way packets were generated and handled that should make the emu more stable and efficient.
 
 
 
LethalEncounter: Fixed char creation struct that was causing a problem.  Be sure that you update your CommonStructs.xml file!
 
 
 
==11/27/2007(Rev. 40):==
 
LethalEncounter: Fixed a bug with packets that were just a tad bit smaller than those that would be compressed.
 
 
 
==11/26/2007(Rev. 39):==
 
LethalEncounter: Added some initial support functions for spawn commands.
 
 
 
LethalEncounter: Added /who command.
 
 
 
==11/19/2007(Rev. 38):==
 
LethalEncounter: Fixed all the memory leaks in the code. (there were A LOT)
 
 
 
LethalEncounter: World will now display a title indicating the number of clients/zones when running on windows.
 
 
 
LethalEncounter: Fixed several crash bugs related to the multiversion implementation.
 
 
 
LethalEncounter: Updated structs for the new live client.
 
 
 
LethalEncounter: The emu will now be able to support more than one client version at a time again.  The versions supported are 4523L, 4427L, and 4412.
 
 
 
LethalEncounter: Login wont let you connect with an invalid version anymore.
 
 
 
LethalEncounter: Fixed some misc bugs with login.
 
 
 
LethalEncounter: Mostly fixed the bug where you hang on Loading Entities on Login server.  It still happens occasionally, but not often.
 
 
 
LethalEncounter: Login will now allow you to create a Sarnak if you are using versions 4412 or 4427.
 
 
 
LethalEncounter: Zones will automatically shut down after 5 minutes without a client.
 
 
 
LethalEncounter: Fixed some bugs with PacketStructs.
 
 
 
==11/14/2007(Rev. 37):==
 
LethalEncounter: Character Select will now correctly display a World server's version.
 
 
 
==11/12/2007(Rev. 36):==
 
LethalEncounter: Added Starting tables for automatically updating tables for new characters.  Information like zones, items, etc. 
 
See http://eq2emulator.net/forums/viewtopic.php?p=1692#1692 for more details.
 
 
 
==11/11/2007(Rev. 35):==
 
LethalEncounter: Fixed a bug with the sprint spell that was allowing the client to run at 40% even after they removed the effect.
 
 
 
LethalEncounter: Added character_spells table.  The spells in knowledge book are created from this table.
 
 
 
LethalEncounter: Added hot bar feature by dragging spells from knowledge book to any hotbar.
 
 
 
LethalEncounter: Added save feature to hotbars that will save their order. (Saves to DB every 60 seconds if hotbars are updated)
 
 
 
LethalEncounter: Fixed several issues with spells, hotbars, and knowledge book.
 
 
 
LethalEncounter: Fixed delete problem on Login.
 
 
 
LethalEncounter: Increase max number of characters that can be created on Login to 10.
 
 
 
LethalEncounter: Fixed display of zonename on character select.
 
 
 
LethalEncounter: Added zone update that will send your new zone name to Login for displaying on character select when you /zone.
 
 
 
LethalEncounter: Now saves your level correctly after you use /level.
 
 
 
LethalEncounter: Found and set expansion information field.
 
 
 
==11/08/2007(Rev. 34):==
 
LethalEncounter: Fixed some crash problems with VS .Net 2005.
 
 
 
==11/07/2007(Rev. 33):==
 
LethalEncounter: Only sends spawns to the player if they are in the proximity of the spawn.
 
 
 
LethalEncounter: Removes the spawn from the player's list once the player moves far enough away.
 
 
 
LethalEncounter: Fixed bug with /spawn that wasnt assigning a new spawn id.
 
 
 
LethalEncounter: Added /speed command.
 
 
 
LethalEncounter: Fixed a few bugs with the proximity code.
 
 
 
==11/03/2007(Rev. 32):==
 
LethalEncounter: Fixed a crash bug with long zone names.
 
 
 
LethalEncounter: If a player doesnt inclue coordinates when using /spawn it will default to the player's coordinates.
 
 
 
LethalEncounter: Fixed motd, it will now correctly load from database.
 
 
 
LethalEncounter: Fixed bug with combat that allowed you to attack yourself.
 
 
 
==10/26/2007(Rev. 31):==
 
LethalEncounter: Fixed bug that would cause clients to crash each other from movement.
 
 
 
LethalEncounter: Fixed a bug that should cause the client to ignore movement updates after a few minutes.
 
 
 
LethalEncounter: Made a few changes to packets that should improve performance a bit.
 
 
 
LethalEncounter: Fixed a bug from spawn updates that would crash client when it spawned.
 
 
 
LethalEncounter: Fixed a crash bug from sending updates too soon as a client is logging onto the server.
 
 
 
LethalEncounter: Found a few more flags for items.
 
 
 
==10/24/2007(Rev. 30):==
 
Cadimiom: /itemsearch added, can specify a search string up to 256 characters (include spacing),
 
  can also specify max search results after that (just a number).  Ex. /itemsearch rough ruby 5
 
  Max results for an admin is set to 20, crashes the client if any more are sent.
 
 
 
==10/21/2007(Rev. 29):==
 
Cadimiom: Added two variables: maxplayers and mingamefullstatus these are checks with the login
 
  server when a character attempts to play their character.
 
 
 
==10/19/2007(Rev. 28):==
 
Cadimiom: Login Server now records world server statistics in the database for future website use.
 
 
 
==10/16/2007(Rev. 27):==
 
Cadimiom: Login Server now keeps track of worlds in two variables, a map and a list.
 
  The list holds worlds which have not yet been authorized (have ID's set)
 
  The map holds the worlds which have been authorized.
 
 
 
Cadimiom: Users will no longer get stuck with forced disconnect trying to create a character.
 
 
 
Cadimiom: Fixed bugs with how VisualStates and Variables in the World Server were handled in maps.
 
 
 
==10/15/2007(Rev. 26):==
 
Cadimiom: World Servers can now be locked and use a database variable to set minimum status.
 
 
 
Cadimiom: Updated the Login Server to handle world's admin_status for banned/suspended accounts.
 
  (All receive the same reply right now, but it restricts logging to the world).
 
 
 
==10/14/2007(Rev. 26):==
 
Cadimiom: If a client tries to login to an invalid world or does not receive a response within
 
  5 seconds from a world server, it now receives a response to reset the character screen.
 
 
 
Cadimiom: World servers that are not connected are no longer listed on the LoginServer.
 
 
 
Cadimiom: Characters from world servers that are not connected should no longer appear.
 
 
 
Cadimiom: Login Server now has the updated reason codes for character creation.
 
 
 
Cadimiom: World Server's Name Filter now checks appropriate max lengths for characters name.
 
 
 
Cadimiom: World Server will now receive updates of Login Character Deletions if it is connected.
 
 
 
LethalEncounter: Fixed crash bug when spawning objects.
 
 
 
LethalEncounter: Made some adjustments to player position updates that should reduce the amount of crashes produced.
 
 
 
LethalEncounter: Fixed a few crash bugs relating to logging in and out.
 
 
 
LethalEncounter: Fixed a few code bugs for linux compilations.
 
 
 
==10/13/2007(Rev. 25):==
 
LethalEncounter: Updated world to allow multiple clients to zone in and see each other (as well as chat).
 
 
 
LethalEncounter: Fixed the basics of movement updates for clients.  It will appear a bit wierd and choppy right now.
 
 
 
LethalEncounter: Fixed a few things that were broken in the last patch.
 
 
 
==10/08/2007(Rev. 24):==
 
LethalEncounter: Updated to live.
 
 
 
==10/07/2007(Rev. 23):==
 
LethalEncounter: Created basic combat system.  It is rather simple right now, but will be built upon in the future to develop a more robust system.
 
 
 
LethalEncounter: Fixed camping.
 
 
 
LethalEncounter: Fixed a crash few bugs relating to spawns.
 
 
 
LethalEncounter: Combined spawn updates/char sheet updates to reduce bandwidth.
 
 
 
LethalEncounter: Reworked some of the Spawn and zone functions to be easier to use.
 
 
 
LethalEncounter: Added disable exp command.
 
 
 
LethalEncounter: Fixed several opcodes associated with camping.
 
 
 
==09/23/2007(Rev. 22):==
 
LethalEncounter: Revamped spawns to be more consistent with the rest of the code.
 
 
 
LethalEncounter: Fixed spawn struct problems and discovered the purpose of much of the unknowns.
 
 
 
LethalEncounter: Added equipment appearance table for mobs that will allow people to customize mobs without giving them actual weapons and armor.
 
 
 
LethalEncounter: Removed all World SQL tables from svn to prevent people from trying to source them.  Just connect to login and it will create/update your db.
 
 
 
==09/19/2007(Rev. 21):==
 
Cadimiom: Fixed VisualStates in Release Build, bogus characters were being passed.
 
 
 
LethalEncounter: Fixed some character colors on character select screen.
 
 
 
LethalEncounter: Fixed some minor issues with logging into World that could crash server.
 
 
 
LethalEncounter: Fixed opcodes and structs that allows us to run with the latest client.  Be sure to update to live.
 
 
 
==09/17/2007(Rev. 20):==
 
Cadimiom: Fixed a buffer overrun exploit in TCPConnection with inflated packets.
 
 
 
Cadimiom: Clients no longer make a server list packet on login unless an update has occured to a world.
 
 
 
Cadimiom: The LS now receives updates of /race,/class and /level.
 
 
 
Cadimiom: The LS and World use the character id retrieved from the world on creation (opposed to name).
 
 
 
==09/16/2007(Rev. 19):==
 
LethalEncounter: You can now summon items with the /summon command.
 
 
 
LethalEncounter: Implemented item movement from bags to inventory and vice versa.
 
 
 
LethalEncounter: Implemented equipping items.
 
 
 
LethalEncounter: Implemented unequipping items.
 
 
 
LethalEncounter: Add limited support for item stat calculations when equipping.
 
 
 
LethalEncounter: Add /reloaditems command.
 
 
 
LethalEncounter: Completely redesigned items and their associated tables.
 
 
 
LethalEncounter: Made some bug fixes to max hp/regen code.
 
 
 
LethalEncounter: Imported over 12,000 items into db.
 
 
 
LethalEncounter: Made some bug fixes to item loading, reducing the loading time considerably.
 
 
 
==08/29/2007(Rev. 18):==
 
Cadimiom: Fixed an exploit with packets sent to the LS without authentication.
 
 
 
==08/28/2007(Rev. 17):==
 
LethalEncounter: Got spell requirements working.  Now it will check to verify that an effect should be fired.
 
 
 
==08/27/2007(Rev. 16):==
 
LethalEncounter: Added player and mob Regen.  Formula still needs to be tweeked, but they will regen correctly every 6 seconds.
 
 
 
LethalEncounter: Added some stuff for spell requirements.
 
 
 
==08/26/2007(Rev. 15):==
 
LethalEncounter: Made a few bug fixes to the spell code.
 
 
 
LethalEncounter: Update character profile struct with regens.
 
 
 
LethalEncounter: Changed Login to display a world as down if a world isnt connected.
 
 
 
LethalEncounter: Updated spell tables with some additional fields.
 
 
 
LethalEncounter: Made some improvements to PacketStructs.
 
 
 
LethalEncounter: Implemented spell casting system.  It was designed to be flexible enough for NPC spell casting in the future.
 
 
 
LethalEncounter: Added functions for interrupting spells.
 
 
 
LethalEncounter: Got first working spell in emu created. (Sprint)
 
 
 
LethalEncounter: Cleaned up alot of the code in regards to Player.
 
 
 
LethalEncounter: Added functions for Spawn updates.
 
 
 
LethalEncounter: Fixed spawn updates.
 
 
 
LethalEncounter: Fixed player updates.
 
 
 
LethalEncounter: Fixed /race, /class, /level commands.
 
 
 
LethalEncounter: /spawn command should work correctly again.
 
 
 
LethalEncounter: Discovered several more of the unknowns in character profile.
 
 
 
==08/22/2007(Rev. 14):==
 
Cadimiom: Eliminated hash collissions in the VisualStates, plus additional memory reduction.
 
 
 
==08/21/2007(Rev. 13):==
 
Cadimiom: /animtest can now use the name column in visual_states
 
(ex. '/animtest cast_dustpuff' works just like '/animtest 145')
 
 
 
Cadimiom: The majority of gestures are now available through a visual_states hash table.  Not all gestures seem to be in visual_states yet (/laugh for example) and every gesture needs a message applied to it.
 
 
 
DBUpdate: alter table visual_states add column message varchar(128) not null default '';
 
 
 
==08/19/2007(Rev. 12):==
 
LethalEncounter: Added character_skillbar table.
 
 
 
LethalEncounter: The character_skillbar table is used to specify which spells are added to the skillbar when logging in.
 
 
 
LethalEncounter: Added packet to allow world to read spell information from db and send it to client for above.
 
 
 
==08/18/2007(Rev. 11):==
 
Cadimiom: Created an /animtest command to test the variety of gestures/spell effects on a player.
 
 
 
Ritojo: Updated most zones with their descriptions and safe coordinates.
 
 
 
LethalEncounter: Added spells, spell_effects, spell_effect_types, spell_effect_values, and spell_visual_effects tables to database.
 
 
 
LethalEncounter: World now loads spells from database and will display the spells correctly when viewed in game.
 
 
 
==08/15/2007(Rev. 10):==
 
ferthala: Updated position struct and got it working correctly.  Also added new opcode for it.
 
 
 
LethalEncounter: Added Spell class for future spell functions.
 
 
 
LethalEncounter: Updated the new spell struct.
 
 
 
LethalEncounter: Fixed a small bug in automatic updates.
 
 
 
==08/13/2007(Rev. 9):==
 
Cadimiom: Removed two packets (GhostControlClose and OP_UpdateClientPredFlagsMsg) from zoning they were not needed.
 
 
 
Cadimiom: Cleaned up ClientPacketFunctions of un-used packets.
 
 
 
Cadimiom: ZoneServers have been threaded for their process to make sure one zone cannot consume the entire process.
 
 
 
==08/11/2007(Rev. 8):==
 
LethalEncounter: Cleaned up some of the code related to sending packets to client.
 
 
 
LethalEncounter: Added /move command to transport people around the zone.  Usage: /move x y z
 
 
 
LethalEncounter: Added structs for UpdateSpellBook and UpdateInventory and created the methods for them to be sent when logging in.
 
 
 
LethalEncounter: Fixed annoying crash loop on login that occured if the client crashed. (Previously required player to remove all logs files from eq2 directory)
 
 
 
Cadimiom: Fixed a crash in the World Server ClientList Process (NULL ref crashes).
 
 
 
Cadimiom: Updated ZoneAuthRequest and Client to support firstLogin, used to specify packets or other messages that need to be only sent on world login (ex. MOTD).
 
 
 
Cadimiom: There is now a database-driven Variables external class.  It's first use is for handling the world MOTD in the database. Hard-coded MOTD will be used otherwise. The new table is available in the SQL Files, World Directory "variables.sql"
 
 
 
==08/10/2007(Rev. 7):==
 
LethalEncounter:  Fixed a few login bugs.
 
 
 
==08/09/2007(Rev. 6):==
 
LethalEncounter:  Created skill packet necessary to update client with their available skills.
 
 
 
LethalEncounter:  Updated database tables for skills.
 
Cadimiom: The /zone command is now functional again, this required a few changes:
 
  1) Save character now saves the zone name to current_zone instead of zone.
 
  2) Following opcodes need to be sourced into the database:
 
update opcodes set opcode=76 where name='OP_ReadyToZoneMsg';
 
update opcodes set opcode=70 where name='OP_ChangeZoneMsg';
 
update opcodes set opcode=74 where name='OP_AddGroupToGroupMsg';
 
  3) I have noticed some zones do not work properly
 
(befallen and boat_freeport for examples) and may get stuck in there.
 
 
 
==08/07/2007(Rev. 5):==
 
LethalEncounter:  Improvements to PacketStruct to make it faster/more efficient.
 
 
 
LethalEncounter:  Overhauled the character stats table (now called character_details) and made quite a few changes.  Character Sheet packet will use the values from this table.
 
 
 
Cadimiom: After a character is created, the Login Server now reloads the login character list. This solves the problem with crashing after creating a new character.
 
 
 
==08/06/2007(Rev. 4):==
 
LethalEncounter:  Added wing and hair types to spawn struct.
 
 
 
LethalEncounter:  Updated character sheet packet for latest client.
 
 
 
==08/05/2007(Rev. 3):==
 
LethalEncounter:  Updated Spawn Struct.  Now loading and sending character information from database.
 
 
 
LethalEncounter:  Fixed several errors in PacketStructs that were causing corrupted data.
 
 
 
LethalEncounter:  Added Print function to PacketStruct to print out debug information.
 
 
 
LethalEncounter:  Update make file to compile on linux.
 
 
 
LethalEncounter:  World will now load characters by name instead of ID so that the ids between world and login dont have to stay synced.
 
 
 
LethalEncounter:  Updated to work with latest client.
 
 
 
LethalEncounter:  Converted SetPOVGhostCmd and SetControlGhostCmd to use dynamic structs.
 
 
 
==08/03/2007(Rev. 2):==
 
LethalEncounter:  Rewrote a lot of the xml packet struct code.  Streamlined it a little, but mainly to add in the ability to have packet arrays built into the structs.
 
 
 
LethalEncounter:  Updated ZoneInfo struct.
 
 
 
==07/30/2007(Rev. 1c):==
 
LethalEncounter:  Found the last packet needed to login to World! :)
 
 
 
Cadimiom: Command serialization updated for live (packet size is now sent as 4 bytes)
 
 
 
Cadimiom: Chat structure updated for live ( OP_EqHearChatCmd is now Opcode 474 )
 
 
 
==07/29/2007(Rev. 1b):==
 
Cadimiom: Hardcoded an ability and quick bar initialization packets for world login.
 
 
 
Cadimiom: Dynamic structures added for CommandName and CommandMOTD.
 
 
 
==07/28/2007(Rev. 1a):==
 
Cadimiom: WorldStructs.xml added to Config Files/World Structs, must be added to the build folder.
 
 
 
Cadimiom: Cleaned up code in LoginServer.cpp cases: ServerOP_CharacterCreate,   ServerOP_CharTimeStamp, ServerOP_UsertoWorldReq.
 
 
 
Cadimiom: Added LS_LoginReply to WorldStructs.xml, Dynamic structures through configReader can now be used in ClientPacketFunctions.
 
 
 
LethalEncounter:  Fixed character deletion on character select screen.
 
 
 
LethalEncounter:  New Character creation checks with world before it creates any new characters.
 
 
 
LethalEncounter:  Character selection works like live.  New characters will display just as you made them.
 
 
 
LethalEncounter:  Converted LoginByNumRequest packet to use xml structs.
 
 
 
==07/26/2007(Rev. 0):==
 
LethalEncounter:  Restarted project :)
 

Latest revision as of 13:57, 17 October 2008

Recent Updates

This is a list of the most recent updates to the current code branch. We're trying to keep this page from being too large, so for a history of previous code branch update, click the appropriate links.


Current Branch: 0.6

EQ2Emulator v0.6 was released on June 22, 2008 by Lethalencounter. files

Release 0.6 additional developers: Jabantiz.

Build 154

10/13/2008:
LethalEncounter: Fixed object corpse problem.
LethalEncounter: Fixed item linking problem.
LethalEncounter: Added temporary action state (used to suspend action when facing a player).
LethalEncounter: Added a couple of more quest item updates.


Build 153

10/13/2008:
LethalEncounter: Completed Step 1 of the item revamp.

  • Complete overhaul of item loading and storage. Got rid of some obsolete fields and cleaned it up. Items in the items table are now set with just two fields (bag_id and slot). Bag_id is 0 for inventory items, otherwise it is the unique id of the bag which it is in. Bag_id is -3 for bank, -4 for shared bank.
  • Simplification of the entire items lifecycle. A lot of the code was way more complex than it needed to be, which led to some of the item issues.
  • Items will be added to bags first, then inventory if the bag is full (this includes starting_items).
  • Enhancements/overhaul of the starting_items table - you no longer have to specify the slot as it will automatically assign a slot in the given characters inventory. It will now properly handle EQUIPPED items as well so you can automatically dress a character upon creation.
  • Support for banked/shared bank items added. No need for the character_banks table.
  • Numerous bug fixes with the core item behavior.
  • Step 2 will be in a couple of weeks and will focus on the items themselves.


Build 152

10/11/2008:
LethalEncounter: Made John Adam's requested database changes.
LethalEncounter: Converted race_type to model_type.
LethalEncounter: Added new AddQuestPrereqModelType LUA funcion.
LethalEncounter: Fixed crash bug with creating new NPCs as submitted by John Adams.
LethalEncounter: Fixed crash bug with network connections as submitted by John Adams.
Jabantiz: Changed code to all for visual state suspend after being hailed.
Jabantiz: Added GetRace LUA function.


Build 151

10/07/2008:
LethalEncounter: Added GetZoneName, GetZoneID, and GetSpawn LUA functions.


Build 149

10/06/2008:
LethalEncounter: Fixed a crash bug with SetPlayerProximityFunction.


Build 148

9/20/2008:
LethalEncounter: Added SetPlayerProximityFunction lua function that calls a specified LUA function when the player enters a given range and optional leaves the given range.
LethalEncounter: Added initial Merchant code.


Build 147

9/19/2008:
LethalEncounter: Fixed macro skillbar bug as submitted by John.
LethalEncounter: Fixed item and quest bugs with the 4412 client as submitted by Scatman.
LethalEncounter: Added lua script option to call after a NPC completes a movement in MovementLoopAdd Lua function.
LethalEncounter: Added voice option to the StartConversation function.
LethalEncounter: Added ability for quests to have a multiple rewards to choose from.
LethalEncounter: Added several new LUA functions for quests.
LethalEncounter: Fixed some issues with multiple quest items.
LethalEncounter: Fixed a bug with unsigned values and LUA.
LethalEncounter: Added QuestStepIsComplete function.


Build 144

9/18/2008:
LethalEncounter: Changed /say chat distance from 500 to 30, as submitted by John Adams.
LethalEncounter: Changed the radius spawn combine component to only add spawns of the same type as the original spawn, as submitted by John Adams.
LethalEncounter: Arrow colors will now change when the player changes level, as submitted by John Adams.
LethalEncounter: Removed my test stuff that I had in the /name command, as submitted by John Adams.
LethalEncounter: Fixed quest turn in bug, as submitted by Malcolm.
LethalEncounter: Fixed bug that allowed you to gain xp from killing yourself.
LethalEncounter: Fixed HP/Power regen bug submitted by Seleandalos and John.
LethalEncounter: Fixed facial hair bug as submitted by John.


Build 137

9/13/2008:
LethalEncounter: Modified the way that spawn scripts are stored and used.

  • You can now specify a spawn script for a specific spawn_id, spawngroup_id, or spawn_entry_id.
  • The scripts are now loaded when needed instead of loading all of them at startup.
  • You must specify the absolute path to the structs now. This allows for additional organization.

LethalEncounter: Added /spawn set commands: spawn_script, spawngroup_script, and spawnentry_script.
LethalEncounter: Modified quests to take a percentage argument for the Kill and Item steps.


Build 136

9/12/2008:
LethalEncounter: Changed the way that /zone list worked.
LethalEncounter: Fixed the 'You stop fighting' bug.


Build 131

8/31/2008:
LethalEncounter: Added SetStepComplete function to Quests to take the place an automatic updating hail.
LethalEncounter: Fixed /reload quests
LethalEncounter: Fixed a few issues with multithreading.
LethalEncounter: Fixed a few bugs with the quest system.
LethalEncounter: Added several new LUA functions for the quest system.


Build 130

8/30/2008:
LethalEncounter: Converted spell system over to the two table spell system that will reduce redundant data considerably.
LethalEncounter: Changed a few column names for JA.
LethalEncounter: Added several new LUA commands.
LethalEncounter: Made quite a few struct changes to reduce redundancy.
LethalEncounter: Changed the wildcard for the starting tables to 255.
LethalEncounter: Removed the spawn type parameter requirement on several /spawn commands.
LethalEncounter: Added several new fields for spells thanks to paulgh.
LethalEncounter: Fixed a problem with the display of quests.
LethalEncounter: Fixed the LUA Spawn command.
LethalEncounter: Added display of book icon if the NPC has a chat quest update.


Build 127

8/18/2008:
LethalEncounter: Fixed sign display problem.
LethalEncounter: Fixed a couple of bugs with locks.


Build 126

8/17/2008:
LethalEncounter: Added interruptions for spells.
LethalEncounter: Fixed several bugs with spells that were causing odd behaviors.
LethalEncounter: Fixed bug with zones not shutting down properly.


Build 125

8/16/2008:
LethalEncounter: Fixed some spawn movement bugs.
LethalEncounter: Added city zone and always up options to the zones table. This allows you to boot up a zone without anyone in it.


Build 124

8/14/2008:
LethalEncounter: Fixed some problems with factions.
LethalEncounter: Fixed some issues with npc attacks.
LethalEncounter: Fixed a bug locking up the spell que.
LethalEncounter: Made the quest end spawn default to the quest start spawn.
LethalEncounter: Fixed a couple of annoying random crashes/glitches caused by corrupted memory pointers.
LethalEncounter: Improved the NPC attack code.


Build 122

8/10/2008:
LethalEncounter: Added ability for NPCs to attack each other based on factions.
LethalEncounter: Fixed a few crash errors with /repop, spawn scripts and combat.
LethalEncounter: Improved the spawn movement process.


Build 119

8/09/2008:
LethalEncounter: Added factions.
LethalEncounter: Fixed a crash bug associated with /spawn combine.
LethalEncounter: Fixed a bug with conversations.
LethalEncounter: Made some changes to the way NPC movement worked.


Build 118

8/07/2008:
LethalEncounter: Added /depop, /repop, and /spawn combine commands.
LethalEncounter: Made some fixes to the parser.
LethalEncounter: Fixed a couple of bugs with /spawn combine.
LethalEncounter: Added automatic retargeting of the master spawn when using /spawn combine.


Build 115

8/04/2008:
LethalEncounter: Added AddTimer LUA function.
LethalEncounter: Fixed a bug with entity commands.
LethalEncounter: Added ability for spawns to change their heading back to the original heading after 30 seconds.


Build 113

8/03/2008:
LethalEncounter: Added ability to zone with the zone ID.
LethalEncounter: Fixed a bug that was dropping client connections more often that it should have done.
LethalEncounter: Made more improvements to the questing system to be more like Live.


Build 110

8/02/2008:
LethalEncounter: Created questing system. This system is very robust and allows you to use LUA scripts to do just about anything.
LethalEncounter: Fixed a bug with structs that was preventing substructs from using the correct version.


Build 108

7/27/2008:
LethalEncounter: Fixed a bug with high level spawns being gray cons.


Build 107

6/30/2008:
LethalEncounter: Added /bug command. It will now forward all bugs to the login server which will save them for future use.


Build 106

6/22/2008:
LethalEncounter: Fixed various item bugs to work with the latest client.
LethalEncounter: Opcodes/structs updated to work with the latest client.
LethalEncounter: Version changed to 0.6.

Previous Branches

EQ2Emulator 0.5 Release
EQ2Emulator 0.4 Release
EQ2Emulator 0.3 Release
EQ2Emulator 0.2 Release
EQ2Emulator 0.1 Release
EQ2Emulator 0.0 - A New Beginning