AMXBans by bartek124 - propozycje
bartek124
21.01.2009
W związku z tym, że projekt AMXBans 5.0 został porzucony ponad 2 lata temu, myślę, że czas najwyższy coś z tym zrobić.
Mam w swoich planach kontynuację tego projektu, ba, nawet zacząłem go pisać .
Chciałbym, żeby to wypaliło, ale nic nie mogę obiecać, ponieważ jak będzie z czasem, poza tym mam rozpoczęte pare projektów + szkoła.
Poza tym pisaniem interfejsu WWW zajmuje się ja, jednak jestem laikiem w pluginach AMXX, a amxban po tym kątem też potrzebuje zmian, więc nie wiem jak całość wypali...
Zakładam ten temat, aby wiedzieć mniej więcej, czego oczekujecie od AMXBans, aby się tym kierować.
Wolne chwile poświęcam na dopracowywanie rdzenia, który już jest praktycznie dokończony.
Co nowego będzie ode mnie?
autorski (duuużo lżejszy) system skórek
przejrzysty kod
optymalizacja pod kątem zapytań do bazy i zbędnego kodu
wykorzystanie nowych wersji klas
bezpieczniejsza całość
mniejsze poprawki
Praktycznie cały kod mam zamiar napisać od podstaw, pomyślałem, że tak będzie najlepiej.
Z tej okazji chciałbym Was spytać, co byście chcieli widzieć, a czego nie, co zmienić w nowym AMXBans (jeśli wyjdzie, czego bardzo pragnę)?
Pozdrawiam
Gość__* 22.01.2009
Mysliwy^^
22.01.2009
bartek124
22.01.2009
Co do dodatków, w sumie system pluginów można jakiś skombinować, tylko na razie nie wiem na jakiej podstawie ma on działać.
Co do 5 ostatnich banów na forum, pewnie zostaną wydane odpowiednie wtyczki do różnych cms'ow/forów, ale to plany
Wujek
24.01.2009
Tutaj przykład...
# #-----[ FIND IN templates/style/index_body.tpl ]------------------------------ # <!-- END switch_enable_board_msg_index --> # #-----[ AFTER, ADD ]------------------------------ # <?php $db_host = 'localhost'; $db_name = 'nazwa_bazy_danych'; $db_user = 'nazwa_usera_bazy danych'; $db_pass = 'haslo_usera_bazy_danych'; $db = mysql_connect($db_host, $db_user, $db_pass) or die('BŁĄD - nie można połączyć się z serwerem.'); mysql_select_db($db_name, $db) or die('BŁĄD - nie można wybrać bazy danych.'); $sql = "SELECT `player_nick` , `player_ip` , `ban_reason` , `admin_nick` , `ban_length` FROM `amx_bans` ORDER BY `bid` DESC LIMIT 0 , 5;"; echo "<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline">"; echo "<tr>"; echo "<th width="100%" class="thTop" nowrap="nowrap">Ostatnie bany na serwerze</th>"; echo "</tr>"; echo '</table>'; echo "<center>"; echo '<table border="3">'; echo "<tr>"; echo "<td class="row2" valign="middle" width="20%" align="center"><span class="gensmall">[b]Gracz[/b]</span></td>" . ' '; echo "<td class="row2" valign="middle" width="10%" align="center"><span class="gensmall">[b]IP Gracza[/b]</span></td>" . ' '; echo "<td class="row2" valign="middle" width="10%" align="center"><span class="gensmall">[b]Czas (w minutach)[/b]</span></td>" . ' '; echo "<td class="row2" valign="middle" width="25%" align="center"><span class="gensmall">[b]Powód[/b]</span></td>" . ' '; echo "<td class="row2" valign="middle" width="25%" align="center"><span class="gensmall">[b]Admin[/b]</span></td>" . ' '; echo "</tr>"; if($wynik = mysql_query($sql)) { while($dane = mysql_fetch_array($wynik)) { echo '<tr>'; echo '<td>'; echo $dane['player_nick'] . ' '; echo '</td>'; echo '<td>'; echo $dane['player_ip'] . ' '; echo '</td>'; echo '<td>'; echo $dane['ban_length'] . ' '; echo '</td>'; echo '<td>'; echo $dane['ban_reason'] . ' '; echo '</td>'; echo '<td>'; echo $dane['admin_nick'] . ' '; echo '</td>'; echo '</tr>'; } mysql_free_result($wynik); } echo '</table>'; echo "</center>"; mysql_close($db); ?> # #-----[ SAVE & CLOSE templates/style/index_body.tpl ]------------------------------ #
berix
25.01.2009
np. http://bany16.g4g.pl...ls.php?bid=7424
bardzo przydatna rzecz
bartek124
02.02.2009
PS Na feriach mam zamiar się za to zabrać - rdzeń ukończony, dziś zrobiłem system logowania
Myślę, że coś z tego będzie
d3f3nd3r
02.02.2009
Czytałeś: http://amxx.pl/viewt...ghlight=amxbans
acha i projekt też prubują "wskrzesić" niemcy : www.amxbans.de
bartek124
03.02.2009
Życze powodzenia niemcom, może podpatrze od nich parę pomysłów .
Co do pomocy, to owszem, przydałby się szpec od pawna, bo z tym u mnie cieniutko, ale to dopiero po napisaniu skryptu web
Do PHP też by się ktoś przydał
Seba 03.02.2009
A co niby lżejszego od smartów masz ?autorski (duuużo lżejszy) system skórek
A co tam nie przejrzystego masz ?przejrzysty kod
Tu jest wszystko ok, ew. można cachowanie zrobić, ale to bezsens.optymalizacja pod kątem zapytań do bazy i zbędnego kodu
A co tu niebezpiecznego ?bezpieczniejsza całość
Powodzenia.
disiz`
06.02.2009
ale te demka... nie mam pomysłu jak je załączać do bana.
jeśli to ma działać automatycznie:
1. skrypt w perlu/php odpalany cronem (bo dema pakują się po czasie).
Rozbijasz nim nazwy spakowanych dem (data, godzina) porównujesz z wpisami w bazie (z różnicą dajmy na to 20 min) - czas mógłby być deklarowany, zależnie od tego ile trwa runda.
2. bez skryptu w shellu.
Podczas dawania bana sprawdzasz aktualnie nagrywane demo (nie spakowane. *.dem), bierzesz jego nazwę i dajesz wpis w bazie z końcówką *.zip :>
Tyle że demo będzie do ściągnięcia dopiero po spakowaniu (lipa jeśli np masz dema pakowane co 24 h) - możesz przy tym sprawdzać czy demo już jest spakowane i zależnei od tego wyświetlać link do niego / lub nie wyświetlać.
banał, dasz radę ;D
bartek124
06.02.2009
A co niby lżejszego od smartów masz ?
Hmm, może się źle wyraziłem.
Po prostu smarty to "kombajn". Posiada wiele zbędnych rzeczy, których nie używa AMXBans. Co lżejszego? Ja zrobiłem własny system templaków, czy lżejszy to nie wiem.
Kodzik i strukturę uporządkuję, żeby wszystko ładnie wyglądało i nie sprawiało trudności w modyfikacji nawet laikowi.A co tam nie przejrzystego masz ?
Przystosowanie do register_globals off, inne funkcje zabezpieczające przesyłane dane, być może gdzieś się znajdą niezadeklarowane zmienne lub otwarte tablice asocjacyjne .A co tu niebezpiecznego ?
jeśli to ma działać automatycznie:
1. skrypt w perlu/php odpalany cronem (bo dema pakują się po czasie).
Rozbijasz nim nazwy spakowanych dem (data, godzina) porównujesz z wpisami w bazie (z różnicą dajmy na to 20 min) - czas mógłby być deklarowany, zależnie od tego ile trwa runda.
2. bez skryptu w shellu.
Podczas dawania bana sprawdzasz aktualnie nagrywane demo (nie spakowane. *.dem), bierzesz jego nazwę i dajesz wpis w bazie z końcówką *.zip :>
Tyle że demo będzie do ściągnięcia dopiero po spakowaniu (lipa jeśli np masz dema pakowane co 24 h) - możesz przy tym sprawdzać czy demo już jest spakowane i zależnei od tego wyświetlać link do niego / lub nie wyświetlać.
W tym wszystkim nie ująłeś tego, że do działania potrzebne jest też HLTV, jak się nie mylę.
disiz`
06.02.2009
Przy tym to już w ogóle problemu nie widzę - 1 pole w tabeli i 1 więcej pole do wrzutki dema ;]
Ja myślałem raczej o automatyzacji tego jeśli hltv chodzi 24h.
bartek124
07.02.2009
Małe demo (detale po kliknięciu na ban).
Jak już mówiłem, tworzę to w wolnych chwilach, więc też wolno idzie .
bartek124
07.02.2009
A tak serio, po prostu chce widzieć czy wszystko działa, poza tym tworząc coś nie będę sie babrał kolorkami .
To dopiero prototyp
Więc wybaczcie brak pl znaków, kolory oraz inny wygląd w róznych przeglądarkach. To wszystko są drugorzędne sprawy