Neon Lightning Force

Complete Neon Lightning Force v 1.5 demo

No permission to download
Project is completed.
@maxman : Hi, I take a look to both projects and their scripts looks like alien writing to me @.@ (I think I'm still a rookie at coding). I also need an script to move the players entities to a certain point before frozen it and for the weapons a drop counter and ammo counter for the loaded weapons maybe I should learn more about OpenBOR scripting before doing something like that, I could leave it to future version.


Hi to everyone, here is another sample of what I have been working for Neon Lightning Force:

Even thought, there are still have many things to fix (which I must learn how to fix x'd), like the camera that starts too upward from the floor (0:01), the Flames from Iga's bombs that moves beyond the "zmin" (?) (2:28):
Code:
name    Flama_Ninja
type none
antigravity    0
remove    1
subject_to_platform    1
subject_to_gravity    1
subject_to_hole        1
subject_to_basemap    1
subject_to_wall        1
subject_to_minz    1
noatflash        1
nolife        1
hostile        player npc
candamage    player npc

And the lifebar bug which appear over the the player hud in "right to left" stages, this algo happens me in Silver Night's Crusaders Legion boss fight and library stage (part 2) x.x:
Life bar and MP bar are over the player hud (wrong x.x):
7rmlPRX.gif


Life bar and MP bar are over the player hud (correct :D):
gtpUFrF.gif


Code:
set    Test_mode
lives    5
credits    3
typemp    1
cansave    2
noshare 0
maxplayers  2
nosame    1 0
continuescore 1
noslowfx 1
showrushbonus 1
nomaxrushreset 2
p1smenu    81 228 240 320
p2smenu    231 228 240 320
p1mp 19 18
p2mp 199 18
p1lifen 131 10 3
p1lifex 124 13 3
e1life 20 33
e1icon 2 25
e1name 21 25 0
p2lifen 311 10 3
p2lifex 304 13 3
p2shoot 180 0
e2icon 182 25
e2name 201 25 0
e2life 201 33

rush    1    2    Combo    3    3    Max._Combo_    4    4

p1rush    2    49    70    49    2    69    76    69
p2rush    234     49     302     49     234    69    308    69
scbonuses 10000 1000 100 1

z 718 820 718
file    data/levels/stage4-c.txt (Iga & Koga boss fight) <--- Here setting works wrong, lifebar goes over player hub x.x
z 166 273 160
file    data/levels/stage1-a.txt <--- Here settings works fine.

Some enemies have totally changed like the Biosoldier (the big guy masked boss from the Industrial Area), now is called "D Creature" and can posses thugs to become a "Drako Monster":
6IY5QFr.gif


The "Biowarrior" is back too but now is called "Protoroid", you can watch it spawn from a dead Biosoldier M xd:
051zBpq.gif


The project still has many thing to change I don't think I can release the game at 25 of june (the game aniversary). Maybe I'll release this version for the next year
*sigh* .
 
Last edited:
@maxman : Hi, I take a look to both projects and their scripts looks like alien writing to me @.@ (I think I'm still a rookie at coding). I also need an script to move the players entities to a certain point before frozen it and for the weapons a drop counter and ammo counter for the loaded weapons maybe I should learn more about OpenBOR scripting before doing something like that, I could leave it to future version.
Maybe you don't get it. For the first one I mentioned, you can use anim spawn from the last boss and summon 2 spawned entities. Do you know how to use spawn01 or spawn06, whatever? I highlight some important ones for you on this enemy and you know it's for script.

name zedd
health 75
speed 18
type enemy
nodieblink 3

shadow 3

cantgrab 1
subject_to_screen 1
escapehits 3

animationscript data/scripts/script.c

load fadeoutwhite
remove 0

noquake 0

aggression 60

riseattacktype 0
risetime 0 300

load idlezedd1
load idlezedd2

Code:
anim spawn

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


 if(frame == 61){
playmusic("data/music/weneedahero.bor", 1);

    }
@end_script

@cmd spawn06 "idlezedd1" 0 0 0
@cmd spawn06 "idlezedd2" 0 0 0


jumpframe 0 2 2
landframe 1 dust
offset 49 149
delay 200
frame    data/chars/zedd/jump02small.gif # 200 - THOUGH PLAYERS ARE FROZEN TO WAIT, DELAY VALUE DOESN'T MATTER DUE TO JUMPFRAME UNTIL HE LANDS

sound data/sounds/zeddgreetings.wav
    delay    15
frame    data/chars/zedd/slide01small.gif # 15 - STAY FREEZING TO WAIT
    frame    data/chars/zedd/idle01small.gif # 30
frame    data/chars/zedd/idle02small.gif # 45
frame    data/chars/zedd/idle03small.gif #60
frame    data/chars/zedd/idle02small.gif #75
frame    data/chars/zedd/idle01small.gif #90
frame    data/chars/zedd/idle02small.gif #105
frame    data/chars/zedd/idle03small.gif #120
frame    data/chars/zedd/idle02small.gif #135
    frame    data/chars/zedd/idle01small.gif #150
frame    data/chars/zedd/idle02small.gif #165
frame    data/chars/zedd/idle03small.gif #180
frame    data/chars/zedd/idle02small.gif #195
frame    data/chars/zedd/idle01small.gif #210
frame    data/chars/zedd/idle02small.gif #225
frame    data/chars/zedd/idle03small.gif #240
frame    data/chars/zedd/idle02small.gif #255
    frame    data/chars/zedd/idle01small.gif # 270
frame    data/chars/zedd/idle02small.gif #285
frame    data/chars/zedd/idle03small.gif #300
frame    data/chars/zedd/idle02small.gif #315
frame    data/chars/zedd/idle01small.gif #330
frame    data/chars/zedd/idle02small.gif #345
frame    data/chars/zedd/idle03small.gif #360
frame    data/chars/zedd/idle02small.gif #375

delay 4
sound data/sounds/embiggen.wav
frame    data/chars/zedd/idle01small.gif #379
frame    data/chars/zedd/idle01.gif # 383
frame    data/chars/zedd/idle01small.gif #387
frame    data/chars/zedd/idle01.gif #391
frame    data/chars/zedd/idle01small.gif #395
frame    data/chars/zedd/idle01.gif #399
frame    data/chars/zedd/idle01small.gif #403
frame    data/chars/zedd/idle01.gif #407
frame    data/chars/zedd/idle01small.gif #411
frame    data/chars/zedd/idle01.gif # 415
frame    data/chars/zedd/idle01small.gif #419
frame    data/chars/zedd/idle01.gif #423
frame    data/chars/zedd/idle01small.gif #427
frame    data/chars/zedd/idle01.gif #431
frame    data/chars/zedd/idle01small.gif #435
frame    data/chars/zedd/idle01.gif #439
frame    data/chars/zedd/idle01small.gif #443
frame    data/chars/zedd/idle01.gif #447
frame    data/chars/zedd/idle01small.gif #451
frame    data/chars/zedd/idle01.gif #455
frame    data/chars/zedd/idle01small.gif #459
frame    data/chars/zedd/idle01.gif #463
frame    data/chars/zedd/idle01small.gif #467
frame    data/chars/zedd/idle01.gif #471
frame    data/chars/zedd/idle01small.gif #475
frame    data/chars/zedd/idle01.gif #479
frame    data/chars/zedd/idle01small.gif #483
frame    data/chars/zedd/idle01.gif #487

    delay    12

    frame    data/chars/zedd/idle01.gif #499
frame    data/chars/zedd/idle02.gif #511 - STOP FREEZING
frame    data/chars/zedd/idle03.gif #523 - PLAYER PERFORM NON-LOOPED IDLE ANIMATION (ANIM FREESPECIAL5)
frame    data/chars/zedd/idle02.gif #535
    frame    data/chars/zedd/idle01.gif #547
frame    data/chars/zedd/idle02.gif #559
frame    data/chars/zedd/idle03.gif #571
frame    data/chars/zedd/idle02.gif #583

Just look at the ones called idlezedd1 (one for player 1) and idlezedd2 (one for player 2). For both Zedd and the IdleZedds (1 and 2), count the delay values for timing the rhythm of the situation.

Here's one for player 1 for example. You can do the same procedure with player 2 but you do it for player 2's side.
Code:
name        idlezedd1
type        none
offscreenkill    3000
subject_to_gravity 0
animationscript    data/scripts/sceneFX.c
lifespan 10

anim spawn
   delay   10
   offset   1 1
   frame   data/chars/misc/empty.gif # 10 - NOT FREEZING YET
   delay   500
   @cmd   DeControl 0 1 #DeControl {player} {nocontrol} / Stop/freeze player 1 from moving
   @cmd   MovePlayer 0 0 0 0 #MovePlayer {player} {Vx} {Vy} {Vz}
   @cmd   DirPlayer 0 1 #DirPlayer {player} {direction} / Player 1 faces right
   @cmd   AnimPlayer 0 "ANI_IDLE" #AnimPlayer {player} {animation}
   frame   data/chars/misc/empty.gif # 510 - START FREEZING
   delay   1
@cmd   AnimPlayer 0 "ANI_freespecial5" #Player 1 starts a non-looped idle animation
@cmd   DeControl 0 0 # Player 1, free out of control
@cmd   killentity getlocalvar("self") #Get removed from screen
   frame   data/chars/misc/empty.gif # 511 - STOP FREEZING

Player's freespecial5:
Code:
anim freespecial5 **idle without loop
    loop    0
    delay    13
    offset    15 72
    bbox    9 6 21 64
    frame    data/chars/red_ranger/stand000.gif #13
    frame    data/chars/red_ranger/stand001.gif #26
    frame    data/chars/red_ranger/stand002.gif #39
    frame    data/chars/red_ranger/stand003.gif #52

If you look at sceneFX.c, you'll understand what I was trying to say. It's an animation script library that affects (specific) players.

I did use that as a reference for one of my projects and follow how the procedure is/was done.

I'll talk about weapon-carrying thru levels later, but I did post a topic about that. (Someone already revived the topic by asking some question, so you can check it out. ;))

For players moving to some certain point, you can look at Double Dragon Reloaded for that. You can look thru levels, I think.
 
like the camera that starts too upward from the floor (0:01), the Flames from Iga's bombs that moves beyond the "zmin" (?) (2:28):

Well, if your stage is too tall, why not shorten it?
But if you insist on having tall stage, you can always force camera to start below with this script:
Code:
spawn    empty
@script
void main()
{
    changeopenborvariant("ypos", 200);
}
@end_script
coords    100 300
at    0

I don't know the proper value for this boss stage though, I picked 200 as example. You might need to trial n error to get proper value.
Also even though this script is declared on empty's spawn, the script has no relation to empty to all. It's declared there cause it's spawned at 0 or start of the level.

As for flame effect running past minimum z, type none usually isn't subject to that. My suggestion is add script to kill the effect if it has moved past min z or even better change to other animation to play dead animation and stop moving.

[two days later]

Here's an example of entity using such script:
Code:
name        Firestick
type        none
candamage     enemy obstacle
lifespan    2


anim    spawn
    delay    6
    offset  20 156
    hitflash spark
    hitfx    data/sounds/burnt.wav
    frame    data/chars/misc/magic/firestik01.png
    frame    data/chars/misc/magic/firestik02.png
    burn    10 16 20 140 11 1 1
    frame    data/chars/misc/magic/firestik03.png

anim    idle
@script
    if(frame >= 1){
      void self = getlocalvar("self");
      int z = getentityproperty(self, "z");

      if(z > openborvariant("PLAYER_MAX_Z")){
        changeentityproperty(self, "velocity", 0, 0, 0);
        changeentityproperty(self, "position", NULL(), openborvariant("PLAYER_MAX_Z"));
        changeentityproperty(self, "animation", openborconstant("ANI_FOLLOW1"), 2);
        updateframe(self, 0);
      } else if(z < openborvariant("PLAYER_MIN_Z")){
        changeentityproperty(self, "velocity", 0, 0, 0);
        changeentityproperty(self, "position", NULL(), openborvariant("PLAYER_MIN_Z"));
        changeentityproperty(self, "animation", openborconstant("ANI_FOLLOW1"), 2);
        updateframe(self, 0);
      }
    }
@end_script
    loop    1
    delay    6
    offset  20 156
    hitflash spark
    hitfx    data/sounds/burnt.wav
    burn    10 16 20 140 11 1 1
    frame    data/chars/misc/magic/firestik04.png
    frame    data/chars/misc/magic/firestik05.png
    frame    data/chars/misc/magic/firestik06.png
    frame    data/chars/misc/magic/firestik07.png #
    frame    data/chars/misc/magic/firestik04.png
    frame    data/chars/misc/magic/firestik05.png
    frame    data/chars/misc/magic/firestik06.png
    frame    data/chars/misc/magic/firestik07.png #

anim    follow1
    delay    6
    offset  20 156
    frame    data/chars/misc/magic/firestik04.png
    frame    data/chars/misc/magic/firestik05.png
    frame    data/chars/misc/magic/firestik06.png
    frame    data/chars/misc/magic/firestik07.png #
    frame    data/chars/misc/magic/firestik08.png
    attack    0
    frame    data/chars/misc/magic/firestik09.png
    frame    data/chars/misc/magic/firestik10.png
    frame    data/chars/misc/magic/firestik11.png
    frame    data/chars/misc/magic/firestik12.png
    frame    data/chars/misc/magic/firestik13.png
    frame    data/chars/misc/magic/firestik14.png
    frame    data/chars/misc/magic/firestik15.png
    delay    200
    frame    data/chars/misc/empty.png

This firestick can be fired to any x or z direction. It will play IDLE animation until its lifespan ends but if it reaches either maximum z or minimum z, it will stop and perform FOLLOW1 in which it dies out.
 
Last edited:
@maxman : Hi, I take a look to both projects and their scripts looks like alien writing to me @.@ (I think I'm still a rookie at coding). I also need an script to move the players entities to a certain point before frozen it and for the weapons a drop counter and ammo counter for the loaded weapons maybe I should learn more about OpenBOR scripting before doing something like that, I could leave it to future version.


Hi to everyone, here is another sample of what I have been working for Neon Lightning Force:

Even thought, there are still have many things to fix (which I must learn how to fix x'd), like the camera that starts too upward from the floor (0:01), the Flames from Iga's bombs that moves beyond the "zmin" (?) (2:28):
Code:
name    Flama_Ninja
type none
antigravity    0
remove    1
subject_to_platform    1
subject_to_gravity    1
subject_to_hole        1
subject_to_basemap    1
subject_to_wall        1
subject_to_minz    1
noatflash        1
nolife        1
hostile        player npc
candamage    player npc

And the lifebar bug which appear over the the player hud in "right to left" stages, this algo happens me in Silver Night's Crusaders Legion boss fight and library stage (part 2) x.x:
Life bar and MP bar are over the player hud (wrong x.x):
7rmlPRX.gif


Life bar and MP bar are over the player hud (correct :D):
gtpUFrF.gif


Code:
set    Test_mode
lives    5
credits    3
typemp    1
cansave    2
noshare 0
maxplayers  2
nosame    1 0
continuescore 1
noslowfx 1
showrushbonus 1
nomaxrushreset 2
p1smenu    81 228 240 320
p2smenu    231 228 240 320
p1mp 19 18
p2mp 199 18
p1lifen 131 10 3
p1lifex 124 13 3
e1life 20 33
e1icon 2 25
e1name 21 25 0
p2lifen 311 10 3
p2lifex 304 13 3
p2shoot 180 0
e2icon 182 25
e2name 201 25 0
e2life 201 33

rush    1    2    Combo    3    3    Max._Combo_    4    4

p1rush    2    49    70    49    2    69    76    69
p2rush    234     49     302     49     234    69    308    69
scbonuses 10000 1000 100 1

z 718 820 718
file    data/levels/stage4-c.txt (Iga & Koga boss fight) <--- Here setting works wrong, lifebar goes over player hub x.x
z 166 273 160
file    data/levels/stage1-a.txt <--- Here settings works fine.

Some enemies have totally changed like the Biosoldier (the big guy masked boss from the Industrial Area), now is called "D Creature" and can posses thugs to become a "Drako Monster":
6IY5QFr.gif


The "Biowarrior" is back too but now is called "Protoroid", you can watch it spawn from a dead Biosoldier M xd:
051zBpq.gif


The project still has many thing to change I don't think I can release the game at 25 of june (the game aniversary). Maybe I'll release this version for the next year
*sigh* .
Maybe you have to fix creature from cadiliacs and dinosaur sprites. Good luck!!
 
@maxman : Thanks maxman for the help, I did the auto move for players with a simple function I found in another project :D :

KarJz18.gif


About weapons I think I'm going to look other projects code too xd.

@Bloodbane: I learned out how to freeze players entities with the entityproperty "noaicontrol", so players can watch the background buildings while the camera is scrolling and revocer entities control when camera reach the floor xd.

I had this same camera issue in the second part of the library and Legion's lair at Silver Night's Crusaders, that's where I really going to use "changeopenborvariant", so thanks :D and thanks again for the code to solve the zmin issue for the ninja flames, it's great now xd.

------------------

Some short news about the project:

So, yes finally players entities can be freezed and/or moved to certain points in the stages automatically, so players can pay attention to bosses intro instead trying to hit them or walk randomdly in the stage until the boss finish its presentation xd:

srNtYuL.gif


It feels great to know more about OpenBOR and have a better control of the engine xd, but is there a way to pause the game time? The clock timer it's still running when the auto move starts.

The game code has been optimized too, using "#import" to add the just the funtions that each entity needs to save ram memory :D :
5t2idKc.jpeg


But here are some bug which I'm struggling now:

When a player throws an entity, sometimes appears over a wall no matter how high the wall is xd:


7XFoY0Z.gif

When enemy is throw far from a wall​
ESZP9QZ.gif

When the enemy is throw close to a wall​

Code:
anim    throw
    loop    0
    delay    10
    @cmd    bind 1 2 1 118 1
    @cmd    forceanim "ANI_FOLLOW54" 0
    offset    120 128
    frame    data/chars/negishi/throw1a.gif
    sound    data/sounds/puncha.wav
    delay    1
    @cmd    bind 1 -74 2 57 1
    frame    data/chars/negishi/throw1b.gif
    delay    40
    @cmd    bind 0 0 0 0 0
    frame    data/chars/negishi/throw1b.gif
    delay    7
    offset    40 118
    bbox    23 5 34 100
    @cmd    clearL
    frame    data/chars/negishi/turn.gif
Code:
anim    fall
    loop    0
    delay    30
    landframe    2
    offset    55 83
    @cmd    antiwall 16 0 0
    bbox    10 26 75 30
    attack27    10 26 75 30 18 18 0 0 15 0
    frame    data/chars/perejil/fall1.gif
    @cmd    antiwall 16 0 0
    delay    1000
    bbox    18 48 64 30
    attack27    18 48 64 40 18 18 0 0 15 0
    frame    data/chars/perejil/fall2.gif
    @cmd    antiwall 16 0 0
    delay    10
    attack27    0 0 0 0 0 0 0 0 0 0
    bbox    10 65 80 30
    frame    data/chars/perejil/fall3.gif

This also happen when the enemy is throw close to a wall by a knockdown grabattack move:
vpk9sVF.gif


Or if the entity it's moved instantly via script:
SWV7hxo.gif


Code:
anim    freespecial3
    loop    0
    offset    111 126
    range    0 160
    rangez    -50 50
    energycost    0
    mponly    1
    bbox    76 57 70 70
    delay    40
    landframe    4
    jumpframe    1 10 0 0
    otg    1
    frame    data/chars/soldadob/special1a.gif
    delay    50
    bbox    80 57 95 40
    hitflash    flashe
    frame    data/chars/soldadob/jump1a.gif
    delay    7
    bbox    0 0 0 0
    @cmd    teletarget -40 280 0 # <--- He jump, and "teleport" to the player location to fall over him.
    frame    data/chars/soldadob/jump1a.gif
    delay    1000
    @cmd    antiGravityE -80
    attack    76 59 98 70 22 24 0 0 15 0
    equalairpause    1
    frame    data/chars/soldadob/jump1a.gif
    @cmd    antiGravityE 0
    bbox    76 57 70 70
    attack    0 0 0 0
    delay    30
    frame    data/chars/soldadob/special1a.gif

I heard about an Anti Wall script in the forum but didn't seems to work, or maybe I'm missing something, I'm using this one:
C++:
void antiwall(int Dist, int Move, int Distz)
{//Checks distance from the walls
//If near of the walls at defined distance, entity (Self/Grabbed) will be moved away with defined movement
    void self         = getlocalvar("self");
    void target        = getentityproperty(self, "grabbing");
    int Direction     = getentityproperty(self, "direction");
    int x             = getentityproperty(self, "x");
    int Tx             = getentityproperty(target, "x");
    int z             = getentityproperty(self, "z");
    int Tz             = getentityproperty(target, "z");
    int subwall        = getentityproperty(self, "subject_to_wall");
    float W;
    float Wz;

    if(Direction == 0){ //Is entity facing left?                 
        Dist = -Dist;
        Move = -Move;
    }

    W     = checkwall(x+Dist,z);
    Wz     = checkwall(x+Dist,z+Distz);

    if(Wz){
        if(subwall == 1)
        {
            changeentityproperty(self, "position", x, z-Distz);
            changeentityproperty(target, "position", Tx, Tz-Distz);
        }
    }

    if(W){
        if(subwall == 1)
        {
            changeentityproperty(self, "position", x+Move);
            changeentityproperty(target, "position", Tx+Move);
        }
    }
}

Second, sometimes OpenBOR shutsdown randomdly while fighting stage 4 boss fights (the ninjas and the Drako Monsters boss fight), but I don't know if it's an engine issue or it's something about my code. I'm using OpenBOR v3.0 Build 6391. I attach the log.txt file where OpenBOR shutdowns while fightning.

About the weapons, I think I'm going need "durability counter" for every of them (Yes, they are too powerfull xd).

I'm remaking the bike bonus stage, just need one stage more to finish the game :D .
 

Attachments

I can only guess how your bind function works judging from how it's shown. You need to use antiwall to prevent opponent from being tossed/placed inside a wall.
Here's an example using antiwall function quoted above:
Code:
anim    throw
    loop    0
    delay    10
    @cmd    bind 1 2 1 118 1
    @cmd    forceanim "ANI_FOLLOW54" 0
    offset    120 128
    frame    data/chars/negishi/throw1a.gif
    sound    data/sounds/puncha.wav
    delay    1
    @cmd    bind 1 -74 2 57 1
    @cmd    antiwall -75 75 1
    frame    data/chars/negishi/throw1b.gif
    delay    40
    @cmd    bind 0 0 0 0 0
    frame    data/chars/negishi/throw1b.gif
    delay    7
    offset    40 118
    bbox    23 5 34 100
    @cmd    clearL
    frame    data/chars/negishi/turn.gif

This will move Negishi 75 pixels forward if there's a wall 75 pixels behind him.
Although this should work, 75 pixels move is quite big so I usually break it into 3 steps. Negishi's throw only has 2 frames before he tosses opponent so there's not much point in using the breaks though.

As for Drako, you could try this:
Code:
anim    freespecial3
    offset    111 126
    range    0 160
    rangez    -50 50
    energycost    0
    mponly    1
    bbox    76 57 70 70
    delay    40
    landframe    4
    jumpframe    1 10 0 0
    otg    1
    frame    data/chars/soldadob/special1a.gif
    delay    50
    bbox    80 57 95 40
    hitflash    flashe
    frame    data/chars/soldadob/jump1a.gif
    delay    7
    bbox    0 0 0 0
    @cmd    antiwall -40 40 0
    @cmd    antiwall 40 -40 0
    @cmd    teletarget -40 280 0 # <--- He jump, and "teleport" to the player location to fall over him.
    frame    data/chars/soldadob/jump1a.gif
    delay    1000
    @cmd    antiGravityE -80
    attack    76 59 98 70 22 24 0 0 15 0
    equalairpause    1
    frame    data/chars/soldadob/jump1a.gif
    @cmd    antiGravityE 0
    bbox    76 57 70 70
    attack    0 0 0 0
    delay    30
    frame    data/chars/soldadob/special1a.gif

I declared 2 antiwall functions in case there's a wall 40 pixels to the left or to the right of target.

is there a way to pause the game time? The clock timer it's still running when the auto move starts.

Hmm... I don't know if there's a way to pause timer but there is a way to modify timer.
C:
changeopenborvariant("game_time", 40000);

This script will set timer to 100.
So you either reset timer after in game scenes or add the time spent to wait the scene to make up the time loss.
 
When a player throws an entity, sometimes appears over a wall no matter how high the wall is xd:
As Bloodbane said, you have to add an antiwall in your code. You can either add on the player or, as @Kratus uses, directly in the throw script (this will make the thrown entity to move away from the wall, not the attacker as the antiwall does), and it can be better or not, depending of the type of throw you want to make

Also, I use a trick to not need to use antiwall and it works like in 90% of the cases of my throws: I always release the target at 0 position in the X axis, on the same frame I use throw/finish. For back throws like that, work like a charm. it wont work with some type of throws, like German Suplex, because the thrown enemy is placed behind you:
aZBm1B1.gif


For those type of throws (suplex), I do prefer to use the antiwall code, to avoid having the player to "enter inside the wall".

I wish OpenBOR could use the bbox to calculate if an entity is inside the wall, not only the axis.
 
I just did another playthrough of this but it end's after the clown boss. Also i can't seem to find the english version "If there is one hahaha" Great stuff the game is super fun. @Crimsondeath My Playthrough
 
Last edited:
@Bloodbane & @O Ilusionista : Thank you, everyting is ok now :D .

@dai92 Wow, thanks :D . I'm trying to do a "Multi language" version using globalvars, everything is going fine (splitting the game in english or spanish version makes fixing bugs really hard o_O).
No problem buddy , Amazing work i can't wait to play the full version when it is finished :) I thought there was an english version already. I seen someone playing on youtube and it was in english so i thought i downloaded the wrong version hahaha.

This one
 
No problem buddy , Amazing work i can't wait to play the full version when it is finished :) I thought there was an english version already. I seen someone playing on youtube and it was in english so i thought i downloaded the wrong version hahaha.

This one
That's the old version slightly modified by Chavyn, some of his change were applied to the new version :D .

------------------

I keep working on the game, just one stage more to finish it, this is the second bonus stage now It really looks like a biker chase:


I posted this video yesterday, so probably some people already seen it xd. At this time I already fix the background scrolling and added some sound effect at the beginning xd.

Thanks a lot to those who support me in this post and the Ask and Answer forum section, I'm learning a lot :D .
 
That's the old version slightly modified by Chavyn, some of his change were applied to the new version :D .

------------------

I keep working on the game, just one stage more to finish it, this is the second bonus stage now It really looks like a biker chase:


I posted this video yesterday, so probably some people already seen it xd. At this time I already fix the background scrolling and added some sound effect at the beginning xd.

Thanks a lot to those who support me in this post and the Ask and Answer forum section, I'm learning a lot :D .
Oh i see ok buddy :) Awesome job on the update im looking forward to playing it when it is finished :D
 
I keep working on the game, just one stage more to finish it, this is the second bonus stage now It really looks like a biker chase:
This looks pretty cool, congrats!

I just see two issues:

1- This is a very common mistake in this type of level in games made in OpenBOR: wrong speed and physics, which completely breaks the immersion.

Think about the following: you are on a motorcycle going 80 km per hour, from north to south, and next to you there is another motorcycle going the same speed. If you see the driver of that motorcycle fall, he will always fall in the opposite direction to which he was going (that is, towards the north), which will make him and the motorcycle pass you and fall behind, since the motorcycle is no longer going 80 km per hour but you still are. In order for him to move south while falling, he would need to be hit by something with a much higher speed than him and that was constant, as if pushing him forward. Even a shot would not be enough, because inertia would act at the same time.

that is, if your level is moving from left to right at 10px per second (bgspeed 10), every enemy can only move left at 10px per second when they are hit, especially when they touch the ground.

You can even keep them falling at the speed they are currently at, but as soon as they touch the ground, they need to move left at 10px per second, as it is impossible for them to stay in the same position as they do at some points in the video.

And it even makes more sense that, when they are hit, if they are facing right, they should continue facing right as they fall - and you can use a small script to ensure this (I use this on the 'jet biker' and 'jet soldier' enemies in my Avengers game).

Maybe I will add here some illustrations later to better show my point.

2- separate the layers from the level, this would help a lot with parallax, as it is physically impossible for the buildings in the background to move at the same speed as the road :)

otherwise, you did a great job :)
 
This looks pretty cool, congrats!

I just see two issues:

1- This is a very common mistake in this type of level in games made in OpenBOR: wrong speed and physics, which completely breaks the immersion.

Think about the following: you are on a motorcycle going 80 km per hour, from north to south, and next to you there is another motorcycle going the same speed. If you see the driver of that motorcycle fall, he will always fall in the opposite direction to which he was going (that is, towards the north), which will make him and the motorcycle pass you and fall behind, since the motorcycle is no longer going 80 km per hour but you still are. In order for him to move south while falling, he would need to be hit by something with a much higher speed than him and that was constant, as if pushing him forward. Even a shot would not be enough, because inertia would act at the same time.

that is, if your level is moving from left to right at 10px per second (bgspeed 10), every enemy can only move left at 10px per second when they are hit, especially when they touch the ground.

...

2- separate the layers from the level, this would help a lot with parallax, as it is physically impossible for the buildings in the background to move at the same speed as the road :)

otherwise, you did a great job :)
@O Ilusionista : Sorry the late reply man and thanks for the explanation. About the scrolling background yeah I need to fix that.

You can even keep them falling at the speed they are currently at, but as soon as they touch the ground, they need to move left at 10px per second, as it is impossible for them to stay in the same position as they do at some points in the video.

You mean the falling animation? when they touch the ground? Maybe they should be rolling when they touch the ground or something (?). I'm lack of resources and sprites but I think what I can do.

And it even makes more sense that, when they are hit, if they are facing right, they should continue facing right as they fall - and you can use a small script to ensure this (I use this on the 'jet biker' and 'jet soldier' enemies in my Avengers game).
They face the same direction, but some of them comes in the opposite direction to hit players bike, maybe I should increase their speed or what do you suggest?

Maybe I will add here some illustrations later to better show my point.
If you have a good examples of this kind of stages I'll be gratefull.

----------------------------------------

Ok, I'm back, even if I don't post anything here doesn't mean I stop working in the game :LOL::LOL::LOL:. Here is another new vid (I'm at the half of the last stage):


I hope to finish this game in June of this year (If there are no setbacks...).

Just one question, do you know what game is this background stage from? I need the original sprite to edit it (It's for the Boss rush stage)
063B1Xb.gif


And thanks again to those who helps me in the "Ask and Answer" forum section :D.
 
Last edited:
@O Ilusionista : Sorry the late reply man and thanks for the explanation. About the scrolling background yeah I need to fix that.



You mean the falling animation? when they touch the ground? Maybe they should be rolling when they touch the ground or something (?). I'm lack of resources and sprites but I think what I can do.


They face the same direction, but some of them comes in the opposite direction to hit players bike, maybe I should increase their speed or what do you suggest?


If you have a good examples of this kind of stages I'll be gratefull.

----------------------------------------

Ok, I'm back, even if I don't post anything here doesn't mean I stop working in the game :LOL::LOL::LOL:. Here is another new vid (I'm at the half of the last stage):


I hope to finish this game in June of this year (If there are no setbacks...).

Just one question, do you know what game is this background stage from? I need the original sprite to edit it (It's for the Boss rush stage)
063B1Xb.gif


And thanks again to those who helps me in the "Ask and Answer" forum section :D.
The ring is from the Slammasters games series. (Capcom)

And glad there is some progress here !
 
You mean the falling animation? when they touch the ground? Maybe they should be rolling when they touch the ground or something (?). I'm lack of resources and sprites but I think what I can do.
Yes, the falling animation. you don't need to make them to roll. just give the first frame of the fall animation - where they touch the ground - the same velocity your stage have and its done :)

and nice work on the new stage
 
@NED: Thanks man, I think I take that background stage from an existing OpenBOR project in 2015, but I totally forget the name...

Does anyone know a good emulator or tool to rip this kind of graphic?

@O Ilusionista: Good idea :D .

-------------------------------------------

Ok, Hi to everyone, I came here with new content for everyone. The elevator stage in the Talos corporation building has changed:


As you can see I gived a buff to Atlas with new color design and a devastating special skill :D. But someone knows how to make the bullets bounce when robots are shooted? Did I have to spawns "bullets" entities using the takedamagescript and the attack types?

And well Christmas is almost here in Perú (just a few hours are left 🎄), so I bring an extra gameplay :D :


By the way, does anyone know how to make an enemy "auto move" to a certain x/z location in the stage, like the player (Steven) did at the end of the video? (I need help with that -_-).

Finally, the game is almost ready, just need to finish the Extra Stage, the first part of Stage 6 (Vixor's 3rd form is in progress) and the Cutscenes to have a great release the next year! But... many important setsbacks came this month which could "delay" this project progress.
Staff cuts in my job... so I have to put this game in "hiatus" and focus on getting a new job...
So I'll probably be absent from the forum for a while (a little while, I hope).

Once again, I have to thanks to all the game followers and those who helps me in the Ask and Aswer forum section :D .

Merry Christmas to everyone and happy new year to all 🎄.
 
Back
Top Bottom