Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    2. News

    1. Red Dead Redemption 2

      1. Gameplay
      2. Missions
      3. Help & Support
    2. Red Dead Online

      1. Gameplay
    1. GTA Online

      1. After Hours
      2. Find Lobbies & Players
      3. Guides & Strategies
      4. Vehicles
      5. Content Creator
      6. Help & Support
    2. Crews

      1. Events
      2. Recruitment
    1. Grand Theft Auto Series

    2. GTA Next

    3. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    4. GTA IV

      1. Episodes from Liberty City
      2. Multiplayer
      3. Guides & Strategies
      4. Help & Support
      5. GTA Mods
    5. GTA Chinatown Wars

    6. GTA Vice City Stories

    7. GTA Liberty City Stories

    8. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    9. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    10. GTA III

      1. Guides & Strategies
      2. Help & Support
      3. GTA Mods
    11. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    12. Wiki

      1. Merchandising
    1. GTA Modding

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    3. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Red Dead Redemption

    2. Rockstar Games

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Programming
      5. Movies & TV
      6. Music
      7. Sports
      8. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    1. Forum Support

    2. Site Suggestions

Diegoti

Play anim? (dance and talk)

Recommended Posts

Diegoti

Pls help, how can i do this

Share this post


Link to post
Share on other sites
Tut Greco

you'll have to create a new ifp animation that includes facial bones being animated. Also make sure that the skin using the anim has its facial bones rigged to the mesh. Use 3ds max or maya 3D for doing the animation using Kam's scripts

Share this post


Link to post
Share on other sites
Diegoti

I mean this 


0812: AS_actor [email protected] perform_animation "M_SMK_DRAG" IFP "SMOKING" framedelta 4.0 loopA 1 lockX 0 lockY 0 lockF 0 time 25000 

 

Idk how to do same with Talk and Dance anims :/

Share this post


Link to post
Share on other sites
In45do

CLEO animation tutorial in here


Use Ryosuke anim manager tool to view the list of animation strings inside IFP file. (download link also presented in the tutorial)

Share this post


Link to post
Share on other sites
ZAZ

he asks for a script to let actor speak and do anims

Diegoti, look in main.scm or in cleo mods

 

Share this post


Link to post
Share on other sites
Diegoti

0812: AS_actor [email protected] perform_animation "M_SMK_DRAG" IFP "SMOKING" framedelta 4.0 loopA 1 lockX 0 lockY 0 lockF 0 time 25000

 

I just want to know to play and "Talk" and "Dance" anims with this opcode, i did it in the past but i cant remember :(

Share this post


Link to post
Share on other sites
ZAZ

Animations

To use animations exist 2 opcodes, 0605: and 0812:

0605: actor $PLAYER_ACTOR perform_animation_sequence "TAI_CHI_IN" IFP_file "PARK" 4.0 loop 0 1 1 0 time -1
0812: AS_actor $PLAYER_ACTOR perform_animation "SWIM_BREAST" IFP_file "SWIM" 1.0 loopA 1 lockX 1 lockY 1 lockF 1 time -2

The animations are embeded in the IFP files

Important:

The IFP file ped.ifp is placed in GTASA\anim folder and all animations of ped.ifp are loaded by gamestart
It dont need to load the animation for the script. Never load the ifp file "ped" !!

The other IFP files are archived in gta3.img
It needs first to load the IFP file before using an animation of its file

The script below is an exemble to assign an animation of IFP file "ped" by key_press to player actor

{$CLEO .cs}
:IFP_PED
03A4: name_thread 'IFP_PED'

:IFP_PED_01
0001: wait 0 ms
if
0256: player $PLAYER_CHAR defined
004D: jump_if_false @IFP_PED_01
if  and
0AB0:   key_pressed 8//-----------------key = Backspace
80DF:   not actor $PLAYER_ACTOR driving 
004D: jump_if_false @IFP_PED_01
0605: actor $PLAYER_ACTOR perform_animation_sequence "CAR_rollout_RHS" from_file "PED"  4.0  0  1  1  0 -1 ms
0001: wait 2000 ms
0002: jump @IFP_PED_01

Several animations are defined as extra opcodes
Some exembles:
05C7: AS_actor $PLAYER_ACTOR use_atm
05C2: AS_actor $PLAYER_ACTOR show_the_finger
05C9: AS_actor $PLAYER_ACTOR on_guard 2000 ms
05C4: AS_actor $PLAYER_ACTOR hands_up 15000 ms
0729: AS_actor $PLAYER_ACTOR hold_cellphone 1// requires to load first the model #cellphone
0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
05BC: AS_actor $PLAYER_ACTOR jump 1
05C3: AS_actor $PLAYER_ACTOR hands_cower
05C5: AS_actor $PLAYER_ACTOR cower 3000 ms



The other IFP files are archived in gta3.img and needs first to load the IFP file before using an animation of its file
According to the theme Spawn a 3D model we need also 5 steps but with other opcodes

1. first step to load the IFP file needs to insert the IFP file name as long string

04ED: load_animation "PARK"

2. second step to prove if the file is loaded in an extra "load-model-check-Loop"

:Load_Model_Check
wait  0
if  
004EE:   animation "PARK" loaded
jf @Load_Model_Check

3. The animation can now assigned to an actor as soon as the IFP file is loaded and the actor is available.
It requires to insert animation name and name of IFP file as long string

0812: AS_actor $PLAYER_ACTOR perform_animation "TAI_CHI_IN" IFP_file "PARK" 1.0 loopA 1 lockX 1 lockY 1 lockF 1 time -2

4. release the loaded IFP file if it is not needed anymore

04EF: release_animation "PARK"

5. Release a defined item is not possible but in some cases it needs to remove the animation from actor

0792: disembark_instantly_actor $PLAYER_ACTOR

In addition by using animation packs, it needs to release the pack

061B: remove_references_to_AS_pack 0@

The script below is an exemble to assign an animation of IFP file "PARK" by key_press to player actor
The animation will be repeated as long as the key is not pressed again, because of the value 1 in the parameter of loopA

{$CLEO .cs}
thread 'Tai_Chi'

while true
wait 0
    if
        0256:   player $PLAYER_CHAR defined
    then
        if
            0AB0:   key_pressed 8//-----------------key = Backspace
        then
            04ED: load_animation "PARK"
        
            while 84EE:  not animation "PARK" loaded
                wait 0
            end
            0812: AS_actor $PLAYER_ACTOR perform_animation "Tai_Chi_Loop" IFP_file "PARK" 1.0 loopA 1 lockX 1 lockY 1 lockF 0 time -1 // versionB
            wait 1000
            
            while 0256:   player $PLAYER_CHAR defined
                wait 0
                if or
                    0AB0:   key_pressed 8//-----------------key = Backspace
                    00E1:   not player 0 pressed_key 15// --- key = Enter/Exit
                then
                    break
                end    
            end
           
            0792: disembark_instantly_actor $PLAYER_ACTOR
            04EF: release_animation "PARK" 
            wait 1000
        end
    end
end

Combine several animation to an AS_pack
The script below assigns sevaral animations of different IFP files combined in an AS_pack by key_press to player actor

{$CLEO .cs}
:AMPAK_00
thread 'ASPACK'
wait  2000

:AMPAK_1
wait 0 
if 
0256:   player $PLAYER_CHAR defined 
jf @AMPAK_1
if
0AB0:   key_pressed 8//-----------------key = Backspace
jf @AMPAK_1
04ED: load_animation "STRIP"
04ED: load_animation "DANCING"

:AMPAK_12
0001: wait  0 ms
if  and
04EE:   animation "STRIP" loaded
04EE:   animation "DANCING" loaded
jf @AMPAK_13
jump @AMPAK_14

:AMPAK_13
04ED: load_animation "STRIP"
04ED: load_animation "DANCING"
jump @AMPAK_12

:AMPAK_14
0615: define_AS_pack_begin 0@
0605: actor -1 perform_animation_sequence "STR_B2C" from_file "STRIP"  4.0  0  0  0  1 -1 ms  
0605: actor -1 perform_animation_sequence "DNCE_M_A" from_file "DANCING"  4.0  0  0  0  1 -1 ms
0605: actor -1 perform_animation_sequence "STR_B2C" from_file "STRIP"  4.0  0  0  0  1 -1 ms
0605: actor -1 perform_animation_sequence "DNCE_M_A" from_file "DANCING"  4.0  0  0  0  1 -1 ms
0605: actor -1 perform_animation_sequence "STR_B2C" from_file "STRIP"  4.0  0  0  0  1 -1 ms
0605: actor -1 perform_animation_sequence "DAN_LOOP_A" from_file "DANCING"  4.0  0  0  0  1 -1 ms
0605: actor -1 perform_animation_sequence "DNCE_M_D" from_file "DANCING"  4.0  0  0  0  1 -1 ms 
0643: set_AS_pack 0@ loop 1
0616: define_AS_pack_end 0@
0618: assign_actor $PLAYER_ACTOR to_AS_pack 0@
wait 1000




:AMPAK_21
wait 0 
if 
0256:   player $PLAYER_CHAR defined 
jf @AMPAK_end
if
80E1:   not key_pressed  0  15
jf @AMPAK_end
if  or
0611:   actor $PLAYER_ACTOR animation == "STR_B2C" 
0611:   actor $PLAYER_ACTOR animation == "DNCE_M_A"
0611:   actor $PLAYER_ACTOR animation == "STR_B2C"
0611:   actor $PLAYER_ACTOR animation == "DNCE_M_D"
jf @AMPAK_end
jump @AMPAK_21


:AMPAK_end
061B: remove_references_to_AS_pack 0@
04EF: release_animation "STRIP"
04EF: release_animation "DANCING"
jump @AMPAK_1

Animation in air needs to move the actor with opcode 083C: and to use animation code 0812: with -2 as last parameter
Script below let the player swimming in air by key_press

{$CLEO .cs}
:Airswim
thread 'AIRSWIM'

{
press Backspace to start Airswim
<go left key> to turn left
<go right key> to turn right
<forward key> to move forward
<aim key> to increase height
<enter/exit> to cancel Airswim
}


while true
    wait 0
    if
        0256:   player $PLAYER_CHAR defined
    then
        if
            0AB0:   key_pressed 8  // key Backspace
        then
            
            repeat
                wait 0
                04ED: load_animation "SWIM" 
            until 04EE:   animation "SWIM" loaded
            
            083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ 0.0 0.0 50.0
            wait  1000
            0812: unknown_action_sequence $PLAYER_ACTOR "Swim_Breast" from_file "SWIM"  1.0  1  1  1  0 -1
            
            
            
            while  0256:   player $PLAYER_CHAR defined
                wait 0
                0172: 30@ = actor $PLAYER_ACTOR z_angle
                0494: get_joystick_data  0 7@ 8@ 9@ 10@
                3@ =  1.0
                4@ =  1.0
                                
                if
                    7@ >  0
                then
                    30@ -=  8.5
                end                
                
                if
                    0 > 7@
                then
                    30@ +=  8.5
                end                
                
                if
                    0 >  8@
                then
                    4@ =  5.0
                end                
                
                if
                    00E1:   key_pressed 0 6
                then
                    3@ =  5.0
                end
                                
                0173: set_actor $PLAYER_ACTOR z_angle_to  30@
                02F6: 1@ = cosine 30@  // sinus swapped with cosine
                02F7: 2@ = sinus 30@ // cosine swapped with sinus 
                006B: 1@ *= 4@  // floating-point values
                006B: 2@ *= 4@  // floating-point values
                0013: 1@ *=  -1.0  // floating-point values
                083C: set_actor $PLAYER_ACTOR velocity_in_direction_XYZ 1@ 2@ 3@
                
                if  or
                    00E1:   key_pressed 0 15
                    8611:  not actor $PLAYER_ACTOR animation == "Swim_Breast"
                then                
                    break
                end    
            end
            
            
            0792: disembark_instantly_actor $PLAYER_ACTOR
            04EF: release_animation "SWIM"
            
            
        end
    end
end

How to find Animations:
use Ryosukes Animation Manager
The animations are stored in *.ifp files
One ifp file is the GTASA\anim\ped.ifp
(GTASA\anim\anim.img is unused)
The other ifp files are in gta3.img like colt45.ifp, python.ifp, rifle.ifp, tec.ifp, weapons.ifp
Import these and play these with Animation Manager
 

Edited by ZAZ

Share this post


Link to post
Share on other sites
ZAZ

Script that let Player do the dance animations from Dance Challance in Disco

from files

RUNNINGMAN.ifp

GFUNK.ifp

WOP.ifp

 

hold backspace to do dance animation

{$CLEO .cs}
:DNC_00
thread 'MDC'
06D1: v$DANCE_ANIM_IFP = "RUNNINGMAN"
17@ =  1
18@ =  0  
19@ =  0  

:DNC_01
wait 0
if
    0256:   player $PLAYER_CHAR defined
jf @DNC_01
if
    $ONMISSION ==  0
jf @DNC_01

if and
    09E7:   player $PLAYER_CHAR not_frozen
    80DF:   NOT   actor $PLAYER_ACTOR driving
    0AB0:  key_pressed 8//------------------    hold backspace to do dance animation
jf @DNC_01

:DNC_03
04ED: load_animation v$DANCE_ANIM_IFP
if
    84EE:   NOT   animation v$DANCE_ANIM_IFP loaded
jf @DNC_05
    wait 0
jump @DNC_03

:DNC_05
gosub @DNC_TBL
if
    17@ ==  17
jf @DNC_15
if
    19@  ==  0
jf @DNC_12
06D1: v$DANCE_ANIM_IFP = "WOP"
    17@ =  1
    19@ =  1
jump @DNC_14

:DNC_12
if
    19@  ==  1
jf @DNC_13
06D1: v$DANCE_ANIM_IFP = "GFUNK"
    17@ =  1
    19@ =  2
jump @DNC_14

:DNC_13
if
    19@  ==  2
jf @DNC_14
    06D1: v$DANCE_ANIM_IFP = "RUNNINGMAN"
    17@ =  1
    19@ =  0
jump @DNC_14

:DNC_14
    04ED: load_animation v$DANCE_ANIM_IFP
if
    84EE:   NOT   animation v$DANCE_ANIM_IFP loaded
jf @DNC_15
    wait 0
jump @DNC_14


:DNC_15
if and
    09E7: $PLAYER_CHAR//not_frozen (if)
    80DF:   NOT   actor $PLAYER_ACTOR driving
    0AB0:  key_pressed 8
jf @DNC_17
jump @DNC_01


:DNC_17
    04EF: release_animation v$DANCE_ANIM_IFP
jump @DNC_01


:DNC_TBL
wait  250
0871: init_jump_table 17@ total_jumps  15  1 @DNC_T1 jumps  2 @DNC_T2  3 @DNC_T3  4 @DNC_T4  5 @DNC_T5  6 @DNC_T6  7 @DNC_T7  8 @DNC_T8 
0872: jump_table_jumps  9 @DNC_T9  10 @DNC_T10  11 @DNC_T11  12 @DNC_T12  13 @DNC_T13  14 @DNC_T14  15 @DNC_T15  16 @DNC_T16 -1 @DNC_T1 

:DNC_T1
06D1: v$DANCE_ANIM = "DANCE_G1"
17@ =  2
jump @DNC_T_exit

:DNC_T2
06D1: v$DANCE_ANIM = "DANCE_G2"
17@ +=  1
jump @DNC_T_exit

:DNC_T3
06D1: v$DANCE_ANIM = "DANCE_G3"
17@ +=  1
jump @DNC_T_exit

:DNC_T4
06D1: v$DANCE_ANIM = "DANCE_G4"
17@ +=  1
jump @DNC_T_exit

:DNC_T5
06D1: v$DANCE_ANIM = "DANCE_G5"
17@ +=  1
jump @DNC_T_exit

:DNC_T6
06D1: v$DANCE_ANIM = "DANCE_G6"
17@ +=  1
jump @DNC_T_exit

:DNC_T7
06D1: v$DANCE_ANIM = "DANCE_G7"
17@ +=  1
jump @DNC_T_exit

:DNC_T8
06D1: v$DANCE_ANIM = "DANCE_G8"
17@ +=  1
jump @DNC_T_exit

:DNC_T9
06D1: v$DANCE_ANIM = "DANCE_G9"
17@ +=  1
jump @DNC_T_exit

:DNC_T10
06D1: v$DANCE_ANIM = "DANCE_G10"
17@ +=  1
jump @DNC_T_exit

:DNC_T11
06D1: v$DANCE_ANIM = "DANCE_G11"
17@ +=  1
jump @DNC_T_exit

:DNC_T12
06D1: v$DANCE_ANIM = "DANCE_G12"
17@ +=  1
jump @DNC_T_exit

:DNC_T13
06D1: v$DANCE_ANIM = "DANCE_G13"
17@ +=  1
jump @DNC_T_exit

:DNC_T14
06D1: v$DANCE_ANIM = "DANCE_G14"
17@ +=  1
jump @DNC_T_exit

:DNC_T15
06D1: v$DANCE_ANIM = "DANCE_G15"
17@ +=  1
jump @DNC_T_exit

:DNC_T16
06D1: v$DANCE_ANIM = "DANCE_G16"
17@ +=  1
jump @DNC_T_exit

:DNC_T_exit
0812: unknown_action_sequence $PLAYER_ACTOR v$DANCE_ANIM v$DANCE_ANIM_IFP  4.0  0  0  0  0  0 
0051: return

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • 1 User Currently Viewing
    0 Members, 0 Anonymous, 1 Guest

×

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.