Page 1 of 1

[Twinsen] [0.17.64] Desync caused by surface.clone_entities, surface.clone_area and entity.clone

Posted: Sat Aug 10, 2019 12:31 am
by PyroFire
Setup:

1. Place an accumulator.
2. Power pole (of any kind), it must be to the lower-right (or lower-left) of the accumulator.
3. Using a small steam engine setup, supply the accumulator with some power.
4. Clone the accumulator (don't have to include the power pole)
5. ????
6. Desync.

Proof:
Image

Mods installed:
Literally just the base game.

More Information:
This seems to be extremely weird.
If the power pole (or ANY power pole) is above the accumulator the desync doesn't happen.

Also.. the power pole next to the original accumulator MUST be the one that supplied power (or passed power through) to the accumulator.
For some reason, if you destroy and replace the power pole the desync no longer occurs.

This has got to be one of the weirdest bugs i've ever seen in any kind of game or piece of software, ever.

Re: [0.17.64] Desync caused by surface.clone_entities, surface.clone_area and entity.clone

Posted: Sat Aug 10, 2019 5:53 am
by boskid
Indeed there are some heavy-mode diffs.
  1. I could not reproduce this position-dependent part. If accumulator is anywhere in supply range of first pole/substation there are diffs on clone
  2. Diffs are near <energy-source>. In "original" some bytes form "0", and in "reference" same bytes form value "5 000 000" (as double). Is this buffer_capacity [5MJ?]
  3. 74363-dumps.7z
    (52.03 KiB) Downloaded 125 times
  4. edit: looks like it is not buffer_capacity but something similar. buffer_charge?. When accumulator is charging, this value is less than 5 000 000
  5. Cloned accumulator will have different state of charge

Re: [Twinsen] [0.17.64] Desync caused by surface.clone_entities, surface.clone_area and entity.clone

Posted: Mon Aug 12, 2019 2:40 pm
by Twinsen
Fixed in Version: 0.17.65

Thanks for the report.