Jump to content
Sign in to follow this  
Displacer

PST: CRE

Recommended Posts

The unknown 5 bytes at 0x031a are processed as a whole, and they are processed along with the other .IDS entries around it. It checks if the first byte is zero, if it is it sets all 5 bytes to zero in memory. If the first byte is non-zero it moves all 5 into memory as is. Since they are processed along with all the other .IDS entries around it, could it be a .IDS entry of some sort too?

Share this post


Link to post

Yep, they are. Take a look at them in NearInfinity: they're Functional spec. 1-5. Basically there where the engine determines the OBJECT.IDS attributes assigned to a given creature.

Share this post


Link to post

I'm at the inventory processing function, and the inventory slot just after quiver 5 looks like its another quiver slot. Some of the inventory slots are processed in loops (weapon 1-4, quick item 1-5, quiver 1-5) and this slot is processed in the quiver loop so apparently they had 6 quiver slots available at one time. The slot is still processed so it may be possible to use it, although you would have to put something in there in an editor.

Share this post


Link to post

Just after the inventory slots there are 3 words. The first one is marked as "selected", the other 2 aren't even listed. I don't thing the first word is used in PST, the second word looks like its the selected weapon (offset in the 4 weapon slots, so a value of 3 here would be weapon 4) There are two special cases for this value, 0xFFFF or 0x3E8, I don't know yet what these special cases do however. Haven't figured out the third word, but it looks like its another selected thing, although I'm not sure what.

Edited by Displacer

Share this post


Link to post

0x3e8 = 1000, it is when the selected weapon is bare hand.

You will see other weird values on Nordom, who has quiver.

I think you somehow miscalculated the inventory size, as the 'selected' slot is after the inventory.

 

Btw, you can get the selected weapon slot by this formula:

 

1000 - barehanded

other: Add the slot index of the first melee weapon to this signed word value.

This means, quivers will have a negative value, as they are before the first melee weapon slot.

If you manage to equip a magic weapon, it will also have a special value.

 

Thanks for confirming the hidden quiver slot. I didn't believe someone who insisted on that one.

Edited by Avenger

Share this post


Link to post

Don't think I miscalculated the offset but its possible. If you open the creature in NI you can see at the bottom there are 3 unknown words, the first after the last slot would be the selected as per the IESDP, but it is not this one that is being used, its the one below it, the second one. Take a look and let me know if I did screw up. The code is accessing offset 0x5C from the start of the slots, so if you could double check my math I would appreciated it.

 

Yea, I just traced the function and if you select an empty weapon slot that value will be put in there, and it will equip the default weapon, which would be teeth for Morte, fist for Nameless, etc.

Share this post


Link to post

Here is a snippet from a PST saved game.

 

0004ceh 43-Inventory 0017

0004d0h 44-Inventory ffff

0004d2h 45-Magic ffff

0004d4h Equipped 00000001

0004d8h Items

0004d8h Item #0

0004d8h Item R98

 

No gaps around Equipped (which is a dword, in every incarnation of .cre on IESDP)

 

 

Also:

00035ch Itemslots 00000478 <--- start of PST inventory slots

000360h Item offset 000004d8 <--- 4d8

000364h Item count 00000018

Edited by Avenger

Share this post


Link to post
Here is a snippet from a PST saved game.

 

0004ceh 43-Inventory 0017

0004d0h 44-Inventory ffff

0004d2h 45-Magic ffff

0004d4h Equipped 00000001

0004d8h Items

0004d8h Item #0

0004d8h Item R98

 

No gaps around Equipped (which is a dword, in every incarnation of .cre on IESDP)

 

 

Also:

00035ch Itemslots 00000478 <--- start of PST inventory slots

000360h Item offset 000004d8 <--- 4d8

000364h Item count 00000018

 

Ah, so there is a "magic" entry after the last inventory slot? This is not listed on IESDP which is why things are not adding up. I did miss the selected as a dword though, but the code I'm looking at treats "selected" as a word, and also accesses the word after it separately.

Share this post


Link to post

That is the magic weapon slot, it should be around :)

 

IGI: the magic weapon slot (you call it fist sometimes) exists in all .cre formats.

Edited by Avenger

Share this post


Link to post
That is the magic weapon slot, it should be around :)

 

Well now everything adds up. Thanks! That slot doesn't appear to be used in PST though, but maybe its used elsewhere so I can't say for sure. I'll see if I can track down why the selection is treated as a word, and what the other value is used for.

Share this post


Link to post

BG series have Magic weapon, Weapon slot selected, Selected weapon ability.

 

They also have a phantom quiver slot (which should work IIRC, but isn't accessible to the GUI).

Edited by devSin

Share this post


Link to post
They also have a phantom quiver slot (which should work IIRC, but isn't accessible to the GUI).

 

Yea, I already found that and posted it earlier

Share this post


Link to post
Yep, they are. Take a look at them in NearInfinity: they're Functional spec. 1-5. Basically there where the engine determines the OBJECT.IDS attributes assigned to a given creature.

 

Thanks, so a creature can have 5 object.ids things attached to it correct?

 

As a side note, the way these slots are processed when the creature is loaded it checks the first slot, if it is zeroed, then it zeros all the other slots so if you are editing a creature and clear something here, make sure you have something in the first slot or you will lose all the other slots.

Share this post


Link to post

I'm not sure you can even edit them like that, since my guess is they're handled on the fly to tell the current states of the target character.

Share this post


Link to post
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...