Infinite Mutations Points

It’s possible to get infinite MP by performing the following actions:

  1. Place a cell part, for example cytoplasm. Costs 22.
  2. Remove another part of the same type. Gives 22 back.
  3. Place the removed part elsewhere as if you moved it. Costs 5.
  4. Remove the newly “moved“ part. Gives 22 back as if i never added any parts.
    Discovered it accidentally trying to change cell shape as it allowed me to place more organelles than i expected. After that i reproduced it on a multicellular organism, on one without a nucleus and on the first one after new game which proves the bug is quite reproduceable

5 Likes

Thanks for the report. Those seem like pretty simple steps so I should be able to find the cause of the exploit.

Interestingly enough a very similar editor exploit was reported on Discord yesterday: Discord

I’ll need to investigate both of these exploits soon.

3 Likes

I got some addition to this now, after step 3 when you “move“ the part for 5 the price doesn’t recalculate to 22 and stays 5 and you can keep placing them. It looks like the calculation of placing it back is a problem

5 Likes

Welcome to the forum, @XibuXKabo.

4 Likes

Welcome, @XibuXKabo! Thank you for finding the bug and contributing to Thrive!

2 Likes

Welcome to the forum @XibuXKabo , a bugfinder as it seems!

2 Likes

I found the same bug it seems to be very very common Love the game come every so often to see how its progressed


Also has anyone found a easy fix to this i just want to play normally

3 Likes

Welcome to the forum, @Tilin!

1 Like

Welcome to the forum @Tilin , another new bugfinder!

Guys, please don’t clog up the thread with the welcome messages. I’m sure if the new users want to stick around they can make introduction posts where you can all comment the welcome messages.

Edit: there’s a new patch now that should make this exploit no longer work:

6 Likes

The exploit persists and only seems to happen in hard mode (but could be happening in easy mode too if it has also changed)

1-When placing cytoplasm (the basic one) placing it takes 26.4 as normal but eliminating it gives 31.7


(All of this is very confusing to explain so if you need to explain something in further detail Just say so)

2- if you place 2 of them they will cost 52.8 as it should be but when eliminating the first one placed it gives back 57.4 MP
3-If you do the previous thing but then place another of the same it will cost the normal amount (26.4) and then eliminate the one that was there before you get 25.6 which is less than it should
And theres also a weir bug with movement but it is very confusing cant explain in text sorry for Poor english

4 Likes

Oh. I think I got the sequence.

So if you place 2 cytoplasm, and delete the one you placed first then you get too much MP back. If instead you delete the second placed cytoplasm first and then the other, then you don’t get too much MP back.

At least with these changes I can no longer trigger the condition where you have more than 100MP. So at most this seems only possible to get one free organelle refunded per editor cycle. Which while bad is not as catastrophic as before.

It’s unfortunate that there is still such an easy exploit. Hopefully there’s no longer any infinite MP exploits, because while I could try to keep tweaking the current approach it seems quite clear that it is not very productive to play whack-a-mole like this. As a result there’s not going to be another small patch to try to fix this. Instead as long as I have enough time within the 0.9.1 release window, I’m finally going to do the ultimate MP calculation system with a totally different approach.

5 Likes

You could even just use some web translation site just so that we know how to replicate the condition if you know the full process how to trigger it but just can’t type it out in English.

2 Likes

Okay so
I went testing to see if the infinite is still there and it isn’t. At least i was unable to find any. But i found the reverse, the way to get rid of all MP while changing nothing. I successfully was left with one cytoplasm and 6 MP while unable to remove it, move it or place anything else. Ctrl+Z works normally though, so that’s not a softlock.

So that’s what i did:, listing the cost of options after the action:

  1. Place a cytoplasm: Delete 22 Move 0
  2. Move that cytoplasm: Delete 22 Move -5
  3. Move that cytoplasm to a second space: Delete 27 Move 0 (makes sense, i just paid 5 to move)
  4. Move that cytoplasm to a third space: Delete 22 Move 0 (I guess since i paid 0 to move it’s 22 again)
  5. Delete cytoplasm. Results in me having 95/100 MP and still the starting layout

This is quite consistent, i tried it like 4 times, works every time
And it makes the squares (hexagons actually) that i moved in/deleted in somehow weird and it doesn’t always work on the same squares again

Also after removing the starting one cytoplasm you can start placing/moving in/out of that space it was in which makes things more weird. Now, i don’t understand how, i was just messing around but i managed to get myself to a negatine MP.
This is also somehow reproduceable by using the move, delete and place actions and the space of starting cytoplasm, although, i don’t know how crucial the starting space is and what steps to follow. I reached negative MP three times now and all seem accidental

4 Likes

That’s very good.

I knew that I needed to slightly break the refund system. I could not find another way to fix the reported infinite exploits. So yeah, MP refunds in many cases don’t work currently.

I was hoping this was not possible, but again this is an effect of how I tried to fix the infinite MP exploits. Right now the way the MP is checked before an action is allowed is slightly different than when the action is applied meaning that sometimes too many actions may be allowed leading to negative MP.

It’s good that it is not very easy to trigger.


Anyway, my overall plan for the MP is to make a third version of the MP system that just works based on being given 2 species and it just calculating all changes between them. That should remove all MP exploits and make all refunds work again. The downside is that it will likely take a week at least to make, so I only have this week left for other small tweaks, otherwise 0.9.1 release would need to be delayed.

3 Likes