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
CoD Nowy

Czyszczenie nvault z niepotrzebnych danych

cod nowy nvault niepotrzebne dane zapis danych usuwanie leveli czyszczenie danych

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

#1 Jak się nazwać

    Wszechmogący

  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 26.08.2012 12:23

*
Popularny

opis
Plugin na początku mapy szuka w pliku CodMod.vault wpisów w których doświadczenie gracza wynosi 0 i usuwa je. Działa tylko przy zapisie na nick (i tak nikt nie używa zapisu na ip, ew sid ale proszę napisać w temacie to dodam)
inne informacje
Do kompilacji wymaga biblioteki Nvaulut Utility
Link: http://forums.allied...ad.php?t=139584
komendy
Brak.
cvary
Brak.

Załączone pliki


  • +
  • -
  • 11
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#2 ZarzadCSB

    Profesjonalista

  • Użytkownik

Reputacja: 8
Nowy

  • Postów:207
  • GG:
  • Imię:Watashi
  • Lokalizacja:reklama
Offline

Napisano 26.08.2012 22:19

Nie wiem czy bardzo przydatne to będzie.
  • +
  • -
  • 0
Zarząd Cs-Baraki.pl Zapraszam serdecznie
Zarzad:
Washi * Agata * Kysy * oPALEJRO * MarWit
Zapraszamy na www.Cs-Baraki.pl

#3 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 26.08.2012 22:34

Dużo osób nażekało że usuwają im się levele, ponieważ plik jest przeciążony. Ten plugin usuwa zbędne dane czyli odciąża plik w znaczym stopniu.
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#4 Pan PrO

    Wszechpomocny

  • Użytkownik

Reputacja: 99
Zaawansowany

  • Postów:388
  • Lokalizacja:PC
Offline

Napisano 27.08.2012 09:03

Plugin jest sprawdzony ??
  • +
  • -
  • 0

#5 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 27.08.2012 09:27

a nie łatwiej zmienić ZapiszDane w silniku Coda z

if(!klasa_gracza[id])
  return PLUGIN_CONTINUE;

na

if(!klasa_gracza[id] || doswiadczenie_gracza[id] < 1)
  return PLUGIN_CONTINUE;

? Na jedno wyjdzie.

Użytkownik CheQ edytował ten post 27.08.2012 09:28

  • +
  • -
  • 4

#6 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 27.08.2012 09:45

Dobra wyjdzie na jedno jak od razu na serwie będzie to wgrane, ale jak to dodasz po jakimś czasie to ten plugin wyczyści wszystko gdzie exp = 0
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#7 SoPelQ

    Banned

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:121
  • Lokalizacja:Utajnione
Offline

Napisano 28.08.2012 01:27

@top: Dorobił byś możliwość "Jezeli klasa nie byla uzywany 2miechy to jest kasowny zapis z nvault" i "Jezeli ma ktos poziom nizszy niz 50 lvl, zapis jest czyszczony".

@Cheq: jak zmienie to:
if(!klasa_gracza[id] || doswiadczenie_gracza[id] < 1)
  return PLUGIN_CONTINUE;
Na to:
if(!klasa_gracza[id] || poziom_gracza[id] < 50)
  return PLUGIN_CONTINUE;
To czy jeżeli ktoś bd miał lvl niższy niż 50 nie zapisze go?

Użytkownik SoPelQ edytował ten post 28.08.2012 01:41


#8 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 28.08.2012 08:12

Tu ci czyści co 30 dni: http://amxx.pl/topic...post__p__414821
Co do usuwania poniżej 50 poziomu zmień to:
if(nexp[0] == '0')

na

new iexp = str_to_num(nexp)
if(iexp < TU_PODAJESZ_ILE_EXPA)

i tyle
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#9 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 28.08.2012 09:57

@SoPelQ

Powinno. Ale to po prostu nie zapisuje kogoś kto ma Poniżej 50 poziomu a nie Kasuje (choć na jedno wychodzi) xD
  • +
  • -
  • 0

#10 SoPelQ

    Banned

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:121
  • Lokalizacja:Utajnione
Offline

Napisano 28.08.2012 17:48

Co do usuwania poniżej 50 poziomu zmień to:

if(nexp[0] == '0')

na

new iexp = str_to_num(nexp)
if(iexp < TU_PODAJESZ_ILE_EXPA)

i tyle

Gdy tak zrobilem wywalilo all lvle z serwera. Za "TU_PODAJESZ_ILE_EXPA" wpisalem "35000", potem sprawdzilem z "30" w obu przypadkach to samo.
Co do samego plugu, gdy sprawdzam zapis .vault poprzez nvault reader są wpisy posiadajace 0 expa.

Użytkownik SoPelQ edytował ten post 28.08.2012 17:50


#11 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 28.08.2012 18:05

Nie możliwe że wywaliło wszystko, widocznie coś źle wgrywasz, sam sprawdzałem dziś rano i wszystko działało.
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#12 SoPelQ

    Banned

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:121
  • Lokalizacja:Utajnione
Offline

Napisano 28.08.2012 20:03

Jak można źle podmienić jedną linijkę:D
Podmieniłem te linijke:
if(nexp[0] == '0')
na to:
new iexp = str_to_num(nexp)
if(iexp < 35000)
35k expa to około 30lvla na moim codzie. Zmieniłem mapę, jednak po jej zmianie cały plik vault został sformatowany z 500kb zostalo 16b.

Co do tego ze nie czysci mi zapisow z vault w orginalnej wersji, pobralem CodMod.vault, otworzylem nvault readerem i tam byly powpisywane 1lvle (0expa)(a plug dzialal juz 2dni), plugin wpisany w plugins.ini

Użytkownik SoPelQ edytował ten post 28.08.2012 20:04


#13 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 28.08.2012 21:07

Jesteś pewien że cod nowy? Bo tylko na nowym działa.
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#14 SoPelQ

    Banned

  • Zbanowany

Reputacja: 7
Nowy

  • Postów:121
  • Lokalizacja:Utajnione
Offline

Napisano 28.08.2012 21:11

Oczywiście że mam coda nowego, dlatego się dziwie czy tylko mi to nie działa:(

#15 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 29.08.2012 00:12

Od kiedy tablica o długości 1 może przechować 5 znaków?
Zmień nexp[1] na nexp[5]...
Warunek ZAWSZE był prawdą, bo największa cyfra to 9, a 9 < 35000
;]

PS Levele nie do odzyskania, jeżeli nie masz kopii zapasowej...
PPS @SoPelQ: Problem wystąpił tylko u Ciebie, bo tylko Ty edytowałeś tą linijkę :D
PPPS Ktoś niezłą wtopę zaliczył ;D
  • +
  • -
  • 1

#16 K!113r

    Teraz to chyba Sławek kek

  • Power User

Reputacja: 387
Wszechpomocny

  • Postów:868
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Piotrków Tryb.
Offline

Napisano 29.08.2012 02:38

Wtopa ostra :D

Plugin przydatny jeżeli ma już ktoś śmietnik w pliku .vault, bo jak CzeQ napisał można zapobiegać zamiast leczyć xD
  • +
  • -
  • 0

DarkGL to mój autorytet.

skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować


#17 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 29.08.2012 09:12

A może sma?
Racja nie zauwazyłem tego :P Plugin pisałem z myślą o 0 więc jeden znak mi wystarczył.
  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964

#18 adif11

    Wszechpomocny

  • Zbanowany

Reputacja: 19
Początkujący

  • Postów:357
  • Imię:adrian
  • Lokalizacja:szczecin
Offline

Napisano 19.01.2013 15:29

Witam czy mógł by ktoś napisać jak zrobić aby usuwało postacie poniżej 200 expa? zmieniłem wszystko jak podał a może sma ale nadal usuwane są postacie :< powyżej 1000 expa

Zapraszam Serdecznie Na Cod Mod'a [401 lvl]

b_350_20_FFFFFF_FFFFFF_000000_000000.png


#19 Piro_0

    Zaawansowany

  • Zbanowany

Reputacja: 16
Początkujący

  • Postów:104
  • Imię:Marcin
  • Lokalizacja:Kartuzy
Offline

Napisano 27.01.2013 20:57

Da rade to zrobić żeby usówało nieaktywne konta od 30 dniach?

Pomogłem Daj + Nie Bądź Żyła.


#20 Jak się nazwać

    Wszechmogący

  • Autor tematu
  • Power User

Reputacja: 169
Profesjonalista

  • Postów:617
  • Imię:a
  • Lokalizacja:a
Offline

Napisano 28.01.2013 18:26

Wersja sterowana przez cvar w którym ustalamy poniżej jakiej ilości expa ma usuwać (domyślnie cod_autoclean 1 czyli poniżej 1 expa będzie usuwało):
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <nvault_util>

#define PLUGIN    "Nvault auto cleaner (for cod mod)"
#define AUTHOR    "Pusty [b]"
#define VERSION    "1.0"

new vault
new cvar_pointer

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    cvar_pointer = register_cvar("cod_autoclean", "1")
}

public plugin_precache()
    AutoClean();

public AutoClean()
{
    vault = nvault_open("CodMod")
    new iVault = nvault_util_open("CodMod")
    nvault_util_readall(iVault, "fwd_ReadVault")
    nvault_util_close(iVault)
    nvault_close(vault)
}

public fwd_ReadVault( iCurrent , iTotal , const szKey[] , const szVal[] , iTimeStamp , const Data[] , iSize )
{
    new name[48], class[48], reszta[1], nexp[7], exp;
    strtok(szKey, name, charsmax(name), class, charsmax(class), '-')
    strtok(class, class, charsmax(class), reszta, charsmax(reszta), '-')
    strtok(szVal[1], nexp, charsmax(nexp), reszta, charsmax(reszta), '#')
    exp = str_to_num(nexp)
    if(exp < get_pcvar_num(cvar_pointer))
    {
        new vaultkey[64]
        format(vaultkey, charsmax(vaultkey),"%s-%s-1-cod", name, class);
        nvault_remove(vault, vaultkey)
    }
}

  • +
  • -
  • 0
Pisze na zamówienie statystyki pod nvault. GG: 15600964





Również z jednym lub większą ilością słów kluczowych: cod nowy, nvault, niepotrzebne, dane, zapis danych, usuwanie leveli, czyszczenie danych

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

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