View Issue Details

IDProjectCategoryView StatusLast Update
0003367Spring engineGeneralpublic2012-12-22 04:54
Reportersmoth Assigned Tocleanrock  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version91.0 
Summary0003367: Wait for turn is not always obeyed.
DescriptionSeems that units do not always wait for turns before firing, resulting in both exploitable behavior and bugging looking fire animations.

http://www.youtube.com/watch?v=nrcgH1BIap4

this works on both attacking ground and attacking targets
Steps To Reproduceload ba, /give cormort, give an attack order, after the shot fires and the barrel is reseting give an attack order in a random direction. The unit will simply fire the shot not obeying the waitforturn call.

TagsNo tags attached.
Checked infolog.txt for Errors

Activities

Kloot

2012-12-09 12:48

developer   ~0009495

Last edited: 2012-12-09 12:49

first place to look instead of thinking "bug": BA's cormort has a turret=true weapon with default firing arc (360 degrees...) because no maxAngleDif is specified

abma

2012-12-09 13:18

administrator   ~0009496

@bug fixer:
vulcans & bertha's suffer from this issue, too... so maybe most units / all units are affected in BA.

smoth

2012-12-09 16:49

reporter   ~0009498

Not just in ba, it happens in gundam and my test game. I have noticed it for years but assumed it was a script bug of mine. I didn't realize it was an actual issue until I noticed it in my new project. then I tried it in BA.

so I have seen it in 3 different projects, always when there is a slow turning turret.

all of the weapons in question are turret = true.

user744

2012-12-10 16:09

  ~0009502

maybe wepon has high tolerance

smoth

2012-12-10 16:29

reporter   ~0009503

Last edited: 2012-12-10 16:32

Nope, the Morty doesn't have that..

Kloot

2012-12-10 16:41

developer   ~0009504

Last edited: 2012-12-10 16:41

QUOTE: "BA's cormort has a turret=true weapon with DEFAULT FIRING ARC (360 DEGREES...)" ...

smoth

2012-12-10 16:45

reporter   ~0009505

Last edited: 2012-12-10 16:46

I read it, what is the point you are trying to convey? BA didn't use fire arcs like gundam I know this. I am not sure what your point in that quote is. It should be able to turn to fire

However, if it has not finished it's rotation, it should wait for the animation to complete. It is NOT waiting for the turn animation, that is the problem. It is not only the mort any unit with a slow aim animation can trigger this.

Kloot

2012-12-10 17:35

developer   ~0009506

Last edited: 2012-12-10 17:37

The engine *only* cares about what AimWeapon returns (which is called every 15 frames _always_) and whether the firing angle is within a weapon's constraints.

smoth

2012-12-10 17:52

reporter   ~0009507

Aim weapon should not return before the turn is completed. If that isn't the issue, then maybe a new attack order isn't triggering the aim code?

Kloot

2012-12-10 18:41

developer   ~0009508

AimWeapon always has to return *before* a turn is completed, otherwise the engine would constantly be blocked by it. The way it works is that scripts usually make AimWeapon spawn a thread to do the turn animation and allow the weapon to fire when that finishes, so bugs like this can easily happen (for turret=true weapons with unlimited arcs) if an animation thread completes just after another one gets queued up by a new AimWeapon call.

smoth

2012-12-22 04:35

reporter   ~0009527

tried build: 91.0.1-129-gdbfd725

still possible. is this the incorrect build to test this in?

abma

2012-12-22 04:54

administrator   ~0009528

no, 91.0.1-629-g0321ee8 is the current develop build. that are 500 (!!!) more commits/changes. where did you get this build? this was/is the oldest develop available build!

91.0.1-129-gdbfd725 also doesn't contain the commit that fixes the issue...

Issue History

Date Modified Username Field Change
2012-12-09 07:47 smoth New Issue
2012-12-09 12:48 Kloot Note Added: 0009495
2012-12-09 12:49 Kloot Note Edited: 0009495
2012-12-09 13:18 abma Note Added: 0009496
2012-12-09 16:49 smoth Note Added: 0009498
2012-12-10 16:09 user744 Note Added: 0009502
2012-12-10 16:29 smoth Note Added: 0009503
2012-12-10 16:32 smoth Note Edited: 0009503
2012-12-10 16:41 Kloot Note Added: 0009504
2012-12-10 16:41 Kloot Note Edited: 0009504
2012-12-10 16:45 smoth Note Added: 0009505
2012-12-10 16:46 smoth Note Edited: 0009505
2012-12-10 17:35 cleanrock Assigned To => cleanrock
2012-12-10 17:35 cleanrock Status new => assigned
2012-12-10 17:35 Kloot Note Added: 0009506
2012-12-10 17:37 Kloot Note Edited: 0009506
2012-12-10 17:52 smoth Note Added: 0009507
2012-12-10 18:41 Kloot Note Added: 0009508
2012-12-13 20:27 cleanrock Changeset attached => spring develop 226dba60
2012-12-13 20:27 cleanrock Status assigned => resolved
2012-12-13 20:27 cleanrock Resolution open => fixed
2012-12-22 04:35 smoth Note Added: 0009527
2012-12-22 04:35 smoth Status resolved => feedback
2012-12-22 04:35 smoth Resolution fixed => reopened
2012-12-22 04:54 abma Note Added: 0009528
2012-12-22 04:54 abma Status feedback => resolved
2012-12-22 04:54 abma Resolution reopened => fixed