Пара вопросов по SourcePawn (CSS)

Тема в разделе "Программирование / Скриптинг", создана пользователем Костя Суворов, 8 дек 2013.

  1. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    1) Какая есть функция для убийства одного игрока другим игроком (чтобы в верхнем правом углу выдало Игрок1 убил Игрока2)
    2) Есть карта. На карте нужно сделать, чтобы игроки случайно спавнились по всей карте рандомно. С сами респауном справился, сейчас главная проблема, сделать так, чтобы ллагин сам мог находить случайные места. Может есть какие-то готовые примеры для этого ?
     
  2. wanted241

    wanted241 Real-Gamer.Ru

    Сообщения:
    783
    Симпатии:
    355
    1. Вариантов много. Один из них: "SDKHOOKS_TakeDamage()"
    2. Есть.
     
    Костя Суворов нравится это.
  3. zig_ro

    zig_ro Скриптер :)

    Сообщения:
    16
    Симпатии:
    2
    2. Поработай с плагином Spawn Tools 7
     
  4. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    Он сам не умеет искать респауны для игроков :(
    А примеры, ссылки ?:)
     
  5. White Wolf

    White Wolf [] (int _n) -> double { return (_n % 2) == 0;}); Супер-модератор

    Сообщения:
    1.193
    Симпатии:
    424
    С респавнами рандомом достаточно тяжело. Так как игрок может появиться в стенке.
     
  6. Черная вдова

    Черная вдова

    Сообщения:
    1.621
    Симпатии:
    234
    White Wolf,
    допустим этого еще как то можно избежать, напирмер проверкой на возможность двигаться, а вот скажем если игрок появиться на крыше или скажем на текстурах нужных для cubemap вроде так, те нужные для фона как те маленькие фоновые домики на dust2, это уже даже не представляю как проверять единственное что можно это сделать границы спавнов наверно
     
  7. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    У меня есть идея на этот счет. Сервер умеет создавать вейпоинты для ботов, так вот, ставить спауны на этих вейпонтах в равном отдалении друг от друга (нужно где-то штук 20 респаунов на всю карту).
    Отсюда вытекают два вопроса:
    1) Можно ли из SourcePawn получить доступ к вейпонтам ботов ? Или придется писать примерно такой свой алгоритм ?
    2) Боты часто прячутся по углам. Эти углы "заложены" в вейпоинтах или в ИИ ботов ?
    3) Знает кто, в плагине DeathMatсh случайные респауны генерируются или создаются вручную ?
     
  8. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.995
    Симпатии:
    2.990
    Костя Суворов,
    1. Боты спавнятся на точках спавна, точно так же как и люди.
    Если Spawn Tools их видит, то ройся в нем.

    2. Эти углы заложены в nav файлах к картам (это пути передвижения ботов).

    3. Создаются в ручную, а если их нет - используются стандартные.
     
  9. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    Я говорю не про спауны ботов, а про их вейпоинты (которые хранятся в файлах .nav) Вот к ним можно получит доступ из SourcePawn ?
     
    Последнее редактирование: 11 дек 2013
  10. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.060
    Симпатии:
    345
    Нет это можно добиться только написанием Valve Server Plugin.
     
  11. FrozDark

    FrozDark Команда сайта HLMod Модератор

    Сообщения:
    1.761
    Симпатии:
    1.915
    нет, это уже есть на АМ
    https://forums.alliedmods.net/showthread.php?t=228112

     
    Костя Суворов и Vit_ amin нравится это.
  12. Vit_ amin

    Vit_ amin BotManager001

    Сообщения:
    1.060
    Симпатии:
    345
    Или любое другое что-то написанное на языке высокого уровня ...
     
  13. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    Спасибо. Еще вопрос. Я пишу что-то вроде ZombieRiot. Так вот, чем можно заменить зомби-ботов ?
    Просто я когда-то видел на каком-то сервере зомби из HL2, которые бегали за игроком и пытались его убить. Может кто подсказать что-нибудь похожее ? Просто боты-зомби сильно нагружают, как и сервер, так и клиенты игроков :(
     
  14. FrozDark

    FrozDark Команда сайта HLMod Модератор

    Сообщения:
    1.761
    Симпатии:
    1.915
    думаешь такие зомби не будут грузить сервер? глупое предположение...
    Ну всё равно, ответ в том же посте выше
     
  15. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    А какие еще варианты есть ?
     
  16. wanted241

    wanted241 Real-Gamer.Ru

    Сообщения:
    783
    Симпатии:
    355

    Через Entity.
     
  17. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    А пример можно ?
     
  18. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    Еще вопрос. Как узнать координаты респауна на карте ?
    И про SDKHooks_Take: Пытаюсь его вызвать вот так:
    SDKHooks_TakeDamage(player, owner, owner, Float:999999, DMG_GENERIC, -1, NULL_VECTOR, NULL_VECTOR);
    Но при вызове функции, звук дамага есть, но самого дамага нет :(
     
    Последнее редактирование: 30 дек 2013
  19. (admiral)

    (admiral)

    Сообщения:
    69
    Симпатии:
    8
    SDKHooks_TakeDamage(player, owner, owner, 999999.0, DMG_GENERIC, -1, NULL_VECTOR, NULL_VECTOR)
     
    Костя Суворов нравится это.
  20. Костя Суворов

    Костя Суворов

    Сообщения:
    42
    Симпатии:
    10
    Вопрос остается. Как узнать координаты респауна на карте ?