Potrzebuje jakiś fajnych przeróbek pluginów na urozmaicenie gry na prostym serwerze dd2 czy ktoś ma np plugin medale na koniec rundy czy coś innego skiny mam jak coś
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.
|
Only DD2
#1
Napisano 28.10.2017 16:07
#2
Napisano 28.10.2017 16:54
Jeżeli spróbujesz się określić, co konkretnie potrzebujesz, to wystarczy dodać "amxx" i wyszukać w google.
Na przykład: "Medale na koniec rundy amxx" i masz gotowy plugin.
Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.
#3
Napisano 28.10.2017 17:04
Ok dzięki za info właśnie o takie coś chodziło.
A znasz jakieś inne jeszcze ciekawe pluginy bo nie mam pomysłu jeszcze jakie można dodać.
#4
Napisano 28.10.2017 18:03
Może rangi?
Poszukaj również sobie tutaj https://amxx.pl/pluginy/ może coś znajdziesz co cie zaciekawi
Zawsze służę pomocą, pomogę na tyle ile jestem wstanie
Poradnik do instalacji AmxBans: https://www.youtube....h?v=fYq5iKQhVIM
Link do lekkiej "modyfikacji" AmxBans: https://amxx.pl/topi...ndpost&p=733955
#5
Napisano 28.10.2017 18:16
Jeżeli spróbujesz się określić, co konkretnie potrzebujesz, to wystarczy dodać "amxx" i wyszukać w google.
Na przykład: "Medale na koniec rundy amxx" i masz gotowy plugin.
Może rangi?
Poszukaj również sobie tutaj https://amxx.pl/pluginy/ może coś znajdziesz co cie zaciekawi
Mam skiny rangi też, chciałem wgrać medale https://amxx.pl/topi...medale-ranking/ale nie działają nie działa nawet komenda /medale
#6
Napisano 28.10.2017 18:19
Aby ten plugin poprawnie działał musisz wpisać w .sma dane bazy mysql i skompilować lokalnie.
Zawsze służę pomocą, pomogę na tyle ile jestem wstanie
Poradnik do instalacji AmxBans: https://www.youtube....h?v=fYq5iKQhVIM
Link do lekkiej "modyfikacji" AmxBans: https://amxx.pl/topi...ndpost&p=733955
#7
Napisano 28.10.2017 18:22
Aby ten plugin poprawnie działał musisz wpisać w .sma dane bazy mysql i skompilować lokalnie.
Jak to zrobić baza jest na hostingu jeszcze nigdy nie tykałem i gdzie to trzeba w .sam uwzględnić
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <sqlx> #include <colorchat> new const nazwy[][] = { "Zlote", "Srebrne", "Brazowe" } new Handle: g_SqlTuple; new gQuery[512]; enum _:staty { KILL, GOLD, SILVER, BRONZE, ID } enum _:cvary { HOST, PASS, USER, DBNAME, MIMPLR } new gStaty[staty][33]; new gZdobyl[staty][33]; new gCvary[cvary]; new gNick[33][33]; new gData[2048], len, gLast; public plugin_end() SQL_FreeHandle(g_SqlTuple); public SqlInit() { new temp[staty][64]; get_pcvar_string(gCvary[HOST], temp[HOST], 63); get_pcvar_string(gCvary[PASS], temp[PASS], 63); get_pcvar_string(gCvary[USER], temp[USER], 63); get_pcvar_string(gCvary[DBNAME], temp[DBNAME], 63); g_SqlTuple = SQL_MakeDbTuple(temp[HOST], temp[USER], temp[PASS], temp[DBNAME]); if(g_SqlTuple == Empty_Handle) set_fail_state("Nie mozna utworzyc uchwytu do polaczenia."); new iErr, szError[32]; new Handle:link = SQL_Connect(g_SqlTuple, iErr, szError, 31); if(link == Empty_Handle){ log_amx("Error (%d): %s", iErr, szError); set_fail_state("Brak polaczenia z baza danych"); } new Handle:query; query = SQL_PrepareQuery(link, "CREATE TABLE IF NOT EXISTS `medale` ( \ `id` int(5) NOT NULL auto_increment, \ `nick` varchar(36) NOT NULL, \ `kill` INT(11) NOT NULL DEFAULT 0, \ `gold` INT(11) NOT NULL DEFAULT 0, \ `silver` INT(11) NOT NULL DEFAULT 0, \ `bronze` INT(11) NOT NULL DEFAULT 0, \ `suma` INT(11) NOT NULL DEFAULT 0, \ PRIMARY KEY (`id`) \ )"); SQL_Execute(query); SQL_FreeHandle(query); WczytajMedale(); } public plugin_init() { register_plugin("Medale SQL Ver", "1.2", "byCZEK"); register_event("DeathMsg", "event_death", "a"); register_message(SVC_INTERMISSION, "MsgIntermission"); register_clcmd("say /medale", "MenuMedali"); gCvary[HOST] = register_cvar("medale_hostname", ""); gCvary[PASS] = register_cvar("medale_password", ""); gCvary[USER] = register_cvar("medale_username", ""); gCvary[DBNAME] = register_cvar("medale_dbname", ""); gCvary[MIMPLR] = register_cvar("medale_minp", "1"); set_task(0.1, "SqlInit"); } public client_putinserver(id) { Wyczysc(id); get_user_name(id, gNick[id], 32); formatex(gQuery, charsmax(gQuery), "SELECT * FROM `medale` WHERE `nick` = ^"%s^" ORDER BY `id` LIMIT 1", gNick[id]); new ids[1]; ids[0] = id; SQL_ThreadQuery(g_SqlTuple, "handleLoadData", gQuery, ids, 1); } public client_disconnect(id) { new suma = (gStaty[GOLD][id]+gZdobyl[GOLD][id])*3 + (gStaty[SILVER][id]+gZdobyl[SILVER][id])*2 + gStaty[BRONZE][id]+gZdobyl[BRONZE][id]; formatex(gQuery, charsmax(gQuery), "UPDATE `medale` SET `kill` = `kill` + %d, `gold` = `gold` + %d, `silver` = `silver` + %d, `bronze` = `bronze` + %d, `suma` = %d WHERE `id` = %d", gZdobyl[KILL][id], gZdobyl[GOLD][id], gZdobyl[SILVER][id], gZdobyl[BRONZE][id], suma, gStaty[ID][id]); SQL_ThreadQuery(g_SqlTuple, "handleStandard", gQuery); Wyczysc(id); } public Wyczysc(id) { for(new i = 0; i < staty; i++) { gStaty[i][id] = 0; gZdobyl[i][id] = 0; } } public WczytajMedale() { gLast = get_systime(); SQL_ThreadQuery(g_SqlTuple, "handeLoadRank", "SELECT * FROM `medale` ORDER BY `suma` DESC LIMIT 15"); } public handleLoadData(failstate, Handle:query, error[], errnum, data[], size){ if(failstate != TQUERY_SUCCESS){ log_amx("SQL Load error: %s",error); return; } new id = data[0]; if(!is_user_connected(id)) return; if(SQL_MoreResults(query)) { gStaty[ID][id] = SQL_ReadResult(query, 0); gStaty[KILL][id] = SQL_ReadResult(query, 2); gStaty[GOLD][id] = SQL_ReadResult(query, 3); gStaty[SILVER][id] = SQL_ReadResult(query, 4); gStaty[BRONZE][id] = SQL_ReadResult(query, 5); } else { formatex(gQuery, charsmax(gQuery), "INSERT INTO `medale` (`nick`) VALUES (^"%s^")", gNick[id]); SQL_ThreadQuery(g_SqlTuple, "handleStandard", gQuery); } } public handleStandard(failstate, Handle:query, error[], errnum, data[], size) { if(failstate != TQUERY_SUCCESS) { log_amx("SQL Insert error: %s",error); return; } } public event_death() { new kid = read_data(1); new vid = read_data(2); if(kid != vid && get_user_team(kid) != get_user_team(vid)) gZdobyl[KILL][kid]++; } public MenuMedali(id) { new m = menu_create("Medale", "MenuMedali_"); menu_additem(m, "Twoje medale"); menu_additem(m, "Ranking medali"); menu_setprop(m, MPROP_EXIT, MEXIT_ALL); menu_display(id, m); } public MenuMedali_(id, m, i) { if(i == MENU_EXIT) { menu_destroy(m); return PLUGIN_CONTINUE; } switch(i) { case 0: { TwojeMedale(id); } case 1: { RankingMedali(id); } } return PLUGIN_CONTINUE; } public TwojeMedale(id) { new m = menu_create("Twoje medale", "TwojeMedale_"); new t[128]; for(new i = 1; i < staty - 1; i++) { formatex(t, charsmax(t), "%s: \r%d", nazwy[i-1], gStaty[i][id]); menu_additem(m, t); } menu_display(id, m); } public TwojeMedale_(id, m) menu_destroy(m); public RankingMedali(id) { if(get_systime() - gLast > 20) { WczytajMedale(); } show_motd(id, gData, "Top15 Medali"); } public handeLoadRank(failstate, Handle:query, error[], errnum, data[], size) { if(failstate != TQUERY_SUCCESS) { log_amx("SQL Load error: %s",error); return; } new nick[33], medale[4], i = 0; len = formatex(gData, charsmax(gData), "<body bgcolor=#000000><font color=#FFB000><pre>%2s %-22.22s %6s %8s %8s %5s^n", "#", "Nick", nazwy[0], nazwy[1], nazwy[2], "Suma"); while(SQL_MoreResults(query)) { i++; SQL_ReadResult(query, 1, nick, 32); medale[0] = SQL_ReadResult(query, 3); medale[1] = SQL_ReadResult(query, 4); medale[2] = SQL_ReadResult(query, 5); medale[3] = medale[0] + medale[1] + medale[2]; replace_all(nick, charsmax(nick), "<", "["); replace_all(nick, charsmax(nick), ">", "]"); len += formatex(gData[len], charsmax(gData) - len, "%2d %-22.22s %6d %8d %8d %5d^n", i, nick, medale[0], medale[1], medale[2], medale[3]); SQL_NextRow(query); } } public MsgIntermission() { new name[33], players[32], best[3], num, id, fragi; get_players(players, num, "h"); if(num < get_pcvar_num(gCvary[MIMPLR])) return PLUGIN_CONTINUE; new const typ[][] = { "Zloty", "Srebrny", "Brazowy" } for(new i = 0; i < 3; i++) { for(new j = 0; j < num; j++) { id = players[j]; if(!is_user_connected(id) || best[0] == id || best[1] == id) continue; if(get_user_frags(id) > fragi) { fragi = get_user_frags(id); best[i] = id; } } fragi = 0; if(best[i]) { gZdobyl[1+i][best[i]]++; get_user_name(best[i], name, 32); ColorChat(0, TEAM_COLOR, "[Medale] %s^x03 -^x04 %s Medal -^x04 %i^x03 Miejsce", name, typ[i], i+1); } } return PLUGIN_CONTINUE; }
#8
Napisano 28.10.2017 18:30
Najprawdopodobniej tutaj
gCvary[HOST] = register_cvar("medale_hostname", ""); gCvary[PASS] = register_cvar("medale_password", ""); gCvary[USER] = register_cvar("medale_username", ""); gCvary[DBNAME] = register_cvar("medale_dbname", "");
Baza jest na takim samym hostingu co serwer?
Zawsze służę pomocą, pomogę na tyle ile jestem wstanie
Poradnik do instalacji AmxBans: https://www.youtube....h?v=fYq5iKQhVIM
Link do lekkiej "modyfikacji" AmxBans: https://amxx.pl/topi...ndpost&p=733955
#9
Napisano 28.10.2017 18:36
Najprawdopodobniej tutaj
gCvary[HOST] = register_cvar("medale_Nazwa Hosta", ""); gCvary[PASS] = register_cvar("medale_Hasło", ""); gCvary[USER] = register_cvar("medale_username", ""); gCvary[DBNAME] = register_cvar("medale_dbname", "");Baza jest na takim samym hostingu co serwer?
W tych miejscach co tam pozmieniałem tak, sorki ale nigdy nic nie robiłem w ten sposób
gCvary[HOST] = register_cvar("medale_tu zmienic", "");
czy
gCvary[HOST] = register_cvar("medale_hostname", "tu dodac");
A co to jest to
gCvary[MIMPLR] = register_cvar("medale_minp", "1");
Użytkownik VictoRy edytował ten post 28.10.2017 18:50
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych