???
Математика на уровне МГУ

Показано с 1 по 17 из 17

Тема: LUA - новые возможности в настройке и управлении ЛО

  1. #1
    Прораб пришелец
    Регистрация
    24.11.2000
    Адрес
    EETN
    Сообщений
    1,657

    LUA - новые возможности в настройке и управлении ЛО

    "Lua scripts are open parts of the program code. Advanced users may change these scripts to adapt program behaviour for their special needs without program rebuilding. We are moving to the open architecture step by step. Lock On uses Lua scripts for views and for data export just now but this is the beginning only." by Valery

    Столько раз упомянутый в изменениях патча 1.02.. Неужели сей сюрприз никого не заинтересовал?

    `Пока` только манипуляции с (расширенными) переменными обзора и `полетными` данными..
    Что уже возможно? Что планируется / хотелось бы иметь в будущем? Обсудим?

    http://www.lua.org

  2. #2
    Strannic
    Гость
    Ты б эта,перевёл бы,а то непонятно что обсуждать.
    ЗЫ Неужто позволят нормально обзор настраивать,я уже тему хотел создавать с предложениями=)

  3. #3
    Инструктор
    Регистрация
    12.02.2001
    Адрес
    Kiev
    Сообщений
    3,736
    chp, мой тебе совет, ты объясни человеческим языком, чего при помощи этой штуки можно будет добиться и как ее пользовать, чтобы у народа стимул появился во всем этом разбираться. А то ссылочки на какой-то англоязычный сайт с какй-то технологией программирования маловато для активного обсуждения. Не все ж такие спецы в программировании, как вы с Валерием .

  4. #4
    вирпрог Аватар для Dmut
    Регистрация
    14.07.2003
    Адрес
    Минск
    Возраст
    45
    Сообщений
    3,607
    LUA - вспомогательный язык программирования, созданный в 1994 и используемый совместно с другими языками высокого уровня, чаще всего С/С++. В целом язык относится к скриптовым языкам класса Perl, Tcl, Ruby, Forth, Python, но имеет ряд принципиальных отличий - расширяемость, в том числе собственных структур языка, относительная простота синтаксиса, высокая (в большинстве тестов - самая высокая) скорость исполнения в своём классе (скриптовых языков), широкая портируемость на большинство известных платформ, ОС и средств разработки, при этом изменения кода минимальны.

    Код LUA выглядит примерно так: ( пример функции расчета факториала для введенного с консоли числа )
    Код:
    function factorial (n)
      if n == 0 then return 1
      else return n*factorial(n-1) end
    end
    print "enter a number:"
    a = read("*number")
    print(factorial(a))
    Зарезервированных идентификаторов языка всего 19:
    Код:
    and     break  do          else  elseif
    end     for    function    if       in
    local   nil      not        or      repeat
    return  then   until       while
    ещё одна интересная особенность языка - таблицы со свободными типами данных и их ключей:
    Код:
    a = {}
    k = "x"
    a[k] = 10 -- new field, with key="x" and value=10
    a[20] = "great" -- new field, with key=20 and value="great"
    print(a["x"]) --> 10
    k = 20
    print(a[k]) --> "great"
    a["x"] = a["x"]+1 -- increments field "x"
    print(a["x"]) --> 11
    Текст создан при использовании книги Roberto Ierusalimschy - Programming in Lua, примеры взяты оттуда.

    Теперь по использованию LUA при экпорте данных из LO (по материалам форума и переписки с ED. Валерий Блажнов, поправьте меня если ошибаюсь):

    ED сoздаёт программу-сервер, которая по закрытому протоколу принимает данные из самой игры. Сама программа-сервер будет допускать стандартное сетевое подключение со стороны, для выдачи этих данных программе-клиенту пользователя. При этом настраивать формат выдачи и состав данных можно будет скриптами LUA, которые будет принимать программа-сервер.

    Остаётся дождаться более детального описания всего этого механизма и примеров использования.

  5. #5
    Инструктор
    Регистрация
    12.02.2001
    Адрес
    Kiev
    Сообщений
    3,736
    Т.е. таким образом можно будет получать данные из игры? И каким образом я потом могу использовать эти данные? В чисто ознакомительных целях, что ли?

  6. #6
    вирпрог Аватар для Dmut
    Регистрация
    14.07.2003
    Адрес
    Минск
    Возраст
    45
    Сообщений
    3,607
    всмысле ознакомительных? :confused:
    получил и используй как тебе вздумается, хочешь - логируй, хочешь - на внешний индикатор отсылай.

  7. #7
    Энергитический вампир Аватар для Death_pilot
    Регистрация
    05.09.2003
    Адрес
    тьма
    Возраст
    46
    Сообщений
    328
    Ну вы того хотя понимаю весна
    Люблю запах напалма по утрам.....(Апокалипсис Сегодня Х.ф.)

  8. #8
    Originally posted by Dmut
    [B]LUA - вспомогательный язык программирования, созданный в 1994 и используемый совместно с другими языками высокого уровня, чаще всего С/С++.
    В обще-то Си++ язык среднего уровня...

    В целом язык относится к скриптовым языкам класса Perl, Tcl, Ruby, Forth, Python, но имеет ряд принципиальных отличий - расширяемость, в том числе собственных структур языка, относительная простота синтаксиса, высокая (в большинстве тестов - самая высокая) скорость исполнения в своём классе (скриптовых языков),
    откуда появилась скорость то? если это всего лишь скриптовый язык

    широкая портируемость на большинство известных платформ, ОС и средств разработки, при этом изменения кода минимальны.
    c этой портируемостью таких багов в свое время наделали.. будем надеятся, что тут их избежали.. :-\\


    ещё одна интересная особенность языка - таблицы со свободными типами данных и их ключей:
    Код:
    a = {}
    k = "x"
    a[k] = 10 -- new field, with key="x" and value=10
    a[20] = "great" -- new field, with key=20 and value="great"
    print(a["x"]) --> 10
    k = 20
    print(a[k]) --> "great"
    a["x"] = a["x"]+1 -- increments field "x"
    print(a["x"]) --> 11
    достаточно медленная конструкция..



    Надеюсь ЕД доведет такую схему работы до ума.. а то багов будем ловить все оставшееся время...

  9. #9
    вирпрог Аватар для Dmut
    Регистрация
    14.07.2003
    Адрес
    Минск
    Возраст
    45
    Сообщений
    3,607
    В обще-то Си++ язык среднего уровня...
    хм, это что за новые веяния? академически всегда считалось, что С++ - язык высокого уровня, что и указано в огромном кол-ве литературы, а где сказано что он "среднего" уровня?

    откуда появилась скорость то? если это всего лишь скриптовый язык
    как я написал - высокая скорость в своём классе скриптовых языков.

    достаточно медленная конструкция..
    согласен, но во первых - пример расчета факториала - это своего рода классика, что-то вроде advanced "Hello World", во вторых пример не мой, из книжки, сам бы я через рекурсию тоже не писал, банальный цикл гораздо эффективнее.

  10. #10
    Разработчик
    Регистрация
    17.11.2000
    Адрес
    Москва
    Сообщений
    531
    Совсем недавно меня здесь спрашивали об отношении к скриптам, и я ответил, что мы будем их внедрять. Вот, процесс и пошел потихоньку

    Ничего нового собственно в применении Lua нет. В Far Cry большая часть прикладной логики вынесена в скрипты Lua, и мы намереваемся пойти тем же путем. Сама реализация Lua выполнена очень квалифицированно, проверена мировым сообществом программистов на практике и за десять лет эксплуатации зарекомендовала себя с самой лучшей стороны.

    В настоящее время мы внедряем Lua в экспериментальном порядке и намереваемся совместно с тестировщиками и продвинутыми пользователями выработать приемлемые формы открытой архитектуры симулятора. Разумеется, оптимальный баланс между кодом C++ и кодом Lua - это непростое дело. Однако, практические выгоды от такого баланса столь значительны, что с лихвой покрывают неизбежные затраты на поддержку двуязычной программной реализации.
    Крайний раз редактировалось Valery; 19.03.2004 в 12:51.
    Валерий Блажнов
    Eagle Dynamics

  11. #11
    Извин за оффтоп, но, Дмут! Шилдта знаешь? Вот он пишет, что язык Си среднего уровня, вместе с Явой, Forthb и C#
    ... если надо, могу цитату привести...

  12. #12
    вирпрог Аватар для Dmut
    Регистрация
    14.07.2003
    Адрес
    Минск
    Возраст
    45
    Сообщений
    3,607
    K0r0l =RAF=, а вот Страуструп (и абсолютное большинство других известных технических писателей таких как Knut, David Kruglinsky) всегда относил С++ к языкам высокого ровня, и уж точно не ставил в один ряд с "Явой, Forth, и C#" , Так что Шилдт хоть и авторитет, но находится в явном в меньшинстве.

    Валерий, а как присоединиться к сообществу тестеров и продвинутых пользователей для помощи во "внедрении"?

  13. #13
    Точно! Забыл Спросить! Валерий! Я тоже хотел бы помогать вам во внедрении LUA в Локон! Как это можно сделать?


    ЗЫ Дмут! Можно много всего говорить на эту тему, но тогда нас забанят за оффтоп :-))
    так что пусть каждый останется при своем мнении....

  14. #14
    Разработчик
    Регистрация
    17.11.2000
    Адрес
    Москва
    Сообщений
    531
    Originally posted by Dmut
    Валерий, а как присоединиться к сообществу тестеров и продвинутых пользователей для помощи во "внедрении"?
    К продвинутым пользователям нельзя присоединиться, нужно просто ими быть Всем будут доступны скрипты в открытом виде - развлекайтесь на здоровье. Только не советую обольщаться по поводу тех скриптов, которые появятся в патчах к ЛокОну, - это пока еще очень маленькое поле для деятельности. Разумеется, обо всех новшествах по данному направлению мы будем ставить пользователей в известность.
    Валерий Блажнов
    Eagle Dynamics

  15. #15
    Зашедший
    Регистрация
    25.01.2002
    Адрес
    Украина, г.Запорожье
    Возраст
    49
    Сообщений
    84

    Thumbs up

    Это приятный сюрприз, безусловно. За это - отдельное спасибо разработчикам.

    А для обсуждения, наверное, почва появится после "ощупывания" этих возможностей.

  16. #16
    Механик Аватар для Pilgrim
    Регистрация
    30.11.2001
    Адрес
    Челябинск
    Возраст
    53
    Сообщений
    283
    Записей в дневнике
    1
    Если есть движение в сторону скриптов, то может ли это означать, что - ДИНАМИЧЕСКИЕ КОМПАНИИ ещё не забыты?

    Какой объём, и главное какого типа будет информация? Только о пилотируемом самолёте, или о всех (а может и не только самолётах) ..... мечтаю я.
    Дмитрий AKA Pilgrim

  17. #17
    вирпрог Аватар для Dmut
    Регистрация
    14.07.2003
    Адрес
    Минск
    Возраст
    45
    Сообщений
    3,607
    если ED пойдут по стопам Crytek, разработчиков FarCry (а зарубежный издатель у них общий ) и вынесут значительную часть функций в скрипты, то можно ожидать не только динамические кампании, но и возможность улучшения AI.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •