CS:GO - Моддинг Игр и Серверов Перейти к содержанию
Гость

1 212 файла

  1. [CS:GO] Кувырок/Сальто/Бэкфлип / BACK/FRONT Flip only for admins 1.0.1


    С помощью данного плагина для csgo админы смогут делать бекфлип (или сальто). Естественно, изменив исходный код можно сделать эту функцию доступной для всех.
    К сожалению, из за ограничений в движке сам игрок делающий бэкфлип ничего не увидит, для него это будет просто двойной прыжок. Но зато окружающие будут шокированы)
    Для исполнения бекфлипа нужно нажать ПРЫЖОК два раза подряд (двойной прыжок)
    Настройки:
    drapi_backflip_jump_apogee_timer - за какое время игрок долетит до верхней точки прыжка
    drapi_backflip_jump_apogee - минимальная высота прыжка
    drapi_backflip_jump_timer - временной перерыв между прыжками
    drapi_backflip_rotation - угол поворота в прыжке
     

    36 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  2. [CS:GO] Визуализация NavArea/ Nav Area Utilities 1.02


    Плагин, в основном, для разработчиков работающих над созданием карт для CS:GO.
    Помогает определять NavArea на карте и визуализировать их.
     
    Команды:
    sm_naucount - Показывает количество nav area на карте
    sm_nauarea -  Визуализирует NavArea (sm_nauarea <navareaindex(optional)> <showneighbours(0-1)>
     
    Для разработчиков:
    #if defined _navareautilities_included #endinput #endif #define _navareautilities_included #define NAU_PREFIX " \x09[\x04Nav UTIL\x09]" #define NAU_GAMEDATA "navareautilities.gamedata" #define NAU_VERSION "1.02" #define NAU_NAVAREA_PARENT 0x7C #define NAU_NAVAREA_SOUTH_NAV_CONNECT_VECTOR 0x5C #define NAU_NAVAREA_LADDER_INDICATOR 0x34 #define NAU_NAVAREA_LADDER_HEIGHT 0x18 #define NAU_NAVAREA_LADDER_WIDTH 0x1C #define NAU_NAVAREA_LADDER_NAVAREAS 0x20 enum NavDirType { NAVDIR_SOUTH = 0, NAVDIR_EAST = 1, NAVDIR_NORTH = 2, NAVDIR_WEST = 3, NAVDIR_UP = 4, NAVDIR_DOWN = 5, NAVDIR_MAX } enum NavLadderDestination { NAVLADDER_TOP_FORWARD = 0, NAVLADDER_TOP_LEFT = 1, NAVLADDER_TOP_RIGHT = 2, NAVLADDER_TOP_BEHIND = 3, NAVLADDER_BOTTOM = 4, NAVLADDER_MAX } /** * Returns amount of nav areas * @return int amount of nav areas */ native int NAU_GetNavAreaCount(); /** * Returns an address of a navareaindex * @return address address of nav area */ native CNavArea NAU_GetNavAreaAddressByIndex(int navAreaIndex); /** * Called when nav areas are loaded by plugin (OnMapStart) * @param amount of nav areas found * @noreturn */ forward void NAU_OnNavAreasLoaded(); methodmap CNavArea { /** * Returns the north west corner of the nav area * @param buffer to store the position * @return void */ public void GetNorthWestCorner(float result[3]) { result[0] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(4), NumberType_Int32)); result[1] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(8), NumberType_Int32)); result[2] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(12), NumberType_Int32)); } /** * Returns the south east corner of the nav area * @param buffer to store the position * @return void */ public void GetSouthEastCorner(float result[3]) { result[0] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(16), NumberType_Int32)); result[1] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(20), NumberType_Int32)); result[2] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(24), NumberType_Int32)); } /** * Get the parent nav area * @return address address of the parent nav area */ public CNavArea GetParent() { Address navParent = view_as<Address>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_PARENT), NumberType_Int32)); return view_as<CNavArea>(LoadFromAddress(navParent, NumberType_Int32)); } /** * Get the amount of nav areas in direction * @param direction * @return int Amount of neighbours in direction */ public int GetNeighbourCount(NavDirType direction) { Address navConnectVector = view_as<Address>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_SOUTH_NAV_CONNECT_VECTOR + (0x4 * view_as<int>(direction))), NumberType_Int32)); return LoadFromAddress(navConnectVector, NumberType_Int32); } /** * Get address of a neighbour nav area * @param direction * @param neighbour index * @return address address of the neighbour nav area */ public CNavArea GetNeighbour(NavDirType direction, int directionListIndex) { Address navConnectVector = view_as<Address>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_SOUTH_NAV_CONNECT_VECTOR + (0x4 * view_as<int>(direction))), NumberType_Int32)); return view_as<CNavArea>(LoadFromAddress(navConnectVector + view_as<Address>(0x4 + (0x8 * view_as<int>(directionListIndex))), NumberType_Int32)); } /** * Hacky way to find out if the nav area a CNavLadder or CNavArea * @return bool if ladder area or not */ public bool IsNavLadder() { int hack = view_as<int>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_LADDER_INDICATOR), NumberType_Int32)); return hack == -1; } public bool IsNullPointer() { return view_as<Address>(this) <= Address_Null; } /** * Returns the center position of the nav area * @param buffer to store the position * @return void */ public void GetCenter(float result[3]) { float nwCorner[3], seCorner[3]; this.GetNorthWestCorner(nwCorner); this.GetSouthEastCorner(seCorner); NAU_GetMiddleOfABox(nwCorner, seCorner, result); } /** * Returns wether or not the entity has larger X/Y values than the nav area * @param entity index * @return bool can entity fit in nav area */ public bool CanEntityFit(int entity) { float mid[3], vMins[3], vMaxs[3]; GetEntPropVector(entity, Prop_Data, "m_vecMins", vMins); GetEntPropVector(entity, Prop_Data, "m_vecMaxs", vMaxs); mid[0] /= 2.0; mid[1] /= 2.0; mid[2] /= 2.0; if(mid[0] < 0.0) mid[0] *= -1; if(mid[1] < 0.0) mid[1] *= -1; if(mid[2] < 0.0) mid[2] *= -1; float nwCorner[3], seCorner[3], navAreaMid[3]; this.GetNorthWestCorner(nwCorner); this.GetSouthEastCorner(seCorner); MakeVectorFromPoints(seCorner, nwCorner, navAreaMid); navAreaMid[0] /= 2.0; navAreaMid[1] /= 2.0; navAreaMid[2] /= 2.0; if(navAreaMid[0] < 0.0) navAreaMid[0] *= -1; if(navAreaMid[1] < 0.0) navAreaMid[1] *= -1; if(navAreaMid[2] < 0.0) navAreaMid[2] *= -1; return (mid[0] <= navAreaMid[0] && mid[1] <= navAreaMid[1]); } /** * Returns wether or not the entity has larger X/Y values than the nav area * @param Mins of box * @param Maxs of box * @return bool can entity fit in nav area */ public bool CanFit(float vMins[3], float vMaxs[3]) { float mid[3]; MakeVectorFromPoints(vMins, vMaxs, mid); mid[0] /= 2.0; mid[1] /= 2.0; if(mid[0] < 0.0) mid[0] *= -1; if(mid[1] < 0.0) mid[1] *= -1; float nwCorner[3], seCorner[3], navAreaMid[3]; this.GetNorthWestCorner(nwCorner); this.GetSouthEastCorner(seCorner); MakeVectorFromPoints(seCorner, nwCorner, navAreaMid); navAreaMid[0] /= 2.0; navAreaMid[1] /= 2.0; if(navAreaMid[0] < 0.0) navAreaMid[0] *= -1; if(navAreaMid[1] < 0.0) navAreaMid[1] *= -1; return (mid[0] <= navAreaMid[0] && mid[1] <= navAreaMid[1]); } /** * Get a random position within a nav area, returns false if the mins/maxs are bigger than the area * @param Mins of entity you want to fit in the area * @param Maxs of entity you want to fit in the area * @param buffer to store the position * @return bool can entity fit in nav area */ public bool GetRandomPos(float vMins[3], float vMaxs[3], float result[3]) { // To stop random crashes if someone were to do stuff on a navladder if(this.IsNavLadder()) return false; bool returnVal = true; float mid[3]; MakeVectorFromPoints(vMins, vMaxs, mid); mid[0] /= 2.0; mid[1] /= 2.0; if(mid[0] < 0.0) mid[0] *= -1; if(mid[1] < 0.0) mid[1] *= -1; float nwCorner[3], seCorner[3], navAreaMid[3]; this.GetNorthWestCorner(nwCorner); this.GetSouthEastCorner(seCorner); MakeVectorFromPoints(seCorner, nwCorner, navAreaMid); navAreaMid[0] /= 2.0; navAreaMid[1] /= 2.0; if(navAreaMid[0] < 0.0) navAreaMid[0] *= -1; if(navAreaMid[1] < 0.0) navAreaMid[1] *= -1; if(mid[0] > navAreaMid[0] || mid[1] > navAreaMid[1]) returnVal = false; // Add/Subtract half of the size to the random pos (To make the entity fit properly) result[0] = GetRandomFloat(nwCorner[0] + mid[0], seCorner[0] - mid[0]); result[1] = GetRandomFloat(nwCorner[1] + mid[1], seCorner[1] - mid[1]); // Set the position to the highest point (TODO: Add function to calculate the height of the slope at a certain point of the plane) result[2] = seCorner[2]; return returnVal; } /** * Get the difference in Z positions of the nav area (Used to check if its a slope or not, returns 0 if plane surface) * @return float Z position difference */ public float GetZDifference() { float nwCorner[3], seCorner[3]; this.GetNorthWestCorner(nwCorner); this.GetSouthEastCorner(seCorner); return seCorner[2] - nwCorner[2]; } } methodmap CNavLadder < CNavArea { /** * Get the top left position of the nav ladder area * @param buffer to store the position * @return void */ public void GetTop(float result[3]) { result[0] = view_as<float>(LoadFromAddress(view_as<Address>(this), NumberType_Int32)); result[1] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(4), NumberType_Int32)); result[2] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(8), NumberType_Int32)); } /** * Get the bottom right position of the nav ladder area * @param buffer to store the position * @return void */ public void GetBottom(float result[3]) { result[0] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(12), NumberType_Int32)); result[1] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(16), NumberType_Int32)); result[2] = view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(20), NumberType_Int32)); } /** * Get the height of the ladder * @return float height of ladder */ public float GetHeight() { return view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_LADDER_HEIGHT), NumberType_Int32)); } /** * Get the width of the ladder * @return float width of ladder */ public float GetWidth() { return view_as<float>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_LADDER_WIDTH), NumberType_Int32)); } /** * Get address of a destination nav area from a ladder (check NavLadderDestination) * @param ladder destination * @return address address of the destination nav area (Address_Null if invalid navarea) */ public CNavArea GetDestinationNavArea(NavLadderDestination destination) { return view_as<CNavArea>(LoadFromAddress(view_as<Address>(this) + view_as<Address>(NAU_NAVAREA_LADDER_NAVAREAS + (0x4 * view_as<int>(destination))), NumberType_Int32)); } /** * Get the center position of the nav ladder area * @param buffer to store the position * @return void */ public void GetCenter(float result[3]) { float nwCorner[3], seCorner[3]; this.GetTop(nwCorner); this.GetBottom(seCorner); NAU_GetMiddleOfABox(nwCorner, seCorner, result); } } /** * Get closes neighbour nav area (By checking their center positions) * @param address of the nav area to check * @param a position to check which nav area is closest * @return address address of the closest neighbour area */ public CNavArea NAU_GetClosestNavAreaNeighbour(CNavArea navArea, float pos[3]) { CNavArea closestNavArea = navArea; float startPos[3]; //GetNavAreaCenter(navAreaAddress, startPos); if(!closestNavArea.IsNavLadder()) closestNavArea.GetCenter(startPos); else { CNavLadder ladder = view_as<CNavLadder>(closestNavArea); ladder.GetCenter(startPos); } float closestDistance = GetVectorDistance(pos, startPos, true); bool gotfirst = false; if(navArea.IsNavLadder()) { ArrayList ladderDestinations = new ArrayList(); for (int i = 0; i < view_as<int>(NAVLADDER_MAX); i++) { CNavLadder ladder = view_as<CNavLadder>(navArea); CNavArea destination = ladder.GetDestinationNavArea(view_as<NavLadderDestination>(i)); if(!destination.IsNullPointer()) ladderDestinations.Push(destination); } CNavArea destination = ladderDestinations.Get(GetRandomInt(0, ladderDestinations.Length - 1)); float navPos[3]; if(!destination.IsNavLadder()) destination.GetCenter(navPos); else { CNavLadder ladder = view_as<CNavLadder>(destination); ladder.GetCenter(navPos); } closestNavArea = destination; delete ladderDestinations; } else { for (int i = 0; i < view_as<int>(NAVDIR_MAX); i++) { int neighbourCount = navArea.GetNeighbourCount(view_as<NavDirType>(i)); for (int j = 0; j < neighbourCount; j++) { CNavArea neighbour = navArea.GetNeighbour(view_as<NavDirType>(i), j); float navPos[3]; //GetNavAreaCenter(neighbour, navPos); if(!closestNavArea.IsNavLadder()) neighbour.GetCenter(navPos); else { CNavLadder ladder = view_as<CNavLadder>(neighbour); ladder.GetCenter(navPos); } float dist = 0.0; if((dist = GetVectorDistance(navPos, pos, true)) < closestDistance || !gotfirst) { closestNavArea = neighbour; closestDistance = dist; gotfirst = true; } } } } return closestNavArea; } public void NAU_DebugNavArea(int client, CNavArea navArea, int laserModelIndex) { float navAreaNW[3], navAreaSE[3], center[3]; if(!navArea.IsNavLadder()) { navArea.GetNorthWestCorner(navAreaNW); navArea.GetSouthEastCorner(navAreaSE); navArea.GetCenter(center); } else { CNavLadder ladder = view_as<CNavLadder>(navArea); ladder.GetTop(navAreaNW); ladder.GetBottom(navAreaSE); ladder.GetCenter(center); } if(client > 0 && client <= MaxClients && IsClientInGame(client)) { NAU_PrintVector(client, "North West: ", navAreaNW); NAU_PrintVector(client, "South East: ", navAreaSE); NAU_PrintVector(client, "Center: ", center); } NAU_SendBox(navAreaSE, navAreaNW, laserModelIndex, { 255, 0, 0, 255 }, 5.0); } public void NAU_DebugNavAreaNeighbours(int client, CNavArea navArea, int laserModelIndex) { if(navArea.IsNavLadder()) { for (int i = 0; i < view_as<int>(NAVLADDER_MAX); i++) { CNavLadder ladder = view_as<CNavLadder>(navArea); CNavArea destination = ladder.GetDestinationNavArea(view_as<NavLadderDestination>(i)); NAU_DebugNavArea(client, destination, laserModelIndex); } } else { for (int i = 0; i < view_as<int>(NAVDIR_MAX); i++) { int neighbourCount = navArea.GetNeighbourCount(view_as<NavDirType>(i)); for (int j = 0; j < neighbourCount; j++) { CNavArea neighbour = navArea.GetNeighbour(view_as<NavDirType>(i), j); NAU_DebugNavArea(client, neighbour, laserModelIndex); } } } } /** * Get the address of the clients last known nav area (Private hidden variable: offset 0x8D8 as of 7/31/2018) * @param client index * @return address address of the last known nav area (Address_Null if player has no last known nav area) */ public CNavArea NAU_GetClientLastKnownNavArea(int client) { // Make shit break less return view_as<CNavArea>(GetEntData(client, FindSendPropInfo("CBaseCombatCharacter", "m_nRelativeDirectionOfLastInjury") + 0x8)); } public void NAU_Initialize(Address& navCount, Address& navAreas) { Handle hConf = LoadGameConfigFile(NAU_GAMEDATA); navCount = GameConfGetAddress(hConf, "navarea_count"); #if defined DEBUG PrintToServer("Found \"navarea_count\" @ 0x%X", navCount); #endif navAreas = view_as<Address>(LoadFromAddress(navCount + view_as<Address>(0x4), NumberType_Int32)); #if defined DEBUG PrintToServer("Found \"TheNavAreas\" @ 0x%X", navAreas); #endif delete hConf; #if defined DEBUG int navAreaCount = NAU_GetNavAreaCount(); PrintToServer("Nav area count: %d", navAreaCount); #endif } public void NAU_GetMiddleOfABox(const float vec1[3], const float vec2[3], float result[3]) { float mid[3]; MakeVectorFromPoints(vec1, vec2, mid); mid[0] /= 2.0; mid[1] /= 2.0; mid[2] /= 2.0; AddVectors(vec1, mid, result); } public bool NAU_IsPositionBlocked(float pos[3], float vMins[3], float vMaxs[3]) { Handle ray = TR_TraceHullFilterEx(pos, pos, vMins, vMaxs, MASK_PLAYERSOLID, NAU_TraceFilterNothing); return TR_DidHit(ray); } public bool NAU_TraceFilterNothing(int entityhit, int mask, any entity) { if(entityhit == 0) return true; return false; } public bool NAU_IsPositionBlockedIgnoreSelf(float pos[3], float vMins[3], float vMaxs[3], int entity) { Handle ray = TR_TraceHullFilterEx(pos, pos, vMins, vMaxs, MASK_PLAYERSOLID, NAU_TraceFilterIgnoreSelf, entity); return TR_DidHit(ray); } public bool NAU_TraceFilterIgnoreSelf(int entityhit, int mask, any entity) { if(entityhit > -1 && entityhit != entity) return true; return false; } public void NAU_PrintVector(int client, char[] prefix, float pos[3]) { PrintToChat(client, "%s %s\x02%.2f \x04%.2f \x0C%.2f", NAU_PREFIX, prefix, pos[0], pos[1], pos[2]); } public void NAU_SendBox(float vMins[3], float vMaxs[3], int modelIndex, int color[4], float lifetime) { float vPos1[3], vPos2[3], vPos3[3], vPos4[3], vPos5[3], vPos6[3]; vPos1 = vMaxs; vPos1[0] = vMins[0]; vPos2 = vMaxs; vPos2[1] = vMins[1]; vPos3 = vMaxs; vPos3[2] = vMins[2]; vPos4 = vMins; vPos4[0] = vMaxs[0]; vPos5 = vMins; vPos5[1] = vMaxs[1]; vPos6 = vMins; vPos6[2] = vMaxs[2]; NAU_SendBeam(vMaxs, vPos1, modelIndex, color, lifetime); NAU_SendBeam(vMaxs, vPos2, modelIndex, color, lifetime); NAU_SendBeam(vMaxs, vPos3, modelIndex, color, lifetime); //Vertical NAU_SendBeam(vPos6, vPos1, modelIndex, color, lifetime); NAU_SendBeam(vPos6, vPos2, modelIndex, color, lifetime); NAU_SendBeam(vPos6, vMins, modelIndex, color, lifetime); //Vertical NAU_SendBeam(vPos4, vMins, modelIndex, color, lifetime); NAU_SendBeam(vPos5, vMins, modelIndex, color, lifetime); NAU_SendBeam(vPos5, vPos1, modelIndex, color, lifetime); //Vertical NAU_SendBeam(vPos5, vPos3, modelIndex, color, lifetime); NAU_SendBeam(vPos4, vPos3, modelIndex, color, lifetime); NAU_SendBeam(vPos4, vPos2, modelIndex, color, lifetime); //Vertical } public void NAU_SendBeam(const float vMins[3], const float vMaxs[3], int modelIndex, const int color[4], float lifetime) { TE_SetupBeamPoints(vMins, vMaxs, modelIndex, modelIndex, 0, 0, lifetime, 1.0, 1.0, 1, 0.0, color, 0); TE_SendToAll(); } public SharedPlugin __pl_navareautilities = { name = "navareautilities", file = "navareautilities.smx", #if defined REQUIRE_PLUGIN required = 1 #else required = 0 #endif }; #if !defined REQUIRE_PLUGIN public __pl_navareautilities_SetNTVOptional() { MarkNativeAsOptional("NAU_GetNavAreaCount"); MarkNativeAsOptional("NAU_GetNavAreaAddressByIndex"); } #endif  
    Видео:

    36 раз скачали  | 0 комментариев  | Обновлено  | Mr_Swag


  3. [CS:S] Запрет Спрея / Ban Player's Spray


    Плагин дает возможность админам навсегда запретить использование спрея игрокам. Игроки, получившие запрет (бан), не смогут воспользоваться спреем пока их не разбанит админ.
    Админ также может просмотреть список забаненых игроков.
    Игроки также могут просматривать список для определения своего статуса.
     
    Поддерживаемые игры:
    Все игры где есть спрей (но не CS:GO)
     
    Команды:
    sm_banspray <ник игрока> - Добавить игрока в список, запрещающий использовать спрей. <player> (имя игрока может быть написано полностью или частично)
    sm_banspray_steam <steamid> - добавляет steamid игрока в бан спрея.
    sm_unbanspray <ник игрока> - Удалить игрока из списка. <player> (имя игрока может быть написано полностью или частично)
    sm_banspray_list - Список всех подключенных игроков и их статус. (смотреть в консоли)
    sm_settings - Команда позволяющая игрокам посмотреть их статус.

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  4. [CS:GO/CS:S] Whisper chat


    Описание:
    Когда вы напишите в чате /w <text>, только люди находяшиеся с вами рядом смогут прочесть то, что вы написали.
    Требования:
    colors
    Поддерживаются игры:
    Все игры
    Установка:
    Закинуть файл .sp в addons/sourcemod/scripting
    Закинуть файл .smx в addons/sourcemod/plugins
    Команды:
    sm_w <text>
    Переменные:
    (Вставить в server.cfg)
    sm_whisper_distance "100.0" // Дистанция, на которой игроки смогут видеть ваш текст.

    35 раз скачали  | 0 комментариев  |  | OriginalShaman


  5. [CS:GO/CS:S] TeamMoney


    Плагин складывает все деньги игроков и распределяет их поровну.
     
    Настройки плагина:
    sm_teammoney_enable - Включить\выключить плагин(по умолчанию 1)
     
    Установка:
    Закинуть файл teammoney.sp в папку addons/sourcemod/scripting
    Закинуть файл teammoney.smx в папку addons/sourcemod/plugins

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  6. [CS:GO/CS:S] Уничтожение / The Annihilation 1.0.2


    Описание:
    Данный плагин представляет собой менеджер, который делает ваш сервер не просто Knife сервером, а сервером-аннигиляции, примером которого может быть "Перетягивание каната".

    А если подробнее, каждая команда должна захватывать игроков в свою команду, пока игрок во вражеской команде не останется один. Последнего необходимо убить, но этот игрок может захватить всех так же, как и вы. Победит та команда, которая убила последнего игрока.
    Особенности плагина:
    Захват с 1 удара. Смена скина игрока на скин команды. Последний игрок в команде не захватывается. Отключены: спасение заложников и установка бомб, что позволяет играть на любой карте. Захваченному игроку выдаётся 200 здоровья. Автоматическое возрождение через 5 сек после смерти. Автоматическое возрождение после подключения. Команда возрождения !respawn, !res  

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  7. [CS:GO/CS:S] ArmyRanks 0.0.0.8


    Плагин sourcemod: Дополнительная статистика, ведёт систему званий от рядового до маршала с префиксом в чате, чем выше звание, тем больше ХП и бесплатных гранат в начале раунда. Так же имеется меню управления плагином в админке.
     
    Установка:
    Раскидать файлы плагина sourcemod по папкам
    ЕСЛИ У ВАС ЕСТЬ ВОПРОСЫ ИЛИ ПРОБЛЕМЫ С ПЛАГИНОМ, ОБРАЩАЙТЕСЬ В ПОДДЕРЖКУ (КНОПКА СПРАВА, ПОД "СКАЧАТЬ")

    35 раз скачали  | 0 комментариев  |  | OriginalShaman


  8. [CS:GO/CS:S] Простой VIP / Simple VIP 1.0.0


    Простой VIP плагин для CS:GO и CS:S. 
    Дает:
    дает ХП дает броню дает деньги дает возможность смены команды

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  9. [CS:GO/CS:S] Выбор модели / Model Menu 1.0.0


    Плагин для выбора моделей игрокам и админам через меню.
     
    Команды:
    sm_models через консоль
    или чате !models
     
    К выбору меню имеют доступ группы админов и обычные игроки которые прописаны в файле admin_groups.cfg
    Группы создаются в конфиге / admin_groups.cfg
    Игроки могут находится в нескольких группах (в admins.cfg Добавить раздел "group" для разных моделей с разным уровнем доступа)
    Можно создать группу без админского флага. Это может быть полезно для "VIP" игроков, которые могли бы выбрать модели.
     
    В файле modeldownloads.ini должны быть прописаны пути к файлам моделей.
    В Файле models.ini настройки меню с выбором моделей к определенным группам. (вкладки "Team1" и "Team2" не переименовывать)
    Файл modelmenu.gamedata.txt должен находится в SourceMod папке GameData. 

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  10. [CS:GO/CS:S] Super ZM Menu 1.0.0


    Дополненное меню для ZombieMod.
    Функции плагина:
    Меню выживших - Прозрачность, увеличенный урон, скорость и т.д.. Меню заражённых - Невидимость, увеличенная скорость, уменьшенная гравитация и тд.. Обмен кредитов и денег между игроками. Выдача кредитов и сброс кредитов - доступно администраторам, с флагом [ROOT]. Настройка - сброс кредитов. Команды:
    !zsmenu - открывает меню

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  11. [CS:GO] Фейрверк вместо взрыва / Fireworks at Bomb Plant 1.0.0


    Плагин для CS:GO, хорошо подойдет для создания новогодней атмосферы.Вместо классического взрыва бомбы будет фейрверк.
    Установка:
     .smx файл закинуть по пути addons/sourcemod/plugins  Перезапустить сервер или сменить карту  
     

    35 раз скачали  | 0 комментариев  |  | OriginalShaman


  12. [CS:GO] Облегченный хвост за игроком / A Simple PlayerTrail Plugin 0.0.0.1


    Облегченный и простой плагин.
    Хвост за игроками. Вариант только один - красный.
    Никаких команд и настроек)
    Возможно кто то найдет его для себя полезным.

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  13. [CS:GO] Радужный чат / RainbowChat 1.1


    Плагин позволяет окрасить чат игрока в цвета радуги.
     
    Для корректной работы плагина требуется установить расширение Chat-Processor:
     
    Настройки:
    src_name_flag - Флаг доступа для разукрашивания никнейма
    src_message_flag - Флаг доступа для разукрашивания текста в чате

    Команды:
    sm_rainbowname -  включение и отключение окраски ника
    sm_rainbowmsg -  включение и отключение окраски чата

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  14. [CS:GO] Секундомер / StopWatches 1.0.0


    Плагин позволяет добавить на сервер секундомер. Прописав команду появляется таймер в HUD.
    Пригодиться для разных целей, для ивентов на Roleplay серверах и тд.
     
    Команда одна: 
    sm_stopwatches - запускает и останавливает секундомер
     
    Настроек никаких нет, да и они не нужны.

    35 раз скачали  | 0 комментариев  | Обновлено  | Mr_Swag


  15. [CS:GO/CS:S] Виселица / Hangman 1.0.0


    Интересный плагин для сервера CS:GO, и возможно CS:S (не тестировалось), который поможет разнообразить геймплей на сервере: известная всем с детства игра Виселица.
    Нужно отгадывать слово по буквам. Ошибка = строиться виселица для человечка.Если много раз ошиблись - виселица достраиваться и человечек погибает.Отгадывать слово нужно всем сервером.
    Лучше всего посмотреть видео:
    Команды:
    sm_hangman - команда для админов, запускает игру (флаг доступа GENERIC).
    sm_hm - то же что и выше(флаг доступа GENERIC).
    sm_cancelhangman - команда чтобы прекратить игру. (флаг доступа CHEATS).
    sm_chm - аналог команды выше (флаг доступа CHEATS).
    sm_aborthangman - аналог команды выше (флаг доступа CHEATS).
    sm_ahm - аналог команды выше (флаг доступаCHEATS).
     
    Настройки:
    sm_hangman_maxblocks - Максимальный процент букв сколько спрятать 
    sm_hangman_maxguess - Сколько попыток чтобы отгадать слово (на всех игроков на сервере, по стандарту 7)

    35 раз скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  16. [CS:GO/CS:S] Музыка при входе / EnterSounds


    Рандомное проигрывание музыки при входе на сервер.
     
    Настройки/переменные:
    sm_enter_sounds_version - Версия плагина
    sm_enter_sound - Вкл/Откл(1/0) музыки при входе
    sm_enter_sound_notify - Вкл/Откл(1/0) уведомление при входе
    sm_enter_sound_notify_msg - Уведомляющее сообщение - "{olive}Вы слушаете {green}{SOUND_NAME}{olive}. Получайте удовольствие", где {SOUND_NAME} имя проигрываемого файла
    sm_enter_sound_delay - Проигрывание музыки с задержкой в X секунд (По умолчанию 0.1 )
    sm_enter_sound_notify_delay - Показываеть уведомление с задежкой в X секунд (По умолчанию 0.1 )
    sm_enter_sound_play_type - способ проигрывания звука: 0 = play X через консоль, 1 - при помощи SDK плагина (EmitSound)
    sm_enter_sound_color_msg - 0 - Отключить цветные сообщения в чате, 1 - Включить цветные сообщения в чате (По умолчанию 1 )

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  17. [CS:GO/CS:S] Замена Ботом / Bot Replace


    Если вы мертвы, и напишите в чате !bbot то за место вас сможет играть AI игрок на весь остаток раунда.
     
    Настройки:
    sm_bot_price 2000 - стоимость покупки Бота
    sm_advert_byu 1 - отображать ли в чате в начале раунда информацию о том что можно купить бота себе на замену?

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  18. [CS:GO] Рейтинг прыжков / Jump Top


    Топ прыжков игроков, база записывается в SQL.
    Топ вызывается чат-командой !jt
     
    Установка:
    Просто раскидать файлы плагина по папкам

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  19. [CS:GO/CS:S] Зомби курицы / Zombie Chicken 1.0.0


    Описание: 
    Создает зомбо-курицу на месте смерти обычной курицы 
     
    Установка: 
    Скопируйте файл *.smx в папку addons/sourcemod/plugins
    После первого запуска плагина настроить Zombie_Chicken.cfg в папке cfg/sourcemod
    Настройки:
    zc_model  - путь до модели курицы
    zc_health - кол-во хп курицы
    zc_type - Где будет поевлятся курица (1 = На месте смерти игрока, 2 = на месте смерти курицы,3 = все вместе)

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  20. [CS:GO/CS:S] Базовый плагин / MF Base Tools 1.0.0


    По сути плагин из себя представляет сборник наиболее популярных плагинов, вшитые в один.
    Функции:
    сброс счета сгорание трупов информация об администраторах онлайн запись действий администратора

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  21. [CS:GO/CS:S] История карт / Map History 1.0.0


    Плагин sourcemod для cs:go и cs:S.Записывает и показывает историю последних карт которые игрались на сервере.
     
    Команды:
    !lastmap
     
    Настройки:

    mh_allow_lastmap "1,0" - Разрешить использовать команду 'lastmap', чтобы увидеть последнюю карту. 0 = отключено команда, 1 = включить команду (по умолчанию).

    mh_allow_menu "1,0" - Разрешить использовать меню, чтобы показать последние карты. 0 = отключено команда, 1 = включить команду (по умолчанию).

    mh_allow_menu_delaymin "2,0" - Минимальное время в секундах между двумя запросами меню для игрока. По умолчанию 2.

    mh_allow_menu_mapnumbershown "32.00" - Разрешить использовать меню, чтобы показать последние карты. 0 = отключено команда, 1 = включить команду (по умолчанию).

    mh_lastmap_flag "" - Ограничение "lastmap" для людей с этим флагом. "" = доступен для всех.

    mh_lastmap_override "" - Ограничение "lastmap" для людей с этой переключателя. "" = доступен для всех.

    mh_menu_flag "" - Ограничение «меню» для людей с этим флагом. "" = доступен для всех.

    mh_menu_override "" - Ограничение «меню» для людей с этим переключателя. "" = доступен для всех.

    mh_showcurrentmap "0,0" - Показать текущую карту в "! Lastmaps? не 1 = да, 0 = нет (по умолчанию); изменяющаяся величина требует изменения карту

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  22. [CS:GO/CS:S] Отключение респауна / respawn 1.0.0


    Плагин возрождения, отключается если после возрождение игрока убивает или отнимается ХП.
     
    Настройки:
    sm_auto_respawn -  Включён плагин или нет: 0 = нет, 1 = да

    sm_auto_respawn_time - время через которое надо воскресить игрока (в секундах, по умолчанию 1)

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  23. [CS:GO/CS:S] Бонус за убийство через препятствие / Obstacle_Kill v1.2 1.0.0


    Sourcemod плагин, выдает убившему через препятствие (стена, бочка коробка и тд) бонус.
     
    Настройки:
    ok_gift "1" =  0 - ничего не делать, 1 - дать hp, 2 - дать деньги

    ok_gift_value "50" = Значение (см. ok_gift)

    ok_entkill "1" = 1 - удалять препятствия (удаляются не все), 0 = нет

    ok_showdist "1" = 1 - показывать расстояние от препятствия до жертвы (в метрах), 0 = нет 
     
    Работает с NoSteam

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  24. [CS:GO] Отметка врага / Mark Enemies 1.0.0


    Плагин позволяет игрокам помечать врагов которых они увидят красным цветом.Так же враг отобразиться на карте.
    Сделать это можно либо наведя прицел на игрока и нажав E, либо нанеся урон.
     
    Настройки:
    sm_markenemies_enabled - (Default: 1) - включает и отключает плагин
    sm_markenemies_duration - (Default: 5.0) - как долго отметка будет сохраняться? (в секундах)
    sm_markenemies_trigger - (Default: 3) - каким способом активировать отметку? 1 - Кнопка E (действие), 2 - При нанесении урона, 3 - Оба
    sm_markenemies_global - (Default: 1) - Кому доступна функция?, 0 - Админам, 1 - Всем
     
    Команды:
    sm_markenemies <client> <1:ON | 0:OFF> - включает Метку на определенном игроке (админская команда)
    sm_markenemiesme - Пометить меткой самого себя

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


  25. [CS:GO] Принудительное разминирование / Force Defuse 1.0.0


    Плагин  принудительно разминирует бомбу после определенного количества неудачных попыток разминирования (прерванных попыток).
    Подойдет для тех кто хочет предотвратить фейк дефьюзы на сервере. Или в ситуациях когда террористов не остается, и CT игрок не разминирует бомбу и руинит игру.
     
    Настройки:
    sm_fd_enabled - включен ли плагин
    sm_fd_num_aborts -количество попыток разминирования перед заморозкой
    sm_fd_num_alive - Сколько должно быть живых террористов для активации принудительного разминирования
    sm_fd_behavior - В каких случаях разминировать принудительно?
    0 - всегда принудительно разминировать
    1 - принудительно разминировать если у игрока есть дефуза
    2 - принудительно разминировать если ни у кого нет дефузов

    34 раза скачали  | 0 комментариев  | Обновлено  | OriginalShaman


Подписывайтесь на нас во Вконтакте!

×
×
  • Создать...
Искать в
  • Ещё...
Поиск контента, содержащего...
Поиск результатов в...

Напишите свой запрос, а Мы попробуем найти ответ!