[AMX] Tổng hợp Code, Plug do Mem chế hoặc giới thiệu

Thảo luận trong 'Counter Strike' bắt đầu bởi Orpheus, 22/1/11.

  1. Quark1

    Quark1 Youtube Master Race

    Tham gia ngày:
    6/2/11
    Bài viết:
    17
    Nơi ở:
    Clone của Dias
    ^
    - Chưa bắn bao giờ thì làm sao mà làm dc =.="
    - Mà cái nick Quark1 này post có 22 nên ko edit bài dc :))
     
  2. teobrvt1995

    teobrvt1995 T.E.T.Я.I.S

    Tham gia ngày:
    19/9/10
    Bài viết:
    691
    clone của dias? Vậy là s dias?
     
  3. Giazzrian

    Giazzrian C O N T R A

    Tham gia ngày:
    6/1/11
    Bài viết:
    1,880
    Nơi ở:
    BMT/HCM
    có cần quote cả 1 bài chỉ để hỏi 1 câu 4v ko ? đề nghị đặt spoil
     
  4. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    Plugins đầu tiên tự tay viết và tham khảo qua aimbot của yapb :-p
    + Imba bot
    Cũng không biết nói gì về đặc điểm plugins này...Mình chỉ cố gắng làm cho bot bắn hay hơn thôi
    _ Di chuyển hợp lý + kết hợp cả .nav nên bot di chuyển khá là ổn, không bị kẹt ở 1 số point jump
    _ Khả năng headshot cao nếu ở tầm cự ly gần hoặc vừa phải. plugins này chiến ở những map deathmath thì khá là ok (dm_dust2, đặc biệt ở map dm_ae hay cs_bloodstrike) mình bắn mà toàn thua bot à :-<
    _ Biết núp khi bị dính máu, phục kích để chờ turn sau ( ko như bot cũ đứng im để cho player sấy =)) )
    _ Còn gì vào game tự test sẽ biết ;)
    Link: http://www.mediafire.com/?k96787hv5xbcebr
    Ai down về và test rồi cho ý kiến nha
    --------------------------------
    Tuy nhiên plugins này vẫn chưa đc hoàn thiện, mình vẫn đang hoàn thiện ở giai đoạn test2
    Giai đoạn 2 mình đang kết hợp vs module ngoài để hoàn thành mục tiêu (one shot one kill) như bot css
    --------------------------
    Mong muốn vẫn đang muốn làm 1 dạng AI dựa trên source hlsdk biết làm nhiều trò như player có thể chơi hoàn hảo ở các mode: classic, dm, zm.
     
    Chỉnh sửa cuối: 19/2/12
  5. bienchuot

    bienchuot Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/09
    Bài viết:
    159
    Nơi ở:
    IllusionaryWorld
    Download HLSDK về mà coi source AI của thằng security ấy=))
     
  6. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    Nếu muốn chơi class, dm thì tôi muốn 1 AI như Tactical Intervention.[​IMG]. Còn về zombie thì bot bây giờ là tạm ổn rồi mỗi tội chiến đấu ko có chiến thuật thôi, trong zombie cso nếu bot biết dùng bom để nhảy lên những chỗ cao mà human đứng hay là ném bom vào chỗ tụ tập nhiều zombie thì hay <= nhưng hình như cái này trong amx không làm được thì phải
     
  7. bienchuot

    bienchuot Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/09
    Bài viết:
    159
    Nơi ở:
    IllusionaryWorld
    ^: CSOnline chơi Zombie ko có bot:|
     
  8. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    mode zombie cso, chơi trên cso nst
    Quên không nói....zZ
     
  9. bienchuot

    bienchuot Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/09
    Bài viết:
    159
    Nơi ở:
    IllusionaryWorld
    Code Reload & Idle cho hội reload từng viên một (in C++):
    PHP:
     // m_pPlayer: Current player
    void CXM1014::Reload()
    {
        if( 
    m_pPlayer->m_rgAmmom_iPrimaryAmmoType ] <= /* cs_get_user_bpammo */ || m_iClip == XM1014_MAX_CLIP /* cs_get_weapon_ammo */ )
        {
            return;
        }

        if( 
    m_flNextPrimaryAttack  /* pdata offset (wpn) */ UTIL_WeaponTimeBase() /* UTIL_WeaponTimeBase() = 0.0 */  )
        {
            return;
        }

        switch( 
    m_fInSpecialReload /* only shotgun has this, so create a new global variables for other wpns */ )
        {
            case 
    :
            {
                
    m_pPlayer->SetAnimationPLAYER_RELOAD ); // set player sequence

                
    SendWeaponAnimXM1014_START_RELOADUseDecrement() );  // UseDecrement is useless in AMX Mod X
                
    m_fInSpecialReload 1

                
    m_pPlayer->m_flNextAttack UTIL_WeaponTimeBase() + 0.55// pdata offset (player)
                
    m_flTimeWeaponIdle        UTIL_WeaponTimeBase() + 0.55;  // pdata offset (wpn)
                
    m_flNextPrimaryAttack     UTIL_WeaponTimeBase() + 0.55// pdata offset (wpn)
                
    m_flNextSecondaryAttack   UTIL_WeaponTimeBase() + 0.55// pdata offset (wpn)
            
    }
            case 
    :
            {
                if( 
    m_flTimeWeaponIdle/* pdata offset (wpn) */ UTIL_WeaponTimeBase()  )
                {
                    return;
                }

                
    m_fInSpecialReload 2;
                
                if( 
    RANDOM_LONG0) )
                    
    EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_ITEM"weapons/reload1.wav"1ATTN_NORM085 RANDOM_LONG00x1f ) ); // use emit_sound or EngFunc_EmitSound
                
    else
                    
    EMIT_SOUND_DYNENTm_pPlayer->pev ), CHAN_ITEM"weapons/reload3.wav"1ATTN_NORM085 RANDOM_LONG00x1f ) ); // use emit_sound or EngFunc_EmitSound

                
    SendWeaponAnimXM1014_INSERTUseDecrement() );  // UseDecrement is useless in AMX Mod X

                
    m_flNextReload     UTIL_WeaponTimeBase() + 0.3// only shotgun has this, so create a new global variables for other wpns
                
    m_flTimeWeaponIdle UTIL_WeaponTimeBase() + 0.3// pdata offset (wpn)
            
    }
            default :
            {
                
    m_iClip++; // cs_set_weapon_ammo
                
    m_pPlayer->m_rgAmmom_iPrimaryAmmoType ]--; // cs_set_user_bpammo
                
    m_fInSpecialReload 1;

                
    // m_pPlayer->ammo_buckshot--; // cs_set_user_bpammo, set above, so don't set it again
            
    }
        }
    }

    void CXM1014::WeaponIdle()
    {
        
    // ResetEmptySound(); // can use orpheu

        // m_pPlayer->GetAutoaimVector( AUTOAIM_5DEGREES ); // can use orpheu

        
    if( m_flPumpTime && m_flPumpTime UTIL_WeaponTimeBase() )
        {
            
    m_flPumpTime 0;
        }

        if( 
    m_flTimeWeaponIdle UTIL_WeaponTimeBase() )
        {
            if( 
    m_iClip == && m_fInSpecialReload == && m_pPlayer->m_rgAmmom_iPrimaryAmmoType ] )
            {
                
    Reload();
            }
            else if( 
    m_fInSpecialReload != )
            {
                if( 
    m_iClip != XM1014_MAX_CLIP && m_pPlayer->m_rgAmmom_iPrimaryAmmoType ] )
                {
                    
    Reload();
                }
                else
                {
                    
    SendWeaponAnimXM1014_AFTER_RELOADUseDecrement() );

                    
    m_fInSpecialReload 0;
                    
    m_flTimeWeaponIdle UTIL_WeaponTimeBase() + 1.5;
                }
            }
            else
            {
                
    SendWeaponAnimXM1014_IDLE1UseDecrement() );
            }
        }
    }
    Chạy các func này trong forward Ham_Weapon_Reload và Ham_Weapon_Idle, nhớ HAM_SUPERCEDE cái forward đi là đc:-"
    Độ chiều có khi convert ra code AMX luôn nhỉ:-?
     
    Chỉnh sửa cuối: 19/2/12
  10. redplane

    redplane Legend of Zelda

    Tham gia ngày:
    7/11/09
    Bài viết:
    1,195
    [SPOIL]
    [/SPOIL]

    Xem ra chú thích ngồi mà phán nhỉ. Cái reload đó là của Shotgun. Còn của Rifle nó khác xa hoàn toàn. Chú ngồi làm thử khẩu Winchester đi, rồi sẽ thấy. Ha ha, ngồi đó mà lý thuyết. Khẩu Winchester anh đã từng thử xây dựng trên nền code nạp đạn đó nhưng không hiệu quả, nên đã tự làm code hoàn toàn mới
     
  11. bienchuot

    bienchuot Mr & Ms Pac-Man

    Tham gia ngày:
    9/6/09
    Bài viết:
    159
    Nơi ở:
    IllusionaryWorld
    Đây ko hề ngồi phán nhé:-"
    Cơ chế nạp đạn của shotgun ném vào rifles thì nó cũng thế cả thôi:-"đây test rồi:-"
     
  12. kakaan96

    kakaan96 Dragon Quest

    Tham gia ngày:
    29/1/10
    Bài viết:
    1,422
    đã test plugin bot của ông Kai
    thấy bot cũng khá hơn
    nhưng có nhược điểm là sau mỗi round lại change về bot_stop 1
    và hình như ko sử dung dc radio
     
  13. MrKaii

    MrKaii The Warrior of Light

    Tham gia ngày:
    14/6/11
    Bài viết:
    2,208
    Nơi ở:
    Hà Nội
    1) tôi chơi bt mà, ko bị chuyển về stop 1, ông test trên bản nào ?
    2) radio vẫn dùng bt vì nó đươc build trên zbot mà
    -----------
    ông thử test trên bản cs mặc đinh không cài mod gì bắn bt thữ xem, chỉ cài addons không thôi
     
  14. ShockWaveVN

    ShockWaveVN Youtube Master Race

    Tham gia ngày:
    10/12/11
    Bài viết:
    70
    có plugin add thêm skin player ko nhỉ, nst cũng có mà tôi ko biết tách ra kiểu j` :|
     
  15. abcxay

    abcxay Youtube Master Race

    Tham gia ngày:
    15/5/10
    Bài viết:
    29
    Có bác nào rảnh viết file SMA về cái vụ lưu số giết, chết, teamkill vào một file dạng INI cái
    Ví dụ như là:
    [Tên người chơi]
    kill= số giết
    death= số chết
    teamkill= số lần giết đồng đội
    win= số lần thắng
    lose= số lần thua

    Giúp em với !!!!!!!
    Bác nào làm thì nhớ PM qua Y!H của em: whitered183
    Xin trân trọng cám ơn !

    ---------- Post added at 16:10 ---------- Previous post was at 16:07 ----------

    à quên
    File đó tên là UserInfo.ini
    Lưu ở đâu cũng được
    Nếu lưu ở trong thư mục Program Files\Common Files\Sefaulting\
    Hoặc trong thư mục game CS
    Thì càng hay.
    Thanks again who will do it !!
     
  16. redplane

    redplane Legend of Zelda

    Tham gia ngày:
    7/11/09
    Bài viết:
    1,195
    [SPOIL]
    [/SPOIL]

    Hè hè, phải có hậu tạ gì chứ. Làm xuông thế thì .... >:)
     
  17. buiducduy111

    buiducduy111 Dragon Quest

    Tham gia ngày:
    3/5/11
    Bài viết:
    1,257
    Này của bạn đây

    PHP:
    /* Script generated by Pawn Studio */

    #include <amxmodx>
    #include <amxmisc>
    #include <cstrike>

    #define PLUGIN    "Unknow"
    #define AUTHOR    "Bui Duc Duy"
    #define VERSION    "1.0"


    enum 
    {
        
    name 0,
        
    kill,
        
    death,
        
    teamkill,
        
    win,
        
    lose,
    }

    new 
    T_scoreCT_score
    new PlayerName[64], SaveFile[64] ,tempname[64]
    new 
    kills[33], deaths[33], teamkills[33], teamwin[33], teamlose[33]

    public 
    plugin_init()
    {
        
    register_plugin(PLUGINVERSIONAUTHOR)
        
    register_event("DeathMsg""event_DeathMsg""a")
        
    register_message(get_user_msgid("TextMsg"), "message_textmsg")
        
    set_task(2.0"write_data"_,_,_,"b")
    }

    public 
    write_data()
    {
        for (new 
    id 1id <33 ;id++)
        {
            if (!
    is_user_connected(id)) return
            
    get_user_name(idPlayerName,63)
            
    format(SaveFile,63,"addons/Data/%s.ini",PlayerName)
            
    write_info_player(id)
                    
    format(tempname,63,"[%s]",PlayerName)    
            
    write_file(SaveFile,tempname,name)
            
    write_file(SaveFile,kills[id],kill)
            
    write_file(SaveFile,deaths[id],death)
            
    write_file(SaveFile,teamwin[id],win)
            
    write_file(SaveFile,teamlose[id],lose)
            
    write_file(SaveFile,teamkills[id],teamkill)
        }
    }

    write_info_player(id)
    {
        
    deaths[id] = get_user_deaths(id)
        if (
    cs_get_user_team(id)==CS_TEAM_T)
        {
            
    teamwin[id] = T_score
            teamlose
    [id] = CT_score
        
    }
        else
        {
            
    teamwin[id] = CT_score
            teamlose
    [id] = T_score
        
    }
    }

    public 
    event_DeathMsg()
    {
        new 
    victimkiller
        killer 
    read_data(1)
        
    victim read_data(2)
        
        if (
    killer != victim
        {
            if (
    cs_get_user_team(killer) == cs_get_user_team(victim)) teamkills[killer] ++
            else 
    kills[killer] ++
        }
    }

    public 
    message_textmsg()
    {
        static 
    textmsg[22]
        
    get_msg_arg_string(2textmsg21)
        
        
    //Terrorist Win
        
    if (equal(textmsg"#Terrorists_Win"))
        {
            
    T_score ++
            return 
    PLUGIN_HANDLED
        
    }
        
        
    //CT Win
        
    if (equal(textmsg"#CTs_Win"))
        {
            
    CT_score ++
            return 
    PLUGIN_HANDLED
        
    }
        
        return 
    PLUGIN_CONTINUE
    }
    -- Cái này lưu mỗi người vào 1 file ini trong cstrike/addons/data

    >< Làm hộ cũng phải PM đưa cho nữa !
     
    Chỉnh sửa cuối: 29/2/12
  18. dias

    dias Mega Man

    Tham gia ngày:
    17/1/10
    Bài viết:
    3,226
    Nơi ở:
    SEOUL
    cho đến giờ cái lỗi shit này chưa ai giải quyết dc =="
    [​IMG]

    PHP:
    /* Plugin generated by AMXX-Studio */

    #include <amxmodx>
    #include <engine>
    #include <fakemeta>
    #include <xs>

    #define PLUGIN "Dias's Rocket Launcher"
    #define VERSION "1.0"
    #define AUTHOR "Dias Leon"

    new const Float:g_Origin[3], Float:g_Angles[3]
    new const 
    rocketlauncher_model[] = "models/player/gign/gign.mdl"
    new const rocket_model[] = "models/dron_missile.mdl"
    new g_ent

    public plugin_init()
    {
        
    register_plugin(PLUGINVERSIONAUTHOR)
        
        
    register_clcmd("say /get_origin""get_origin")
        
    register_clcmd("say /make""make_rocketlauncher")
        
    register_clcmd("say /launch""launch_rocket")
    }

    public 
    plugin_precache()
    {
        
    engfunc(EngFunc_PrecacheModelrocketlauncher_model)
        
    engfunc(EngFunc_PrecacheModelrocket_model)
    }

    public 
    get_origin(id)
    {
        
    pev(idpev_origing_Origin)
        
    pev(idpev_anglesg_Angles)
    }

    public 
    make_rocketlauncher(id)
    {
        new 
    ent create_entity("info_target")
        
    g_ent ent
        
        entity_set_origin
    (entg_Origin)
        
    entity_set_vector(entEV_VEC_anglesg_Angles)
        
        
    entity_set_string(entEV_SZ_classname"rocketlauncher")
        
    entity_set_model(entrocketlauncher_model)
        
    entity_set_int(entEV_INT_solidSOLID_SLIDEBOX)
        
    entity_set_int(entEV_INT_movetypeMOVETYPE_NONE)
        
        new 
    Float:maxs[3] = {16.0,16.0,36.0}
        new 
    Float:mins[3] = {-16.0,-16.0,-36.0}
        
    entity_set_size(entminsmaxs)
        
        
    entity_set_float(entEV_FL_animtimeget_gametime())
        
    entity_set_float(entEV_FL_framerate1.0)    
        
    entity_set_int(entEV_INT_sequence0)        

        
    drop_to_floor(ent)    
    }

    public 
    launch_rocket(id)
    {
        static 
    launcher
        launcher 
    g_ent
        
        
    static ent
        ent 
    create_entity("info_target")
        
        static 
    Float:Origin[3], Float:Angles[3]
        
        
    engfunc(EngFunc_GetAttachmentlauncher0OriginAngles)
        
    pev(launcherpev_anglesAngles)
        
        
    entity_set_origin(entOrigin)
        
    entity_set_vector(entEV_VEC_anglesAngles)
        
        
    entity_set_string(entEV_SZ_classname"rocket")
        
    entity_set_model(entrocket_model)
        
    entity_set_int(entEV_INT_solidSOLID_SLIDEBOX)
        
    entity_set_int(entEV_INT_movetypeMOVETYPE_NONE)
        
        new 
    Float:maxs[3] = {16.0,16.0,36.0}
        new 
    Float:mins[3] = {-16.0,-16.0,-36.0}
        
    entity_set_size(entminsmaxs)
        
        
    entity_set_float(entEV_FL_animtimeget_gametime())
        
    entity_set_float(entEV_FL_framerate1.0)    
        
    entity_set_int(entEV_INT_sequence0)    
        
        
    engfunc(EngFunc_MakeVectorsAngles)
        
    set_pev(entpev_velocityAngles)
    }
     
  19. My Own Way

    My Own Way S.V.E.N Commander

    Tham gia ngày:
    30/7/09
    Bài viết:
    12,221
    Nơi ở:
    Hải Phòng
    Có plugin nào cho phép đổi camera khi đang xem demo không nhỉ ?
     
  20. gacon5

    gacon5 T.E.T.Я.I.S

    Tham gia ngày:
    28/7/06
    Bài viết:
    634
    Bác nào viết giùm cái plugin lúc bắt đầu round Zombie-Mod 3 thì chuyển hết Bot sang 1 bên cho nó đỡ bắn loạn xạ với.
    Cso-NST beta 3 update lắm lỗi quá nên để để bản 1.0 nhưng chơi ZM3 thì lại bị cái lỗi bắn nhau loạn xạ đầu round rõ là ghét.
     

Chia sẻ trang này