How do I even explain this...

Discussion in 'Besiege: Bug Reports' started by svetli97, Jan 3, 2018.

?

Should the devs rewrite the whole events system?

  1. Yes

    0 vote(s)
    0.0%
  2. Yes

    100.0%
  1. svetli97

    svetli97 Member

    A transform event that is supposed to move a sphere 1 m moves it ~60 m. I have no words. Besiege_01_03_2018_04_11_45.png Besiege_01_03_2018_04_11_48.png
     
  2. svetli97

    svetli97 Member

    Also there are no other event listeners or anything else in this world that you cannot see.
     
  3. svetli97

    svetli97 Member

    UPDATE: it was exactly 100 blocks.
     
  4. svetli97

    svetli97 Member

    UPDATE#2: How to recreate!

    1. Set the "transform" event to "duration" and set the duration to a number (let's say x).

    2. Set the "transform" event to "instant".

    3. Run the simulation. Now the transform values for the coordinates will be multiplied by 1/x because that makes so much sense!
     
  5. svetli97

    svetli97 Member

    UPDATE#3 Possible explanation.

    For each event the game saves a list of values (numbers, text,...) but if you change the settings on an event it will not change the values and you won't see them. It does the same for the event listeners. You can see this by making an event listener and then changing it to a different option (like from "on enter" to "on exit") and the value that you wrote for what would trigger the event will be preserved. The "duration" variable is used when transforming something to calculate the speed at which it should be moving but for some reason it also calculates the speed even if the motion is instant (most likely they calculate the amount it needs to move per game tick and the number of ticks in which it should move which are 1 for the instant case but since it calculates the distance that the object should travel per tick by dividing the total distance over the total duration it results in the object moving by <total distance>/<total duration> in the one tick in which the instant transform event is active.
     
  6. ITR

    ITR l̺̤͈̘̰̺͉̳͉̖̝̱̻̠̦͈ͅ֍̫̜̥̭͖̱̟̟͉͙̜̰ͅl̺̤͈̘̰̺͉̳͉̖̝̱̻̠̦͈ͅ Staff Member

    Since duration is supposed to move it "1 meter per second for 10 seconds" it probably somehow thought the distance it was supposed to move was that distance it would have if it move with that duration or something. Strange bug though
     
  7. svetli97

    svetli97 Member

    Yeah the only thing the devs need to do is to reset the value of the duration when you switch to "instant" or to internally use a value of 1 when on instant if they want to keep it so that the players can switch between "duration" and "force" without losing the value.
     

Share This Page