Welcome, Guest. Please login or register.

What openbor you prefer: Double dragon,battletoads or final fight !? by lirexpatrio
[December 07, 2012, 07:15:27 pm]


what are your favorite games OpenBOR?! by lirexpatrio
[December 07, 2012, 07:09:46 pm]


Post Some Awesome Videos by maxman
[December 07, 2012, 05:51:39 pm]


Can @cmd playmusic "aaaa" 1 also increse music sound ? by BeasTie
[December 07, 2012, 05:24:38 pm]


Streets of Rage: Silent Storm by mtrain
[December 07, 2012, 03:45:05 pm]


Site will be down for maintenance on 12/8/2012 thru 12/10/2012 by Damon Caskey
[December 07, 2012, 07:42:42 am]


Cancelled SOR 3d Remake by riccochet
[December 07, 2012, 03:58:33 am]


Dungeon Fighter: B.O.R. by msmalik681
[December 07, 2012, 03:24:27 am]


[TUTORIAL] How to create 4 Games of OpenBOR in 1 CD (650 MB) by magggas
[December 06, 2012, 09:46:25 pm]


custknife by Bloodbane
[December 06, 2012, 09:34:09 pm]


blockfx help by B.Kardi
[December 06, 2012, 04:09:14 pm]


street of age 4 hd by corradlo
[December 06, 2012, 01:41:36 pm]


ClaFan - Classic Fantasy ver 1.17 by soniczxblade
[December 06, 2012, 05:01:20 am]


Bug Archive by Bloodbane
[December 06, 2012, 02:00:44 am]


"Bio-Doom" and "Gears of Doom" by BulletBob
[December 05, 2012, 10:07:21 pm]


Contra Locked 'N' Loaded v2 by Bloodbane
[December 05, 2012, 09:39:43 pm]


Downloadable OpenBoR Manual by BeasTie
[December 05, 2012, 08:31:24 pm]


Having trouble testing changes by B.Kardi
[December 05, 2012, 03:05:53 pm]


DragonBall Absalon by msmalik681
[December 05, 2012, 02:52:13 pm]


[Hi-Res] Swamp by Vibrant
[December 05, 2012, 10:47:14 am]


  • Dot Guests: 137
  • Dot Hidden: 0
  • Dot Users: 0

There aren't any users online.



Author Topic: crime busters slam tutorial for beginners  (Read 852 times)

0 Members and 1 Guest are viewing this topic.

Offline jonsilva

  • Full Member
  • ***
  • Posts: 116
crime busters slam tutorial for beginners
« on: September 11, 2012, 10:13:22 pm »
(NOTE: download attached document for better view)
Download crimebuster slam grabscript.c and escript.c below

Tutorial
slam and throw
before starting this tutorial you must be familiarized with the basics of creating characters and levels
http://dcemulation.org/index.php5?title=OpenBORManual

•   For the player you need the script file containing the commands for the slam, from bloodbane´s game crimebusters (location data/scripts)
•   For the enemy you need the escript.c file containing the commands for the slam, from bloodbane´s game crimebusters (location data/scripts)

both script files contain the commands for the slams and special commands that can be used in player or enemy

Bloodbane Crime Busters
http://lavalit.com:8080/index.php?action=downloads;sa=view;down=19




 
If you already have a script.c in the scripts directory, you can change the file name leaving the extension .c / for example ( grabscript.c )
Copy this script files into your openbor folder Data/scripts
In order to use the script you need to add the following in your player/enemie .txt
 
animationscript data/scripts/grabscript.c   -> used for player
animationscript data/scripts/ escript.c       -> used for enemies


•   Create an anim fall7 in the player or in the enemy *.txt file
Ex: ryo.txt (player)



 
This will be the character pain images that will be used during the slam. (more images can be added)



 
Has showed above in ryo.txt you need to set the offset this controls X and Y axis position in were the image will be displayed. The attacker also controls this position with @cmd position (see below)


--------------------------------//-----------------------------------------------

        Character animations .txt file

This is an example of an enemie slam attack. (it works also for the player use grabforward anim / grabbackward instead.)

 

Code: [Select]
anim grab
delay 20
attackone 0
offset 55 145
jumpframe 2 4
landframe 9
quakeframe 9 1 8
sound data/sounds/grab.wav
@cmd grabcheck
frame data/chars/2maskguy3/slam01.gif
frame data/chars/2maskguy3/slam01.gif
delay 5
@cmd slamstart
@cmd position 7 40 12 -1 -1
frame data/chars/2maskguy3/slam01.gif
frame data/chars/2maskguy3/slam01.gif
delay 10
@cmd position 5 20 105 -1 -1
frame data/chars/2maskguy3/slam02.gif
@cmd position 8 0 135 -1 -1
frame data/chars/2maskguy3/slam03.gif
@cmd position 8 -30 125 -1 -1
frame data/chars/2maskguy3/slam04.gif
delay 20
@cmd position 6 20 95 -1 -1
frame data/chars/2maskguy3/slam05.gif
delay 1000
move -15
attack4 85 70 57 95 5 1 1 0 0 0
@cmd position 6 50 45 -1 -1
frame data/chars/2maskguy3/slam06.gif
move 0
delay 10
sound data/sounds/beat3.wav
@cmd spawn01 "Flash" 47 44 1
frame data/chars/2maskguy3/slam06.gif
delay 5
attack 0 0 0 0
@cmd depost 0
@cmd finish 25 2 -2 2.5 0 0
frame data/chars/2maskguy3/slam06.gif
delay 14
frame data/chars/2maskguy3/slam07.gif
frame data/chars/2maskguy3/slam08.gif
offset 106 192
frame data/chars/2maskguy3/rise8.gif
frame data/chars/2maskguy3/rise9.gif
@cmd clearL
frame data/chars/2maskguy3/rise10.gif



Attackone 0 – Used in grab animation, to set attackbox in animation to hit other enemies.
By default, it doesn't in GRAB animations! If slam/throw is not being used in grab animation and its being used in other animation attackone 0 is not necessary.


@cmd   slamstart ---used to start the slam or the throw
(use it at the beginning of the first slam/throw frame)

@cmd   slamstart2 --- works like slamstart above except it works for nongrabslams.
(use it at the beginning of the first slam/throw frame and when player/enemy is not in a grab animation)

@cmd   position [1] [2] [3] [4] [5] - this controls the victims image frame and position, and it needs to declared for
            each frame of the slam/throw (see example *.txt above)
[1] nº of fall7 animation (starts in 0) 
[2] X axis  -/+ <- ->
[3] Y axis -/+   down / up
[4] Z axis -/+ (layer position) (ex: -1 behind attacker | 1infront attacker // -10 more behind | 10 more infront)
[5] Controls victims facing direction: 0 = no change, 1 = same direction as slammer/thrower,
                  -1 = opposite direction as slammer
Example: @cmd position
   @cmd   position 6 50 45 -1 -1
   frame   data/chars/2maskguy3/slam06.gif


the fall7 position axis corresponds to the frame06.gif
in the attacker animation frames. Set all @cmd positions for fall7 animations in order for the two animations work together ___offset controls attacker position / position control victim position__________
(see example above in enemy grab .txt file)





@cmd   depost 0 use at the end of slam and throw finish to release grabbed opponent
(ex: @cmd    depost 0)



@cmd   finish [1] [2] [3] [4] [5] [6] --- used to finish the slam
(use it at the end of the last slam frame)
(ex: @cmd     finish 25 2 -2 3 0 0)
[1] damage made by the slam (- less damage) (+ more damage)
[2] defines which FALL animation slammed opponent will play after slammed / 1 = Opponent plays FALL animation after being slammed / 2 = Plays FALL9 animation (ex: character's FALL9's, plays a simpler version of fall animation. This is used for Suplexs and most slam animation in which slammed opponent plays fallen poses).
[3]fall distance X axis -/+ <-  ->     
[4]fall altitude y axis -/+   down/up           
[5]fall depth z axis -/+    far/near         
[6] flips the fall animation 0 / 1

@cmd   throw [1] [2] [3] [4] [5] [6] – used to finish throw     (works just like finish for slam)
(use it at the end of the last slam frame)
(ex: @cmd    throw 35 1 4 2 0 0)
[1]  damadge made by the slam (- less damage) (+ more damage)
[2] works just like @cmd finish above, except there's another accepted value:
3 = Plays FALL2 animation
(Some enemies have FALL2 animations in which they auto recover from being thrown.)
[3] fall distance X axis -/+   <-   ->           
[4] fall altitude y axis -/+       down/up       
[5] fall depth z axis -/+        far / near       
[6] flips the fall animation 0 / 1 (0 = Doesn't change opponent's direction / 1 = Flip opponent's direction)    

@cmd entergrab --this function is used for air grabs



@cmd      grabcheck -- (used in enemies) this is used in a grab animations type. Player and enemies wont stay grabbed for to long depending on grabforce values they will break free. In this case Grabcheck will check if the enemie is still holding the player and will start the slam/trow. If the player already broke free enemie wont perform the slam and will return to idle



@cmd   grabcheck2 ----(used in enemies) this is used for air and running grab (when not in a grab animation) - (example it checks if enemy attackbox hits the player, if its doesnt hit/connect the slam animation won’t start and enemy will return to idle)




@cmd   grabcheckA - (Used in players for air grabs checks) - prevents player from grabbing ground enemies, bikers, jetpacks, special enemies and non-enemy entities (example coming soon)

@cmd   grabcheckG – (Used in players for ground grabs checks) - prevents player from grabbing airborne enemies, bikers, jetpacks, special enemies and non-enemy entities (example coming soon)





@cmd   keymove ---(works for player only) allows player to move during slam or any animation by holding a direction key
(use it in the frame where the player will start moving)
(ex: @cmd keymove 0.7)
[0.7] is the speed the player will move, increase the number for more speed

@cmd antiwall [1] [2] [3] this function is to avoid slamming/throwing an opponent or player inside a wall
(use it at any frame before using the position command)
(ex: @cmd antiwall 50 -10 -1)

@cmd   stop – stops player movement


@cmd    hurt2 [1] – (used in both player and enemies) this command is used
in multiple slam or hits during the slam
[1] – Defines hurt2  damage -/+





@cmd   clearL - clears all local variables. Players and enemies have their own usages.
 For both, it is to clear latest grabbed opponent.
 For player, it is also to clear running and grabbed status. Use these 2 status to make running special and antigrab feature respectively.
 For enemy, it is also to clear latest targetted player for 3D targetted attack
(also use clearL if opponent is not grabbing the player after the player dies all lifes and continues with the credits)

@cmd    spawn01 “entity name“ [1] [2] [3] ------- spawns an entity in the current frame (used for special effects, flashes, dusts, etc..)
(ex: spawn01 "Break" 47 44 1)
“entity name” name of entiy to be spawned
[1]fall distance X axis -/+    <-   ->   
[2]fall altitude y axis -/+     down / up         
[3]fall depth z axis -/+       far / near         


----------------//--------------
(( You can place more commands here or at the bottom of the manual ))







Another example of slam this time using the throw for the player
This is the player frames animation for the throw




Has explained above It will be using the enemy anim fall7


 
------------------------------------------(player .txt file)---------------------------------------------
Code: [Select]
anim grabbackward
delay 12
attackone 0
offset 121 201
jumpframe 2 2 -1 0
sound data/sounds/ryo02.wav
frame data/chars/1ryo/th01.gif
delay 1
move -1
@cmd slamstart
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 4 0 60 -1 -1
frame data/chars/1ryo/th03.gif
attack 100 150 59 50 8 1 0 0 9 0
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
@cmd position 3 -20 35 -1 -1
frame data/chars/1ryo/th04.gif
attack 0 0 0 0
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 6 20 10 -1 -1
frame data/chars/1ryo/th05.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 5 40 50 -1 -1
frame data/chars/1ryo/th02.gif
@cmd position 0 10 65 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 0 10 65 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 0 5 70 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 0 0 75 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 0 -1 80 -1 -1
frame data/chars/1ryo/th03.gif
@cmd position 0 -1 50 -1 -1
frame data/chars/1ryo/th03.gif
move 0
move -2
@cmd depost 0
@cmd throw 35 1 5 1 0 0
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
frame data/chars/1ryo/th07.gif
move 0
delay 25
frame data/chars/1ryo/th08.gif
frame data/chars/1ryo/th07.gif
delay 15
offset 121 201
@cmd clearL
frame data/chars/1ryo/rise1.gif
frame data/chars/1ryo/rise2.gif
frame data/chars/1ryo/rise3.gif



---------------------------------------------------------(enemy .txt file)----------------------------
Code: [Select]
anim fall7
delay 1000
offset 115 130
frame data/chars/2maskguy3/slamck0.gif
offset 115 130
frame data/chars/2maskguy3/slamck1.gif
offset 115 130
frame data/chars/2maskguy3/slamck2.gif
offset 115 130
frame data/chars/2maskguy3/slamck3.gif
offset 115 130
frame data/chars/2maskguy3/slamck4.gif
offset 115 130
frame data/chars/2maskguy3/slamck5.gif
offset 115 130
frame data/chars/2maskguy3/slamck6.gif
offset 115 130
frame data/chars/2maskguy3/slamck7.gif
offset 115 130
frame data/chars/2maskguy3/slamck8.gif
offset 115 130
frame data/chars/2maskguy3/slamck9.gif

Note: player animation contains repeated frames with a move of -1 to make the animation smoother



A way of aligning the (x) (y) of the two animations
Making slams for player requires more precision for the opponents x and y axis, since the player interacts with many opponents
In Photoshop create an image larger than the character of for example 230 W and 210 H. And mark the coordinates at the center of the image (x115, y115)

 

Check the information tab and select pixels to see the image coordinates
   
Next copy the character slam/throw pain frames and place them at the center of the image in coordinates (X) 115(Y)115. This coordinates will be used in the anim fall7 opponents off set (see enemy .txt file above)



You can then make the same for all the other opponents



Then see the player off set of the slam/throw animation and align the axis (x) (y) for the @cmd position
for each opponent frame (see @cmd position / player .txt file above)
you can use Photoshop layers. Mark the player image off set and copy it to the opponents image

   

Code: [Select]
you can also use screen shot (F12)
in openBOR during the game to capture all the
slam animations 1 by 1. You can set the animation
delay to 70 for easy capture.
Then check all images for coordinate’s flaws.

    After successfully aligning the slam animation for one opponent the player slam @cmd position should work for the remaining opponents
----------------//--------------

Notes:
if you have an anim attack3 in the player/enemie.txt try to chage it for attack4/5/6
otherwise when the slam starts it will use the attack3 animation

if the player/enemie falls on ground as soon has hes being slammed/throw...
check your fall7 pain images offsets, this happens when the victim offset touches the ground.
This ofset image can be usefull in the last slam frame togheter with ( depost 0 ) and ( finish ), the victim touches the gound and dust comes off like in any normal fall animation.



YOU CAN USE THIS TUTORIAL IN ANY WAY YOU LIKE, AND IT CAN BE EDITED AND IMPROVED BY ANYONE WITH NEW SLAMS AND EXAMPLES (no credits or permission needed)

iam using most of my time to finish an openbor mod... and i see my time flying way...
iam trying to finish it as fast as can

« Last Edit: November 27, 2012, 03:46:28 pm by jonsilva »

Offline Bloodbane

  • Hero Member
  • *****
  • Posts: 7113
  • Dark Dragon
Re: crime busters slam tutorial for beginners
« Reply #1 on: September 30, 2012, 12:28:32 am »
 I have checked my scripts again and I realized that there are more stuffs I need to tell you.

 1st, grabcheck and grabcheck2 are also for enemies. These 2 functions will revert enemy's animation to IDLE if they fail to grab any player.

 2nd, the ones for players are grabcheckA and grabcheckG, they are for air grab and ground grab respectively.
 Both uses outdated checkgrab though.

 The difference between former and these is the former are used in GRAB animations while the latter are used in non grab animations.

 3rd, there's another function used only in grab/throw animations, it is hurt2 (I forgot why there's no 1st one though). This function is used to reduce grabbed opponent's health while being grabbed. Usually used in choke or multislam animations.

 I hope you updated the tutorial with these :)
OpenBoR Manual

Basic OpenBoR Tutorials

OpenBoR Tricks & Tutorials

"The more often enemies attack, the more open they are to counter attacks"

Offline msmalik681

  • Hero Member
  • *****
  • Posts: 561
Re: crime busters slam tutorial for beginners
« Reply #2 on: September 30, 2012, 05:31:59 am »
nice tutorial hope to see more tutorials like this to make people understand scripting is your friend  ;)

Offline jonsilva

  • Full Member
  • ***
  • Posts: 116
Re: crime busters slam tutorial for beginners
« Reply #3 on: September 30, 2012, 01:43:57 pm »
thanks for the checks bloodbane
i still havent used all the commands. (i got stuck in level design again) so far ive only made one jumping grab for an enemie i used an attack then an anim follow for the slam with a grabcheck2

i will post txt examples has soon as i start using the hurt2 / grabcheckA and grabcheckG. Working txts examples for the slam commands is whats is still missing in the tutorial.
« Last Edit: September 30, 2012, 01:48:20 pm by jonsilva »

Offline cuchara

  • Jr. Member
  • **
  • Posts: 95
Re: crime busters slam tutorial for beginners
« Reply #4 on: September 30, 2012, 10:18:24 pm »
Excellent jonsilva we need more pople like you, if any one have another excellente tutorial please make it public thanks!!!

Offline Sindor

  • Jr. Member
  • **
  • Posts: 27
  • French member
    • Donjons & Dragons Origines
Re: crime busters slam tutorial for beginners
« Reply #5 on: September 30, 2012, 10:44:25 pm »
Thanks for this tutorial  :)
Sindor

Offline nedflandeurse

  • Hero Member
  • *****
  • Posts: 778
  • A.K.A. NED
Re: crime busters slam tutorial for beginners
« Reply #6 on: November 23, 2012, 12:13:06 pm »
I can't believe that I finally start to understand how scripted slams works...
Thanks so much!

Is there a reason to use fall7 in particular? (or it's just the number you used for this exemple...)

Offline Bloodbane

  • Hero Member
  • *****
  • Posts: 7113
  • Dark Dragon
Re: crime busters slam tutorial for beginners
« Reply #7 on: November 23, 2012, 06:36:52 pm »
 Previously FALL7 was animation where I set suplex-ed animation for enemies, I was using pseudo slam method with script that time.

 When I changed my method to this, I used FALL7 as temporary animation to test new method. It worked and applied it for all slam and throw animations.
 After all of that I don't see any reason to change the animation to other, not to mention in Crime Buster v2.5, I already use attacktype 1, 2 and 4.
OpenBoR Manual

Basic OpenBoR Tutorials

OpenBoR Tricks & Tutorials

"The more often enemies attack, the more open they are to counter attacks"

Offline nedflandeurse

  • Hero Member
  • *****
  • Posts: 778
  • A.K.A. NED
Re: crime busters slam tutorial for beginners
« Reply #8 on: November 23, 2012, 10:59:22 pm »
Ok, I understand.

 



 0%




mighty
SimplePortal 2.3.3 © 2008-2010, SimplePortal