KranX / Vangers

The video game that combines elements of the racing and role-playing genres.
https://store.steampowered.com/app/264080/Vangers/
GNU General Public License v3.0
660 stars 89 forks source link

Fix #158: incorrect flooding for initial portion of world player sees first #620

Closed Aidoneus closed 1 year ago

Aidoneus commented 1 year ago

Somehow a portion of zMod code was missing from vrtMap::accept, even though similar logic was in vrtMap::linkC, as it should've been, including a comment hinting at the fact that something similar should've been somewhere above.

This resulted in incorrect water levels on a portion of world that is drawn when player appears in the world (from escave or Passage), and player only needed to move far away enough from that portion and go back – and voila, it would've rendered correctly.

Still the issue was affecting gameplay – it was not purely visual, the water really appeared and disappeared as player moved around, I've described one such gameplay change example below for anyone interested.

I.e. when entering Weexow in multiplayer (which is stuck in permanent flood due to issue, which is fixed by #619 ) player sees the normal area, but water around them was in fact much higher than the land, even though this isn't immediately obvious. This leads to local exploding "fish" being able to jump onto player from above (as they always float on top of water) easily destroying weaker mechoses; also confusing is the scenario when player goes to the artifact island here and returns to see the Passage island being flooded (whereas it was just redrawn properly). After this fix player will properly see the flooded island right from the start and fish wouldn't be able to harm them, because they're floating far above the player (unless the player tries to jump above).

caiiiycuk commented 1 year ago

А если код дублируется, может его в функцию выенсти?

Aidoneus commented 1 year ago

А если код дублируется, может его в функцию выенсти?

Да, ты прав. Попробую вынести

stalkerg commented 1 year ago

Okey looks good, but yeah, please move duplicate code into a function. It's too big for a duplicate.