Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

Linux`

Użytkownik
  • Postów

    210
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    22

Treść opublikowana przez Linux`

  1. Tak jak wyzej, z darmowych polecam open game panel. Kiedyś gdy bawiłem się w swoje serwery to świetnie się spisywał.
  2. new account = GetEntProp(attacker, Prop_Send, "m_iAccount"); zamien na new account = GetEntData(attacker, FindSendPropOffs("CCSPlayer", "m_iAccount")); oraz SetEntProp(attacker, Prop_Send, "m_iAccount", account); SetEntProp(attacker, Prop_Send, "m_iAccount", max); na SetEntData(attacker, FindSendPropOffs("CCSPlayer", "m_iAccount"), account); SetEntData(attacker, FindSendPropOffs("CCSPlayer", "m_iAccount"), max);
  3. Hosting nie ma znaczenia, wystarczy by była to baza mysql z odblokowanymi portami dla serwera.
  4. Nie podłączyłeś modyfikacji do bazy mysql. Przeczytaj instrukcje instalacji silnika, tam jest wszystko napisane.
  5. Jaka dystrybucja linuxa? To samo pytanie dla autora. Jeszcze można spróbować usunąć całkowicie steamcmd, wszystkie z nim powiązane foldery itp i na nowo go wrzucić i spróbować sprawdzić spójność plików.
  6. Plik .smx to przekompilowany plik .sp. Musisz uzyć kompilatora, lokalnego lub www. https://amxx.pl/topic/58151-jak-instalować-pluginy-sourcemod/
  7. Dzieje sie tak na konkretnej mapie czy na wszystkich? Jak na wszystkich to ktorys z pluginow powoduje czyszczenie ekwipunku, jak na jednej to jest zrobione autoczyszczenie ekwipunku przy respawnie.
  8. Mam kilka porad które bym wykonał. 1. Sprawdz scieżkę do serwerów, jeżeli foldery posiadają jakąś niestandardową nazwe (_, ę, ą itp) to ją usun dla testu. 2. Spróbuj przenieść jeden serwer do innej scieżki a następnie spróbuj zaaktualizować i włączyć. 3. Dla testu zmień port serwera i spróbuj uruchomic. Jeszcze możesz podesłać swoją linie startową serwerów.
  9. Z tego co widzę, dziś kilka osób ma już ten problem więc obstawiałbym na błąd spowodowany aktualizacja valve? Spróbuj reinstall serwera.
  10. Zobacz status pluginu, komenda sm plugins list. Jeżeli wlaczony poprawnie to po prostu nieprzyznales graczom odpowiednich uprawnien. Lub jeżeli nie, ustaw debugowanie i podeslij logi.
  11. To sie do mnie odezwij. Podobno pisales ale wiadomosci nie ma . . :)
  12. Bardzo latwo to przerobic na silnik source. Jak napiszesz zlecenie platne to sie podejme.
  13. W tym prostym poradniku opisze w jaki sposób dodamy możliwość podnoszenia wszystkich broni dla wybranej przez nasz klasy bądź itemu. Na początku musimy mieć stworzoną naszą klasę lub item, następnie otwieramy nasz silnik modyfikacji i szukamy: public Action:WeaponCanUse(client, weapon) { if(!GetConVarInt(cvar_blokada_broni)) return Plugin_Continue; if(!IsValidClient(client) || !IsPlayerAlive(client)) return Plugin_Continue; teraz pod tym musimy dodać omijanie funkcji dla wybranego warunku, więc dla klasy dodajemy: if(StrEqual(nazwy_klas[klasa_gracza[client]], "Nazwa Klasy")) return Plugin_Continue; bądź itemu: if(StrEqual(nazwy_itemow[item_gracza[client]], "Nazwa Itemu")) return Plugin_Continue;
  14. W tym prostym poradniku opisze w jaki sposób dodamy item znany z amxx, nanosuit. Tak więc na początku tworzymy prosty item, bez żadnych umiejętności, czyli: #include <sourcemod> #include <sdkhooks> #include <sdktools> #include <cstrike> #include <codmod> new const String:nazwa[] = "Nanosuit"; new const String:opis[] = "Posiadasz odpornosc na umiejetnosci wszystkich klas oraz itemow"; public OnPluginStart() { CreateConVar(nazwa, "1.0", "Linux`"); cod_register_item(nazwa, opis, 0, 0); } Następnie musimy otworzyć wszystkie nasze klasy bądż itemy (w zależności od tego na co chcemy mieć odporność) i dodać odpowiedni warunek, nad wykonaniem wybranej funkcji: if(cod_get_user_item(ofiara) == cod_get_itemid("Nanosuit")) oczywiście zamiast indexu (ofiara) wpisujemy id naszej ofiary a następnie blokujemy funkcje (return, continue, return Plugin_Continue), wszystko w zależności od tego gdzie dodajemy warunek. Niżej przykładowa klasa Komandos z odpornością na item: #include <sourcemod> #include <sdkhooks> #include <sdktools> #include <cstrike> #include <codmod> new const String:nazwa[] = "Komandos"; new const String:opis[] = "Posiada natychmiastowe zabicie z noza (+ppm)"; new const String:bronie[] = "#weapon_deagle"; new const inteligencja = 0; new const zdrowie = 40; new const obrazenia = 0; new const wytrzymalosc = 0; new const kondycja = 60; new bool:ma_klase[65]; public OnPluginStart() { CreateConVar(nazwa, "1.0", "Linux`"); cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, obrazenia, wytrzymalosc, kondycja); } public OnClientPutInServer(client) { SDKHook(client, SDKHook_OnTakeDamage, OnTakeDamage); } public OnClientDisconnect(client) { SDKUnhook(client, SDKHook_OnTakeDamage, OnTakeDamage); } public cod_class_enabled(client) { ma_klase[client] = true; } public cod_class_disabled(client) { ma_klase[client] = false; } public Action:OnTakeDamage(victim, &attacker, &inflictor, &Float:damage, &damagetype) { if(!IsValidClient(victim) || !IsValidClient(attacker)) return Plugin_Continue; if(!ma_klase[attacker] || GetClientTeam(victim) == GetClientTeam(attacker)) return Plugin_Continue; if(cod_get_user_item(victim) == cod_get_itemid("Nanosuit")) return Plugin_Continue; new String:weapon[32]; GetClientWeapon(attacker, weapon, sizeof(weapon)); if(StrEqual(weapon, "weapon_knife") && damagetype & DMG_SLASH && GetClientButtons(attacker) & IN_ATTACK2) { new obrazenia_gracza = GetClientHealth(victim)+1; cod_inflict_damage(victim, attacker, 0, obrazenia_gracza); } return Plugin_Changed; } Oczywiście tym sposobem, możemy również dodać odporność na rakiety, miny itp. A w wypadku odporności na klasę funkcja będzie wyglądać tak: if(cod_get_user_class(ofiara) == cod_get_classid("Nazwa Klasy")) Silnik wraz z paczką modyfikacji, można nabyć wyłącznie poprzez kontakt ze mną. Więcej o tym w sygnaturze.
  15. W tym bardzo prostym poradniku postaram się opisać jak w prosty sposób możemy rejestrować klasy bądź itemy w wybranej przez nas kolejności. Potrzebne jest to nam wtedy gdybyśmy chcieli by np klasy wyświetlały się w menu wedle naszego widzi misie. No więc na początek musimy otworzyć naszą klasę lub item a następnie szukamy: public OnPluginStart() i zamieniamy, dla klasy: cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, obrazenia, wytrzymalosc, kondycja); bądź itemu: cod_register_item(nazwa, opis, 0, 0); na: CreateTimer(0.1, RegisterStart, 0); i niżej dodajemy, dla klasy: public Action:RegisterStart(Handle:timer) { cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, obrazenia, wytrzymalosc, kondycja); } bądź itemu: public Action:RegisterStart(Handle:timer) { cod_register_item(nazwa, opis, 0, 0); } i to na tyle. Od teraz nasza klasa lub item będzie rejestrowany wedle naszej kolejności ustalanej czasowo. Następny czas tasku itemu lub klasy, w zależności od tego co rejestrowaliśmy ustalamy o 0.1 większy. By ten sposób działał poprawnie musimy tym sposobem zarejestrować wszystkie itemy bądź klasy. Silnik wraz z paczką modyfikacji, można nabyć wyłącznie poprzez kontakt ze mną. Więcej o tym w sygnaturze.
  16. Otóż zauważyłem, że po wrzuceniu kodu znaczniki typu <, = zostają zamienione na takie coś &lt; Przydało by się to poprawić.
  17. Przeciez masz już wytłumaczone jak to zrobić, więc czego jeszcze chcesz? Jak masz z czymś problem to pokaż co napisałeś to ci pomogę. Jak na razie widzę tylko, że usiadles jak taka dupa w krzakach i czekasz aż ktoś zrobi to za ciebie, ogarnij się człowieku czasy przedszkola dawno minęły.
  18. W tym prostym poradniku opisze w jaki sposób tworzyć nowe klasy oraz itemy do nowego coda. 1. Tworzenie Klas 2. Tworzenie Itemów Powyższy kod wystarczy skopiować do notatnika a następnie przekompilować i wrzucić do plugins by cieszyć się nową klasą lub itemem. Silnik wraz z paczką modyfikacji, można nabyć wyłącznie poprzez kontakt ze mną. Więcej o tym w sygnaturze.
  19. Posiadam na sprzedaż paczkę nowego coda do csgo. W paczce znajduję się, razem 60 pluginów: - Codmod silnik modyfikacji - Codmod include modyfikacji - Codmod admin cmd - Codmod cod menu - Codmod cod sklep - Codmod wymiana itemów - Codmod oddawanie itemów - Codmod klasy, 12 sztuk - Codmod itemy, 42 sztuki Sposób instalacji paczki oraz lista silnikowych cvarów: - Wrzucić paczkę do folderu csgo/ a nastepnie dodać do sourcemod/configs/databases.cfg: "codmod_lvl_sql" { "driver" "mysql" "host" "hosting" "database" "database" "user" "user" "pass" "pass" } - Cod_max_level 200 // maksymalny limit poziomu: 0 - wyl - Cod_level_ratio 35 // predkosc zdobywania doswiadczenia: im mniej tym szybciej - Cod_max_intelligence 30 // limit inteligencji w statystykach - Cod_max_health 50 // limit zdrowia w statystykach - Cod_max_damage 40 // limit obrazen w statystykach - Cod_max_stamina 60 // limit wytrzymalosci w statystykach - Cod_max_trim 80 // limit kondycji w statystykach - Cod_points_level 2 // co ile poziomow punkt dla statystyk gracza - Cod_xp_killhs 15 // doswiadczenie za zabojstwo w hs: 0 - wyl - Cod_xp_kill 10 // doswiadczenie za zabojstwo: 0 - wyl - Cod_xp_damage 1 // ilosc xp za 20 obrazen: 0 - wyl - Cod_xp_winround 25 // doswiadczenie za wygrana runde: 0 - wyl - Cod_xp_objectives 50 // doswiadczenie za wykonane cele mapy: 0 - wyl - Cod_weapons_blocking 1 // czy blokowac podnoszenie broni: 0 - nie, 1 - tak - Cod_time_save 30 // czas, co ktory bedzie nadpisywac dane: 0 - wyl - Cod_type_save 1 // na co zapisywac dane: 0 - nick, 1 - steamid - Cod_item_stamina 20 // co ile odejmowac wytrzymalosc itemu podczas smierci: 0 - wyl - Cod_item_max_stamina 100 // maksymalna wytrzymalosc itemu: 0 - wyl Coś o silniku: Silnik jest wierną kopią nowego coda z amxx. W środku znajduję się 18 cvarów dzięki którym możemy zmieniać ustawienia modyfikacji w dowolny przez nas sposób bez konieczności ponownej kompilacji pluginu. Klasy, itemy oraz inne dodatki zostały rozbite na osobne pluginy, użyte do tego zostały natywy. Dzięki takiemu rozwiązaniu, osoby nawet z małym doświadczeniem z zakresu sourcemod poradzą sobie z dalszym rozwojem modyfikacji. Cały kod nowego coda został praktycznie napisany od nowa a ponadto w znacznym stopniu zoptymalizowany w porównaniu do starej wersji silnika. Coś o klasach, itemach i innych dodatkach: Klasy, itemy i inne dodatki zostały w dużo większym stopniu rozwinięte niż wyglądało to w starym codzie. W paczce znajdziemy takie moce jak: apteczki, rakiety, miny, zdalnie odpalane ładunki, beczki z chemikaliami, oślepianie wroga, wymianę i oddawanie itemów oraz wiele wiele więcej. Gdyby zaszła potrzeba wydania aktualizacji na skutek jakiś błędów, osoby które zakupią paczkę otrzymają za darmo poprawioną wersję. Wkrótce również rozpoczynam wydawanie nowej serii poradników dzięki którym będzie można rozwijać modyfikacje w dowolnie wybrany przez siebie sposób. Cena paczki: 130zł Sposób płatności: przelew Kontakt: http://steamcommunity.com/id/linux2006
  20. Bindowanie, to nie ingeracja w pliki gracza. Poza tym blokada bindów, nie występuje po stronie serwera lecz gier steam. Gry posiadają zablokowane poszczególne komendy w konsoli, które są wywoływane po stronie serwera. Tak, to będzie działać jednak wyłącznie na graczach z scrackowaną wersją gry (non steam). Niestety, nie można wywołać bindowania na graczach steam, bez zmodyfikowania ich plików gry. Jednak są sposoby na obejście tego, możesz przypisać użycie funkcji na poszczególny klawisz bądź komendę. Lub w ostateczności jeżeli musisz wymuszać określone ustawienia po stronie gracza to możesz zrobić to w ten sposób, że ustawiasz graczom do pobrania specjalnie spreparowany config serwerowy i blokujesz im wejście do drużyny, do czasu przeładowania go.
  21. Tak to napisałeś, że nie wiadomo o co chodzi. Masz na myśli umiejętność pisania pluginów? Ja tam trochę piszę :D
  22. Ty jako osoba nieletnia tego nie zrobisz, z prostej przyczyny. Nie możesz prowadzić oficjalnie działalności gospodarczej. Do czasu pełnoletności piecze nad tobą sprawują twoi opiekunki prawni i to w ich zakresie leży umieszczenie tych dochodów w swoim rozliczeniu podatkowym.
×
×
  • Dodaj nową pozycję...