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

Lvl - Przedmioty


  • Zamknięty Temat jest zamknięty
19 odpowiedzi w tym temacie

#1 KariiO

    Super Hero

  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 14.11.2010 12:00

Witam.Chciał bym zapytać czy dało by się zrobić coś takiego:
Gracz powyżej 101 lvla ma tylko 25 % na zdobycie jakiegoś przedmiotu.
Natomiast poniżej 101 lvla gracze mają całe 100 % na zdobycie go ;P
Jak się da chciał bym od razu wiedzieć jak :>
  • +
  • -
  • 0

#2 Drewno.

    Banned

  • Zbanowany

Reputacja: 36
Życzliwy

  • Postów:263
  • GG:
  • Lokalizacja:Polska
Offline

Napisano 14.11.2010 15:09

właśnie też jestem za tym;) dołączam się do tematu

#3 Niscree

    Profesjonalista

  • Użytkownik

Reputacja: 41
Pomocny

  • Postów:174
  • Steam:steam
Offline

Napisano 14.11.2010 23:16

spróbuj tak:
np.

case 2:
{
if(player_lvl[id] > 101 && random_num(1,4) == 1){
player_item_name[id] = "Silver Amplifier"
player_item_id[id] = rannum
player_b_damage[id] = random_num(3,6)
show_hudmessage(id, "Znalazles przedmiot: %s :: dodaje obrazenia +%i ",player_item_name[id],player_b_damage[id])
}
else award_item(id,0)
}

  • +
  • -
  • 1

#4 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 14.11.2010 23:46

A ja bym zrobił tak...
znajdź
award_item(kid,0)

i zamień na
if(player_lvl[kid] > 101) {
if(random(4) == 1)
award_item(kid,0)
}
else
award_item(kid,0)

Chyba powinno działać.
  • +
  • -
  • 1

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#5 KariiO

    Super Hero

  • Autor tematu
  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 15.11.2010 16:05

Chyba ? :D Czy może się wypowiedzieć ktoś bardziej doświadczony ?
Bo raczej tego szybko nie sprawdzę ...
+ dla dwóch Panów za starania :>
  • +
  • -
  • 0

#6 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 15.11.2010 16:43

Chyba ? :D Czy może się wypowiedzieć ktoś bardziej doświadczony ?
Bo raczej tego szybko nie sprawdzę ...
+ dla dwóch Panów za starania :>

Raczej na pewno ;] Czyli powinno działać, bo sam stosuje podobny sposób, ale na zmniejszenie szansy wylosowania itemu dla każdego, tutaj dodany jest jeszcze tylko if z lvl. A co do bardziej doświadczonych to nie wydaje mi się, że od razu, np. Miczu tutaj się wypowie...

Użytkownik sebul edytował ten post 15.11.2010 16:48

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#7 ZiuTeK

    Wszechwiedzący

  • Użytkownik

Reputacja: 135
Zaawansowany

  • Postów:507
  • Lokalizacja:inąd
Offline

Napisano 15.11.2010 17:11

W ten sposob ta linijke trzebaby wklepywac do kazdego itemu z osobna, duzo kodu jak dla mnie
Ja bym wolal poukladac sobie itemy wg mocy/sily
i powiedzmy gdy mam tak jak u siebie 100 itemow to ukladam, ze pierwsze 40 itemow jest slabe a od 40 w gore 60 mocnych.
Wiec w funkcji losowanka zrobilbym drugie losowanie
public award_item(id, itemnum)
{
	if (player_item_id[id] != 0)
		return PLUGIN_HANDLED
	
	set_hudmessage(220, 115, 70, -1.0, 0.40, 0, 3.0, 4.0, 0.2, 0.3, 5)
	new rannum = random_num(1,100)
if (player_lvl[id]>100)
{
new podwojne_losowanko = random_num(1,4)
if (rannum>40 && podwojne_losowanko!=1) award_item(id,0)
}
dodane linie robia drugie losowanie i w przypadku gdy wylosowany item ma wiekszy numer niz 40, sprawdzany jest wynik drugiego losowania
(szansa 1/4), Jesli wypadnie 1 to gracz dostaje swoj itemek, jesli inna liczba, to losowanie jest ponawiane.

Użytkownik ZiuTeK edytował ten post 15.11.2010 19:20

  • +
  • -
  • 0

#8 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 15.11.2010 18:36

W ten sposob ta linijke trzebaby wklepywac do kazdego itemu z osobna, duzo kodu jak dla mnie

Oczywiście chodzi Ci o ten pierwszy sposób, co jest w temacie?
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#9 ZiuTeK

    Wszechwiedzący

  • Użytkownik

Reputacja: 135
Zaawansowany

  • Postów:507
  • Lokalizacja:inąd
Offline

Napisano 15.11.2010 19:12

W ten sposob ta linijke trzebaby wklepywac do kazdego itemu z osobna, duzo kodu jak dla mnie

Oczywiście chodzi Ci o ten pierwszy sposób, co jest w temacie?



if(player_lvl[kid] > 101) {
        if(random(4) == 1)
                award_item(kid,0)
}
else
        award_item(kid,0)
to chyba przeciez tez chciales dopisywac do kazdego itemu, jesli to chciales dac na gorze, przed losowaniem itemow to nawet nie ma sensu tego tak robic, bo w kazdym przypadku czy funkcja bedzie poprawna, czy nie to rezultat jest ten sam(award_item(kid,0).
Ja swoj kod tez zle napisalem bo nie dalem warunku na level gracza, zaraz edytuje.
  • +
  • -
  • 0

#10 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 15.11.2010 23:06

jesli to chciales dac na gorze, przed losowaniem itemow

znajdź - nie dopisz...

award_item(kid,0)

To się edytuje tylko w jednym miejscu... poszukaj sobie w kodzie samo
award_item(kid,0)

i chyba już będziesz wiedział ;] A losowanie jest jak najbardziej poprawne, co prawda nie jestem tego w 100% pewny, bo nie sprawdzane, ale teoretycznie powinno działać.

Użytkownik sebul edytował ten post 15.11.2010 23:50

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#11 Niscree

    Profesjonalista

  • Użytkownik

Reputacja: 41
Pomocny

  • Postów:174
  • Steam:steam
Offline

Napisano 15.11.2010 23:26

if(player_lvl[kid] > 101) {
if(random(4) == 1)
award_item(kid,0)
}
else
award_item(kid,0)



ty wiesz co napisałeś ?
W tłumaczeniu na polski:
jeżeli lvl zabójcy jest większy niż 101 to losuje item a jeżeli nie to losuje item

widzisz w tym jakiś sens ?

Ziutek,
pomysl może i dobry ale to co podałeś to będzie 75% a nie 25 :P
  • +
  • -
  • 0

#12 ZiuTeK

    Wszechwiedzący

  • Użytkownik

Reputacja: 135
Zaawansowany

  • Postów:507
  • Lokalizacja:inąd
Offline

Napisano 15.11.2010 23:27

Jak to zrobisz w taki sposob w tym miejscu gdzie podajesz to gracz ktory ma ponizej 100 levelu zawsze dostanie jakis item a gracz powyzej 100 levelu ma 1/4 na wylosowanie jakiegokolwiek itemu (z calej puli itemow) a 3/4 szans ze nie dostanie zadnego itemu w ogole.
Autorowi pytania chodzilo o to, aby szansa na wylosowanie dobrego itemu powyzej 100 levelu byla jak 1/4, co jak dla mnie oznacza ze pozostale 3/4 to wypadki gdy dostanie jakis item z tych slabszych.
  • +
  • -
  • 0

#13 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 15.11.2010 23:30

ty wiesz co napisałeś ?
W tłumaczeniu na polski:
jeżeli lvl zabójcy jest większy niż 101 to losuje item a jeżeli nie to losuje item

widzisz w tym jakiś sens ?

Ziutek,
pomysl może i dobry ale to co podałeś to będzie 75% a nie 25 :P

Właśnie nie... Podałeś chyba w tłumaczeniu na ruski (albo niemiecki, nie wiem), bo w tłumaczeniu na polski to będzie: jeśli gracz ma powyżej 101 lvl to ma 1/4 szansy (25%) na wylosowanie itemu, a jeśli ma poniżej to ma 100% szansy na item i o to chodziło autorowi tematu... Czyli najlepiej nic już nie pisz.

Jak to zrobisz w taki sposob w tym miejscu gdzie podajesz to gracz ktory ma ponizej 100 levelu zawsze dostanie jakis item a gracz powyzej 100 levelu ma 1/4 na wylosowanie jakiegokolwiek itemu (z calej puli itemow) a 3/4 szans ze nie dostanie zadnego itemu w ogole.
Autorowi pytania chodzilo o to, aby szansa na wylosowanie dobrego itemu powyzej 100 levelu byla jak 1/4, co jak dla mnie oznacza ze pozostale 3/4 to wypadki gdy dostanie jakis item z tych slabszych.

A zobacz co napisał autor tematu...

Gracz powyżej 101 lvla ma tylko 25 % na zdobycie jakiegoś przedmiotu.
Natomiast poniżej 101 lvla gracze mają całe 100 % na zdobycie go ;P

Dobra ja się już tu w tym temacie chyba nie wypowiadam, bo ktoś chyba ma problemy z czytaniem.

Na koniec podam może pomocny link do mojego tematu z podobnym pytaniem Zmniejszenie szansy dostania itemu - Nieoficjalny polski support AMX Mod X

Użytkownik sebul edytował ten post 15.11.2010 23:47

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#14 KariiO

    Super Hero

  • Autor tematu
  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 16.11.2010 16:59

Chciał bym tylko coś takie że do każdego itemku z osobna podczepiam coś i każda klasa z wyższym lvlem niż 101 ma załóżmy 50 % że go zdobędzie jak go nie do zdobędzie to ma szanse na inny nie że nic nie wylosuje :D
  • +
  • -
  • 0

#15 Niscree

    Profesjonalista

  • Użytkownik

Reputacja: 41
Pomocny

  • Postów:174
  • Steam:steam
Offline

Napisano 16.11.2010 17:04

no to czytaj mój pierwszy post ;P
  • +
  • -
  • 0

#16 KariiO

    Super Hero

  • Autor tematu
  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 18.11.2010 20:14

No ale wywala mi w nim błędy ;/
  • +
  • -
  • 0

#17 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 18.11.2010 20:26

A spróbuj w wybranym itemie dodać to
if(player_lvl[id] > 101 && random(4) != 1)
return PLUGIN_HANDLED
else
award_item(id,0)

Ale nie wiem czy to w ogóle ma szanse zadziałać... w kazdym razie sprawdzić nie zaszkodzi.

Użytkownik sebul edytował ten post 18.11.2010 20:29

  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo


#18 KariiO

    Super Hero

  • Autor tematu
  • Power User

Reputacja: 396
Wszechpomocny

  • Postów:1 133
  • GG:
  • Imię:Korneliusz
  • Lokalizacja:Cieszyn
Offline

Napisano 19.11.2010 14:12

Niestety nie mam jak tego sprawdzić...
  • +
  • -
  • 0

#19 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1 344
Godlike

  • Postów:3 563
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 19.11.2010 22:46

wystarczy zamienic

new rannum = random_num(1,100)

na

new rannum = random_num(1,100)
if(random(3)!=1) rannum = random_num(1,100)

  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#20 Niscree

    Profesjonalista

  • Użytkownik

Reputacja: 41
Pomocny

  • Postów:174
  • Steam:steam
Offline

Napisano 19.11.2010 22:47

jak wywala ci errory to powiedz jakie....
  • +
  • -
  • 0




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

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