Czepeel

Użytkownik
  • Zawartość

    55
  • Dołączył

  • Ostatnio

  • Wygrane dni

    7

Czepeel wygrał w ostatnim dniu 24 Czerwiec

Czepeel ma najbardziej lubianą zawartość!

Reputacja

26 Silver Elite

3 obserwujących

O Czepeel

Informacje o mnie

  • Płeć:
    Mężczyzna

Kontakt

Ostatnio na profilu byli

315 wyświetleń profilu

Ranga użytkownika

  • Legendary Eagle Master
  • Obecna ranga: Legendary Eagle Master
  1. Proszę, przetestowane działa. #include <sourcemod> #include <sdktools> ConVar g_cvSongName; char g_sSongName[256]; public Plugin myinfo = { name = "csgo_joinsound", author = "Czepeel", description = "Join sound CS:GO", url = "http://csgoplugins.ovh", }; public void OnPluginStart() { g_cvSongName = CreateConVar("sm_joinsound_file", "czepeel/nomy_cocaine.mp3", "Join sound file path."); g_cvSongName.GetString(g_sSongName, sizeof(g_sSongName)); HookConVarChange(g_cvSongName, OnConVarChanged); } public void OnConVarChanged(Handle CVar, const char[] sOldValue, const char[] sNewValue) { if (CVar == g_cvSongName) { g_cvSongName.GetString(g_sSongName, sizeof(g_sSongName)); } } public void OnMapStart() { char sBuffer[PLATFORM_MAX_PATH]; Format(sBuffer, sizeof(sBuffer), "*/%s", g_sSongName); PrecacheSound(sBuffer, true); Format(sBuffer, sizeof(sBuffer), "sound/%s", g_sSongName); AddFileToDownloadsTable(sBuffer); } public void OnClientPostAdminCheck(int iClient) { char sBuffer[PLATFORM_MAX_PATH]; Format(sBuffer, sizeof(sBuffer), "*/%s", g_sSongName); EmitSoundToClient(iClient, sBuffer); }
  2. ROZWIĄZANE

    mp_solid_teammates 0
  3. Wytłumaczę bardzo prosto bez używania profesjonalnych określeń. OpenVZ jest to współdzielenie zasobów, czyli wizualne limity, a w KVM masz zasoby i nikt Ci ich nie "zabierze". Serwer gry CS:GO potrzebuje dużej mocy obliczeniowej procesora, więc zawsze zwracaj uwagę na wysokie taktowanie per rdzeń.
  4. No to już odpowiedziałeś sobie na swoje pytanie. OpenVZ nie nadaje się do stawiania serwerów gier, tym bardziej CS:GO. Jeżeli chcesz VPS to KVM a jak nie to serwer dedykowany lub ostatecznie skorzystaj z oferty hostingu gier. Niestety innego sposobu nie ma.
  5. Posiadasz VPS OpenVZ?
  6. Tak.
  7. Musisz pokazać kod źródłowy ponieważ sprawdziłem przed chwilą u siebie i wszystko działa jak należy.
  8. Tu nie chodzi o plik mp3, a o funkcję przez jaką jest odtwarzana muzyka. Musisz plugin edytować i przerobić jego funkcję na taką: https://pastebin.com/TsuvAJvS Jeżeli miałbyś problemy to tutaj jest poradnik z krótkim omówieniem: https://youtu.be/irYm6zNouIU Wszystko głównie się opiera na podaniu poprawnej ścieżki do pliku.
  9. Moja funkcja wysłania wiadomości dla gracza. Zawiera chyba wszystkie dostępne kolory w grze, wyciągnij sobie z niej kolorki i ich kody. public void CSGO_PrintToChat(int iClient, const char[] sMsg, any ...) { char sBuffer[512]; strcopy(sBuffer, sizeof(sBuffer), sMsg); char sBuffer2[512]; VFormat(sBuffer2, sizeof(sBuffer2), sBuffer, 3); ReplaceString(sBuffer2,512,"{white}","\x01",false); ReplaceString(sBuffer2,512,"{red}","\x02",false); ReplaceString(sBuffer2,512,"{purple}","\x03",false); ReplaceString(sBuffer2,512,"{green}","\x04",false); ReplaceString(sBuffer2,512,"{lgreen}","\x05",false); ReplaceString(sBuffer2,512,"{lime}","\x06",false); ReplaceString(sBuffer2,512,"{lred}","\x07",false); ReplaceString(sBuffer2,512,"{gray}","\x08",false); ReplaceString(sBuffer2,512,"{yellow}","\x09",false); ReplaceString(sBuffer2,512,"{orange}","\x10",false); ReplaceString(sBuffer2,512,"{grayblue}","\x0A",false); ReplaceString(sBuffer2,512,"{lblue}","\x0B",false); ReplaceString(sBuffer2,512,"{blue}","\x0C",false); ReplaceString(sBuffer2,512,"{pink}","\x0E",false); ReplaceString(sBuffer2,512,"{lred2}","\x0F",false); PrintToChat(iClient, " %s", sBuffer2); }
  10. Patrząc po parametrach i cenach prawdopodobnie planujesz kupić serwer na sldc.eu - odradzam. Stawianie na takich maszynach serwerów csgo jest bardzo złym pomysłem, społeczność owej gry jest czasem bardzo złośliwa i co poniektórzy włączą Ci BlackHoling przez użycie pierwszego lepszego darmowego stresser'a. Nie dość, że osoby mieszkające poza Polska nie wejdą na twój serwer to również stracisz połączenie z siecią steam, co uniemożliwi połączenie się graczy do twojego serwera. Co do samego tematu, lepiej dołożyć te kilkadziesiąt złotych do procesora Intel co przełoży się na stabilność serwera.
  11. Umknąłem jednego if'a. Zamień w funkcji: OnPlayerRunCmd if(IsValidPlayer(client)&&GetUserFlagBits(client)&(1<<ADMFLAG_CUSTOM1)) na if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1))
  12. Dodałem usuniecie broni po spawnie, edytor na forum dubluje czasem TABy usuń nadmiar. #include <sourcemod> #include <sdktools> #include <cstrike> #include <sdkhooks> #include <scp> int g_fLastButtons[MAXPLAYERS+1]; int g_fLastFlags[MAXPLAYERS+1]; int g_iJumps[MAXPLAYERS+1]; public Plugin:myinfo = { name = "VIP Generator", author = "mastah7991", description = "Automatycznie wygenerowany VIP", version = "1.0", url = "MYGO.PL" } public OnPluginStart() { HookEvent("player_spawn", Event_PlayerSpawn); HookEvent("player_death", Event_PlayerDeath); } public OnClientPutInServer(client) { if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { char name[32]; GetClientName(client,name,31); PrintToChatAll("{green}c1.BlackSquad.eu{default}: {lightgreen}Gracz VIP{default} %s {lightgreen}wszedl na serwer",name); } } public Action:Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast) { int client = GetClientOfUserId(GetEventInt(event, "userid")); if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+20); SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+250); SetEntityGravity(client, 0.85); int iWeapon = GetPlayerWeaponSlot(client, 1); if (iWeapon > 0) { RemovePlayerItem(client, iWeapon); AcceptEntityInput(iWeapon, "Kill"); GivePlayerItem(client, "weapon_deagle"); } } } public Action:Event_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast) { int client = GetClientOfUserId(GetEventInt(event, "userid")); bool headshot = GetEventBool(event, "headshot"); if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+5); if(headshot) SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+15); if(GetEntProp(client, Prop_Send, "m_iHealth")>180) SetEntityHealth(client, 180); SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+100); if(headshot) SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+300); } } public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3], int &weapon) { if(IsValidPlayer(client)&&GetUserFlagBits(client)&(1<<ADMFLAG_CUSTOM1)) { int fCurFlags = GetEntityFlags(client); int fCurButtons = GetClientButtons(client); if (g_fLastFlags[client] & FL_ONGROUND) { if (!(fCurFlags & FL_ONGROUND) &&!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP) { g_iJumps[client]++; } } else if (fCurFlags & FL_ONGROUND) { g_iJumps[client] = 0; } else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP) { if ( 1 <= g_iJumps[client] <= 1) { g_iJumps[client]++; float vVel[3]; GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel); vVel[2] = 250.0; TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel); } } g_fLastFlags[client] = fCurFlags; g_fLastButtons[client] = fCurButtons; } } public Action:OnChatMessage(&author, Handle:recipients, String:name[], String:message[]) { if (IsValidPlayer(author) && (GetUserFlagBits(author) & ADMFLAG_CUSTOM1)) { Format(name, MAXLENGTH_NAME, "%s", name); new MaxMessageLength = MAXLENGTH_MESSAGE - strlen(name) - 5; Format(name, MaxMessageLength, "\x01[\x06C1 - VIP\x01]\x04 %s",name); return Plugin_Changed; } return Plugin_Continue; } stock bool IsValidPlayer(client) { if(client >= 1 && client <= MaxClients && IsClientConnected(client) && !IsFakeClient(client) && IsClientInGame(client) ) return true; return false; } Jeżeli chcesz by deagle nadawał się tylko wtedy kiedy gracz ma glocka, usp, lub p2000 to powinno zadziałać to: 4 - id glocka 32 - id p2000 61 - id usp silencer int iWeapon = GetPlayerWeaponSlot(client, 1); if (iWeapon > 0) { int iWeaponIndex = GetEntProp(iWeapon, Prop_Send, "m_iItemDefinitionIndex"); if (iWeaponIndex == 4 || iWeaponIndex == 32 || iWeaponIndex == 61) { RemovePlayerItem(client, iWeapon); AcceptEntityInput(iWeapon, "Kill"); GivePlayerItem(client, "weapon_deagle"); } }
  13. Nie zmieniłeś tych ifów, o których Ci mówiłem :D Poprawiony kod: #include <sourcemod> #include <sdktools> #include <cstrike> #include <sdkhooks> #include <scp> int g_fLastButtons[MAXPLAYERS+1]; int g_fLastFlags[MAXPLAYERS+1]; int g_iJumps[MAXPLAYERS+1]; public Plugin:myinfo = { name = "VIP Generator", author = "mastah7991", description = "Automatycznie wygenerowany VIP", version = "1.0", url = "MYGO.PL" } public OnPluginStart() { HookEvent("player_spawn", Event_PlayerSpawn); HookEvent("player_death", Event_PlayerDeath); } public OnClientPutInServer(client) { if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { CS_SetClientClanTag(client, "[VIP] "); char name[32]; GetClientName(client,name,31); PrintToChatAll("c1.BlackSquad.eu | Gracz VIP %s wszedl na serwer",name); } } public Action:Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast) { int client = GetClientOfUserId(GetEventInt(event, "userid")); if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+120); SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+250); SetEntityGravity(client, 0.8); SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", 1.2); GivePlayerItem(client,"weapon_deagle"); } } public Action:Event_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast) { int client = GetClientOfUserId(GetEventInt(event, "userid")); bool headshot = GetEventBool(event, "headshot"); if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+5); if(headshot) SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+15); if(GetEntProp(client, Prop_Send, "m_iHealth")>180) SetEntityHealth(client, 180); SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+100); if(headshot) SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+300); } } public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3], int &weapon) { if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1)) { int fCurFlags = GetEntityFlags(client); int fCurButtons = GetClientButtons(client); if (g_fLastFlags[client] & FL_ONGROUND) { if (!(fCurFlags & FL_ONGROUND) &&!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP) { g_iJumps[client]++; } } else if (fCurFlags & FL_ONGROUND) { g_iJumps[client] = 0; } else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP) { if ( 1 <= g_iJumps[client] <= 2) { g_iJumps[client]++; float vVel[3]; GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel); vVel[2] = 250.0; TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel); } } g_fLastFlags[client] = fCurFlags; g_fLastButtons[client] = fCurButtons; if(buttons & IN_DUCK) SetEntityRenderColor(client, 255, 255, 255, 175); else SetEntityRenderColor(client, 255, 255, 255, 255); } } public Action:OnChatMessage(&author, Handle:recipients, String:name[], String:message[]) { if (IsValidPlayer(author) && (GetUserFlagBits(author) & ADMFLAG_CUSTOM1)) { Format(name, MAXLENGTH_NAME, "%s", name); new MaxMessageLength = MAXLENGTH_MESSAGE - strlen(name) - 5; Format(name, MaxMessageLength, " [VIP] %s",name); return Plugin_Changed; } return Plugin_Continue; } stock bool IsValidPlayer(client) { if(client >= 1 && client <= MaxClients && IsClientConnected(client) && !IsFakeClient(client) && IsClientInGame(client) ) return true; return false; }
  14. Przyjrzałem się pluginowi i zauważyłem błąd w evencie spawnu: Zamień: int client = GetClientOfUserId(GetEventInt(event, "attacker")); Na: int client = GetClientOfUserId(GetEventInt(event, "userid"));
  15. Wpisałeś sm_viptestadd na początku czy od razu zadziałało na sm_viptestcheck? //Edit: Jestem debilem, zmień w pluginie komunikat ten drugi i sprawdź jeszcze raz. Wybacz za ten błąd. public Action cmd_vipcheck(int iClient, int iArgs) { if (GetUserFlagBits(iClient) & ADMFLAG_CUSTOM1) { PrintToChat(iClient, "Jestes vipem."); } else { PrintToChat(iClient, "NIE jestes vipem."); } }