Developer:Release 0.1
EQ2Emulator 0.1 Release
EQ2Emulator v0.1 was released on October 13, 2007 by Lethalencounter.
Pre-Release additional developers: Cadimiom, ferthala, and Ritojo.
The following is the pre-release changelog
Build 0.1.1
10/13/2007:
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:
LethalEncounter: Updated to live.
10/07/2007:
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:
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:
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:
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:
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:
Cadimiom: Fixed an exploit with packets sent to the LS without authentication.
08/28/2007:
LethalEncounter: Got spell requirements working. Now it will check to verify that an effect should be fired.
08/27/2007:
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:
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:
Cadimiom: Eliminated hash collissions in the VisualStates, plus additional memory reduction.
08/21/2007:
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.
- 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:
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:
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:
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:
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:
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
- 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"
- It's first use is for handling the world MOTD in the database.
08/10/2007:
LethalEncounter: Fixed a few login bugs.
08/09/2007:
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:
- Save character now saves the zone name to current_zone instead of zone.
- 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';
- I have noticed some zones do not work properly
- (befallen and boat_freeport for examples) and may get stuck in there.
- Save character now saves the zone name to current_zone instead of zone.
08/07/2007:
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.
- 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.
- This solves the problem with crashing after creating a new character.
08/06/2007:
LethalEncounter: Added wing and hair types to spawn struct.
LethalEncounter: Updated character sheet packet for latest client.
08/05/2007:
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:
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.
- 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:
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:
Cadimiom: Hardcoded an ability and quick bar initialization packets for world login.
Cadimiom: Dynamic structures added for CommandName and CommandMOTD.
07/28/2007:
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:
LethalEncounter: Restarted project
Release Files
Files available via Sourceforge as well as SVN.
Previous Releases
Current Development
EQ2Emulator 0.6
EQ2Emulator 0.5
EQ2Emulator 0.4
EQ2Emulator 0.3
EQ2Emulator 0.2
EQ2Emulator 0.1
Previous Releases - A New Beginning