https://forums.allie...ad.php?t=132115
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.
|
Szet
Rejestracja: 22.07.2019Aktualnie: Nieaktywny
Poza forum Ostatnio: 25.07.2020 09:43




Statystyki
- Grupa: Użytkownik
- Całość postów: 5
- Odwiedzin: 2 737
- Tytuł: Nowy
- Wiek: Wiek nie został ustalony
- Urodziny: Data urodzin nie została podana
-
Imię
Vitt
-
Płeć
Mężczyzna
-
Lokalizacja
Wrocław
Kontakt
#761803 Just Capture The Flag (Wymarły mod)
Napisane przez DarkGL
w 03.10.2019 21:26
#761834 Just Capture The Flag (Wymarły mod)
Napisane przez Alelluja
w 04.10.2019 23:02
#761766 Prośba o klasy (CoD Mod by O'Zone cs 1.6)
Napisane przez O'Zone
w 01.10.2019 16:50
Nie powiedziałbym, że wykorzystanie eventu damage z csx, bez jakiegokolwiek sprawdzania czy gracz faktycznie posiada tą klasę, jest prawidłowe.
Jakby nie było ten bonus byłby aktywny zawsze przy trafieniu w głowę.
Tymczasem można to zrobić chociażby tak:
Załączone pliki
-
codclass_miastowy.sma 994 bajtów 127 Ilość pobrań
codclass_miastowy.amxx
#761728 Prośba o klasy (CoD Mod by O'Zone cs 1.6)
Napisane przez Alelluja
w 29.09.2019 22:13
#759203 Voice Manager
Napisane przez O'Zone
w 16.05.2019 11:43
Ale ten gag nei działa na niektórych graczy , ten twój gag to już w ogóle gorzej działa niż taki co mi ziomek zrobił . Ale tam też niektórych się nie da zgagować. najczęściej jak jest reklama group boost.
W takim razie jak już powiedziałem, pochwal się kodem i będzie można porównać oba pluginy.
Tutaj nie ma nic nadzwyczajnego, jak każdy inny plugin zarządzający głosem graczy wykorzystywany jest forward FM_Voice_SetClientListening
i w metodzie set_client_listening długa seria warunków określa, czy głos gracza jest słyszalny dla innego, bo to oczywiście serwer zarządza rozmowami graczy.
Tylko też na nick ... , ja nie wiem jak te bany w końcu działają bo nick możesz zmienic ip też , i cfg też .
Oczywiście, że można. Każdą z tych metod da się obejść i to tym właściwie są wyżej posty: mój i aSiorra.
Nie istnieje na ten moment żadna metoda, która pozwala w 100% pewne identyfikowanie (i zbanowanie) gracza
i jako właściciel serwerów powinieneś bardzo dobrze zdawać sobie z tego sprawę.
#759176 Voice Manager
Napisane przez O'Zone
w 14.05.2019 18:49
A jest ktoś w stanie zrobić to tak aby naprawdę gagowało wszystkich graczy ?
Bo ta wersja to chyba gorzej działa od mojej.
W przypadku permanentnego gag'a gracz jest mutowany po IP, SteamID i nicku.
Po takich informacjach jest wyszukiwany w bazie przy wejściu na serwer - wystarczy, żeby pokrywała się jedna z nich.
Natomiast gag na mapę jest nakładany tylko i wyłącznie na nick.
Jeśli masz bardziej niezawodny mechanizm oznaczania graczy jako zmutowanych, możesz się pochwalić.
#101041 Admin spec esp
Napisane przez mgr inż. Pavulon
w 24.12.2009 00:12
#761414 "Ściana" C4 na 1 bombside
Napisane przez O'Zone
w 08.09.2019 13:38
Jeśli był to polski serwer, zakładam, że trafiłeś na plugin Map Blocking Walls. z którego na ten moment na pewno korzysta Infectia.pl.
W moim repozytorium znajdziesz też folder walls, gdzie znajduje się część wymaganych plików, ale brakuje chociażby dictionary,
więc postanowiłem poświęcić kilka minut i zrobić gotową paczkę, która jest w załączniku.
1. Folder walls w katalogu configs to gotowe configi ścian na 75 mapach blokujących dostęp do jednego z BSów.
2. W katalogu katalogu sprites znajduje się wall.spr z dwoma teksturami ścian.
Jedna z nich zawiera logo mojej starej sieci serwerów, więc musisz go sobie zedytować używając np. Sprite Explorer,
eksportując obie tekstury jako jako .bmp, edytując tą z logiem przy użyciu jakiegoś programu graficznego i budując nowego sprite.
3. W data/lang znajdziesz walls.txt, czyli dictionary ze stringami translacyjnymi.
4. W scripting i plugins wrzuciłem plugin w dwóch wersjach, walls_old pod AMXX 1.8.2. i walls pod AMXX 1.8.3+.
Co do samego pluginu, ściany aktywują się blokując przejścia, jeśli na serwerze jest mniej niż określona w configu liczba graczy.
Całość konfiguracji, w tym edycja istniejących ścian jak i dodawanie ich na innych mapach jest dostępna z poziomu menu pod komendą /walls (lub /sciany).
Dla ciekawskich, wygląda to tak:

Załączone pliki
-
walls.zip 113,83 KB 594 Ilość pobrań
#757324 Kilka Klas na CODMODA
Napisane przez O'Zone
w 25.02.2019 17:37
Nie rozumiem, czyli chcesz żeby ktoś ci sam pisał klasy od nowa, bo nie ma być z generatora?
Pozwolę sobie potwierdzić słowa ChrisN.
Silnik mojego CoDa posiada masę dodatkowych wbudowanych funkcjonalności
i sporo rzeczy można załatwić kilkoma linijkami kodu z użyciem natywów i forwardów,
stąd też zarówno klasy jak i itemy pisze się z ich wykorzystaniem.
SecretARczi, na szybko skrobnąłem ci wszystkie 4 klasy, zmień sobie bazowe statystyki
i ewentualnie dodaj dodatkowe bronie, jeśli jeszcze jakieś chcesz.
Załączone pliki
-
codclass_invisible_superpremium.sma 1,63 KB 412 Ilość pobrań
codclass_invisible_superpremium.amxx
-
codclass_kapitan_superpremium.sma 840 bajtów 142 Ilość pobrań
codclass_kapitan_superpremium.amxx
-
codclass_zwiadowca_superpremium.sma 1,07 KB 663 Ilość pobrań
codclass_zwiadowca_superpremium.amxx
-
codclass_boskijohny_superpremium.sma 1,02 KB 135 Ilość pobrań
codclass_boskijohny_superpremium.amxx
#759056 [O'ZONE] Klasa AirMan
Napisane przez O'Zone
w 05.05.2019 11:39
Jak miło zobaczyć na forum pierwszą klasę pod mojego CoD'a, której sam nie napisałem.
Nie mogłem się oczywiście powstrzymać przez zrobieniem refactoringu.
Btw, w cstrike.rar poza zasobami wrzuciłeś też jakieś swoje screeny ![]()
Załączone pliki
-
codclass_airman.sma 4,17 KB 110 Ilość pobrań
codclass_airman.amxx
-
cstrike.zip 406,83 KB 84 Ilość pobrań
#761204 Problemy z usługami do sklepu d0naciak
Napisane przez Hiko
w 28.08.2019 17:35
#757240 Call of Duty Mod (by O'Zone)
Napisane przez O'Zone
w 23.02.2019 23:18
Wydano wersję oznaczoną numerem 1.3.0.
Lista zmian jest dość długa, więc tym razem oszczędzę sobie jej tłumaczenie i wklejanie w poście tutaj.
Wszyscy, którzy chcą sprawdzić co się zmieniło mogą przeczytać changelog tutaj.
Jest tam także instrukcja aktualizacji z wersji 1.2.1 ze względu na pojawienie się nowego modelu,
a przede wszystkim zmiany w strukturze dwóch tabel bazy danych.
Dodatkowo dla wszystkich chcących szybko postawić serwer z AMXX 1.9,
ReHLDS, ReGameDLL, Reunion i kilkoma dodatkami przygotowałem BasePack.
Natomiast osobom korzystającym z Sublime Text 3 pragnę polecić plugin AMXXEditor.
#760354 Plugin liczący fragi z każdej broni osobno
Napisane przez O'Zone
w 04.08.2019 10:52
Pozwolę sobie wspomnieć o Ultimate Stats, w którym to pluginie statystyki każdej broni są liczone osobno
zapewniając własną implementację natywu get_user_wstats z zawsze aktualnymi statystykami.
#760484 Przekazywanie danych w menu / Tworzenie menu z nickami graczy
Napisane przez Robiin
w 08.08.2019 11:24
W związku z przestarzałym tematem i kodem, który ciągle widzę, że się pojawia:
new players[32], pnum, tempid;
new szName[32], szTempid[10];
get_players(players, pnum);
for(new i; i<pnum; i++)
{
tempid = players[i];
if(!is_user_connected(tempid))
continue;
get_user_name(tempid, szName, charsmax(szName));
num_to_str(tempid, szTempid, charsmax(szTempid));
menu_additem(menu, szName, szTempid);
}
Dodaję na szybko wam snippet, który wygląda ładniej i generalnie nie używa starych metod:
Przekazywanie indeksu gracza AMXX 1.8.3 i niżej:
public myMenu(index)
{
new menuIndex = menu_create("Menu:", "myMenu_handler"),
userName[33],
userIndex[3];
for(new i = 1; i <= 32; i++)
{
if(!is_user_connected(i))
{
continue;
}
get_user_name(i, userName, charsmax(userName));
formatex(userIndex, charsmax(userIndex), "%i", i);
menu_additem(menuIndex, userName, userIndex);
}
menu_display(index, menuIndex);
return PLUGIN_HANDLED;
}
public myMenu_handler(index, menuIndex, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menuIndex);
return PLUGIN_HANDLED;
}
new menuData[2],
blank,
target;
menu_item_getinfo(menuIndex, item, blank, menuData, charsmax(menuData), _, _, blank);
menu_destroy(menuIndex);
target = str_to_num(menuData);
if(!is_user_connected(target))
{
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
Przekazywanie indeksu gracza AMXX 1.9 i wyżej:
public myMenu(index)
{
new menuIndex = menu_create("Menu:", "myMenu_handler");
for(new i = 1; i <= 32; i++)
{
if(!is_user_connected(i))
{
continue;
}
menu_additem(menuIndex, fmt("%n", i), fmt("%i", i));
}
menu_display(index, menuIndex);
return PLUGIN_HANDLED;
}
public myMenu_handler(index, menuIndex, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menuIndex);
return PLUGIN_HANDLED;
}
new menuData[2],
target;
menu_item_getinfo(menuIndex, item, _, menuData, charsmax(menuData));
menu_destroy(menuIndex);
target = str_to_num(menuData);
if(!is_user_connected(target))
{
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
Opcja jeszcze krótsza:
public myMenu(index)
{
new menuIndex = menu_create("Menu:", "myMenu_handler"), i[1];
for(i[0] = 1; i[0] <= 32; i[0]++)
{
if(!is_user_connected(i[0]))
{
continue;
}
menu_additem(menuIndex, fmt("%n", i), i[0]);
}
menu_display(index, menuIndex);
return PLUGIN_HANDLED;
}
public myMenu_handler(index, menuIndex, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menuIndex);
return PLUGIN_HANDLED;
}
new menuData[1],
target;
menu_item_getinfo(menuIndex, item, _, menuData, charsmax(menuData));
menu_destroy(menuIndex);
target = menuData[0];
if(!is_user_connected(target))
{
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
Przekazywanie wielu wartości w menu:
public myMenu(index)
{
new menuIndex = menu_create("Menu:", "myMenu_handler"),
menuData[4];
for(new i = 1; i <= 32; i++)
{
if(!is_user_connected(i))
{
continue;
}
menuData[0] = i;
menuData[1] = cs_get_user_money(i);
menuData[2] = index;
menu_additem(menuIndex, fmt("%n", i), menuData);
}
menu_display(index, menuIndex);
return PLUGIN_HANDLED;
}
public myMenu_handler(index, menuIndex, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menuIndex);
return PLUGIN_HANDLED;
}
new menuData[6],
target;
menu_item_getinfo(menuIndex, item, _, menuData, charsmax(menuData));
menu_destroy(menuIndex);
target = menuData[0];
value = menuData[1];
otherIndex = menuData[2];
if(!is_user_connected(target))
{
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
Przekazywanie dwóch stringów:
public myMenu(index)
{
new menuIndex = menu_create("Menu:", "myMenu_handler"),
menuData[64];
for(new i = 1; i <= 32; i++)
{
if(!is_user_connected(i))
{
continue;
}
get_user_name(i, userName, charsmax(userName));
formatex(menuData, charsmax(menuData), "%s#%s", userName, "abcd"); // "aSior abcd"
menu_additem(menuIndex, fmt("%n", i), menuData);
}
menu_display(index, menuIndex);
return PLUGIN_HANDLED;
}
public myMenu_handler(index, menuIndex, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menuIndex);
return PLUGIN_HANDLED;
}
new menuData[64],
userName[33],
additionalText[33];
menu_item_getinfo(menuIndex, item, _, menuData, charsmax(menuData));
menu_destroy(menuIndex);
split(menuData, userName, charsmax(userName), additionalText, charsmax(additionalText), "#");
ColorChat(index, NORMAL, "Wybrales %s %s", userName, additionalText); // "Wybrales aSior abcd"
return PLUGIN_HANDLED;
}
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: Szet
- Regulamin


Dodatki SourceMod



Moja zawartość
