No categories assigned

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.

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

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:
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:

  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';
  1. I have noticed some zones do not work properly
(befallen and boat_freeport for examples) and may get stuck in there.


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.

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:
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.

LethalEncounter: Updated ZoneInfo struct.


07/30/2007:
LethalEncounter: Found the last packet needed to login to World! emoticon
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 emoticon


Release Files

Files available via Sourceforge as well as SVN.

Source Binaries


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