Anonymous Login
2017-12-11 17:51 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0001943OpenClonkScenariospublic2017-11-10 17:17
ReporterK-Pone 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusconfirmedResolutionopen 
Product Version 
Target Version8.0Fixed in Version 
Summary0001943: Boomshire: Goal not implemented correctly
DescriptionIn Boomshire you'll spawn on a random checkpoint, followed by a massive amount of ERROR spam in the console (when debug mode is active)
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes

~0005780

Caesar (developer)

Uh, what are the conditions for triggering this? (I just opened the editor and moved my clonk to the first checkpoint and then into lava. It didn't happen.)

~0005781

K-Pone (developer)

Last edited: 2017-09-24 16:50

View 2 revisions

Just started the game. NativeException joined the game, and it happend right at the beginning. I spawned at checkpoint 10, which is not where you start normally. Also had a respawn delay of 10 seconds which should also not happen.

~0005802

Clonkonaut (developer)

Cannot reproduce locally. Is it a network-only bug?

The goal itself in Boomshire is nothing special. It's the regular Parkour goal.

~0005814

K-Pone (developer)

I can still reproduce this as of afa348ab21. I can recheck this once the new snapshots are built and available.

~0005826

Clonkonaut (developer)

I can reproduce this with the snapshot not with my self-built engine though. This is scary.

~0005884

Caesar (developer)

I can reproduce this with my self-built engine. But I need two players.

~0005885

Caesar (developer)

https://git.openclonk.org/openclonk.git/blob/HEAD:/planet/Objects.ocd/Goals.ocd/Parkour.ocd/Script.c#l468 seems to set the wrong priority on an internal effect, which causes all those beautiful errors. But if you fix that, the problem of spawning in the wrong position remains.

~0005889

Clonkonaut (developer)

Why is the priority causing these effects?

~0005890

Caesar (developer)

I don't know, I don't understand effects. I just set the priority to 1 and that does it. Wasn't there something that effects with priority != 1 have some weird replacement/stacking semantics?

Also, I debugged around a bit further and saw that the position gets set correctly in Objects.ocd/Goals.ocd/Parkour.ocd/Script.c:468 (JoinPlayer). So it gets messed up somewhere else after that. Good luck. (I have no idea how to debug something like this. Maybe stack-dump all calls to SetPosition from the Engine. Brrr.)

~0005896

Maikel (developer)

I can't reproduce this unfortunately.

Maybe you can overload SetPosition in C4Sript to see if something remarkable happens there:

global func SetPosition(...)
{
  Log("%d", FrameCounter());
  LogCallStack();
  return _inherited(...);
}

Framecounter I typically use to see if stuff happens in the same frame.
+Notes

-Issue History
Date Modified Username Field Change
2017-09-22 01:10 K-Pone New Issue
2017-09-24 03:30 Caesar Note Added: 0005780
2017-09-24 16:50 K-Pone Note Added: 0005781
2017-09-24 16:50 K-Pone Note Edited: 0005781 View Revisions
2017-10-25 14:47 Clonkonaut Status new => feedback
2017-10-25 14:47 Clonkonaut Note Added: 0005802
2017-10-25 16:12 K-Pone Note Added: 0005814
2017-10-25 16:12 K-Pone Status feedback => new
2017-10-26 01:45 Clonkonaut Status new => confirmed
2017-10-26 01:45 Clonkonaut Note Added: 0005826
2017-10-28 06:02 Caesar Note Added: 0005884
2017-10-28 06:24 Caesar Note Added: 0005885
2017-11-01 01:40 Clonkonaut Note Added: 0005889
2017-11-02 13:43 Caesar Note Added: 0005890
2017-11-10 17:17 Maikel Note Added: 0005896
+Issue History