Comments (13)
@Abendlied Yes, you're right about the full simulation cauing both of these.
However, if Lares in original stops for the player to catch him (even within visible range), he still should do that in OpenGothic. Is there such issue?
from opengothic.
Hi @Abendlied !
escorting NPCs like Lares do not wait for player to follow
Hm, sort of yes and no. In game-scripts of original game npc suppose to wait for you, but it not always - it just doesn't work well.
When it doesn't - in vanilla npc teleport it the finishing point, in opengothic it walks there.
Lares script is different and he programed to wait for you (this is why he has dummy dialogs along the way) - this should be similar in opengothic.
My suspicion is that Grimbald killed them already over time but I am not sure. I found no snapper corpses.
I've seen such issue a few times, yet it hard to catch it in action. My theory snappers scudded on a nearest cliff and issue is might be related to #542
from opengothic.
Thanks for the replies.
However, if Lares in original stops for the player to catch him (even within visible range), he still should do that in OpenGothic. Is there such issue?
Lares script is different and he programed to wait for you (this is why he has dummy dialogs along the way) - this should be similar in opengothic.
I can confirm, Lares dummy dialogues work and Lares will be waiting there. But he will run uninterrupted to the next dummy dialog spot and does not wait inbetween if player does not catch up.
I noticed that
- Mika does not wait for you if he escorts you to Akils, he will only stop at Akils.
- If I let Lares guide me to the forest stone ring and trigger the escort to Onars from there, he has no intermediate script and will walk the whole way only to stop at Orlans, his final destination with a dialog.
from opengothic.
I've seen such issue a few times, yet it hard to catch it in action. My theory snappers scudded on a nearest cliff and issue is might be related to #542
@Try You might be right. I went to Grimbald again and used F8 and K to see if monsters were clipping through somewhere. I actually found two snappers swimming in the lake just next to the cliff.
from opengothic.
escorting NPCs like Lares do not wait for player to follow
Reverting 8716db0 makes it work.
State loop is not executed because Lares is in goto mode, so PERC_ASSESSPLAYER
's function B_AssessGuidePlayer()
was used as replacement loop that checks distance. Commit prevented that perc trigger.
They used sense smell as bypass to get the trigger. Script comment says sense smell is required for Lares because otherwise player can't be seen.
self.senses = SENSE_SEE|SENSE_HEAR|SENSE_SMELL; //Sense_Smell erforderlich, da der Sc sonst nicht "gesehen wird)!!
from opengothic.
Reverting 8716db0
Hm, I remember this was done, to fix case when the seeker can notice player from behind
from opengothic.
I tested a bit more. If npc has senses smell ASSESSPLAYER
is triggered if within perc distance without any further conditions. So either senses see + visibility or senses smell.
This would explain ZS_GolemDown
start function:
func void ZS_GolemDown ()
{
self.senses = SENSE_SMELL ;
self.senses_range = 2000;
Npc_SetPercTime (self, 1);
Npc_PercEnable (self, PERC_ASSESSPLAYER , B_GolemRise );
self.aivar[AIV_TAPOSITION] = NOTINPOS;
};
from opengothic.
Reverting 8716db0
Hm, I remember this was done, to fix case when the seeker can notice player from behind
Notice as in attack or trigger dialogue?
I did some testing in OpenGothic and vanilla and there seems to be a difference in behavior when I approach a seeker from behind. In vanilla it triggers the dialogue. In OpenGothic the seeker starts attacking me.
Reverting the commit makes it work like in vanilla.
from opengothic.
@Try would you agree, based on the above comments, to revert the change?
from opengothic.
Reverted, thanks everyone for testing it and thanks @hwnde for reminding - I've forgot about this ticket :)
from opengothic.
There are two kinds of seeker's. Some wanna talk, some attack. I pushed a pr for the Lares case but seekers should behave as expected too. #589
from opengothic.
There are two kinds of seeker's.
It's not 2 completely different. Seeker behavior is controlled by aivar[AIV_EnemyOverride] = TRUE
line, and there a few minor variations for the very first one and some on dragon-island.
This fixes Lares not stopping if guiding the player and shattered golem not attacking
Lares work on current master as-is. I'm sorry, but I can't quite see what this PR is about
from opengothic.
Revert was faster than pr, so yes for now there's only golem fix. After bug report I disabled senses piecewise and looked what they do and pr is the result. Technically this is ready for some time except maybe final testing but I don't like having multiple pending pr's. Wanted to wait until delay stuff is done.
Another thing which I planned for implementation of some G1 percs is the removal of empty aiqueue check. This currently blocks percs there because script loop often has AI_Wait
call. Aiqueue check has been introduced to make sneaking work. Removal right now would break it again but switch to walkbit instead of bodystate for sneak check would allow that.
I see this point is a bit unlucky because it's only in pr because the "what i think senses\percs should behave like" breaks sneaking otherwise. But as explained it's useful on it's own, should have just added aiqueue empty check removal there too.
from opengothic.
Related Issues (20)
- Low performance HOT 19
- My bad
- minor problem: cannot focus+loot clipped NPC corpse HOT 5
- Wielding holy hammer instead of Rods 2h HOT 2
- Gothic1 mac m1 resolution option HOT 4
- provide an API for moders to port DMA mods to OpenGothic HOT 5
- Crash unless meshlets disabled HOT 14
- It's Christmas in Khorinis HOT 7
- Tree stumps have no collision HOT 4
- It's really dark outside with certain graphics mods HOT 5
- NPC walk-teleport mislignment HOT 3
- [Windows] Game resolution is not set correctly HOT 1
- Screen space reflections look bad on swamp water HOT 5
- Too small interface on FullHD HOT 17
- NPC label bug HOT 4
- Update wiki HOT 1
- Launching Gothic 1 should imply Gothic 1 controls as default HOT 3
- Installing dependencies (and then make) fails on Linux Mint HOT 10
- Saves on 2602 and higher doesn't work HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opengothic.