Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2015-06-18, 00:04


Polgałka

Role-Player...






Wiek: 30
Na forum: 6641 dni
Posty: 40
Nick w MP: Nie gram.

Piwa: 318

Respekt: 60

Cze??, interesuje mnie zmiana ze zwyk?ych zmiennych i tablic z enumami na modu?owe zmienne. Istnieje co? takiego ja pvar ale bez podpisywania pod playerid, a dowoln? inna dan?? A mo?e jest spos?b na stworzenie samemu takiego systemu? :)

Edit: A? mnie dziwi to, ?e nie znalaz?em niczego takiego ju? zrobionego pod pojazdy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-18, 11:35


Combacior







Wiek: 29
Na forum: 5795 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
http://gtao.pl.com/showthread.php?t=151076
http://gtao.pl.com/showthread.php?t=370852

Plugin jest szybszy ni? include, ale nie rozumiem po co to robi?? Moim zdaniem lepiej trzyma? dane w zmiennych/tablicach. D?u?ej zajmie pobranie warto?ci przy u?yciu funkcji ni? przepisanie z innej zmiennej/tablicy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-18, 15:33


Polgałka

Role-Player...






Wiek: 30
Na forum: 6641 dni
Posty: 40
Nick w MP: Nie gram.

Piwa: 318

Respekt: 60

"Combacior" napisał/a:

http://gtao.pl.com/showthread.php?t=151076
http://gtao.pl.com/showthread.php?t=370852

Plugin jest szybszy ni? include, ale nie rozumiem po co to robi?? Moim zdaniem lepiej trzyma? dane w zmiennych/tablicach. D?u?ej zajmie pobranie warto?ci przy u?yciu funkcji ni? przepisanie z innej zmiennej/tablicy.


Uwa?asz ?e w przypadku skryptu roleplay, dla na przyklad grup, bardziej optymalne s? tablice/zmienne?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-20, 09:43


kazami

Pawner/PTG






Wiek: 27
Na forum: 4596 dni
Posty: 405
Nick w MP: adi888

Piwa: 43

Respekt: 76,3

Ostrzeżeń: 80%
Kiedy? zrobi?em system pobieraj?c 3/4 danych bazuj?? na pv'arach i by? on w 99% zbugowany bo pvar'a jak pobierzemy raz to ju? on si? usuwa a ze zmiennej czy tablicy mo?emy pobiera? do b?lu. Tak?e jak m?wi? Combacior lepiej u?yj zmiennych/tablic.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-20, 17:04


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"kazami" napisał/a:

Kiedy? zrobi?em system pobieraj?c 3/4 danych bazuj?? na pv'arach i by? on w 99% zbugowany bo pvar'a jak pobierzemy raz to ju? on si? usuwa a ze zmiennej czy tablicy mo?emy pobiera? do b?lu. Tak?e jak m?wi? Combacior lepiej u?yj zmiennych/tablic.


Jak napisa?e? zbugowany skrypt to co si? dziwi?. Z reszt? za wiele nie mo?na si? spodziewa? od wykonawcy.

@OP: PVary s? du?o wolniejsze od 'przeci?tnych' zmiennych. W?a?ciwie nie wiem w czym rzecz. Przemy?l co jak dzia?a, najlepiej zapoznaj si? z jakim? gotowcem pod RP.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2015-06-22, 16:46


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"kazami" napisał/a:

IgrexolonO, a co ty odemnie cierpisz ? My?lisz ?e jeste? jakim? bogiem ? Nie podoba ci si? co? to nie czytaj ?osiu.


C??. Bogiem nie jestem, bynajmniej nie chcia?bym by? por?wnywany do Twojego zmy?lonego przyjaciela, kt?ry lata sobie gdzie? w chmurkach. Mog? by? co najwy?ej mistrzem w swoim fachu.

I owszem, musz? czyta?. Czuj? si? w potrzebie poprawiania herezji, kt?r? Ty i osoby Twojego pokroju staraj? si? usilnie szerzy?.

"Kiedy? zrobi?em system pobieraj?c 3/4 danych bazuj?? na pv'arach i by? on w 99% zbugowany bo pvar'a jak pobierzemy raz to ju? on si? usuwa a ze zmiennej czy tablicy mo?emy pobiera? do b?lu."

Tak, w?a?nie to robi? osoby Twojego pokroju - "nie umiem napisa? kodu, o k****! to na pewno jest zbugowane". Nie umiesz czego? zrobi?, to albo si? naucz to robi? albo to po prostu zostaw, bo zwalanie winy na to, ?e co? jest zbugowane.. na to jeszcze nie zas?ugujesz.

Owszem, SA-MP jest pe?en dziur i ka?dy kto zna si? na rzeczy, wypisze Ci przynajmniej 10 przypadk?w, w kt?rych bugi wyst?puj?, a za?atanie ich graniczy z cudem. W twoim jednak temacie nie ma bug?w, po prostu jest nieumy?lno?? stworzenia czego?, czego nie potrafisz okie?zna?.

Wracaj?c do tematu, bo ju? prorokuje na tym forum chyba 4 rok.

http://gtao.pl.com/showthread.php?t=310149

Ten temat najlepiej przedstawia r??nic? mi?dzy "PVarami" a normalnymi zmiennymi.

"Y_Less" napisał/a:

I would estimate that a single PVars uses around 10x more memory than a single PAWN variable. So if your server is full your PVars are using 10x more memory than the equivalent array would. The only way you'll use less memory is if your server is constantly at 1/10 maximum occupancy, and if that's the case you'll get much better memory reduction results from changing "MAX_PLAYERS" and recompiling.

PVars do reset on player join/leave, but I've written an array library (y_uvar) that does that anyway. They can also be enumerated for better loading/saving, but y_uvars can do that too (again without the memory overhead).

Edit: Bad maths sorry. If you only have one players it's around 10x, if you have an 800 player server full it'll average out to only around 3x more memory as the other bits are a constant overhead regardless of the number of players.


Oczywi?cie w?tpi?, ?e potrafisz pos?ugiwa? si? j?zykiem angielskim, wi?c pozwol? sobie przytoczy? najwa?niejsze fragmenty i na odpiehdol si? je przet?umaczy?.

"Y_Less" napisał/a:

single PVars uses around 10x more memory than a single PAWN variable


"Pojedy?czy PVar u?ywa oko?o 10 razy wi?cej pami?ci ni? przeci?tna zmienna".

"Y_Less" napisał/a:

If you only have one players it's around 10x, if you have an 800 player server full it'll average out to only around 3x more memory"


Je?li masz tylko jednego gracza - PVar zu?ywa oko?o 10 razy wi?cej pami?ci od przeci?tnej zmiennej, natomiast je?li na serwerze figuruje oko?o 800 graczy, zu?ycie pami?ci jest jedynie 3krotnie wi?ksze.

Kwestia o kt?r? pyta? autor, bo ta jest wci?? niewyja?niona.

Oczywi?cie mo?esz tworzy? tablice, np. z enumami, posiadaj?ce w sobie dane poszczeg?lnych grup. Przyjmijmy, ?e chcemy stworzy? co? na wz?r 'gangu', a b?dzie ich 5. I przy okazji chcia?by? wyszuka? index danego gangu, dla przyjmijmy.. liczby zab?jstw 5.

Kod:

enum _e_gang
{
gid,
ownerid,
kills
}; new Gang_Data[5][_e_gang];


Powiedzmy, ?e teraz 'zarejestrujemy' ze dwa gangi.

Kod:

Gang_Data[0][gid] = 1;
Gang_Data[0][ownerid] = 666;
Gang_Data[0][kills] = 5;

Gang_Data[1][gid] = 2;
Gang_Data[1][ownerid] = 667;
Gang_Data[1][kills] = 3;


Przyjmuj?, ?e dalej chcesz si? dowiedzie? jak znale?? dany gang, dlatego poka?? przyk?ad jak znale?? index gangu, kt?ry posiada na swoim koncie 5 zab?jstw.

Kod:

stock findGangByKillsAmount(amount)
{
for(new i=0;i<sizeof(Gang_Data);i++)
if(Gang_Data[i][kills] == amount)
return i;
return -1;
}


Mo?esz u?y? tego kodu w nast?puj?cy spos?b:

Kod:

new index = findGangByKillsAmount(5);
if(index == -1)
return SendClientMessage(playerid, -1, "Gang nie zosta? znaleziony");

// dalej mo?esz zrobi? co? z tym indexem, np zmieni? ID w?a?ciciela.

Gang_Data[index][ownerid] = 100;


Mam nadziej?, ?e wyczerpa?em ten temat do ko?ca i ?e jak zwykle uciszy?em b?lo dupnych na pare miesi?cy. Elo.

Postaw piwo autorowi tego posta
 

 
Tagi: moduły :: bez :: per-player.
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » Moduły bez per-player. Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku