Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Development

Development::Development Forum for development topics and for those interested in EQEMu development. (Not a support forum)

Reply
 
Thread Tools Display Modes
  #1  
Old 07-09-2010, 10:19 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default Steam Underfoot Development Tracking

This thread was created to help keep track of the development of the newly updated "Starter Pack" from Steam which previously included up to SoD. The SoD client on Steam has now been replaced with an Underfoot client from June 8th 2010.

This thread can be used as a reference for what needs work, and who is working on what. I will try to keep this post updated as people update the thread with any progress or notes.

This thread can be used for any development related work or concerns as well as to report any bugs with the client that haven't already been documented.

The Underfoot Steam client is mostly functional, but has plenty of remaining bugs to iron out. This thread will be focused on Underfoot specific bugs, not general bugs that exists in some or all other clients. Because we are already tracking all of the known issues with SoD in another thread, this thread will not repeat those same issues. For reference, see the SoD Development Thread.


Last Update - July 10th 2011


Top Priority Work:


Medium Priority Work:
1. Levitate - Levitate works if cast in the current zone, but after zoning the buff remains, but the floating effect does not.


Low Priority Work:
None at the moment.


Client Issues:
1. Drakkin Male Animations - The Steam download is missing the file dkm_anims.eqg file that controls Drakkin Male animations. This causes Male Drakkin to hover over the ground frozen sideways. This can be resolved by copying that file from a previous client (SoF or SoD) into the Underfoot installation folder.
2. dbstr_us.txt - The dbstr_us.txt that comes with the UF client from Steam is not complete and causes some AAs and Combat Ability descriptions to show DB String Errors. This can be resolved by copying that file from a previous client (SoF or SoD) or a current EQLive patched client into the Underfoot installation folder.
3. Certain Zone Files - Some of the zone files are missing such as postorms.s3d, bothunder.s3d, delveb.eqg, maybe a qvic zone and possibly more. These can all be copied from a previous client folder into UF to make them functional.

Note: A more complete list of missing Underfoot files can be found in the wiki HERE.


Database and Source Code Changes that will be needed at some point:
None Yet


New Systems to Underfoot that did not exist in SoD:
None Yet


Issues with Newly Implemented Systems that did not exist in Titanium:
None Yet


Recently Resolved Issues:
1. Spells - Spells seem to be casting fine now (Thanks KLS).
2. Environment Damage - Working properly now.
3. Disciplines - Disciplines appear to activate and function properly (Thanks KLS).
4. Buff Icons - Buff Icons now show correctly (Thanks KLS).
5. Tracking - Tracking is now functional (Thanks Derision).
6. Find Person - Now functional (Thanks Derision).
7. Buffs - Buffs can now be clicked off (Thanks Derision).
8. AAs - AAs should now be as functional as they are on SoD (Thanks Derision).
9. Pets - Pet controls and buff windows should now be fully functional (Thanks Derision).
10. LDoN Stats - The LDoN Stats Window now reports points correctly (Thanks Derision).
11. Chat Server - The UCS now works with Underfoot and later clients.
12. Bard songs affecting run speed should now work correctly.
13. /emote now works for Underfoot clients.
14. New Guild Creation window works (if enabled by a rule).

Attaining the Steam Underfoot Client:
The client EQEmu uses for Underfoot is from Steam (currently $19.99) here:
http://store.steampowered.com/app/24130/

This post will be updated again regularly with current development status. Devs, please feel free to edit this post as needed.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by Derision; 07-10-2011 at 12:06 PM..
Reply With Quote
  #2  
Old 07-10-2010, 12:18 AM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

AAs do not display or purchase properly.
Basic spell casting should work but discipline spell casting is off and didn't try clickies yet.
Reply With Quote
  #3  
Old 07-10-2010, 06:22 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Clicky items are fine. Since they are now handled by the server completely as of SoD, I don't think they will break any time soon.

I found that there is a new packet that handles the buff icons now. Here is an example from a collect:

Code:
[OPCode: 0x2121 OP_Unknown [Server->Client] [Size: 36]
000 | ca 52 00 00 3e 00 00 00 01 01 00 00 00 00 00 40  | .R..>..........@
016 | 52 00 00 68 01 00 00 00 00 00 00 54 65 73 74 69  | R..h.......Testi
032 | 75 73 00 00                                      | us..
So, based on that packet, I think the structure is something like this:

Code:
// Variable Length Struct - Sends Buff Icon information for Underfoot+
struct BuffIcon_Struct
{
/*00*/	uint32 entity_id;		// Entity ID of client
/*04*/	uint32 unknown04;		// Seen 62 and 6000 from examples
/*08*/	uint8 unknown08;		// Seen 1 - Maybe this tells it which buff window to go to?
/*09*/	uint8 buffcount;		// Total number of buffs
/*10*/	uint8 unknown10;		// Seen 0
/*11*/	uint32 unknown11;		// Seen 0
/*15*/	int32 spell;			// Spell id for the buff
/*19*/	uint32 duration;		// Duration in tics
/*23*/	uint32 unknown34;		// Seen 0
/*27*/	char name;				// Name of the Client (Null Terminated) - Or some other string/name
/*00*/	uint8 buffslot;		// Starts at 0
/*00*/
};
I am unsure what the 62 in unknown04 is for yet. I am guessing that some of the uint8s are toggles for stuff like being able to click the buff off, and one of them is probably for telling it which window to send the icon to. There may even be one for telling it which buff slot to put it in, but I haven't tested that far yet.

These buff icons carry over perfectly when zoning, so I think we only need to add it to the casting part and it should be good. That should resolve one of the biggest client issues so far
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 07-10-2010 at 02:51 PM..
Reply With Quote
  #4  
Old 07-10-2010, 06:26 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Also, here are the structs I have for OP_Action:

Code:
struct Action_Struct
{
/*00*/	int16 target;			// id of target
/*02*/	int16 source;			// id of caster
/*04*/	uint16 level;			// level of caster - Seen 0
/*06*/	uint16 instrument_mod;	// Seen 0
/*08*/	uint16 unknown08;		// Was uint32
/*10*/	float unknown10;		// New field to Underfoot - Seen 1
/*14*/	uint32 unknown14;		// Was uint16
/*18*/	float sequence;
/*22*/	uint32 unknown22;		// Seen 0
/*26*/	int8 type;				// 231 (0xE7) for spells
/*27*/	uint32 damage;
/*31*/	int16 unknown31;		// New field to Underfoot - Seen 0
/*33*/	int16 spell;			// spell id being cast
/*35*/	int8 level2;			// level of caster again? Or maybe the castee
/*36*/	int8 buff_unknown;		// if this is 4, a buff icon is made
/*37*/
};

struct ActionAlt_Struct
{
/*00*/	int16 target;			// id of target
/*02*/	int16 source;			// id of caster
/*04*/	uint16 level;			// level of caster - Seen 0
/*06*/	uint16 instrument_mod;	// Seen 0
/*08*/	uint16 unknown08;		// Was uint32
/*10*/	float unknown10;		// New field to Underfoot - Seen 1
/*14*/	uint32 unknown14;		// Was uint16
/*18*/	float sequence;
/*22*/	uint32 unknown22;		// Seen 0
/*26*/	int8 type;				// 231 (0xE7) for spells
/*27*/	uint32 damage;
/*31*/	int16 unknown31;		// New field to Underfoot - Seen 0
/*33*/	int16 spell;			// spell id being cast
/*35*/	int8 level2;			// level of caster again? Or maybe the castee
/*36*/	int8 buff_unknown;		// if this is 4, a buff icon is made
/*37*/	int32 unknown37;		// New field to Underfoot - Seen 14
/*41*/	int8 unknown41;			// New field to Underfoot - Seen 0
/*42*/	int8 unknown42;			// New field to Underfoot - Seen 0
/*43*/	int8 unknown43;			// New field to Underfoot - Seen 0
/*44*/	int32 unknown44;		// New field to Underfoot - Seen 23
/*48*/	int32 unknown48;		// New field to Underfoot - Seen -1
/*52*/	int32 unknown52;		// New field to Underfoot - Seen -1
/*56*/	int32 unknown56;		// New field to Underfoot - Seen 0
/*60*/	int32 unknown60;		// New field to Underfoot - Seen 0
/*64*/
};
It is basically the same as KLS added to the SVN, accept sequence is at byte 18 instead of 20 and I have one of the new fields set to float. Noting it here to maybe mess with it more later. The sequence field may not even really matter, but maybe it does in some cases.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #5  
Old 07-10-2010, 07:43 AM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

Naturally I couldn't sleep so I was fiddling with this instead.

0x2121 appears to be OP_TargetBuffs from my collects. With a 17 byte buff entry and larger header than SoD. I find it used in the following cases from collects: Buff fades, Buff added, AA action, MouseTarget. So it looks like on live they expanded it to pretty much everything buff related.

Here's an example packet(I have quite a few more if needed):
Code:
[OPCode: 0x2121] OP_Unknown [Server->Client] [Size: 216]
4a 13 00 00 //entity id
70 17 00 00 //???
01 //seems to always be 0x01
0c //count
00 00 //???

00 //???
00 00 //???
83 26 00 00 //spell id
55 00 00 00 //tics
00 00 00 00 //???
00 //This is a name, I assume it has something to do with making buffs appear on the client
01 //probably buffslot

00 
00 00
96 4a 00 00 
f8 04 00 00 
00 00 00 00 
00 
02 

00 
00 00 
c1 4b 00 00 
55 00 00 00 
00 00 00 00 
00 
03 

00 
00 00 
e2 4b 00 00 
51 01 00 00 
00 00 00 00 
00 
04

00 
00 00 
e5 4b 00 00 
51 01 00 00 
00 00 00 00 
00
05 

00 
00 00 
1f 20 00 00 
44 00 00 00 
00 00 00 00
00 
06 

00 
00 00 
e2 46 00 00 
2d 01 00 00 
00 00 00 00 
00 
07 

00 
00 00 
e3 4a 00 00 
9d 01 00 00 
00 00 00 00 
00 
08 

00 
00 00 
93 47 00 00 
f4 06 00 00 
00 00 00 00 
00 
0a 

00 
00 00 
bf 48 00 00
e5 01 00 00
00 00 00 00 
00 
0b 

00 
00 00 
6f 05 00 00
99 01 00 00 
00 00 00 00 
00 
0c 

00 
00 00 
38 0d 00 00 
c8 05 00 00 
00 00 00 00 
00 
00
If correct it would mean the opcodes in our list are a bit swapped around; though not completely pushed up like normal cause the dz ones are after and only one of the dz opcodes didn't match it's SoD alignment. This may get tricksy.
Reply With Quote
  #6  
Old 07-10-2010, 02:46 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Well, that should help fill in the struct a bit more. I think we probably need a short duration buff example too so we know if that makes any difference. I edited the struct I posted above with your new fields.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #7  
Old 10-17-2010, 03:02 AM
Huppy's Avatar
Huppy
Demi-God
 
Join Date: Oct 2010
Posts: 1,333
Default

I was curious. This Underfoot "client" from Steam, on the site it shows
Underfoot : All-In-One Compilation Pack.
Is that a client that does not require (or force) one into patching with
"live". ?? (as in downloading and just storing on hard drive like the SoD client ?
Reply With Quote
  #8  
Old 10-18-2010, 08:05 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

This is not really a support thread. The answer is that you can currently get the SoD Starter Pack from Steam, and that includes the Underfoot client. But, that client still isn't fully supported, so I wouldn't really recommend it. I am kinda hoping that they release a download for House of Thule that is maybe more complete than their Underfoot download that is missing a couple of files.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #9  
Old 10-18-2010, 07:18 PM
jerryd87
Fire Beetle
 
Join Date: Oct 2010
Location: alot of places
Posts: 2
Default

Does the $40 house of thule download available not work? Sorry new to this and was just looking at steam and saw it came with all previous expansions
Reply With Quote
  #10  
Old 10-18-2010, 09:26 PM
steve
Discordant
 
Join Date: Jan 2002
Posts: 305
Default

Steam has HoT up, but it has not been fixed yet to work on the emu.
Reply With Quote
  #11  
Old 02-03-2011, 03:03 PM
sorvani
Dragon
 
Join Date: May 2010
Posts: 966
Default

SoD should work also.
Reply With Quote
  #12  
Old 02-03-2011, 09:06 PM
Yujiro93
Sarnak
 
Join Date: Jan 2011
Posts: 34
Default

exactly, i replaced or added the files in sorvani's list from my live client. Only bugs i seem to have is the persistant human skin for basilisks hatchlings in nektulos and a very bugged Commonlands zone.
If i #zone commons or ecommons i have no problems (old zones) but #zone commonlands (new one) have mobs with crazy pathing and no loot.
Also Commonlands.map is missing in maps folder so it may comes from there.
Reply With Quote
  #13  
Old 02-04-2011, 03:54 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

The new revamped versions of zones like commonlands haven't been worked on at all in the PEQ DB as far as I know. So, you will see mobs that are from packet collects, but that is about it. Lots of cleanup and loot tables, quests, etc have to be done manually to really finish a zone.

As for the new basilisk models showing as humans, I think that is due to them being removed from the global load file. You should be able to copy that file (globalload.txt) from another install like SoD or maybe Live and fix it.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #14  
Old 02-04-2011, 06:05 AM
Huppy's Avatar
Huppy
Demi-God
 
Join Date: Oct 2010
Posts: 1,333
Default

I also had to grab a file called bas.eqg from a live client to stop the basiliks from showing up as humans.
Reply With Quote
  #15  
Old 02-04-2011, 07:14 AM
Yujiro93
Sarnak
 
Join Date: Jan 2011
Posts: 34
Default

Replaced bas.eqg and globalload.txt and basilisks hatchlings are ok now.
Went to lavastorm and basilisks are ok too but found the same problem with lava crawlers. Do you know the name of .eqg file for lava crawlers?
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 03:06 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3