Try / OpenGothic

Reimplementation of Gothic 2 Notr
MIT License
1.07k stars 78 forks source link

NPC walk-teleport mislignment #585

Open Try opened 2 months ago

Try commented 2 months ago

In vanilla npc's do have 2 type of execution:

When outside of player vision, npc doesn't walk thru way-path, but teleports from point-to-point instead.

At this point OpenGothic doesn't do 'outside' part, evaluation whole world as 'closeup' case. Evaluation whole world as 'closeup' has a correctness downside, if game-script relies(often times non-intentionally) on teleport mechanics.

Known cases (NotR):

Need to: design solution on how OpenGothic can incorporate same behavior as in vanilla, either equivalent one. One issue here is unlimited draw-range - teleport might be observable to player Visibility culling is done in CS, and engine has no information on what is visible on CPU-side.

hwnde commented 2 months ago

My 2 cents: implement a logic closer to how vanilla works: do a teleport if the npc is outside a certain radius of the player, regardless of direct visibility. The source or destination theoretically might be observable by the player but I'm not sure it will be actually visible in practice. Would need a playtest to confirm.

Bonus: do a teleport animation. In case of mages it would even make sense :)

hellozyemlya commented 1 month ago

Played gothic long time ago, and what to ask what is the results of this behavior? Quests non-completable?

Try commented 1 month ago

@hellozyemlya

Quests non-completable?

As mention in description: at least 2 quests are not same. In ring of water meeting, the ring members should appear in tavern shortly after quest starts. In OG they wont appear fast, instead they will literally walk to place.