Jump to content

Customly filled soul gems picking up bug


Stealth21

Recommended Posts

I met a bug in next situation. Suppose I have a stack of an empty grand soulgems. I have no any grand soulgem filled by myself in my inventory, but have at least one empty grand soulgem. In front of me, in the location of game world, I see a stack of whatever ownership (which contains more than 1 pcs) of grand soulgems which are filled, for example, with a common souls. And when I pick it up, the quantity of the empty grand soulgems in the inventory is raised to the quantity of [picked_stack - 1]), and only one filled with the common soul grand soulgem is added from that picked up stack.

 

This situation of picking up the stack of customly filled soulgems independence of their ownership can be concluded like this:

- if player has no such type of customly filled soulgem in his/her inventory WHILE has at least one empty soulgem of that type - only one piece of the picked up filled soulgems type, and [that stack minus one] quantity of empty soulgems of that type will be added to player's inventory.

 

No bug in the each next circumstance:

- there was no empty soulgem of that type in the inventory

- there was at least one filled soulgem of equal type in the inventory

- that filled soulgem stack's quantity is just one piece

- picking up not from the game world but from the container/body

- not picking at all but adding the equal object using codes

- when the contrary conditions - player has any customly filled soulgem in his/her inventory WHILE has no any empty soulgem of that type. Picking up the stack of empty soulgems goes normally, it not merges with anything.

 

Looks like that is the engine's bug.

 

Also, I met another situation. For example, I have a 9 pcs stack of empty lesser soulgems. I am dropping it from the inventory. I see that there is not a single 9pcs stack falling down, but two/three items of different quantities, totally 9 pcs, thought. When picking them up, they are stacking in one stack. And when dropping them again, the situation persists, and not a single stack falling down.

Edited by Stealth21
Link to comment
Share on other sites

It can look like a bug but it is not. We have tested and played and debated soul gems for the last 6 months and here is our conclusions

 

There is above 30 different soul gems objects and if we peek at your specific object called SoulGemEmpty5Grand it can have 6 different states from Empty to grand soul. There is also 5 other grand soul gem objects that looks more static as they are prefilled and if you find those, then they act as you expect them to but the SoulGemEmpty5Grand will never act like you expect it to. As it is one single object, it will stack in 1 single stack, no matter which state it is in and that makes it impossible for us to sort them with a script as one example and the only way to do it is the way you did, to drop them at the floor and then they become references and can only stack with the right size of souls they have.

  • An object in an container or inventory is the base object
  • An Object out in the world has a reference number and is called reference.

So what can we do about it? Well delete all those objects from the game and start using the more static ones but it means that there will be no empty ones as it is the empty one that behave like this but we could add a script, that when you use soul trap at a target and when it dies, we delete the empty soul gem and replace it with am object called SoulGem5Grand3CommonSoul if the target now only are able to deliver a common soul.

 

We could also delete every damn soul gem, make new ones and add them in the misc section but then we need to make new enchanting tools as well with new scripts.

 

I have brainstormed this subject a lot and made loads of tests in game as I do want to make a perfect script that sorts and stack all those bloody soul gems and I failed so far. You do have the answer as it is to drop them, then sort them. I do that with a script for bottles.

 

CLINK

CLONK

CLINK

CLONK

CLINK

CLONK

 

 

So making one for soul gems in a similar way is possible

Edited by Pellape
Link to comment
Share on other sites

Try EngineBugFixes (in particular fix number 58 Inventory Fix from the mod description ... further details available in the readme).

 

I have used that one for a long time and it do not make any differences to the soul gems as that requires a lot of work, a complete remake really....

Yes, I am also using EngineBugFixes and have

bInstallMenuEntryMappingOverride=1
bInstallLeveledItemRemovalCountFix=1
bInstallItemStackCounterFix=1

in EngineBugFixes.ini .

Well, looks like the simple trick is that I have to never drop the customly filled soulgems into the world. Or be very cautions picking them up while having the empty ones...

...OR...

So what can we do about it? Well delete all those objects from the game and start using the more static ones but it means that there will be no empty ones as it is the empty one that behave like this but we could add a script, that when you use soul trap at a target and when it dies, we delete the empty soul gem and replace it with am object called SoulGem5Grand3CommonSoul if the target now only are able to deliver a common soul.

Soulgem Magic is a type of mod that could be a possible fix for that situation.

Indeed, there are "static" soulgems in the game, already prefilled (and could not be voided using the function "SetCurrentSoulLevel 0") which are in the Oblivion.esm from the beginning. I think that the SoulTrap magic effect released in incomplete state, and it's engine code should be reworked fitting in this logic:

- after the creature effected with ST dies, the check process triggers on that effect's caster;

- that check process checks for an appropriate soulgem (Azura's star is in the highest filling process priority, next - SoulGemEmpty1Petty, SoulGemEmpty2Lesser, SoulGemEmpty3Common, SoulGemEmpty4Greater and SoulGemEmpty5Grand are in a bit lower filling process priority, and other soulgems - tomato or from mods - in the lowest filling process priority) and it's owner;

Next, going according to the priority:

- when there is an empty Azura's Star - fill it in the currently implemented way;

- when there is one of the appropriate suitable SoulGemEmpty1Petty, SoulGemEmpty2Lesser, SoulGemEmpty3Common, SoulGemEmpty4Greater and SoulGemEmpty5Grand soulgems - remember it's ownership, remove one piece of it, add a "static" version of a soulgem of an appropriate type and ownership;

- when among the empty soulgems in the effect caster's inventory there is only a tomato or there are only the soulgems from the 3rd side mods - fill them in the currently implemented way.

 

As my opinion, I dislike Soulgem Magic mod of those implementations like Multi-soul gems and fulfilling the soul levels in the filled soulgems. The voider spell could be enough.

Edited by Stealth21
Link to comment
Share on other sites

Very nice settings. Maybe they will solve my ghost object bug? I will check if I have them set to 1 really. I hate to get NULL objects into my sorter database.

<no name> 00000000 

which I do delete in my scripts, if they finds them.

 

They are already set to 1.... :/ Every damn settings

Edited by Pellape
Link to comment
Share on other sites

As a matter of full disclosure ... I very very seldom have any custom/player filled soul gems in inventory beyond filled black soul gems (which will be deposited directly into one of my home's containers and/or one of my Packdonky's containers as soon as possible ... my guy doesn't walk around with his pockets bulging to the bursting point for longer than absolutely necessary).

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...