Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Стартап in-game JavaScript

Тема в разделе "Разработка плагинов для новичков", создана пользователем DPOH-VAR, 5 янв 2013.

?

Как вы относитесь к скриптам в игре?

  1. Я не знаю ни одного языка программирования/скриптинга.

    16,2%
  2. Идея не стоит реализации.

    0,9%
  3. Я знаю JavaScript. Хорошая идея применять его в игре.

    38,5%
  4. Хотелось бы использовать другой язык (указать ниже).

    9,4%
  5. Меня полностью устраивает синтаксис Varscript.

    6,0%
  6. БАЯН (указать ссылку).

    1,7%
  7. А я томат (не голосую).

    27,4%
  1. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Хочу узнать мнения людей людей по сабжу.
    Суть:
    Я задумал плагин, позволяющий интерпретировать скрипты на js в ответ на определенные события.
    а конкретно:
    • При использовании предмета. Скрипт будет храниться внутри этого предмета
    • При событии игрока, если он имеет предмет со скриптом. Например, при смерти игрока.
    • То же самое для мобов.
    • Возможность ввести скрипт непосредственно в чат и считать из файла.
    • JavaScript внутри Command-блоков. Длина строки внутри него на самом деле не ограничена. Будет выполняться при активации редстоуном или при взаимодействии игрока с ближайшим блоком
    • При любом Bukkit и Cron событии (запись скрипта в файлах yaml)
    Говоря еще проще, хочу переписать Varscript со всем его функционалом для использования на более простом языке.
    Языки с обратной польской нотацией сложны для изучения, а JavaScript знает каждый второй "уверенный пользователь ПК"
    Плагин будет ориентирован на эвент-серверы и RPG-серверы.
    За основу собираюсь взять движок Rhino
    Основа регистрации событий, эвентов и т.д. - из Varscript

    Прошу всех, кто заинтересован, проголосовать в данной теме.

    -----

    Подобные плагины:
    BukkitScript - позволяет биндить скрипты на некоторые события, команды. К сожалению, имеет сложный синтаксис.
     
    SyperStroitel, Klever, ksada и 4 другим нравится это.
  2. Хостинг MineCraft
    <
  3. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Если кто-то заинтересован, то ради эксперимента могу попробовать подключить и другие языки (Python, Ruby, PHP, и т.д.)
     
    tOshKa, ITrAnEI и Aim-X нравится это.
  4. hubridos

    hubridos Старожил Пользователь

    Баллы:
    103
    Skype:
    hubridos
    Имя в Minecraft:
    Hubrid
    PHP пожалуйста_)
     
    TechnicianBear и Jers нравится это.
  5. kDas

    kDas Старожил Пользователь

    Баллы:
    123
    Skype:
    dasjke
    Имя в Minecraft:
    kDasRU
    Ну, "каждый уверенный пользователь ПК" скорее знает PHP, нежели JS. :) Так что да, он будет более актуальным. Но руби же, например, няшнее - тем не менее, пых более популярен. Больше профита.
     
    ufes нравится это.
  6. ensirius

    ensirius Старожил Пользователь

    Баллы:
    123
    Зачем?
     
    Jers нравится это.
  7. hubridos

    hubridos Старожил Пользователь

    Баллы:
    103
    Skype:
    hubridos
    Имя в Minecraft:
    Hubrid
    @kDas,
    У вас всё слишком в розовом свете, некоторые задроты тоже думают. что профессионально владеют компьютером, а сами банально гугл пингануть не могут на проверку пакетов :fp:
     
  8. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Окай! Следующий на очереди будет PHP, если найду способ подключить его к ScriptEngine
    Пока что мучаюсь с JavaScript ;)
     
    ITrAnEI и Jers нравится это.
  9. Jers

    Jers Старожил Пользователь

    Баллы:
    153
    Было бы не плохо подключить JS...
     
  10. ivanque

    ivanque Активный участник

    Баллы:
    73
    Ruby не помешал бы.
     
  11. Ission

    Ission Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    lokivava
    Скорее всего то, что я напишу, будет являться бредом, но это моё мнение.
    На сколько я знаю во многих местах изучали и изучают Pascal как основу программирования. Что если его использовать для скриптов, правда немного изменив некоторые части? Хотя я более чем уверен, что рядовые пользователи на любом языке ничего дельного не напишут, а те кто сможет - им без разницы на чём писать. Взять того же меня. Я даже не пытался искать скрипты на minecraft. Мне понадобилась ранее негде не реализованая функция - я взял её и реализовал, хотя Java не изучал вообще, почти полностью методом тыка. Я не представляю где можно использовать скриптовые предметы, за исключением событий.
    В общем моё мнение: без разницы какой язык использовать, лишь бы оно работало и нашлись люди, которым это нужно.
     
    OsipXD, Terminatiriliys, teodorko и 4 другим нравится это.
  12. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Внутри JRE 6 уже есть JavaScript engine. Поэтому первоначально делаю именно для него. Но заранее оставляю возможность для подключения других языков. Скорее всего придется делать это путем добавления дополнительных библиотек.
     
    ufes, ITrAnEI, Ission и ещё 1-му нравится это.
  13. mr.cashzoomhello

    mr.cashzoomhello Активный участник

    Баллы:
    63
    Имя в Minecraft:
    Mr_CashZoomHello
  14. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Эксперимент проведен.
    На JavaScript переносится весь bukkit API.
    Я думаю оставить это конечным результатом для обработки скриптов (сделать доступным Bukkit API)
    но синтаксис Varscript оказался проще в реализации, удобнее и лучше по быстродействию.
     
  15. stew

    stew Старожил

    Баллы:
    103
    Skype:
    antonov330
    Имя в Minecraft:
    StewMan
    вот по этому VS нужно оставить! и не капли он не сложный, были бы доки...
     
    ВремяПриключений и DPOH-VAR нравится это.
  16. Sirse

    Sirse Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Sirse
    Покажусь идиотом, но как насчёт Lua?
     
    Ax3 нравится это.
  17. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Varscript будет разрабатываться дальше =) ибо он оказался намного лучше в плане быстродействия.
    Разработка возможно затянется, т.к. я решил сделать объектно-ориентированный язык. VS и JS смогут взаимодействовать между собой.
    Об остальных продвижениях в разработке буду писать в соответствующей теме.
    Скорее всего будет доступен любой язык, поддерживающийся ScriptEngine. я предусматриваю такой вариант, что нужно будет просто подключить библиотеку с этим языком.

    Varscript же будет работать отдельно от ScriptEngine, т.к. он полностью компилируемый язык.
     
    Vedroyder нравится это.
  18. Alastar

    Alastar Старожил Пользователь

    Баллы:
    173
    Идея хорошая.
    PS Эээх, придется мне отложить 4 учебника по C# и начать читать учебник по JavaScript)
     
  19. Автор темы
    DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Если знаешь C++/C#/Java, то JavaScript - не проблема.
    К тому же из всех перечисленных, у меня больше всего уважения к C#.
    Так что не советую откладывать ;)
    Я не говорю точных сроков, когда закончу разработку. Но с JavaScript все действительно просто. Кроме регистрации событий. Эдакий тормозной, но мощный язык. Доступен всем, на его изучение уходит 2-7 дней.

    Основной упор я делаю на VarScript. Он будет исполнять нужные команды напрямую, без рефлексий или каких-либо фокусов. Явный его недостаток - необходим большой набор операндов. В текущей версии их более 600. Поэтому сам плагин > 1.5 MB и занимает много места в оперативке. Зато быстродействие почти как при написании чистого кода на Java, а иногда даже и превосходит его (в случае говногода неоптимизированного кода некоторых плагинописцев).
     
  20. ensirius

    ensirius Старожил Пользователь

    Баллы:
    123
    Кхм, я какой-то не правильный, java хорошо знаю, а javascript синтаксис не понимаю.
     
    ВремяПриключений, AntiDrug и Alastar нравится это.
  21. Tehnyla

    Tehnyla Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    keelfy
    Кто знает этот плагин - ScriptsCraft? (биндит скрипты на таблички) (неуверен, но может быть не ScriptsCraft, а ScriptCraft, но не суть....
     

Поделиться этой страницей