# Items are still vanishing from inventory

**URL:** <https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294>\
**Category:** Bug Discussion\
**Created:** [February 3, 2020, 4:29pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294 "2020-02-03T16:29:43Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 3, 2020, 4:29pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/1 "2020-02-03T16:29:43Z")

</div>

I was repacking gear between two teams and two Synedrion sniper helmets just vanished from inventory. I had 3 now I have 1.

I know about this problem:

> [@Items disappear in personell screen \[reproduceable + savegame\]](https://forums.snapshotgames.com/t/items-disappear-in-personell-screen-reproduceable-savegame/8543):
>
> BUG [reproduceable]: When scraping items, then other items disappear Savegame: [https://k2s.cc/file/3e7cb404153ab/BUG\_1.zsav](https://k2s.cc/file/3e7cb404153ab/BUG_1.zsav) CopyTo: C:\Users\ user \AppData\LocalLow\Snapshot Games Inc\Phoenix Point\EGS\ number \ I reported the same bug also ingame via F12. I post it here, so other people are informed and can try it out be themself. Load savegame Open „Personnel“ screen Open Soldier „BugTester“ \> Equipment Select „ALL“ + „Class Filter off“ for items Check: First item is „Medkit“ and last it…

and

> [@Items vanishing still, this needs a fix asap](https://forums.snapshotgames.com/t/items-vanishing-still-this-needs-a-fix-asap/9149):
>
> I also used the f12-tool. But this ist still annoying as hell and a MAJOR bug. If you salvage/scrap items in your inventory other things will vanish. It seems that if you scrap enough items that the inventorypage changes (automatically), all items which would normally be on the pages after your current one are deleted, too. I can’t scrap anything because everytime i do so, something vanishes. Lost already 2 complete sets of infiltrator and archeron-armor before i noticed and i have 2k+ mats to…

… and because of that I didn’t scrap anything!

So items disappeared just because I unequipped some soldiers?!?

This game becomes burden to play if I have to constantly watch for missing items. Who ever programmed this part must be a pure genius.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 3, 2020, 10:07pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/2 "2020-02-03T22:07:46Z")

</div>

Caught it finally. It is reproduceable.

Save file: [https://drive.google.com/file/d/1Cwld4VAmKNHa8wXTURXtdx3kMTvdsXs4/view?usp=sharing](https://drive.google.com/file/d/1Cwld4VAmKNHa8wXTURXtdx3kMTvdsXs4/view?usp=sharing)

Picture 1, available armor:

 ![Phoenix Point Screenshot 2020.02.03 - 22.18.35.84](https://canada1.discourse-cdn.com/flex036/uploads/snapshotgames/original/2X/b/b1e0dd91fe7d5904a2d6903403b284f34c52e4be.jpeg)

Picture 2, going to ALL tab:

 ![Phoenix Point Screenshot 2020.02.03 - 22.18.46.10](https://canada1.discourse-cdn.com/flex036/uploads/snapshotgames/original/2X/5/5a3bd2e1a92fc2d8ea1f72b773c1fa32f553320b.jpeg)

Picture 3, equipped soldier with grenade launcher (magazine is not full) and Synedrion pistol:

 ![Phoenix Point Screenshot 2020.02.03 - 22.18.57.40](https://canada1.discourse-cdn.com/flex036/uploads/snapshotgames/original/2X/8/845a28cd194ac41a4f28b38a76ad81d54f612a22.jpeg)

Note that now storage should be 164/200 but is 161/200

Picture 4, going on ARMOR tab and two pieces are missing:

 ![Phoenix Point Screenshot 2020.02.03 - 22.19.08.07](https://canada1.discourse-cdn.com/flex036/uploads/snapshotgames/original/2X/e/ec3c41ed2dd0b8909f203b23284758eecfdbb645.jpeg)

For bug to reproduce grenade launcher (magazine is not full) and Synedrion pistol have to be added consecutively without changing tabs.

Bug will not reproduce:

1. If after equipping grenade launcher (magazine is not full) you change tab to ARMOR again
2. If grenade launcher magazine is full (more than 8 ammo in store)

---

<div class="post-metadata">

**Author:** ![Rainer](https://yyz2.discourse-cdn.com/flex036/user_avatar/forums.snapshotgames.com/rainer/32/3499_2.png) [@Rainer](https://forums.snapshotgames.com/u/Rainer)\
**Post date:** [February 3, 2020, 11:34pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/3 "2020-02-03T23:34:20Z")

</div>

> [@djoles77](#):
>
> Bug will not reproduce:
> 
> 1. If after equipping grenade launcher (magazine is not full) you change tab to ARMOR again
> 2. If grenade launcher magazine is full (more than 8 ammo in store)

How does this occur?! Being a programmer would drive me insane. Each patch seems to create a bug in a completely unexpected way. I read what they change - I read what new bugs occur - and I’m just confused and interested as to how it happened.

---

<div class="post-metadata">

**Author:** ![Yokes](https://yyz2.discourse-cdn.com/flex036/user_avatar/forums.snapshotgames.com/yokes/32/310_2.png) [@Yokes](https://forums.snapshotgames.com/u/Yokes)\
**Post date:** [February 3, 2020, 11:52pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/4 "2020-02-03T23:52:54Z")

</div>

> [@Rainer](#):
>
> and I’m just confused and interested as to how it happened.

There must be part of code repeated many times in the processes:

“If at least 2 changes were made to this element, Then generate next random bug”.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 4, 2020, 3:12pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/5 "2020-02-04T15:12:07Z")

</div>

> [@Rainer](#):
>
> How does this occur?! Being a programmer would drive me insane. Each patch seems to create a bug in a completely unexpected way. I read what they change - I read what new bugs occur - and I’m just confused and interested as to how it happened.

In programming there are “good practices” that every programmer should comply with. For instance writing “DRY” code (Don’t Repeat Yourself), or practice not to use “magic numbers”, or practice to write “unit tests” for every function you have in code. When you comply with this practices making bugs is much harder, and finding bugs is easier.

But when bosses and managers start to rush things up most programmers are compelled to deviate from good practices, because it is “faster” to do the job in dirty way. Ofc that “faster” becomes extra slow when you have to fix the bugs.

The problem is that today programmers became corporate drones. There is no more game enthusiasts who make good and quality games because they love to. Today game has to be released by some date, and if you don’t finish it there is no bonus for you at the and of the year… if you keep your job. And deadlines are given by managers who often don’t have a clue how much time is needed to program something.

I can’t claim that game code is written in dirty way, I don’t know that… but game is definitely rushed.

---

<div class="post-metadata">

**Author:** ![Rainer](https://yyz2.discourse-cdn.com/flex036/user_avatar/forums.snapshotgames.com/rainer/32/3499_2.png) [@Rainer](https://forums.snapshotgames.com/u/Rainer)\
**Post date:** [February 4, 2020, 5:34pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/6 "2020-02-04T17:34:05Z")

</div>

Sounds like every job I’ve had in this world. Never been a programmer though.

What _should_ be done vs. What _is_ done.

Kind of gross in restaurants.

---

<div class="post-metadata">

**Author:** ![Zzzz](https://avatars.discourse-cdn.com/v4/letter/z/f0a364/32.png) [@Zzzz](https://forums.snapshotgames.com/u/Zzzz)\
**Post date:** [February 4, 2020, 9:14pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/7 "2020-02-04T21:14:33Z")

</div>

> [@djoles77](#):
>
> In programming there are “good practices” that every programmer should comply with. For instance writing “DRY” code (Don’t Repeat Yourself), or practice not to use “magic numbers”, or practice to write “unit tests” for every function you have in code. When you comply with this practices making bugs is much harder, and finding bugs is easier.

Is this reality of video games? I doubt it if Larian did conference on all the automatic testing tools they develop and used to have a lot of automatic testing.

Moreover UI automatic testing is a lot harder even with good frameworks, I wonder if they have any for games using engines.

Nothing is simple, and any code is aging, with video games project that last years, and endure many changes, the aging is real even before release. It means that good practice stop work if you don’t refactor your code, and you won’t do it without have a backup of heavy automatic testing, and you won’t do it without great framework test.

That said, I would agree that all the problems around items management and inventory hints there’s something wrong in the core, a lot of garbage somewhere.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 5, 2020, 5:04pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/8 "2020-02-05T17:04:35Z")

</div>

> [@Zzzz](#):
>
> Is this reality of video games? I doubt it if Larian did conference on all the automatic testing tools they develop and used to have a lot of automatic testing.
> 
> Moreover UI automatic testing is a lot harder even with good frameworks, I wonder if they have any for games using engines.

That’s why I wrote “unit tests” aka testing functions or methods, not UI testing. For unit testing there are frameworks for most modern languages. If they have method for adding weapon in soldiers inventory they certainly can test it. For instance “if grenade launcher added to inventory check how many items are left”. Or “There is X items in inventory. If random item is scrapped check how many items are left in inventory. If new number of items is not X-1 than report error”.

By not using good practices you can easily come in situation where code becomes unmanagable and where one bug fix makes more bugs (sounds familiar?).

> [@Zzzz](#):
>
> Nothing is simple, and any code is aging, with video games project that last years, and endure many changes, the aging is real even before release. It means that good practice stop work if you don’t refactor your code, and you won’t do it without have a backup of heavy automatic testing, and you won’t do it without great framework test.

And because of that more and more games come in unplayable condition on release. This trend will have to resolve. Or we will all become beta testers even if we paid for game and this will become new normal, or in the end players will reject those practices and start to massively demand refunds. Fool me once, shame on you, fool me twice, shame on me.

---

<div class="post-metadata">

**Author:** ![Gestra999](https://avatars.discourse-cdn.com/v4/letter/g/bc8723/32.png) [@Gestra999](https://forums.snapshotgames.com/u/Gestra999)\
**Post date:** [February 5, 2020, 5:30pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/9 "2020-02-05T17:30:20Z")

</div>

Got this today while moving armour off a new recruit for reverse engineering. It just disappeared. Very very annoying.

---

<div class="post-metadata">

**Author:** ![Zzzz](https://avatars.discourse-cdn.com/v4/letter/z/f0a364/32.png) [@Zzzz](https://forums.snapshotgames.com/u/Zzzz)\
**Post date:** [February 6, 2020, 7:24am UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/10 "2020-02-06T07:24:55Z")

</div>

> [@djoles77](#):
>
> That’s why I wrote “unit tests” aka testing functions or methods, not UI testing.

There’s UI unit test, but anyway, mock everything and do pure unit test, I doubt it’s for many projects. perhaps for video games. 🙂

> [@djoles77](#):
>
> For unit testing there are frameworks for most modern languages. If they have method for adding weapon in soldiers inventory they certainly can test it.

Very local unit testing requires mocks, mocks purely based on languages, eventually but it’s limited, mock often need a bit more thought.

But I know the topic for too few languages, it’s possible that pure unit test with mocks everywhere is at their disposal. Such unit test is limited.

For example the inventory bugs most certainly involves interaction between different sub systems, it’s hardly local bugs where they did +1 instead of -1.

> [@djoles77](#):
>
> By not using good practices you can easily come in situation where code becomes unmanagable and where one bug fix makes more bugs (sounds familiar?).

Well good practices won’t stop regressions, automatic testing is the most powerful tool. I believe that dev know the good practices, and try apply them, now for automatic testing the topic is complicated, it’s probably the hole, but I’m not sure it is easy to manage as I already evoked.

> [@djoles77](#):
>
> And because of that more and more games come in unplayable condition on release. This trend will have to resolve. Or we will all become beta testers even if we paid for game and this will become new normal, or in the end players will reject those practices and start to massively demand refunds. Fool me once, shame on you, fool me twice, shame on me.

Eventually, but it’s not that simple, an easy clone and simpler game with no bugs at release, myself I don’t exchange PP for that.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 6, 2020, 2:06pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/11 "2020-02-06T14:06:45Z")

</div>

> [@Zzzz](#):
>
> I believe that dev know the good practices, and try apply them, now for automatic testing the topic is complicated, it’s probably the hole, but I’m not sure it is easy to manage as I already evoked.

Automated unit testing is necessity in big projects. IMO there is no excuse to skip it.

I too believe that devs know and like the good practices. But I also believe they were forced by marketing guys to deviate from them to rush the project… and now they have very hard time fixing bugs.

> [@Zzzz](#):
>
> Eventually, but it’s not that simple, an easy clone and simpler game with no bugs at release, myself I don’t exchange PP for that.

I agree that this game has big potential. It could easily be the best UFO/X-Com like game at the end. If it survives all the refunds and bad publicity.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 6, 2020, 7:10pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/13 "2020-02-06T19:10:52Z")

</div>

> [@Asyranok](#):
>
> As a video game programmer and qa automation engineer (also having developed the first public and open source automation framework for the Unity game engine [Trilleon]), I can assure you that this is easier said than done.

As PHP/JavaScript developer who works in scripting languages I can only trust you on that.

> [@Asyranok](#):
>
> Note: A quick and dirty explanation of Coroutines. They are special enumerable methods that allow Unity to appear as if it is asynchronous or multithreaded.

I am familiar with that concept, Node.js (JavaScript server) works exactly like that.

Nevertheless adding weapon to soldiers inventory, imo, should be synchronous and easily testable thing.

---

<div class="post-metadata">

**Author:** ![Asyranok](https://avatars.discourse-cdn.com/v4/letter/a/bc8723/32.png) [@Asyranok](https://forums.snapshotgames.com/u/Asyranok)\
**Post date:** [February 6, 2020, 7:20pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/14 "2020-02-06T19:20:24Z")

</div>

Yes, adding weapons would theoretically not be a coroutine. If they coded it in a nice, segmented way, it definitely would not need to be a coroutine (unless it needs to do a ton of update logic, which would cause the game to appear to freeze or hang up until finished, in which case a coroutine would be needed). Although the problem is assuming that it is that simple. Sometimes, as I am sure you know from reading other people’s code, people have a tendency to make things more complicated than they need to be.

But I like to give the benefit of the doubt when I can’t actually see the code. I am assuming that the issue is ultimately in integration of the “add to inventory” logic around multiple other more complex factors. Otherwise, there would be an issue in general any time things are added to inventory, rather than under specific scenarios, order of adding, etc. So given that, I want to assume that they at least had something unit-test-wise there, but just did not cover all scenarios or all facets of the inventory logic.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 6, 2020, 7:40pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/15 "2020-02-06T19:40:10Z")

</div>

> [@Asyranok](#):
>
> Otherwise, there would be an issue in general any time things are added to inventory, rather than under specific scenarios, order of adding, etc.

First it was this:  
[https://forums.snapshotgames.com/t/items-disappear-in-personell-screen-reproduceable-savegame](https://forums.snapshotgames.com/t/items-disappear-in-personell-screen-reproduceable-savegame)

Then it was this:  
[https://forums.snapshotgames.com/t/missing-inventory-since-last-patch](https://forums.snapshotgames.com/t/missing-inventory-since-last-patch)  
[https://forums.snapshotgames.com/t/missing-items-since-miskatonic-patch](https://forums.snapshotgames.com/t/missing-items-since-miskatonic-patch)

And now this what I reported.

Looks that something is very wrong in that part of the code if bug keeps resurfacing.

> [@Asyranok](#):
>
> So given that, I want to assume that they at least had something unit-test-wise there, but just did not cover all scenarios or all facets of the inventory logic.

Ads to my conviction that devs were rushed.

---

<div class="post-metadata">

**Author:** ![Asyranok](https://avatars.discourse-cdn.com/v4/letter/a/bc8723/32.png) [@Asyranok](https://forums.snapshotgames.com/u/Asyranok)\
**Post date:** [February 6, 2020, 7:43pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/16 "2020-02-06T19:43:27Z")

</div>

Yeah. If it keeps happening, they need to desperately increase the testing coverage around it. Because any tiny tweak could break something that seems to be so fragile.

---

<div class="post-metadata">

**Author:** ![Zzzz](https://avatars.discourse-cdn.com/v4/letter/z/f0a364/32.png) [@Zzzz](https://forums.snapshotgames.com/u/Zzzz)\
**Post date:** [February 6, 2020, 7:52pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/17 "2020-02-06T19:52:10Z")

</div>

Not really, it’s just never been fixed. Which clues some garbage and multiple sub system interacting. Most probably for some reason responsibility didn’t get defined well for each sub system, often performances issues lead to weird design of responsibilities, or series of changes changed a cleaned code into garbage.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 6, 2020, 8:02pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/18 "2020-02-06T20:02:04Z")

</div>

Could be. I Agree.

But at the end everything leads to the question when it will be fixed. And to fix it they need to allocate enough resources. Which leads to may question on other topic

> [@What's the Point of a Company Forum if](https://forums.snapshotgames.com/t/whats-the-point-of-a-company-forum-if/9089/57):
>
> I would like to know two things about that if it is not a secret how many developers (programmers) you have in your team? how many developers are allocated on fixing bugs and how many are allocated on DLC?

---

<div class="post-metadata">

**Author:** ![Zzzz](https://avatars.discourse-cdn.com/v4/letter/z/f0a364/32.png) [@Zzzz](https://forums.snapshotgames.com/u/Zzzz)\
**Post date:** [February 6, 2020, 8:09pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/19 "2020-02-06T20:09:08Z")

</div>

DLC/bugs already got a comment, for now it’s no way the same tasks, that is pure code programming didn’t started for DLC, this was a post like 2 weeks ago.

How many is an insight they could not want divulge. You feel your harassment normal, I feel that ok you do what you want but for me you are heavy and have an inquisition spirit.

---

<div class="post-metadata">

**Author:** ![djoles77](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@djoles77](https://forums.snapshotgames.com/u/djoles77)\
**Post date:** [February 6, 2020, 8:46pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/20 "2020-02-06T20:46:18Z")

</div>

> [@Zzzz](#):
>
> DLC/bugs already got a comment, for now it’s no way the same tasks, that is pure code programming didn’t started for DLC, this was a post like 2 weeks ago.

Yes, it was addressed. But in a way that only PR manager could do, making sentences that look good and not saying anything specific.  
“We’ve said we’re working on balance and we’re working on fixing bugs. At the same time, we’ve got another team working on DLC.”.  
What does that means? 2% on bugs, 98% on DLC or vice versa.

> [@Zzzz](#):
>
> How many is an insight they could not want divulge.

They could answer in percentages. For instance 70% works on bugs, 30% on DLC. But by being quiet they let me believe the opposite.

> [@Zzzz](#):
>
> You feel your harassment normal, I feel that ok you do what you want but for me you are heavy and have an inquisition spirit.

Yes I have heavy character, I admit… But after reading lot of your posts feeling is mutual.

---

<div class="post-metadata">

**Author:** ![Asyranok](https://avatars.discourse-cdn.com/v4/letter/a/bc8723/32.png) [@Asyranok](https://forums.snapshotgames.com/u/Asyranok)\
**Post date:** [February 6, 2020, 8:57pm UTC](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294/21 "2020-02-06T20:57:44Z")

</div>

Just an FYI Zzzz, for future reference. Harassment is a very strong word for what djoles77 is doing. In English, that goes into “illegal” territory. I think the word you are looking for instead is “criticism”.

[Next page](https://forums.snapshotgames.com/t/items-are-still-vanishing-from-inventory/9294.md?page=2)
