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
NewCodMod jest CoDMod'em napisanym od nowa, majac za cel opytmalizacje oraz latwosc kodu. Byl on pisany na moj serwer, aczkolwiek zdecydowalem sie go udostepnic. Cóz innowacyjnego jest w tej modyfikacji? :
- Klasy sa zalezne od druzyny, CT to Amerykanie a TT to Terrorysci.
- W standardzie dostepne jest 2x7 + 1 klas:
* Allah [ Terrorysci ][ Premium ]
* Czarnoskóry Wojownik [ Terrorysci ]
* Osama [ Terrorysci ][ Premium ]
* Samobójca [ Terrorysci ]
* Somalijczyk [ Terrorysci ]
* Talib [ Terrorysci ]
* Wyznawca Islamu [ Terrorysci ]
* Barrack Obama [ Amerykanie ][ Premium ]
* General [ Amerykanie ][ Premium ]
* Komandos [ Amerykanie ]
* Lotnik [ Amerykanie ]
* Porucznik [ Amerykanie ]
* Saper [ Amerykanie ]
* SEAL [ Amerykanie ]
* Szpieg [ Obie druzyny ]
oraz 5 perkow:
* Męczennik
* Martwa Cisza
* Przeciwodłamkowy
* Szybkie ręce
* Podgladacz
- Nowe dzwięki
- Własny plik konfiguracyjni ini.
- Zapis nVault ( niedługo także MySQL )
- Modyfikacja będzie supportowana ( a wiec wszelkie propozycje mile widziane )
- Łatwiejsze tworzenie nowych klas/perków
- Czytelny kod, który zmodyfikuje nawet laik.
; Menu wybrania klas
say /klasa
say_team /klasa
; Menu z opisem klas
say /klasy
say_team /klasy
; Opis aktualnego perk'u
say /perk
say_team /perk
say /przedmiot
say_team /przedmiot
; Menu z opisem perków
say /perki
say_team /perki
say /przedmioty
say_team /przedmioty
; Wyrzucanie perku
say /wyrzuc
say_team /wyrzuc
say /drop
say_team /drop
Spoiler
/** * Forward wykonywany przy zmianie stanu klasy * * @type forward * * @param id Index gracza * @param iClass Index klasy * @param iState Status gracza ( patrz: struktura NCodState ) */ forward ncod_classChangeState( id, iClass, NCodState: iState );
/** * Forward wykonywany przy zmianie stanu perku * * @type forward * * @param id Index gracza * @param iClass Index perku * @param iState Status perku ( patrz: struktura NCodState ) */ forward ncod_perkChangeState( id, iPerk, NCodState: iState );
/** * Forward wykonywany przy odswiezaniu HUD'a * * @type forward * * @param id Index gracza * @param &szText Tresc HUD'a */ forward ncod_hudRefresh( id, szText[ 128 ] );
Spoiler
/** * Rejestruje nowa klase * * @type native * * @param szName Nazwa klasy * @param szDescription Opis klasy * @param iHealth Poczatkowe zycie klasy * @param iStrength Poczatkowa wytrzymalosc klasy * @param iInteligence Poczatkowa inteligencja klasy * @param iCondition Poczatkowa kondycja klasy * @param iWeapons Bronie klasy ( bitsum'a ) * @param iTeam Druzyna gracza ( wartosc opcjonalna ) * @param iAccessFlags Flagi potrzebne do uzywania klasy ( wartosc opcjonalna ) * * @return Zwraca id klasy badz -1 jezeli rejestracja sie nie powiedzie */ native ncod_registerClass( const szName[ ], const szDescription[ ], const iHealth, const iStrength, const iInteligence, const iCondition, const iWeapons, const NCodTeams: iTeam = NCODTEAM_ALL, const iAccessFlags = 0 );
/** * Rejestruje nowy perk * * @type native * * @param szName Nazwa perku * @param szDescription Opis perku * @param iAccessFlags Flagi potrzebne do uzywania perku ( wartosc opcjonalna ) * * @return Zwraca id perku badz -1 jezeli rejestracja sie nie powiedzie */ native ncod_registerPerk( const szName[ ], const szDescription[ ], const iAccessFlags = 0 );
/** * Pobiera wartosc statystyki * * @type native * * @param id Index gracza * @param iStatist Index statystyki ( patrz: struktura NCodStatist ) * * @return Zwraca wartosc statystyki */ native ncod_getUserStatist( id, NCodStatist: iStatist );
/** * Ustawia wartosc statystyki * * @type native * * @param id Index gracza * @param iStatist Index statystyki ( patrz: struktura NCodStatist ) * @param iValue Wartosc do ustawienia * * @return Zwraca 0 jezeli sie powiedzie, badz -1 jezeli sie nie powiedzie */ native ncod_setUserStatist( id, NCodStatist: iStatist, iValue );
/** * Dodaje wartosc do statystyki * * @type define * * @param id Index gracza * @param iStatist Index statystyki ( patrz: struktura NCodStatist ) * @param iValue Wartosc do ustawienia * * @return Zwraca 0 jezeli sie powiedzie, badz -1 jezeli sie nie powiedzie */ #define ncod_addToUserStatist(%1,%2,%3) ncod_setUserStatist(%1,%2,ncod_getUserStatist(%1,%2)+%3)
/** * Pobiera wartosc obrazen od inteligencji * * @type define * * @param id Index gracza * @param fMultiplier Mnoznik obrazen od inteligencjii * * @return Zwraca ilosc obrazen z inteligencjii wd. podanego mnoznika */ #define ncod_getInteligenceDamage(%1,%2) float( ncod_getUserStatist(%1,NCODSTATIST_INTELLIGENCE)*%2 )
/** * Pobiera wartosc obrazen od inteligencji * * @type native * * @param id Index gracza * @param iType Typ wysylaniej wiadomosci ( patrz: struktura NCodInfoColor ) * @param iColor Kolor wysylanej wiadomosci ( patrz: struktura NCodInfoColor ) * @param szMessage Tresc wiadomosci * * @return Zwraca 0 jezeli sie powiedzie, badz -1 jezeli sie nie powiedzie */ native ncod_printInformation( id, NCodInfoType: iType, NCodInfoColor: iColor, const szMessage[ ], any:... );
/** * Rejetruje mozliwosc edycji NewCodMod HUD w pluginie * * @type native * * @return void * * @note: Powinno zostac wykonane nie pozniej niz w forwardz'ie plugin_init */ native ncod_registerHUDAddon( );
* Martwa Cisza - item rodem z Call of Duty
* Męczennik - tak samo, mam go u siebie od dosyć dawna, i proponuje zmienić opis na "Po smierci zostawiasz na ziemi odbezpieczony granat"
Po za tym oczywiście plusik za nakład pracy i wolnym czasie sprawdzę i podam sugestie
Angel of Death" data-cid="527859" data-time="1364149084">
item rodem z Call of Duty
Bo to w końcu jest Call of Duty Mod ( w zamyśle, bez żadnych paranoi typu: żółwie ninja, etc.. ) Jak będę miał to dopisze resztę perków dostępnych w MW2/MW3, zmodyfikuje radio o oryginalne CoD'owskie dzwięki i zaimplementuje paczki z sprzętem.
Z tymi strukturami, to nie powiem, nieźle to zrobiłeś, niby u siebie na diablo coś podobnego mam, ale nie aż tak, choć ostatnio trochę nad tym myślałem. A co do pliku konfiguracyjnego, to opłaca się go robić dla kilku ustawień? Nie lepiej zrobić zwykłe cvary?
0
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
Z tymi strukturami, to nie powiem, nieźle to zrobiłeś, niby u siebie na diablo coś podobnego mam, ale nie aż tak, choć ostatnio trochę nad tym myślałem.
Dzięki. Kod docelowo miał być czytelny i łatwy w edycji, wydaje mi się że dzięki zastosowaniu właśnie pseudo-OOP taki jest
A co do pliku konfiguracyjnego, to opłaca się go robić dla kilku ustawień? Nie lepiej zrobić zwykłe cvary?
To z czystego mojego lenistwa. Jak się przyjrzysz to zobaczysz że wystarczą góra dwie linijki by już mieć załadowane dane do struktury ( __packData ). No i plik ładniej wygląda
Widać że dużo pracy poświęciłeś bo silnik jest uproszczony co jest wielkim plusem ale kod zupełnie się różni od starego i naprzykład chce dodać multijump i mam problem.
Zapewne trzeba dodać do silnika pare lini kodu by następnie dodać do klasy skróconą komende.
Przynajmniej mi nie zawsze działa apteczki.
W kodzie silnika nie widzę ograniczeń klas ani perków więc można dodać więcej niż 10 klas?
Sprawdzanie, czy gracz jest botem, lepiej chyba dać tylko jeden raz przy wejściu gracza, no i hud wyświetlany w thinku? Nie lepiej dać to jednak w tasku, ewentualnie w tworzonym przez plugin oddzielnym thinku? Do tego obojętnie w jaki sposób jest to robione, ja bym raczej jednak wiadomości hud nie odświeżał częściej jak raz na 2 sekundy.
MarWit (25.03.2013 19:17):
Jest w thinku, aczkolwiek wiadomość jest odświeżana co sekundę ( obczaj pierwsze linijki think'u )
sebul (25.03.2013 19:25):
No obczajałem i tam masz odświeżane raz na 1 sekundę
MarWit (25.03.2013 23:23):
I tyle chyba wystarczy, nie ? Zawsze ew. można to zmienić ( jako np. nowy wpis w pliku *.ini )
0
Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo
i naprzykład chce dodać multijump i mam problem. Zapewne trzeba dodać do silnika pare lini kodu by następnie dodać do klasy skróconą komende.
Multijump robisz tak jak w starym codz'ie, chyba ze chcesz jako funkcje lub jako umiejetnosc klasy, wtedy dopisujesz do stuktury nową umiejętność oraz kod odpowiedzialnym za nią ( tu multijump ) i gotowe. ( tzw. mozesz uzywac komendy ncod_setUserStatist bądź w ncod_registerClass() )
W kodzie silnika nie widzę ograniczeń klas ani perków więc można dodać więcej niż 10 klas?
Klas i perków możesz dodać ile tylko chcesz ( a dokładniej do póki ci się ram nie skończy )
A jak zrobić kata klase zeby była tylko w tt albo CT??
Przy tworzeniu klasy ( ncod_registerClass() ) jako przedostatni argument ustawiasz kolejno: NCODTEAM_TERRORIST dla TT, NCODTEAM_AMERICA dla CT, bądź NCODTEAM_ALL dla obu drużyn.
Coś ci nie wypalił ten cod, z czystej paczki nic nie działa, sypie error logami na każdej klasie, przykład:
Spoiler
L 05/15/2013 - 17:32:09: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:09: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:09: Unhandled dynamic native error
L 05/15/2013 - 17:32:09: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:09: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:09: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:10: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:10: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:10: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:10: Unhandled dynamic native error
L 05/15/2013 - 17:32:10: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:10: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:10: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:11: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:11: Unhandled dynamic native error
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:11: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:11: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:11: Unhandled dynamic native error
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:11: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:11: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:11: Unhandled dynamic native error
L 05/15/2013 - 17:32:11: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:11: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:11: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:12: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:12: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:12: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:12: Unhandled dynamic native error
L 05/15/2013 - 17:32:12: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:12: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:12: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
L 05/15/2013 - 17:32:12: [AMXX] Displaying debug trace (plugin "newcodmod_engine.amxx")
L 05/15/2013 - 17:32:12: [AMXX] Run time error 4: index out of bounds
L 05/15/2013 - 17:32:12: [AMXX] [0] NewCodMod_czysty.sma::nativeGetUserStatist (line 1228)
L 05/15/2013 - 17:32:12: Unhandled dynamic native error
L 05/15/2013 - 17:32:12: [AMXX] Displaying debug trace (plugin "ncod_General.amxx")
L 05/15/2013 - 17:32:12: [AMXX] Run time error 10: native error (native "ncod_getUserStatist")
L 05/15/2013 - 17:32:12: [AMXX] [0] ncod_General.sma::ncod_classChangeState (line 46)
Spoiler
L 05/15/2013 - 18:06:44: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:44: [AMXX] Displaying debug trace (plugin "ncod_BarrackObama.amxx")
L 05/15/2013 - 18:06:44: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:44: [AMXX] [0] ncod_BarrackObama.sma::fwTouch (line 153)
L 05/15/2013 - 18:06:44: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:44: [AMXX] Displaying debug trace (plugin "ncod_Lotnik.amxx")
L 05/15/2013 - 18:06:44: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:44: [AMXX] [0] ncod_Lotnik.sma::fwTouch (line 94)
L 05/15/2013 - 18:06:44: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:44: [AMXX] Displaying debug trace (plugin "ncod_Porucznik.amxx")
L 05/15/2013 - 18:06:44: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:44: [AMXX] [0] ncod_Porucznik.sma::fwTouch (line 131)
L 05/15/2013 - 18:06:50: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:50: [AMXX] Displaying debug trace (plugin "ncod_BarrackObama.amxx")
L 05/15/2013 - 18:06:50: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:50: [AMXX] [0] ncod_BarrackObama.sma::fwTouch (line 153)
L 05/15/2013 - 18:06:50: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:50: [AMXX] Displaying debug trace (plugin "ncod_Lotnik.amxx")
L 05/15/2013 - 18:06:50: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:50: [AMXX] [0] ncod_Lotnik.sma::fwTouch (line 94)
L 05/15/2013 - 18:06:50: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:50: [AMXX] Displaying debug trace (plugin "ncod_Porucznik.amxx")
L 05/15/2013 - 18:06:50: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:50: [AMXX] [0] ncod_Porucznik.sma::fwTouch (line 131)
L 05/15/2013 - 18:06:53: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:53: [AMXX] Displaying debug trace (plugin "ncod_BarrackObama.amxx")
L 05/15/2013 - 18:06:53: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:53: [AMXX] [0] ncod_BarrackObama.sma::fwTouch (line 153)
L 05/15/2013 - 18:06:53: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:53: [AMXX] Displaying debug trace (plugin "ncod_Lotnik.amxx")
L 05/15/2013 - 18:06:53: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:53: [AMXX] [0] ncod_Lotnik.sma::fwTouch (line 94)
L 05/15/2013 - 18:06:53: [FAKEMETA] Invalid entity
L 05/15/2013 - 18:06:53: [AMXX] Displaying debug trace (plugin "ncod_Porucznik.amxx")
L 05/15/2013 - 18:06:53: [AMXX] Run time error 10: native error (native "pev")
L 05/15/2013 - 18:06:53: [AMXX] [0] ncod_Porucznik.sma::fwTouch (line 131)
Lotnik wbija się w każdą ścianę/przeszkodę i nie może się ruszać, nie chce mi się dalej sprawdzać bo żadnej z tych klas nie będę miał na serwerze no ale aż takie błędy w czystej paczce? Ciekawe co jeszcze nie działa
Użytkownik playaz44 edytował ten post 15.05.2013 17:13
0
Użytkowniku! Zanim napiszesz wiadomość wiedz, że:
W odpowiedzi na ten status, przejrzałem kilka ostatnich Twoich postów i dodałem Ci kolejne 3 punkty ostrzeżeń. Mam nadzieję, że pomogłem.