• All, I am currently in the process of migrating domain registrations. During this time there may be some intermittent outages or slowdowns. Please contact staff if you have any questions.

Enemy blocks while fallen bug

dantedevil

Well-known member
I found a new bug with the OpenBOR.v3.0.Build.6315.

In my mod I use the system to hit the enemies falle in the ground.

Here the enemy animations:
Code:
#-----------------------Hit in ground--------------------#


anim pain15
	loop	0
        delay	10
        offset  82 177
	bbox	38 159 98 19
	frame	data/chars/gang3/chainman/pain8.png

anim fall15
	loop	0
      delay	9
        offset  82 177
	bbox	38 159 98 19
        @cmd    stop
	frame	data/chars/gang3/chainman/pain8.png
         @cmd    degravity 0
	frame	data/chars/gang3/chainman/fall4.png


anim follow15

	loop	0
        delay   80
        offset  82 177
	bbox	38 159 98 19
	frame	data/chars/gang3/chainman/fall4.png

Everything worked fine while using the OpenBOR_v3.0_Build_4432.
But now using OpenBOR.v3.0.Build.6315, the enemy is able to block while on the ground.
This looks very bad, because it happens to lie on the floor to block, without going through the rise animation.
 
Sorry, I just got the chance to test this bug
I'd like to ask couple things:
1. Does the fall blocking enemy have block ability?
2. Does this happen to all enemies? all the time?
 
Bloodbane said:
Sorry, I just got the chance to test this bug
I'd like to ask couple things:
1. Does the fall blocking enemy have block ability?
2. Does this happen to all enemies? all the time?

1. Yes, the enemy have the block aility
2. After a lot of test, i found this bug in one enemy until now.
This enemy has nothing odd compared to the others, I really do not understand what happens.

Here the header of the enemy txt:
Code:
name	CHAINMAN
health	250
speed	8
type	enemy
grabdistance	45
risetime -150 -200 
gfxshadow  1
blockodds  3
thold      19
aggression -10
bflash block
falldie 2
projectilehit   enemy obstacle
hmap 1 5
fmap 2
noquake 1

aimove normal
paingrab 1
jumpheight 3.5

Tested with the last build, OpenBOR.v3.0.Build.6412 and the bug still happen.
 
One guess i can make is that if the enemy stays forced on the ground longer than his risetime, then maybe in the background he is already standup and can block but just can't display yet the proper animation. Though i can't say why this is not happen on older engine build, if tha's the case  :-\
 
magggas said:
One guess i can make is that if the enemy stays forced on the ground longer than his risetime, then maybe in the background he is already standup and can block but just can't display yet the proper animation. Though i can't say why this is not happen on older engine build, if tha's the case  :-\

I thought something similar, but I have another enemy with the same specifications as this and the bug does not happen with it. :-\
 
If the other enemy is having the same risetime as this one, then it must be something else  ???

EDIT: If an other enemy is having the same risetime but different antigravity ratio then this enemy will still have a different actual risetime than setup.

EDIT2: Antigravity is affecting the risetime on entities who are not using the risetime command, just keep this in mind. Okay, now this info is 100% acurate  ::)
 
Bloodbane said:
Okay, please confirm this:
To reproduce this bug, knockdown this chainman with any attack then hit him while he's on the ground? right?

Yes.

A clear example is the ground attack of Midas. He stomps the fallen enemy three times. In the case of "Chaiman", he sometimes appears standing blocking just before receiving the first stomp, or sometimes after receiving the first, or after receiving the second, that varies.
 
As I wrote at Github, This is kinda strage, because I have the same situation on my mod and I never had any issue.
Those OTG should be set to unblocked - it makes more sense that way. This is an user error.

But the engine should not try to block an attack while on ground.

Dc will fix it soon.
 
O Ilusionista said:
As I wrote at Github, This is kinda strage, because I have the same situation on my mod and I never had any issue.
Those OTG should be set to unblocked - it makes more sense that way. This is an user error.

But the engine should not try to block an attack while on ground.

Dc will fix it soon.

It's good to know that it does not just happen to me.

Thanks both my friends!
 
Sorry it took so long - I couldn't stand adding yet another logic flag to the block code without cleaning it up some. Here's a windows dev build - it should fix the block issue. Please test and report if the issue resolves or persists here.

Keep in mind it's based on the most recent updates, so if you are still holding off on updating this version might not play nice with your module. I'll leave that part up to you.  :)

 
Damon Caskey said:
Sorry it took so long - I couldn't stand adding yet another logic flag to the block code without cleaning it up some. Here's a windows dev build - it should fix the block issue. Please test and report if the issue resolves or persists here.

Keep in mind it's based on the most recent updates, so if you are still holding off on updating this version might not play nice with your module. I'll leave that part up to you.  :)

Thanks!

Well my friend, after several tests I could confirm that the bug is no longer there. But now I have a new problem, with this build the counterknife movement does not work for me.
Now when when I press block with a hero to catch the knife, it simply disappears and does not work as before.



Here my move "counterknife", so you can understand how it works and how it relates to the ground attack script.

The hero moves:
Code:
anim block
	loop	0
	offset	95 175
	bbox	89 72 35 105
	delay   4
        frame	data/chars/caro/block.png
        frame	data/chars/caro/block.png
	@cmd	anichange "ANI_FOLLOW30" 0
        frame	data/chars/caro/block.png


anim follow30
	loop	0
	delay   4
	offset	95 175
	bbox	89 90 22 85
        @cmd    block 1
        frame	data/chars/caro/block.png
        @cmd    keyflip 0
        @cmd    keyint "ANI_FOLLOW30" 0 "S" 0 0
        frame	data/chars/caro/block.png
        @cmd    block 0
        frame	data/chars/caro/block.png

#-----------------------counter Knife--------------------#

anim pain32
	loop	0
	delay	15
	offset	98 173
	bbox	0 0 0 0
        sound   data/sounds/block.wav
	frame	data/chars/caro/kthrow01.png
	delay	9
	sound   data/chars/chosen/at1.wav
	frame	data/chars/caro/kthrow02.png
	delay	5
	sound   data/chars/chosen/hmm.wav
	frame	data/chars/caro/kthrow03.png
	frame	data/chars/caro/kthrow04.png
        sound   data/sounds/knife.wav
	offset	126 173
        load    knife1
	@cmd    shooter2 "knife1" 30 90 -1 3 0 0
	frame	data/chars/caro/grabf08.png
	delay	30 
	frame	data/chars/caro/grabf08.png
	delay	12        
	offset	98 173
	frame	data/chars/caro/rise2.png

And here the enemy knife for the "counterknife":
Code:
name	 knife2
type	 none
shadow	0
health   1
nolife   1
nomove 1 1
falldie 2
nodieblink 1
candamage	player
subject_to_gravity 0
no_adjust_base	0
subject_to_hole 1
subject_to_wall 1
offscreenkill	50
lifespan 5


load knife

script  data/scripts/bounce3.c
animationscript data/scripts/escript.h

anim idle
	loop      1
	fastattack 1
        delay	2
	offset 17 17
        hitfx   data/sounds/empty.wav
	followanim 1
	followcond 1
        noreflect 1 
	attack  15 13 18 8 0 0 1 1 0
        forcedirection -1
	frame	data/chars/misc/weapons/knife02.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife03.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife04.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife05.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife06.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife07.png
	attack  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife08.png
	attack  15 13 18 8 0 0 1 1 0
        frame	data/chars/misc/weapons/knife01.png

anim follow1
	loop	0
@script
void self = getlocalvar("self");

if(frame == 0){
  changeentityproperty(self, "type", openborconstant("TYPE_ENEMY"));
}

@end_script
        fastattack 1#
	offset	17 17
        delay   5
        @cmd ani0020 openborconstant("ANI_FOLLOW2") openborconstant("ANI_BLOCK")
        hitfx   data/sounds/empty.wav
	frame	data/chars/misc/weapons/knife00.png
        delay   5
        hitfx   data/sounds/cuth.wav
        hitflash    bloody
        forcedirection -1
       	attack  0 0 36 34 20 1 1 0 0	
	frame	data/chars/misc/weapons/knife00.png
        attack  0 0 0 0
	frame	data/chars/misc/weapons/knife00.png
        @cmd    killentity getlocalvar("self")
	frame	data/chars/misc/empty.png


anim follow2
@script
void self = getlocalvar("self");

if(frame == 0){
  changeentityproperty(self, "type", openborconstant("TYPE_NONE"));
}

@end_script
	loop	0
        followanim 3
        followcond 1
        delay   1
	offset	17 17
        fastattack 1#
        attack  0 0 0 0
	frame	data/chars/misc/weapons/knife00.png
        delay   5
        hitfx   data/sounds/empty.wav
        attack32  15 13 18 8 0 0 1 1 0
	frame	data/chars/misc/weapons/knife00.png	
        delay   1
        attack  0 0 0 0
	frame	data/chars/misc/weapons/knife00.png
        @cmd    anichange "ANI_FOLLOW3" 0
	frame	data/chars/misc/weapons/knife00.png

anim follow3
	loop	0
        delay   1
	offset	17 17
	frame	data/chars/misc/weapons/knife00.png	
        delay   1
        @cmd    killentity getlocalvar("self")
	frame	data/chars/misc/weapons/knife00.png
	frame	data/chars/misc/weapons/knife00.png

anim fall
@script
    void self = getlocalvar("self");

    if(frame==0){
      changeentityproperty(self, "subject_to_gravity", 1);
    }
@end_script
	loop      0
      delay     6
	offset 17 17
	landframe 7
        jumpframe 0 2 -0.5
        sound  data/sounds/knifewall.wav
        @cmd    stop
	frame	data/chars/misc/weapons/knife05.png
	frame	data/chars/misc/weapons/knife04.png
	frame	data/chars/misc/weapons/knife03.png
	frame	data/chars/misc/weapons/knife02.png
	frame	data/chars/misc/weapons/knife01.png
	frame	data/chars/misc/weapons/knife08.png
        delay   100
	frame	data/chars/misc/weapons/knife07.png
        sound   data/sounds/weapfall1.wav
        delay   1
        @cmd    spawn01 "knife" 0 0 0
	frame	data/chars/misc/empty.png
      @cmd killentity getlocalvar("self")
	frame	data/chars/misc/empty.png

anim death
      loop      0
      delay     2
	offset 1 1
	frame	data/chars/misc/empty.png
      @cmd killentity getlocalvar("self")
	frame	data/chars/misc/empty.png

anim	follow10
@script
    void self = getlocalvar("self");

    if(frame==0){
      changeentityproperty(self, "subject_to_gravity", 1);
    }
@end_script
	loop      0
      delay     6
	offset 17 17
	landframe 7
        jumpframe 0 2 -0.5
        sound  data/sounds/knifewall.wav
        @cmd    stop
	frame	data/chars/misc/weapons/knife05.png
	frame	data/chars/misc/weapons/knife04.png
	frame	data/chars/misc/weapons/knife03.png
	frame	data/chars/misc/weapons/knife02.png
	frame	data/chars/misc/weapons/knife01.png
	frame	data/chars/misc/weapons/knife08.png
        delay   100
	frame	data/chars/misc/weapons/knife07.png
        sound   data/sounds/weapfall1.wav
        delay   1
        @cmd    spawn01 "knife" 0 0 0
	frame	data/chars/misc/empty.png
      @cmd killentity getlocalvar("self")
	frame	data/chars/misc/empty.png




 
dantedevil said:

I'm sorry Dante, but the basic logic used now is the same as it always was. I need to know more. What version of OpenBOR were you using before?

I also need a copy of the scripts you used.
 
Damon Caskey said:
dantedevil said:

I'm sorry Dante, but the basic logic used now is the same as it always was. I need to know more. What version of OpenBOR were you using before?

I also need a copy of the scripts you used.

For a long time I used Build 4432 (the most stable one for me), but recently I was forced to change to 6315 to use the Ilusionista Script for branch in holes.
http://www.chronocrash.com/forum/index.php?topic=3910.msg54840#msg54840

Since I changed Build I found the bug of Block during fall a ground and the bug of Game Over after the loss 1 credit.

About the scripts, do you need all the scripts I use in the Mod?
 
Back
Top Bottom