Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Zmiana prędkości graczy


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
12 odpowiedzi w tym temacie

#1 Andrzejek

    Ucze się :]

  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 13.09.2015 16:46

Witam, bo mam taki problem z dodawaniem szybkości która by była odświeżana, bo co jakiś czas ta szybkość może ulec zmianie i wymaga odświeżenia, sposoby

 

1. CmdStart - obciążają zbyt dużo serwer,

2. CurWeapon - to totalna pomyłka, bo to odświeża gdy ktoś zmieni broń,

3. Ten sposób też sprawdzałem i też mi nie odpowiada http://amxx.pl/topic...ędkości-gracza/

 

Dlatego pisze jak wy dodajecie szybkości, bo ja na swoim serwerze mam ruletki, klasy które dodaja szybkosc i inne, to nie jest CodMod!

 

4. Nie wiem, może poprotu zrobić tak że

public UstawSzybkosc(player, szybkosc) {    
    set_user_maxspeed(player, szybkosc);
}
public ResetSzybkosc(player) {    
    set_user_maxspeed(player, szybkosc_gracza[player]);
}

I przy każdej zmianie predkości ustawiać przez to i odświeżać powiedzmy co 30 sek?

 

5. Czy taska jak np. w CodModzie jest


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#2 Wielkie Jol

    REPREZENTUJE SIEBIE I CAŁĄ GALAKTYKĘ

  • Support Team

Reputacja: 683
Wszechmogący

  • Postów:1 258
  • GG:
  • Lokalizacja:AMXX
Offline

Napisano 13.09.2015 17:19

Użytkownik @BlackPerfum rok temu wstawił ciekawy kodzik.

 

http://amxx.pl/topic...ędkości-gracza/


  • +
  • -
  • 0

"Żaden etyczny inżynier oprogramowania nie zgodzi się napisać procedury zniszczBagdad. Jego poczucie etyki domaga się, aby napisał procedurę zniszczMiasto, a Bagdad przekazał jako parametr" - Nathaniel Borenstein.


#3 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 13.09.2015 17:30

Użytkownik @BlackPerfum rok temu wstawił ciekawy kodzik.

 

http://amxx.pl/topic...ędkości-gracza/

 

Patrz na 3 punkt, pisałem że też mi nie odpowiada.


  • +
  • -
  • 1

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#4 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 13.09.2015 21:17

a dlaczego nie odpowiada? hamsandwich resetmaxpeed jest najlepszym rozwiazaniem


  • +
  • -
  • 0

#5 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 13.09.2015 22:00

Może źle to napisałem, mi nie odpowiada, bo nie mogę zrozumiec jego dzialania, wiec sprawdzę na razie swój własny sposób i zobacze co z tego wyjdzie. (coś podbnego jak w CodMod)


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#6 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 14.09.2015 08:53

No to krótkie wyjaśnienie, skoro nie rozumiesz:

 

silnik HLDS ustala prędkość bazową gracza na podstawie kilku kryteriów, jednym z nich jest trzymana w ręce broń. Silnik pobiera przy każdej zmianie broni (lub innym evencie) prędkość dla tej broni i ustala ją graczowi.

 

Klasyczne podejście do tematu polegało na podmianie prędkości gracza po tym, jak silnik mu ją nada. Podejście  przedstawione przez BlackPerfum polega na podmianie prędkości broni, którą gracz trzyma. Dzięki temu zostanie ustawiona graczowi nasza nowa prędkość. Sposób ten praktycznie nie posiada wad, ponieważ nadal zlecamy ustawienie prędkości silnikowi gry, który wie kiedy ta prędkość powinna wynosić zero (podczas freeze time lub podkładania paki), kiedy należy ją z jakiegoś powodu zredukować itp. Prędkość zwracana przez broń jest w każdym przypadku w normalnych warunkach stała i zależy wyłącznie od broni.

 

Dodatkowo w ten sposób możemy przypisać własne prędkości dla podanych broni, dzięki czemu możemy podwyższyć ogólną prędkość gracza ale nadal będzie zależała ona od broni.


  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#7 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 14.09.2015 20:07

OK, dzięki sprawdzę czy coś z tego wyjdzie.


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#8 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 15.09.2015 18:50

Dałem tak dla testów

 

public GetItemMaxSpeed(wid)
{
    new weapon,id,Float:Speed;
    id = get_pdata_cbase(wid,m_pPlayer,4);
    weapon = get_pdata_int(wid,m_iId,4);
    
    if(weapon != CSW_C4)
    {
        Speed = 250.0;
    }
    SetHamReturnFloat(Speed)
    return HAM_OVERRIDE
}

 

Noi od razu na początku rundy, zamiast 250.0 to mam chyba z 700.0

Nie wiem co źle zrobiłem, normalnie dodałem

 

const m_pPlayer = 41
const m_iId = 43

public plugin_init()
{
    new classname[32]
    for(new i=1;i<31;++i)    if(i!=2)
    {
        get_weaponname(i,classname,31)
        
        RegisterHam( Ham_CS_Item_GetMaxSpeed, classname, "GetItemMaxSpeed")
    }
}

 

I nie wiem dlaczego dodaje takie przyspieszenie :(


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#9 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 16.09.2015 10:15

Sprawdź jaką prędkość będziesz miał po ustawieniu na 100, być może jest tutaj dodatkowo jakiś mnożnik nadawany przez silnik gry, aby dostosować tą prędkość do chodu, biegania, kucania itp.


  • +
  • -
  • 0

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#10 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

  • Postów:1 501
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:AmxMod i SourceMod
Offline

Napisano 16.09.2015 12:40

Dałem tak dla testów

public GetItemMaxSpeed(wid)
{
    new weapon,id,Float:Speed;
    id = get_pdata_cbase(wid,m_pPlayer,4);
    weapon = get_pdata_int(wid,m_iId,4);
    
    if(weapon != CSW_C4)
    {
        Speed = 250.0;
    }
    SetHamReturnFloat(Speed)
    return HAM_OVERRIDE
}

Noi od razu na początku rundy, zamiast 250.0 to mam chyba z 700.0

Nie wiem co źle zrobiłem, normalnie dodałem

const m_pPlayer = 41
const m_iId = 43

public plugin_init()
{
    new classname[32]
    for(new i=1;i<31;++i)    if(i!=2)
    {
        get_weaponname(i,classname,31)
        
        RegisterHam( Ham_CS_Item_GetMaxSpeed, classname, "GetItemMaxSpeed")
    }
}

I nie wiem dlaczego dodaje takie przyspieszenie :(

 

return HAM_OVERRIDE zablokuje calkowicie predkosc poruszania sie botom. Dodaj omijanie dla podbotow. A co do tego przyspieszenia, cs ma swoje bledy. Podczas odrodzenia po freezetime musisz ustawiac graczowi odpowiednia predkosc. Przy zmianie predkosci w curweapon sytuacja wyglada podobnie ale wystarczy ustawic predkosc podczas nowej rundy, a tu nie.


  • +
  • -
  • 0

b35020692_qesnxqa.png


#11 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 16.09.2015 19:50

 

Dałem tak dla testów

public GetItemMaxSpeed(wid)
{
    new weapon,id,Float:Speed;
    id = get_pdata_cbase(wid,m_pPlayer,4);
    weapon = get_pdata_int(wid,m_iId,4);
    
    if(weapon != CSW_C4)
    {
        Speed = 250.0;
    }
    SetHamReturnFloat(Speed)
    return HAM_OVERRIDE
}

Noi od razu na początku rundy, zamiast 250.0 to mam chyba z 700.0

Nie wiem co źle zrobiłem, normalnie dodałem

const m_pPlayer = 41
const m_iId = 43

public plugin_init()
{
    new classname[32]
    for(new i=1;i<31;++i)    if(i!=2)
    {
        get_weaponname(i,classname,31)
        
        RegisterHam( Ham_CS_Item_GetMaxSpeed, classname, "GetItemMaxSpeed")
    }
}

I nie wiem dlaczego dodaje takie przyspieszenie :(

 

return HAM_OVERRIDE zablokuje calkowicie predkosc poruszania sie botom. Dodaj omijanie dla podbotow. A co do tego przyspieszenia, cs ma swoje bledy. Podczas odrodzenia po freezetime musisz ustawiac graczowi odpowiednia predkosc. Przy zmianie predkosci w curweapon sytuacja wyglada podobnie ale wystarczy ustawic predkosc podczas nowej rundy, a tu nie.

 

 

No zadziałało, ustawiłem po odrodzeniu prędkość i jest git, teraz mam inny problem, po freeze time nadaje prawidlowo predkosc, ale w czacie rundy gdy chce zmienic predkosc to musze zmienic bron, a chcial bym żeby od razu bylo ustawione.


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#12 WeBsteR

    Wszechwidzący

  • Użytkownik

Reputacja: 57
Pomocny

  • Postów:297
  • Imię:dawid
  • Lokalizacja:Rzeszów
Offline

Napisano 16.09.2015 21:56

Miałem coś podobnego na swoim CodModzie, jak usunąłem CurWeapon i zastosowałem kanapkę. Rozwiązałem to robiąc sprawdzenie, czy jest freezetime, jeżeli nie ma to ustawić set_pev od prędkosci, czyli:

if(!freezetime)
        set_pev(id, pev_maxspeed, szybkosc_gracza[id]);

poblicu ZastosujAtrybuty.

 

Może to coś Ci pomoże :giggle:

 

Pozdrawiam.


  • +
  • -
  • 1
Zabijaka Gryps to mój autorytet!

#13 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 18.09.2015 18:45

Chyba Git, chociaż inaczej z tym pokombinowałem :]


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych