Скриптинг курилка
#1

Какие у вас идеи для разработок следующих скриптов , плагинов , модов и т.д для скриптеров ?
Reply
#2

Quote:
Originally Posted by mysan[playerid
; ]
Какие у вас идеи для разработок следующих скриптов , плагинов , модов и т.д для скриптеров ?
пиши плиз по русски, ну или на крайняк по английски, а то читать вот эти твои ироглифы просто жесть
Reply
#3

1 идейка полезного скрипта есь. Я никада не уважал эти команды чата. Все инфо в куче выводится в чат, чесслово, нормально не прочтешь, сообщения чата теряются ваще среди сообщений серва, все разноцветное - "одна сплошная радость для глаз".

В 0,3 версии были добавлены новые возможности взаимодействия серва с игроками. Я говорю о диалоговых окнах. Все стандартные способы их применения известны. Я хотел бы предложить новый способ, который взят с функционала сайтов. Я говорю о системе личных сообщений ( лс/пм/личка, как вам угодно ). Давайте освободим общий чат от этих сообщений и создадим нечто новое.

Вот несколько плюсов:
  • Чтобы послать ПМ онлайн игроку, достаточно дважды кликнуть по нему в списке игроков. Возможно, пожже на этот клик можно вывести список доступных взаимодействий с выбранным игроком, например, личный чат с игроком, обмен вещами, оружием.. но эт все тока идеи (:. Возможно, для отсылки оффлайн ПМок понадобится личное меню игрока (аналог личного профиля на сайте).
  • Текст набирается в отдельном от чата окошке
  • Все новые сообщения будут выглядеть как окно со списком
  • Чтобы прочесть ПМ нужно выбрать его из окна списка с последними сообщениями
  • Оффлайн ПМки
  • Аккуратное уведомление о кол-ве новых ПМ в уголке экрана в виде TextDraw. Также возможны звуковые эффекты.
В такой системе понадобится сохранение ПМок, возможно INI файлы. Также возможна взаимосвязь с аккаунтом и логином игрока, чтобы оставлять оффлайн ПМки. Самый лучший вариант, если это все будет в одном едином игровом режиме, где все взаимосвязано, ведь что-то такое вроде личного меню бывает только в игровых режимах РП направления.

--
это была одна из практичных и рациональных идей
Reply
#4

Quote:
Originally Posted by [Saint
]
Quote:
Originally Posted by mysan[playerid
; ]
Какие у вас идеи для разработок следующих скриптов , плагинов , модов и т.д для скриптеров ?
пиши плиз по русски, ну или на крайняк по английски, а то читать вот эти твои ироглифы просто жесть
Vot tut ya napisal kak izbavitsya ot ieroglifov http://forum.sa-mp.com/index.php?topic=136026.0
Reply
#5

Бмх мастер , хорошая идея учитывая то что пм по двойному клику уже есть... Ну хотябы я где-то видел , но где не помню . Скорее всего на этом форуме
Reply
#6

Quote:
Originally Posted by mysan[playerid
; ]
Бмх мастер , хорошая идея учитывая то что пм по двойному клику уже есть... Ну хотябы я где-то видел , но где не помню . Скорее всего на этом форуме
при тестировании 0,3a можно было двойным нажатием открыть чат с текстом /pm id, НО сейчас этого нельзя сделать, от этой возможности остался только колбэк OnPlayerClickPlayer. К тому же открыть поле ввода чата сервер не может, да это и не нужно, т.к. в чат что тока не пихают, начиная от /help и заканчивая циклической инфой о халявном пособии, прибыли от бизнеса..

Вощем-то система регистрации и логина с помощью окон не нова, поэтому я предложил ПМки (:
Reply
#7

Quote:
Originally Posted by MX_Master
Quote:
Originally Posted by mysan[playerid
; ]
Бмх мастер , хорошая идея учитывая то что пм по двойному клику уже есть... Ну хотябы я где-то видел , но где не помню . Скорее всего на этом форуме
при тестировании 0,3a можно было двойным нажатием открыть чат с текстом /pm id, НО сейчас этого нельзя сделать, от этой возможности остался только колбэк OnPlayerClickPlayer. К тому же открыть поле ввода чата сервер не может, да это и не нужно, т.к. в чат что тока не пихают, начиная от /help и заканчивая циклической инфой о халявном пособии, прибыли от бизнеса..

Вощем-то система регистрации и логина с помощью окон не нова, поэтому я предложил ПМки (:
Дак говорю что видел пмку где-то при нажатию в табе два раза на игрока и тогда открывается диалог окно куда пишешь ему сообщение =)

Т.е это уже не новость... а вот остальные идеи пока никто не юзал
Reply
#8

По клику видел. А вот остальное очень даже интересно
Reply
#9

Quote:
Originally Posted by mysan[playerid
; ]Vot tut ya napisal kak izbavitsya ot ieroglifov http://forum.sa-mp.com/index.php?topic=136026.0
спс разобрался
Reply
#10

Quote:
Originally Posted by MX_Master
...
  • Чтобы послать ПМ онлайн игроку, достаточно дважды кликнуть по нему в списке игроков. Возможно, пожже на этот клик можно вывести список доступных взаимодействий с выбранным игроком, например, личный чат с игроком, обмен вещами, оружием.. но эт все тока идеи (:. Возможно, для отсылки оффлайн ПМок понадобится личное меню игрока (аналог личного профиля на сайте).
  • Текст набирается в отдельном от чата окошке
  • Все новые сообщения будут выглядеть как окно со списком
  • Чтобы прочесть ПМ нужно выбрать его из окна списка с последними сообщениями
  • Оффлайн ПМки
  • Аккуратное уведомление о кол-ве новых ПМ в уголке экрана в виде TextDraw. Также возможны звуковые эффекты.
....
Накодил сегодня нечто подообное, включая диалоги и историю сообщений... Если кому интересно - http://zeex.pastebin.ca/1697546.
Вместо файлов использовал встроенный SQLite, что намного упрощает задачу. История вечно не хранится и по выходу игрока с сервака все его сообщения (входящие + исходящие) удаляются из бд. Над textdraw'ом особо не парился, так что его стоит немного подправить (координаты, цвет и тп). Баги какие нашел по ходу устранил.

Quote:

отлично, однако у меня этот сайт недоступен почему-то. Чтобы все могли оценить твой труд, можно было вставить в пост между ВВ тегами

ОК, тогда вот (с некоторыми доработками):
pawn Code:
...
Reply
#11

отлично, однако у меня этот сайт недоступен почему-то. Чтобы все могли оценить твой труд, можно было вставить в пост между ВВ тегами [ pawn]код[ /pawn]
Reply
#12

Новая идея развлекательного характера:

В двух словах ее можно назвать "падение метеорита", или метеорный дождь, столкновение с астероидом, .. как вам угодно.

Все, кто немного знаком с астрономией, могут себе представить летящий в космосе астероид или камету. НУ так вот это все выглядит как 1 центральный большой объект, а сзади за ним летят более мелкие осколки, т.к. они притягиваются к большему телу астероида. Смысл идеи устроить падение такого астероида на игровую карту в случайном месте. В результате должен получится игровой шок у всех игроков. Они должны увидеть как к ним приближается нечто громадное с шипящим звуком, также они увидят сгорающие (взрывы) более мелкие осколки астероида в атмосфере. Ну и с открытым ртом игроки должны смотреть на падение этой глыбы на землю. Дальше огромный лавинообразный взрыв со взрывной волной от удара, изменение пагоды и прочие доступные в сампе спецэффекты. Естессна, кто попал в зону падения умрет как герой (:

Что тут может понадобится? Во-первых нужно знать конечную точку падения астероида на карте, она может быть случайной. Угол и начальное положение могут выбираться тоже случайно. Время падения сервер сам должен выбрать с учетом кол-ва игроков.

Как это должно работать в скриптинге?
Можно отыскать довольно огромный объект камня, или слепить его из более мелких частей. Нужно подобрать разные камни, которые обычно летят за астероидом, размеры лучше разные. С помощью редактора объектов нужно выставить статичную модель летящего астероида со всеми частями и осколками. В соответсвии с направлением нужно вычислить смещение каждого объекта от центрального астероида. Это нужно, чтобы при случайно полученном направлении все объекты правильно выстроились. Далее нужно задать главному астероиду конечную точку перемещения, отталкиваясь от этой точки все осколки получают свои конечные точки перемещения. Начинается движение объектов, которое заканчивается и они останавлияваются в конечных своих точках. Далее на ваш вкус - расходящийся в стороны взрыв, любой другой взрыв, изменение погоды, напрмер на песчаную бурю.
Reply
#13

моя идея:
игра дозор (не реализовано в следствии нехватки времени, но набрасывать пытался)
машина с 2мя игроками (водитель и штурман)
начало игры в 12 ночи каждый день
набираются команды, потом дается задание ехать в какойто район карты и искать там пикап, подобрали и поехали к следующему, пикапы на карте не отмечать, просто сообщать игрокам примерный район (например Bayside Marina) или показывать текстдрав с расстоянием до пикапа ))) так можно вообще не сообщать район, просто следовать по датчику) таких например 10 пикапов... собрали - получили денешку)
Reply
#14

Quote:
Originally Posted by Serafim_sd
моя идея:
игра дозор (не реализовано в следствии нехватки времени, но набрасывать пытался)
машина с 2мя игроками (водитель и штурман)
начало игры в 12 ночи каждый день
набираются команды, потом дается задание ехать в какойто район карты и искать там пикап, подобрали и поехали к следующему, пикапы на карте не отмечать, просто сообщать игрокам примерный район (например Bayside Marina) или показывать текстдрав с расстоянием до пикапа ))) так можно вообще не сообщать район, просто следовать по датчику) таких например 10 пикапов... собрали - получили денешку)
Реализованно месяцев 5 назад мною, правда кому-то на заказ
Reply
#15

Quote:
Originally Posted by MX_Master
Новая идея развлекательного характера:

В двух словах ее можно назвать "падение метеорита", или метеорный дождь, столкновение с астероидом, .. как вам угодно.

Все, кто немного знаком с астрономией, могут себе представить летящий в космосе астероид или камету. НУ так вот это все выглядит как 1 центральный большой объект, а сзади за ним летят более мелкие осколки, т.к. они притягиваются к большему телу астероида. Смысл идеи устроить падение такого астероида на игровую карту в случайном месте. В результате должен получится игровой шок у всех игроков. Они должны увидеть как к ним приближается нечто громадное с шипящим звуком, также они увидят сгорающие (взрывы) более мелкие осколки астероида в атмосфере. Ну и с открытым ртом игроки должны смотреть на падение этой глыбы на землю. Дальше огромный лавинообразный взрыв со взрывной волной от удара, изменение пагоды и прочие доступные в сампе спецэффекты. Естессна, кто попал в зону падения умрет как герой (:

Что тут может понадобится? Во-первых нужно знать конечную точку падения астероида на карте, она может быть случайной. Угол и начальное положение могут выбираться тоже случайно. Время падения сервер сам должен выбрать с учетом кол-ва игроков.

Как это должно работать в скриптинге?
Можно отыскать довольно огромный объект камня, или слепить его из более мелких частей. Нужно подобрать разные камни, которые обычно летят за астероидом, размеры лучше разные. С помощью редактора объектов нужно выставить статичную модель летящего астероида со всеми частями и осколками. В соответсвии с направлением нужно вычислить смещение каждого объекта от центрального астероида. Это нужно, чтобы при случайно полученном направлении все объекты правильно выстроились. Далее нужно задать главному астероиду конечную точку перемещения, отталкиваясь от этой точки все осколки получают свои конечные точки перемещения. Начинается движение объектов, которое заканчивается и они останавлияваются в конечных своих точках. Далее на ваш вкус - расходящийся в стороны взрыв, любой другой взрыв, изменение погоды, напрмер на песчаную бурю.
Про комету - надо перечислить 100 (мб и больше) вариантов. В каждом из них указываются 6 координат. (Появление кометы x,y,z; Падение кометы(конечная точка) x1,y1,z1)
Reply
#16

Еще есть небольшая мини игра, которая может быть доработана до любых уровней.

Высоко в воздухе, можно над морем, в виде дорожек расположены квадратные плоские объекты, мона куски забора. Все желающие помещаются в разных местах этой дырявой плоскости. Игра идет раундами. Смысл всеми возможными способами скинуть вниз или убить всех остальных участников раунда. Желательно разрешать только всякие биты, клюшки, катаны.. НО сама идея не в этом. Главное, что игроки смогут управлять своими персонажами, но камера не будет выглядеть как обычно за спиной. У камеры будет только 4 позиции по краям дырявой плоскости - так, чтобы все игроки могли видеть себя только со стороны. Представили? (: Управление остается такое же, а вот смотреть на себя и других игроков можно только с разных из этих 4 фиксированных позиций камеры. Переключаться между камерами, можно какой-то кнопкой для наилучшего обзора.
Reply
#17

Quote:
Originally Posted by MX_Master
Еще есть небольшая мини игра, которая может быть доработана до любых уровней.

Высоко в воздухе, можно над морем, в виде дорожек расположены квадратные плоские объекты, мона куски забора. Все желающие помещаются в разных местах этой дырявой плоскости. Игра идет раундами. Смысл всеми возможными способами скинуть вниз или убить всех остальных участников раунда. Желательно разрешать только всякие биты, клюшки, катаны.. НО сама идея не в этом. Главное, что игроки смогут управлять своими персонажами, но камера не будет выглядеть как обычно за спиной. У камеры будет только 4 позиции по краям дырявой плоскости - так, чтобы все игроки могли видеть себя только со стороны. Представили? (: Управление остается такое же, а вот смотреть на себя и других игроков можно только с разных из этих 4 фиксированных позиций камеры. Переключаться между камерами, можно какой-то кнопкой для наилучшего обзора.
Это было реализовано еще в 0.2х.. Ищи на этом форуме. А изначально это сделано для мта...)
Reply
#18

Для MTA есть мод FALLOUT (или тип таво), я в него в момент выхода МТА ДМ играл. Моя идея не касается напрямую этого мода. Это можно назвать новой версией. Т.к. в начальном варианте там просто нужно устоять на самой последней плитке в воздухе.

Тут ключ не в этом. Я предложил превратить легкий ДМ в нечто более сложное, т.к. камера будет не за спиной игрока, а будет зафиксирована в 1 точке в стороне (SetPlayerCameraPos, SetPlayerCameraLookAt). Не исключаю вариант, когда камера будет зафиксирована где-то прямо сверху в 10 метрах - это будет напоминать старый добрый первый GTA или частицы его в GTA 2,3 .
Reply
#19

вот, концепт, как думаете имеет право на адекватное существование?

Code:
Dr.Psycho (19:48:52 28/04/2010)
я вот чо подумал


Dr.Psycho (19:48:55 28/04/2010)
ведь можно


Dr.Psycho (19:49:00 28/04/2010)
написать просто мего режим


Dr.Psycho (19:49:06 28/04/2010)
точнее инклуд


Dr.Psycho (19:49:10 28/04/2010)
который будет действовать


Dr.Psycho (19:49:16 28/04/2010)
не компилируясь


Orr... Orange! (19:49:28 28/04/2010)
эмм всмысле


Dr.Psycho (19:49:30 28/04/2010)
смотри - записать в txt какую нибудь функцию


Dr.Psycho (19:49:34 28/04/2010)
например цикл


Dr.Psycho (19:49:43 28/04/2010)
и потом функцией делать чтение


Dr.Psycho (19:49:48 28/04/2010)
и выполнять её как написано в txt


Dr.Psycho (19:50:02 28/04/2010)
это сильно расширяет возможности pawno


Orr... Orange! (19:50:15 28/04/2010)
так все равно не понял :O


Dr.Psycho (19:50:20 28/04/2010)
или участок какого то кода


Dr.Psycho (19:50:26 28/04/2010)
смотри


Dr.Psycho (19:50:26 28/04/2010)

stock UniqueCode(type,string[MAX_STRING_TO_CODE],key1,key2,key3,key4,key5)
{
   new length = strlen(string);
   new string2[MAX_STRING_TO_CODE];
   for(new i = 0; i < length; i++)
   {
     if(type == type1) { string2[i] = (string[i]-key1)+key2-key3+key4+key5; } // Code
     if(type == type0) { string2[i] = (string[i]+key1)-key2+key3-key4-key5; } // Decode
   }
   return string2;
}



Dr.Psycho (19:50:28 28/04/2010)
функция


Dr.Psycho (19:50:31 28/04/2010)
она компилируется в amx


Orr... Orange! (19:50:34 28/04/2010)
а подключать к моду как будем txt?


Dr.Psycho (19:50:38 28/04/2010)
да


Dr.Psycho (19:50:40 28/04/2010)
пишем её в txt


Dr.Psycho (19:50:44 28/04/2010)
и написать инклуд


Dr.Psycho (19:50:47 28/04/2010)
который читает этот txt


Dr.Psycho (19:50:49 28/04/2010)
и выполняет


Orr... Orange! (19:50:57 28/04/2010)
но ведь


Dr.Psycho (19:51:01 28/04/2010)
то есть без компиляции


Orr... Orange! (19:51:05 28/04/2010)
результат чтения не может быть функции


Orr... Orange! (19:51:11 28/04/2010)
и компиляция обязательна


Dr.Psycho (19:51:18 28/04/2010)
но я то сделаю


Orr... Orange! (19:51:20 28/04/2010)
а вообще кстати


Dr.Psycho (19:51:20 28/04/2010)
чтоб не обязательна


Orr... Orange! (19:51:29 28/04/2010)
тут же идет компиляция+интерпретация?


Dr.Psycho (19:51:36 28/04/2010)
компиляция


Orr... Orange! (19:51:38 28/04/2010)
тоесть бинарный amx и сервер?


Dr.Psycho (19:51:43 28/04/2010)
ну хз как это выразить


Orr... Orange! (19:51:46 28/04/2010)
ну


Orr... Orange! (19:52:01 28/04/2010)
если б только компиляция то мы бы уже откомпелироанный скрипт запустили


Dr.Psycho (19:52:06 28/04/2010)
да


Dr.Psycho (19:52:09 28/04/2010)
а это даст возможности


Orr... Orange! (19:52:09 28/04/2010)
а тут его сервер запускает


Dr.Psycho (19:52:17 28/04/2010)
сервер запускает инклуд в амх


Dr.Psycho (19:52:27 28/04/2010)
а далее читает функции из тхт и выполняет их


Orr... Orange! (19:52:37 28/04/2010)
невозможно по моему


Dr.Psycho (19:52:43 28/04/2010)
возможно


Dr.Psycho (19:52:45 28/04/2010)
летом напишу


Orr... Orange! (19:52:58 28/04/2010)
ты имеешь ввиду #include <lol.txt> ?


Orr... Orange! (19:53:02 28/04/2010)
или как


Orr... Orange! (19:53:20 28/04/2010)
если чтение из файла функцией из мода то это будет результат


Orr... Orange! (19:53:33 28/04/2010)
его нельзя сделать функцией


Dr.Psycho (19:56:22 28/04/2010)
смотри


Dr.Psycho (19:56:24 28/04/2010)
есть функция


Dr.Psycho (19:56:31 28/04/2010)
Выполнить функцию из файла(имя файла)


Dr.Psycho (19:56:38 28/04/2010)
далее идёт чтение этого файла


Dr.Psycho (19:56:50 28/04/2010)
и разложение его функцией на куски


Orr... Orange! (19:56:53 28/04/2010)
так вот поподробнее об этоуй функции


Dr.Psycho (19:56:57 28/04/2010)
и выполнение этого когда в pawn


Dr.Psycho (19:57:03 28/04/2010)
например строку GetPlayerPing


Dr.Psycho (19:57:11 28/04/2010)
преобразует в GetPlayerPing


Dr.Psycho (19:57:14 28/04/2010)
то есть функцию


Orr... Orange! (19:57:24 28/04/2010)
ну...


Dr.Psycho (19:57:35 28/04/2010)
и эта функция выполняется из файла, не компилируясь


Dr.Psycho (19:57:37 28/04/2010)
вот вся затея


Orr... Orange! (19:57:38 28/04/2010)
если только перебором


Orr... Orange! (19:57:43 28/04/2010)
если там функция такая то


Orr... Orange! (19:57:50 28/04/2010)
то выполнить то


Dr.Psycho (19:57:52 28/04/2010)
да, перебором


Orr... Orange! (19:57:57 28/04/2010)
с дофига условиями


Orr... Orange! (19:58:00 28/04/2010)
это не найс


Dr.Psycho (19:58:03 28/04/2010)
найс


Dr.Psycho (19:58:13 28/04/2010)
для облегчения поиска


Orr... Orange! (19:58:16 28/04/2010)
а скобки?


Dr.Psycho (19:58:17 28/04/2010)
разбить функции по префиксу


Dr.Psycho (19:58:21 28/04/2010)
скобки тоже читаются


Dr.Psycho (19:58:27 28/04/2010)
и если есть скобки открытые


Dr.Psycho (19:58:33 28/04/2010)
то чтение идёт до тех пор пока не будут закрытые


Dr.Psycho (19:58:36 28/04/2010)
или ретурн


Orr... Orange! (19:59:10 28/04/2010)
блин это изобретение велосипеда с оторванными кусками колес и двумя рулями


Orr... Orange! (19:59:16 28/04/2010)
;o


Dr.Psycho (19:59:19 28/04/2010)
я выложу этот лог в русский раздел?


Orr... Orange! (19:59:23 28/04/2010)
можно


Dr.Psycho (19:59:26 28/04/2010)
малоли кто чо посоветует


Dr.Psycho (19:59:28 28/04/2010)
разумно или нет


Orr... Orange! (19:59:29 28/04/2010)
ога


Dr.Psycho (20:00:12 28/04/2010)
но таким образом


Dr.Psycho (20:00:16 28/04/2010)
можно будет целые режимы


Dr.Psycho (20:00:19 28/04/2010)
запускать из txt


Orr... Orange! (20:00:43 28/04/2010)
однако сам код интерпретатора в amx будет весить много


Orr... Orange! (20:00:44 28/04/2010)
хотя


Orr... Orange! (20:00:49 28/04/2010)
мб и средне


Dr.Psycho (20:00:53 28/04/2010)
не много


Dr.Psycho (20:00:56 28/04/2010)
будет много весить буфер


Orr... Orange! (20:00:59 28/04/2010)
а таймеры


Orr... Orange! (20:01:02 28/04/2010)
и паблики?


Dr.Psycho (20:01:22 28/04/2010)
да, с этим накладка


Dr.Psycho (20:01:27 28/04/2010)
но решение есть имхо


Dr.Psycho (20:01:37 28/04/2010)
какое нибудь
Reply
#20

Не помню его имени, но он кажется первый кто выложил дрифт скрипт/функцию, так вот тоже самое он выкладывал где-то год назад, инклуд кажись. Скажу тебе короче, забудь, геморой сплошной - что в *опе так и в голове. Хочеш что то быстрое и маленькое сфарганить? используй фильт-скрипты
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)