Page 1 of 1

Equipping Items - game feedback

Posted: Mon Jul 20, 2009 7:28 am
by John Adams
When you attempt to put on an item you do not qualify to put on, I need an exact list of messaging the SOE Live game tells the player.

For instance, when I am a Paladin and try to put on a Wizard-only robe, what does it tell me?

If I try to drag a helm into a wrist slot, what does it say?

If I am not the right level yet?

If I do not possess the skill to wear the item?

Any other things you can think of. I am trying to work out a request to get "Unable to equip item" out of our server, and be a little more helpful on the info of why an item cannot be equipped.

TIA,

Re: Equipping Items - game feedback

Posted: Thu Jul 23, 2009 12:41 pm
by John Adams
So no one knows, huh?

Ok, I'll get the info myself.

Thanks

Re: Equipping Items - game feedback

Posted: Thu Jul 23, 2009 12:53 pm
by Scatman
I'll help you get these and then I can implement these things today after work (soon!)

Re: Equipping Items - game feedback

Posted: Thu Jul 23, 2009 1:08 pm
by John Adams
Thanks, Scat. I'll try and hop on tonight and get a few items/books and see what messages I get.

I was going to write the functions myself, but I'd rather you do it since you know what you're doing :D

Re: Equipping Items - game feedback

Posted: Thu Jul 23, 2009 1:29 pm
by Scatman
John Adams wrote:I was going to write the functions myself, but I'd rather you do it since you know what you're doing :D
Let's hope so ;)

Re: Equipping Items - game feedback

Posted: Thu Jul 23, 2009 4:25 pm
by John Adams
Here's my list.

Trying to scribe a book from which I have no skill, or not appropriate level to learn skill (white text):
You lack the knowledge required to scribe this item.
Trying to equip an item which is not for my class (red text):
Your class may not equip \aITEM -1144022714 1704393705:Rattling Boots\/a.
Trying to equip a higher level item than I am (red text):
You must be at least level 29 to equip \aITEM 1939786170 1646368341:a D'Morte insignia band\/a.
Trying to equip an item (a skill book) which is not equipable (white text):
Item Riana's Relentless Tune (Adept) isn't equipable.

The above is probably all we need to start. Others we can add as systems are implemented. Like:


Trying to "use" a store container outside a store slot (red text):
Store not currently open.

I also could not find a way to purposefully try to stick a Head item on my Arm slot. Whenever you drag the item over the inventory screen and let go, it goes where it's supposed to equip. If anyone knows a different way to do this, let me know... but I think this has no error message in Live.

Thanks Scat!

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 12:33 am
by Wdneq2
Closest I can get to an error , putting an item on/in the wrong slot is .
Image

Tried dragging helm (from head) to arm/cloak and chest..

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 6:33 am
by John Adams
Oh, excellent catch, Woody. I was dragging from inventory. Didn't even think to try head->arm, since in Emu (so far) you cannot do all these fancy swappings yet. Old habit ;)

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 11:04 am
by Scatman
LE, I was looking over how you handle equipping/unequipping/swapping items today so I can get this implemented for John and had a quick question. In Player::CanEquipItem you have

Code: Select all

if(item && ((item->generic_info.skill_req1 = 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req1)) && (item->generic_info.skill_req2 == 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req2)))
Is

Code: Select all

item->generic_info.skill_req1 = 0xFFFFFFFF
supposed to use the = operator? Because that's setting skill_req1 to int max which would mess up the next check wouldn't it?

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 11:21 am
by John Adams
That's actually the function I was going to break into 3 functions, instead of that huge If heh. HasSkill, CheckClass, CheckLevel.

As I read that comparison tho, I see it say "if generic OR you have the skill"... continue checking. Then of course it does the same "if generic2 OR you have the skill". I was told skill_id_req1 = 4294967295 = generic, same effect as 0.

No one should actually have 4294967295 as a skill, but I think the check is IF it is generic, or a valid skill_id.


Is that what you're asking? If not, I'll shut up and wait for LE.

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 11:29 am
by Scatman
Well notice there are two overall checks, one for req1 and one for req2.

Code: Select all

item->generic_info.skill_req1 = 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req1

Code: Select all

item->generic_info.skill_req2 == 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req2
See how with skill_req1, the '=' operator is used which sets a value and does not check it. In req2, the '==' operator is used which checks it.

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 11:35 am
by John Adams
Oh haha. Wow, yes. Pretty sure it's a compare, not a set :)

Who wrote that code anyway?! ;)

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 11:41 am
by Scatman
Hehe I thought so but I wanted to double check. There are times when doing something like that could be useful but 97.4262623% of the time (at least in my case) it's always a typo :)

Re: Equipping Items - game feedback

Posted: Fri Jul 24, 2009 12:41 pm
by LethalEncounter
Scatman wrote:LE, I was looking over how you handle equipping/unequipping/swapping items today so I can get this implemented for John and had a quick question. In Player::CanEquipItem you have

Code: Select all

if(item && ((item->generic_info.skill_req1 = 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req1)) && (item->generic_info.skill_req2 == 0xFFFFFFFF || skill_list.HasSkill(item->generic_info.skill_req2)))
Is

Code: Select all

item->generic_info.skill_req1 = 0xFFFFFFFF
supposed to use the = operator? Because that's setting skill_req1 to int max which would mess up the next check wouldn't it?
Heh, nope good catch. That was definitely a typo :)