Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 140 141 142 143 144 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
redlist2009
сообщение Feb 23 2012, 07:50
Сообщение #3511


Level 1


Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек



denis0k, спасибо за совет,но,в этом и проблема...Я запутался во всём этом...Или,вы,меня не правильно поняли.Постараюсь объяснить.Все,наверное,играли в The Elder Scrolls 4 Oblivion.Так вот,кто помнит,в конце игры на имперский город нападают демоны...Именно это мне нужно...То,что,вы,мне сказали-я знаю...И,по поводу диалогов,и,по поводу триггеров...Я не знаю,что именно нужно писать в скипте.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
PaiNt
сообщение Feb 23 2012, 13:41
Сообщение #3512


Level 8
***

Класс: Псионик
Характер: Chaotic Neutral
Раса: Хафлинг



Цитата(redlist2009 @ Feb 23 2012, 14:50) *
denis0k, спасибо за совет,но,в этом и проблема...Я запутался во всём этом...Или,вы,меня не правильно поняли.Постараюсь объяснить.Все,наверное,играли в The Elder Scrolls 4 Oblivion.Так вот,кто помнит,в конце игры на имперский город нападают демоны...Именно это мне нужно...То,что,вы,мне сказали-я знаю...И,по поводу диалогов,и,по поводу триггеров...Я не знаю,что именно нужно писать в скипте.

Вообще.. имхо такие вопросы говорят о непостижении дзена тулсета, посозерцайте побольше контента и понимание придет само.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
denis0k
сообщение Feb 23 2012, 18:34
Сообщение #3513


Level 19
Иконки Групп

Класс: Воин
Характер: Lawful Good
Раса: Человек
NWN: Скриптинг [PW]
Gem of the North
Край Лесов



Дело не в дзен самого тулсета. Программирование - наука непростая, нахрапом её не взять. Это требует наличия некоторых знаний, которых в одном-двух абзацах не описать. Если лень найти в инете хотя бы лекции по программированию для школьников (не говоря о мануале по программированию на нвскрипт), то тут поможет только специально дресобученный скриптер в команде. Это сэкономит время, силы и нервы всем.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 23 2012, 22:29
Сообщение #3514


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Мне на самом деле много не надо, около 5-ти скриптов, которых сам сделать не смогу, я даже готовые скрипты с города мастеров поставить не могу, они у меня не ребатают, говорю о скриптах на респ мобов, если у кого есть время в воскресенье или понедельник пишите мне в скайп Nemi44441 эти дни я буду дома, пока мне нужно только скрипт на респ мобов, тут мне к сожалению не объяснить, так как я большенства терминов не знаю, к тому же у меня модуль с непонятным переводом
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 25 2012, 22:01
Сообщение #3515


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Доброе время суток, извините может пишу не в ту тему, но знаю тут быстро могут помочь, я запустил сервер, но другие игроки не могут его увидет, в чем может быть проблема это на линуксе
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Feb 26 2012, 02:56
Сообщение #3516


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



Не все IP одинаково полезны: если у тебя динамический или внутрисетевой (серый), то подключиться к тебе по интернету на него не смогут – нужен приватный (белый).

Может помочь прога для создания виртуальной LAN сети «хамачи» - если ее установят, запустят и настроят все нужные пользователи, они смогут подключиться к твоему серверу с любым физическим IP. Скачать можно например тут.

P.S.: Хамачи не переваривает маршрутизаторы/роутеры.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
PaiNt
сообщение Feb 26 2012, 10:51
Сообщение #3517


Level 8
***

Класс: Псионик
Характер: Chaotic Neutral
Раса: Хафлинг



Цитата(Flaristan @ Feb 26 2012, 09:56) *
Не все IP одинаково полезны: если у тебя динамический или внутрисетевой (серый), то подключиться к тебе по интернету на него не смогут – нужен приватный (белый).

Может помочь прога для создания виртуальной LAN сети «хамачи» - если ее установят, запустят и настроят все нужные пользователи, они смогут подключиться к твоему серверу с любым физическим IP. Скачать можно например тут.

P.S.: Хамачи не переваривает маршрутизаторы/роутеры.

Вообще не факт. Динамический айпи - не запрещает подключение к твоему серверу априори, просто у тебя будет менятся айпи всякий раз когда упадет твое подключение к интернету. Как показывает практика на динамическом айпи с адсл можно какое-то (ну для прохождения 2-х часового модуля например) время поднять даже сервер с NWNX на линуксе (IMG:style_emoticons/kolobok_light/smile.gif) , другое дело что это извращение - сообщать во аське впри каждом обрыве новый внешний айпи (IMG:style_emoticons/kolobok_light/smile.gif) ..
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Valeroy
сообщение Feb 26 2012, 13:04
Сообщение #3518


Level 2
*

Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Народ, шард готов, дайте пожалуйста готовый скрипт на респ мобов, по триггеру не хочу, нужен обязательно скрипт, и опишите его как поставить, и пожалуйста без терминов, на простом языке
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Feb 26 2012, 15:43
Сообщение #3519


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



Цапу крути.

P.S.: Самую ржавую.

Сообщение отредактировал Flaristan - Feb 26 2012, 15:48
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vermilion
сообщение May 30 2012, 09:30
Сообщение #3520


Level 1


Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Здравствуйте. У меня возникла одна ситуация по поводу скрипта.
Хочу сделать респ нпс (крыса с ResRef: "rat") через OnDeath скрипт на определенном WP:

script1 (OnDeath):

CODE

#include "script2"
void main()
{
string sResRef = ("rat");
location lSpawn = GetLocation(GetWaypointByTag("SPAWN01"));
DelayCommand(10.0, CreateObjectVoid(OBJECT_TYPE_CREATURE, sResRef,lSpawn));
///////////////////////////////////////////////////////
ExecuteScript("nw_c2_default7", OBJECT_SELF);
}


script2 (include в OnDeath):

CODE

void CreateObjectVoid(int nObjectType, string sTemplate, location lLoc, int bUseAppearAnimation = FALSE)
{
object oVoid = CreateObject(nObjectType, sTemplate, lLoc, bUseAppearAnimation);
}


Сейчас у меня нвн версии 1.69, несколько лет назад делал ту же самую систему на версии 1.68 и всё работало. Конкретно, система заключается в том, что на локации размещается, допустим, 8 крыс и под каждой из них WP респа. На HeartBeat каждой из них вешается RandomWalk (если вне боя). Строка первого скрипта "location lSpawn..." определяется через case из 8 WP, получается, если убить все 8 крыс, возможно на каком-нибудь из WP крыс может быть 3-4 и так далее. Своеобразное разнообразие. Но это ладно...

Проблема в том, что у меня не получается сделать DelayCommand в первом скрипте больше, чем на 5.0 секунд. Когда ставлю 4.99, убиваю крысу, она появляется. Ставлю 5.01, убиваю, ничего не происходит, не респится. На модуле, на локации, на крысе нет никаких дополнительных скриптов или других изменений.
Ставил на этот OnDeath скрипт крысы визуальный эффект (маг. взрыв на GetLastKiller), он так же не работает, если DelayCommand больше, чем 5.0 секунд.
Ставил DelayCommand 10 секунд просто на Placeable: OnUsed, всё работает.

Не знаю, чем это всё вызвано. Помогите, кто знает.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
gennady
сообщение May 30 2012, 12:39
Сообщение #3521


Level 9
Иконки Групп

Класс: Обыватель
Характер: Lawful Good
Раса: Человек
NWN: Модмейкер
Рыцарская Сага



Это настройка уничтожения трупа... Лучше вешать команду на модуль, а не крысу. Через: AssignCommand
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Vermilion
сообщение May 30 2012, 13:46
Сообщение #3522


Level 1


Класс: Обыватель
Характер: Lawful Good
Раса: Человек



Это тогда на HeartBeat?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение May 30 2012, 23:47
Сообщение #3523


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



Gennady походу имеет в виду, что если крыса (труп) уничтожается моментально после смерти, то по прохождению задержки превышающей остаток раунда в котором это происходит (больше 5 секунд) – скрипту не с чего запуститься т.к. его объект носитель перестает существовать. Чтоб этого избежать, нужно отдавать команду запуска скрипта не по умолчанию, как в продемонстрированном примере (подразумевающую OBJECT_SELF), а через «assign» с указанием лица стороннего объекта запуска, который будет продолжать существовать и после смерти крысы (например от лица вейпоинта респа или локации и т.п.).
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
PaiNt
сообщение May 31 2012, 14:50
Сообщение #3524


Level 8
***

Класс: Псионик
Характер: Chaotic Neutral
Раса: Хафлинг



Цитата(Flaristan @ May 31 2012, 07:47) *
Gennady походу имеет в виду, что если крыса (труп) уничтожается моментально после смерти, то по прохождению задержки превышающей остаток раунда в котором это происходит (больше 5 секунд) – скрипту не с чего запуститься т.к. его объект носитель перестает существовать. Чтоб этого избежать, нужно отдавать команду запуска скрипта не по умолчанию, как в продемонстрированном примере (подразумевающую OBJECT_SELF), а через «assign» с указанием лица стороннего объекта запуска, который будет продолжать существовать и после смерти крысы (например от лица вейпоинта респа или локации и т.п.).

лучше вешать действия не на вейпойнты (IMG:style_emoticons/kolobok_light/smile.gif) . не доверяю я им (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Virake
сообщение Jun 18 2012, 23:35
Сообщение #3525


Level 5
**

Класс: Некромант
Характер: Chaotic Evil
Раса: Человек



доброго всем времени суток!
недавно решил, наверное, в 7 раз переделать заново один мой модуль. и внедрить в него стандартную систему имитации жизни (AMBIENT_ANIMATIONS). уже когда-то делал такое, но немного подзабыл, что к чему. короче, столкнулся с такой проблемой: все НПЦ начинают "жить" только после того, как увидят игрока. т.е. они не выходят из домов, пока к ним не заглянет ПК. и это при том, что все, что нужно, подготовлено: все вейпы стоят на местах, все нужные переменные присвоены. ОнСпаун-скрипт тоже отредактирован соответствующим образом. переменная FLAG_CONSTANT, по-идее, должна включать "постоянную" жизнь НПЦ, т.е. они ходят и проигрывают анимции даже, если ПК нет рядом. однако почему-то не работает. как это исправить?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
PaiNt
сообщение Jun 19 2012, 06:23
Сообщение #3526


Level 8
***

Класс: Псионик
Характер: Chaotic Neutral
Раса: Хафлинг



Цитата(Virake @ Jun 19 2012, 07:35) *
как это исправить?

досконально облазить каждое событие перед функцией WalkWayPoints() (IMG:style_emoticons/kolobok_light/smile.gif) , а еще лучше в ней ))
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Jun 19 2012, 07:10
Сообщение #3527


Level 11
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Хербит отрубается в локациях, где нет игроков. Почему-то, хотя не должен. Бывает так - зашел НПС в дверь и все - обратно не выходит, пока игрок туда не наведается.
Можно извратиться через модульный хербит - на каждого НПС запускать скрипт, а не через их хербит.
Больше способов не знаю.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Jun 19 2012, 10:21
Сообщение #3528


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



Он не «почему-то» отрубается, и это не только с НПС - а так же с объектами имеющими скрипты, визуальными эффектами и всем прочим. Это менеджмент ресурсами виртуальной машины сервера – она вообще может отключаться полностью пока в модуль не зайдет игрок. Обходить его не надо, потому что сделано было не просто так.

Виртуальному миру и не нужно собсно жить без игрока: единственный корректный способ это исправить – это либо составление алгоритмов позволяющих AI снимать в любой запрашиваемый момент времени полную симуляцию состояния объекта и воссоздавать по запросу; либо составление алгоритмов универсального реагирования криттера на внешние условия (ну либо и то и то).
Для НПС первый вариант типа: «если время с момента запуска модуля = столько-то, то криттер появится там-то и сделает то-то, имея при себе столько-то чего нада». Второй вариант типа: «если сейчас день, а у криттера нет того-то, то идем туда-то и берем чего нада, если оно есть, то идем куда-то еще и делаем что-то, пока не потратим чего надо, а если сечас ночь, притворяемся мертвым и храпим, пока не потыкают чтобы проверить». (IMG:style_emoticons/kolobok_light/smile.gif)

P.S.: ReZkiy, вообще я сейчас этим занимаюсь для онлайн модуля – может есть желание принять участие?
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Virake
сообщение Jun 19 2012, 12:20
Сообщение #3529


Level 5
**

Класс: Некромант
Характер: Chaotic Evil
Раса: Человек



мне, по большому счету, и не нужно, чтобы НПЦ действовали, пока игрока нет в локации (это лишняя трата ресурсов). мне нужно, чтобы они: 1) ночью сидели дома; 2) днем ходили по городу. и первое, и второе сейчас работает, однако только, если за НПЦ следит игрок. если, скажем, группа НПЦ с наступлением темноты вернулась в дом, то на утро они от туда уже не выйдут, пока к ним не заглянет игрок. вот в этом вся проблема.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Jun 19 2012, 12:57
Сообщение #3530


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



Я у себя создавал для этого «базы» для НПС – объекты которые управляют своим типом НПС на локации, на которой помещены. Банально гнезда и норы для животных, которые можно обнаружить и взаимодействовать на своем отдельном уровне.
Такой объект присутствует в модуле всегда и поэтому на него можно повесить скрипты позволяющие свободно удалять/респавнить криттеров без боязни срыва скриптов – в остальном сами криттеры автономны и используют скрипты «онхеартбита». Для «сна» криттеров я использовал команды «аппеар/дисаппеар» и на время ночи у меня птицы например попросту изчезают с локации («расселяясь» по гнездам), появляясь снова днем с учетом текущей популяции (новые птицы порциально спавнятся у гнезд по прохождению определенного периода времени с учетом установленного максимума популяции). Для команды «аппеар/дисаппеар» нет разницы в задержке (секунда или игровая ночь) так что в теории должно работать с НПС и их домами.

P.S.: Чтоб не получалось при этом так, что реакция AI воспринималась «тормознутой» - можно поставить заглушку которая при входе игрока на локацию, при условии что на ней уже нету другого игрока, спавнила/перемещала бы невидимые «базы» криттеров в точке присутствия игрока тем самым гарантируя 100% оперативность работы скрипта на ней отвечающего за актуальное местоположение криттера.

Сообщение отредактировал Flaristan - Jun 19 2012, 13:15
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Melisse
сообщение Jun 19 2012, 15:55
Сообщение #3531


Level 11
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Фея
NWN: Скриптинг [PW]
Край Лесов



Цитата
мне, по большому счету, и не нужно, чтобы НПЦ действовали, пока игрока нет в локации (это лишняя трата ресурсов). мне нужно, чтобы они: 1) ночью сидели дома; 2) днем ходили по городу. и первое, и второе сейчас работает, однако только, если за НПЦ следит игрок. если, скажем, группа НПЦ с наступлением темноты вернулась в дом, то на утро они от туда уже не выйдут, пока к ним не заглянет игрок. вот в этом вся проблема.


Нужно делать через хербит модуля или кастомный хербит каждые 6.0 сек на модуле.
Там беруться все НПС одной фракции или одного тега и кидаются днем туда, а ночью обратно. Только кушает процесс "перекидования" не мало.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Virake
сообщение Jun 19 2012, 16:25
Сообщение #3532


Level 5
**

Класс: Некромант
Характер: Chaotic Evil
Раса: Человек



склепал что-то такое:
Neverwinter Script
void main()
{

object oNPC = GetNearestObjectByTag("NW_COMMALE");
int nTime = GetTimeHour();
int nCount = GetLocalInt(OBJECT_SELF, "SPAWNED_NPC_COUNT");
object oSpawn = GetWaypointByTag("WP_NPC_SPAWN");
location lSpawn = GetLocation(oSpawn);

if (nTime >= 8 && nTime <= 18)
    {
    while (GetLocalInt(OBJECT_SELF, "SPAWNED_NPC_COUNT") < 8)
        {
        CreateObject(OBJECT_TYPE_CREATURE, "commale001", lSpawn);
        nCount += 1;
        SetLocalInt(OBJECT_SELF, "SPAWNED_NPC_COUNT", nCount);
        }
    }
else
    {
    while (GetIsObjectValid(oNPC))
        {
        DestroyObject(oNPC);
        nCount -= 1;
        SetLocalInt(OBJECT_SELF, "SPAWNED_NPC_COUNT", nCount);
        }
    }
}
вроде работает. днем они спавняться, а ночью исчезают. вот только исчезают они по-очереди (в отличии от появления) и с некоторым интервалом. и в это время игра немного подтормаживает, а еще в чат идут сообщения, что-то вроде "TOO MANY COMMANDS".

П.С. подозреваю, что дело в том, что скрипт пытаеться повторно анигилировать существо, пока оно еще не доконца исчезло, т.е. имеет Valid-статус. что с этим делать? можно было бы поставить задержку на несколько секунд, однако это не ускорит процес дестроинга.

Сообщение отредактировал Virake - Jun 19 2012, 17:07
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Jun 19 2012, 17:08
Сообщение #3533


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



«Слишком много инструкций» и далее таг объекта перегружающего кэш. Стандартное сообщение об ошибке когда происходит аварийная остановка выполнения скрипта – это значит его надо дорабатывать. (IMG:style_emoticons/kolobok_light/smile.gif)

P.S.:
Цитата(Virake @ Jun 19 2012, 16:25) *
Neverwinter Script
    while (GetIsObjectValid(oNPC))
        {
        DestroyObject(oNPC);
        nCount -= 1;
        SetLocalInt(OBJECT_SELF, "SPAWNED_NPC_COUNT", nCount);
        }
В этом блоке не хватает идентификатора для oNPC он у тебя в условии 1 получается «ближайший по тагу» а циклу после 1 объекта нужна функция перешагивания к следующему. Для криттеров (включая ПС) я у себя использовал в аналогичном цикле как-то функцию GetNextObjectInArea в паре с условиями (для упрощения нагрузки):
Neverwinter Script
oTarget = GetFirstObjectInArea(oArea);
   while(GetIsObjectValid(oTarget))
        {
        //сюда можно поставить любое условие хоть по тому же тагу
        if (GetIsPC(oTarget))
           {
           //сюда то что тебе нужно сделать с объектом
           }
        oTarget = GetNextObjectInArea(oArea);
        }


Сообщение отредактировал Flaristan - Jun 19 2012, 17:22
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Virake
сообщение Jun 19 2012, 17:39
Сообщение #3534


Level 5
**

Класс: Некромант
Характер: Chaotic Evil
Раса: Человек



действительо, теперь работает. спасибо за помощь.

П.С. однако полноценной системой это пока считаться не может. нужно внедрить:
1) чтобы спавнились случайные НПЦ
2) чтобы они спавнились по случайным вейпам
3) чтобы перед дестроингом возвращались к своим спавн-точкам

Сообщение отредактировал Virake - Jun 19 2012, 18:04
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Flaristan
сообщение Jun 19 2012, 19:08
Сообщение #3535


Тролль
****

Класс: Пьяный Мастер
Характер: Chaotic Neutral
Раса: Тварь



1. Не сложно реализовать, заменив резреф криттера на стринговую переменную определяющуюся дополнительным блоком скрипта ранее, из списка заготовленных резрефов.
(хотя ИМХО лучше не случайные условия а причинно следственные)
2. То же самое.
(и опять таки лучше снабдить кузницу наковальней которая будет респить кузнеца, улицу мусоркой которая будет респить дворника и т.п. – как минимум меньше будет нервотрепки с рендумной неопределенностью)
3. Именно поэтому удобна функция «аппеар/дисаппеар» - она не удаляет/респавнит объект, а переносит его в нужную позицию с какой угодно задержкой при необходимости.
(а если просто нужна видимость сворачивания деятельности – то тут перед ним можно поставить парочку контрольных «велков» к нужному объекту, если в локации присутствует ПС; но как правило рано или поздно НПС все равно найдет способ застрять на глазах у ПС и испортить все впечатление от AI – хорошим решением для этого является тематическое преподнесение «дисаппиар» эффекта, например птицы у меня взлетают в воздух прежде чем пропасть)

Сообщение отредактировал Flaristan - Jun 19 2012, 19:16
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 140 141 142 143 144 > » 
Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 4th May 2025 - 14:22