Implementing: AA/Character Traits

EQ2Emulator Development forum.

Moderator: Team Members

Post Reply
User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Sun Jan 01, 2012 2:38 pm

Jabantiz,

You'll be sad to know, Traits appears to be crashing EQ2World. I am going to investigate it now that I've gotten some portal module work done, see if I can track it down.

When you log in with the data loaded in the tables, and ding 10, you can see the traits. Even if I do not select one, if I /zone to a new zone, the world crashes (or at least the current zone does -- behaves differently in Debug than it does in Release... of course).

I'll let you know if I figure out what it is. This is why the 0.7.0 release went out without your cool Traits work :( sorry to say

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Sun Jan 01, 2012 11:52 pm

I have chased this thing as far as I think I can. I kept commenting calls out until I found one that let me log in. The last one in that failed was ClientPacketFunctions::SendTraitList(). The commented out DumpPacket(traitApp) shows the packet fine, so I know I am getting into that function, however the client->QueuePacket(traitApp) is shitting the bed.

DumpPacket Data:

Code: Select all

   0: 0F 08 FF 59 00 FF FF 40 - 42 0F 00 00 00 00 00 06  | ...Y...@B.......
  16: 00 42 72 61 77 6E 79 5A - 00 FF FF 41 42 0F 00 00  | .BrawnyZ...AB...
  32: 00 00 00 06 00 4E 69 6D - 62 6C 65 8F 02 FF FF 42  | .....Nimble....B
  48: 42 0F 00 00 00 00 00 07 - 00 44 75 72 61 62 6C 65  | B........Durable
  64: 04 00 FF FF 43 42 0F 00 - 00 00 00 00 0A 00 49 6E  | ....CB........In
  80: 73 69 67 68 74 66 75 6C - 2A 00 FF FF 44 42 0F 00  | sightful*...DB..
  96: 00 00 00 00 06 00 43 6C - 65 76 65 72 1C FF 59 00  | ......Clever..Y.
 112: FF FF 45 42 0F 00 00 00 - 00 00 08 00 4D 75 73 63  | ..EB........Musc
 128: 75 6C 61 72 5A 00 FF FF - 46 42 0F 00 00 00 00 00  | ularZ...FB......
 144: 04 00 53 70 72 79 8F 02 - FF FF 47 42 0F 00 00 00  | ..Spry....GB....
 160: 00 00 08 00 45 6E 64 75 - 72 69 6E 67 04 00 FF FF  | ....Enduring....
 176: 48 42 0F 00 00 00 00 00 - 0B 00 45 6E 6C 69 67 68  | HB........Enligh
 192: 74 65 6E 65 64 2A 00 FF - FF 49 42 0F 00 00 00 00  | tened*...IB.....
 208: 00 05 00 53 61 76 76 79 - 30 FF 59 00 FF FF 4A 42  | ...Savvy0.Y...JB
 224: 0F 00 00 00 00 00 08 00 - 50 6F 77 65 72 66 75 6C  | ........Powerful
 240: 5A 00 FF FF 4B 42 0F 00 - 00 00 00 00 04 00 44 65  | Z...KB........De
 256: 66 74 8F 02 FF FF 4C 42 - 0F 00 00 00 00 00 08 00  | ft....LB........
 272: 52 65 73 6F 6C 75 74 65 - 04 00 FF FF 4D 42 0F 00  | Resolute....MB..
 288: 00 00 00 00 09 00 56 69 - 73 69 6F 6E 61 72 79 2A  | ......Visionary*
 304: 00 FF FF 4E 42 0F 00 00 - 00 00 00 09 00 42 72 69  | ...NB........Bri
 320: 6C 6C 69 61 6E 74 44 FF - 59 00 FF FF 4F 42 0F 00  | lliantD.Y...OB..
 336: 00 00 00 00 06 00 53 74 - 72 6F 6E 67 5A 00 FF FF  | ......StrongZ...
 352: 50 42 0F 00 00 00 00 00 - 05 00 41 67 69 6C 65 8F  | PB........Agile.
 368: 02 FF FF 51 42 0F 00 00 - 00 00 00 05 00 56 69 74  | ...QB........Vit
 384: 61 6C 04 00 FF FF 52 42 - 0F 00 00 00 00 00 04 00  | al....RB........
 400: 57 69 73 65 2A 00 FF FF - 53 42 0F 00 00 00 00 00  | Wise*...SB......
 416: 0B 00 49 6E 74 65 6C 6C - 69 67 65 6E 74 58 FF 59  | ..IntelligentX.Y
 432: 00 FF FF 54 42 0F 00 00 - 00 00 00 05 00 46 6F 72  | ...TB........For
 448: 63 65 5A 00 FF FF 55 42 - 0F 00 00 00 00 00 09 00  | ceZ...UB........
 464: 44 65 78 74 65 72 6F 75 - 73 8F 02 FF FF 56 42 0F  | Dexterous....VB.
 480: 00 00 00 00 00 08 00 56 - 69 67 6F 72 6F 75 73 04  | .......Vigorous.
 496: 00 FF FF 57 42 0F 00 00 - 00 00 00 0A 00 50 65 72  | ...WB........Per
 512: 63 65 70 74 69 76 65 2A - 00 FF FF 58 42 0F 00 00  | ceptive*...XB...
 528: 00 00 00 05 00 53 68 61 - 72 70 0F FF 93 00 FF FF  | .....Sharp......
 544: 59 42 0F 00 00 00 00 00 - 05 00 48 61 72 64 79 95  | YB........Hardy.
 560: 00 FF FF 5A 42 0F 00 00 - 00 00 00 0C 00 57 61 72  | ...ZB........War
 576: 6D 20 42 6C 6F 6F 64 65 - 64 94 00 FF FF 5B 42 0F  | m Blooded....[B.
 592: 00 00 00 00 00 08 00 48 - 79 67 69 65 6E 69 63 96  | .......Hygienic.
 608: 00 FF FF 5C 42 0F 00 00 - 00 00 00 06 00 49 6E 74  | ...\B........Int
 624: 65 6E 74 FF FF FF FF FF - FF FF FF FF FF FF FF 00  | ent.............
 640: 00 1E FF 93 00 FF FF 5D - 42 0F 00 00 00 00 00 09  | .......]B.......
 656: 00 52 65 73 69 73 74 61 - 6E 74 95 00 FF FF 5E 42  | .Resistant....^B
 672: 0F 00 00 00 00 00 08 00 - 46 69 72 65 62 6F 72 6E  | ........Fireborn
 688: 94 00 FF FF 5F 42 0F 00 - 00 00 00 00 08 00 50 72  | ...._B........Pr
 704: 69 73 74 69 6E 65 96 00 - FF FF 60 42 0F 00 00 00  | istine....`B....
 720: 00 00 06 00 57 69 6C 6C - 65 64 FF FF FF FF FF FF  | ....Willed......
 736: FF FF FF FF FF FF 00 00 - 2D FF 93 00 FF FF 61 42  | ........-.....aB
 752: 0F 00 00 00 00 00 05 00 - 54 6F 75 67 68 95 00 FF  | ........Tough...
 768: FF 62 42 0F 00 00 00 00 - 00 09 00 52 65 73 69 6C  | .bB........Resil
 784: 69 65 6E 74 94 00 FF FF - 63 42 0F 00 00 00 00 00  | ient....cB......
 800: 06 00 44 65 76 6F 75 74 - 96 00 FF FF 64 42 0F 00  | ..Devout....dB..
 816: 00 00 00 00 09 00 52 65 - 63 6F 6E 64 69 74 65 FF  | ......Recondite.
 832: FF FF FF FF FF FF FF FF - FF FF FF 00 00 3C FF 93  | .............<..
 848: 00 FF FF 65 42 0F 00 00 - 00 00 00 08 00 48 61 72  | ...eB........Har
 864: 64 65 6E 65 64 95 00 FF - FF 66 42 0F 00 00 00 00  | dened....fB.....
 880: 00 09 00 57 65 61 74 68 - 65 72 65 64 94 00 FF FF  | ...Weathered....
 896: 67 42 0F 00 00 00 00 00 - 06 00 50 75 72 69 74 79  | gB........Purity
 912: 96 00 FF FF 68 42 0F 00 - 00 00 00 00 0A 00 43 61  | ....hB........Ca
 928: 62 61 6C 69 73 74 69 63 - FF FF FF FF FF FF FF FF  | balistic........
 944: FF FF FF FF 00 00 4B FF - 93 00 FF FF 69 42 0F 00  | ......K.....iB..
 960: 00 00 00 00 05 00 52 69 - 67 69 64 95 00 FF FF 6A  | ......Rigid....j
 976: 42 0F 00 00 00 00 00 09 - 00 46 72 6F 73 74 62 6F  | B........Frostbo
 992: 72 6E 94 00 FF FF 6B 42 - 0F 00 00 00 00 00 08 00  | rn....kB........
1008: 53 61 6E 69 74 61 72 79 - 96 00 FF FF 6C 42 0F 00  | Sanitary....lB..
1024: 00 00 00 00 07 00 43 72 - 79 70 74 69 63 FF FF FF  | ......Cryptic...
1040: FF FF FF FF FF FF FF FF - FF 00 00 5A FF 93 00 FF  | ...........Z....
1056: FF 6D 42 0F 00 00 00 00 - 00 0A 00 55 6E 79 69 65  | .mB........Unyie
1072: 6C 64 69 6E 67 95 00 FF - FF 6E 42 0F 00 00 00 00  | lding....nB.....
1088: 00 0C 00 43 6F 6C 64 20 - 42 6C 6F 6F 64 65 64 94  | ...Cold Blooded.
1104: 00 FF FF 6F 42 0F 00 00 - 00 00 00 09 00 55 6E 74  | ...oB........Unt
1120: 61 69 6E 74 65 64 96 00 - FF FF 70 42 0F 00 00 00  | ainted....pB....
1136: 00 00 0C 00 54 72 61 6E - 73 63 65 6E 64 65 6E 74  | ....Transcendent
1152: FF FF FF FF FF FF FF FF - FF FF FF FF 00 00 16 FF  | ................
1168: 93 00 FF FF 71 42 0F 00 - 00 00 00 00 06 00 53 74  | ....qB........St
1184: 75 72 64 79 95 00 FF FF - 72 42 0F 00 00 00 00 00  | urdy....rB......
1200: 08 00 53 74 61 6C 77 61 - 72 74 94 00 FF FF 73 42  | ..Stalwart....sB
1216: 0F 00 00 00 00 00 08 00 - 43 65 6E 74 65 72 65 64  | ........Centered
1232: 96 00 FF FF 74 42 0F 00 - 00 00 00 00 04 00 43 61  | ....tB........Ca
1248: 6C 6D FF FF FF FF FF FF - FF FF FF FF FF FF 00 00  | lm..............
1264: 2A FF 93 00 FF FF 75 42 - 0F 00 00 00 00 00 05 00  | *.....uB........
1280: 53 74 6F 75 74 95 00 FF - FF 76 42 0F 00 00 00 00  | Stout....vB.....
1296: 00 07 00 48 65 61 6C 74 - 68 79 94 00 FF FF 77 42  | ...Healthy....wB
1312: 0F 00 00 00 00 00 07 00 - 46 6F 63 75 73 65 64 96  | ........Focused.
1328: 00 FF FF 78 42 0F 00 00 - 00 00 00 05 00 4C 75 63  | ...xB........Luc
1344: 69 64 FF FF FF FF FF FF - FF FF FF FF FF FF 00 00  | id..............
1360: 3E FF 93 00 FF FF 79 42 - 0F 00 00 00 00 00 06 00  | >.....yB........
1376: 52 6F 62 75 73 74 95 00 - FF FF 7A 42 0F 00 00 00  | Robust....zB....
1392: 00 00 06 00 4C 69 76 65 - 6C 79 94 00 FF FF 7B 42  | ....Lively....{B
1408: 0F 00 00 00 00 00 07 00 - 48 61 6C 63 79 6F 6E 96  | ........Halcyon.
1424: 00 FF FF 7C 42 0F 00 00 - 00 00 00 09 00 41 74 74  | ...|B........Att
1440: 65 6E 74 69 76 65 FF FF - FF FF FF FF FF FF FF FF  | entive..........
1456: FF FF 00 00 52 FF 93 00 - FF FF 7D 42 0F 00 00 00  | ....R.....}B....
1472: 00 00 09 00 44 61 75 6E - 74 6C 65 73 73 95 00 FF  | ....Dauntless...
1488: FF 7E 42 0F 00 00 00 00 - 00 08 00 49 6E 74 72 65  | .~B........Intre
1504: 70 69 64 94 00 FF FF 7F - 42 0F 00 00 00 00 00 06  | pid.....B.......
1520: 00 53 65 72 65 6E 65 96 - 00 FF FF 80 42 0F 00 00  | .Serene.....B...
1536: 00 00 00 0D 00 43 6F 6E - 63 65 6E 74 72 61 74 69  | .....Concentrati
1552: 6F 6E FF FF FF FF FF FF - FF FF FF FF FF FF 00 00  | on..............
1568: 00 01 0A 00 41 74 74 72 - 69 62 75 74 65 73 03 00  | ....Attributes..
1584: 00 00 00 00 85 42 0F 00 - 00 00 00 00 10 00 54 75  | .....B........Tu
1600: 6E 64 72 61 20 45 6E 64 - 75 72 61 6E 63 65 00 00  | ndra Endurance..
1616: 00 00 00 86 42 0F 00 00 - 00 00 00 11 00 49 6D 70  | ....B........Imp
1632: 65 6E 65 74 72 61 62 6C - 65 20 57 69 6C 6C 00 00  | enetrable Will..
1648: 00 00 00 87 42 0F 00 00 - 00 00 00 12 00 53 70 72  | ....B........Spr
1664: 69 6E 74 20 69 6E 74 6F - 20 42 61 74 74 6C 65 00  | int into Battle.
1680: 00                                                 | .
If I remove the Traits data from the Spells tables, I also have zero problems logging in. So until this is resolved, I won't commit the Traits data to the PatchServer just yet.

Note:
I found out the zone crashing was actually caused by one of my fat-fingered logging attempts. The crash caused by Traits is client-side, so it is a total bitch for me to debug. World doesn't seem to think anything is wrong. Adding Logging doesn't seem to be helping, either. It's in the QueuePacket. Does that mean the data is bad?

This is current SVN, with 6118L client.



Edit: I also could not seem to slip in a PrintPacket() for some reason. I thought you could do that with EQ2Packet* thingies?

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: Character Traits

Post by Jabantiz » Mon Jan 02, 2012 3:42 am

If it is a client crash then there must be something wrong with the packet being sent. When I have the time I will download the data that Zcoretri uploaded and try to figure out what is wrong. I will try to get to this tomorrow (later today at the time of this post) but I make no promises that I will actually be able to get to it.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Mon Jan 02, 2012 10:54 am

No worries man, I'm still looking into it myself. Hoping to understand how Traits work at all... like can I use just a little of the data, vs ALL that Zcoretri data? Maybe it's just 1 element of Traits data blowing the Packet. Scatman offered to look, too... so don't sweat it.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Mon Jan 02, 2012 11:31 am

Scat, here's all Z's queries, combined into a single file (restore from file)
You do not have the required permissions to view the files attached to this post.

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Character Traits

Post by Scatman » Mon Jan 02, 2012 11:53 am

Traits appear to be working properly. Apparently someone forgot which eq2emu folder he was working in and didn't update his structs :P

Now that that's worked out, has there been discussion on how to apply the traits' properties (eg. +10% hp)?

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Mon Jan 02, 2012 1:18 pm

:oops: :oops: :oops: :oops: :oops: :oops: :oops:

I'll be over here, eating some nice, tasty crow.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: Character Traits

Post by Jabantiz » Mon Jan 02, 2012 6:15 pm

Thanks Scatman for looking into this, doubt I would have been able to figure out it was a struct problem.

As for adding support for passive spells, I have no idea where to begin on that. I haven't had a chance to take an indepth look at how spells work yet. My best guess at this point would be to some how make them an auto cast maintained spell, if it is even possible to have a maintained spell with no icon on th UI.

User avatar
Zcoretri
Team Member
Posts: 1642
Joined: Fri Jul 27, 2007 12:55 pm
Location: SoCal

Re: Character Traits

Post by Zcoretri » Tue Jan 03, 2012 7:19 am

Scatman wrote:Traits appear to be working properly. Apparently someone forgot which eq2emu folder he was working in and didn't update his structs :P

Now that that's worked out, has there been discussion on how to apply the traits' properties (eg. +10% hp)?
No discussion until now :mrgreen:
I would like to get this implemented very soon :!:

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Tue Jan 03, 2012 9:35 am

Zcoretri wrote:I would like to get this implemented very soon :!:
Me too. Right now, this is the only "sure thing" on the 0.7.1 todo list, aside from bug fixes.


btw, *any* of you should be able to go here and update the Project Status "target version" on the tasks you want to complete by when.

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Character Traits

Post by Scatman » Tue Jan 03, 2012 4:36 pm

Jabantiz wrote:As for adding support for passive spells, I have no idea where to begin on that. I haven't had a chance to take an indepth look at how spells work yet. My best guess at this point would be to some how make them an auto cast maintained spell, if it is even possible to have a maintained spell with no icon on th UI.
I think that'd be the best way to go.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Fri Jan 06, 2012 8:44 am

Jabantiz, I have another question about Traits. This is in regards to the chosen data storage.

You designed a new table: spell_traits
SpellTraits.jpg
My question is, why didn't you use the existing spell_classes, which has the adventure_class_id, tradeskill_class_id, and level values already in it? And couldn't `IsInate` and `group` have been added to spell_tiers? Just trying to understand the data better, since I am laying out a redeux of the Spells structures anyway.

It's fine the way it is, but I might want to change it unless you tell me there is some reason it could not be done the other way (sorry, I just do not understand Traits data entirely yet).

Thanks!
You do not have the required permissions to view the files attached to this post.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: Character Traits

Post by Jabantiz » Fri Jan 06, 2012 1:17 pm

You need a race id for the racial traits, and level IS NOT the spell level it is the level of the choice. Like I said before, database stuff is my weak point, this very well could have been done better, so feel free to change it around if you want.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Fri Jan 06, 2012 1:26 pm

Ahh, I gotcha. I will attempt to sniff through the code to see if I can re-org it any. Thing is I am planning a redesign of Spells in general, little bit here and there, and was stumped on what to do with this new table.

What I might end up doing is what LE originally was planning, and that was separate Spells from Traits and AA all in their own table structures, to avoid confusion (on the data side). Might be crossing too many streams once we get these other pieces hooked up.

No worries, it works as it is. I was just curious ;)

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Character Traits

Post by John Adams » Sat Jan 14, 2012 4:57 pm

I'm sad to report, I am having a devil of a time with Traits - not when the code is operating on it's own, but soon as I source in Zcoretri's data. The data itself looks okay, so I am assuming at this point that there is some bug in Traits that I am the only one who sees it :shock:

Jabantiz, you are using >all< the data provided by Zcoretri above? If so, I cannot understand why yours works, and mine completely crashes. I have too much going on today to give you details, so since you're busy too, give me a few days to settle down and give you a precise accounting of what the hell is going on.

The thing that sucks is, I cannot even debug it in World. If I could, I might be able to fix it myself.

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests