Перейти к содержимому


Фотография

Уроки по скриптописанию.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 78

#61 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 24 January 2018 - 05:49

Функция КК примерно вчетверо быстрее, чем БИСовская.

Странное утверждение.
 
Взял функцию КК.
Свою.
Бисовску.
 
Моя:

Hidden text

 

 Добавляем код:

Hidden text

 

Результат:
"TEST ULTIMA: 4.5"
"TEST BIS: 0.221985"
"TEST KK: 8.08899"

 

1. Как видно, БисЫ ничО так шустрят.

2. 8.08899 - можете проверить... именно такой результат выдал КК. - Тест раза 4 запускал.


Сообщение отредактировал NoNameUltima: 24 January 2018 - 16:55

  • 0

#62 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 24 January 2018 - 12:32

NoNameUltima, когда появились эти функции не было команды:


<STRING> find <STRING>
Она появилось примерно через год после событий описываемых в тексте. И когда эта команда все же появилась, то KK оптимизировал ей БИСовскую функцию (Это в ней написано, можете почитать), а исправлять статьи написанные хрен знает когда никто не будет.

PS Тестировали в "Scheduled Environment"?

Сообщение отредактировал vlad333000: 24 January 2018 - 12:44

  • 0

#63 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 24 January 2018 - 13:01

NoNameUltima, когда появились эти функции не было команды:

 

<STRING> find <STRING>
Она появилось примерно через год после событий описываемых в тексте. И когда эта команда все же появилась, то KK оптимизировал ей БИСовскую функцию (Это в ней написано, можете почитать), а исправлять статьи написанные хрен знает когда никто не будет.

PS Тестировали в "Scheduled Environment"?

 

В А2 вообще ничего нет подобного, поэтому юзаем, что имеем.

Тестировал в А3, в VR, банально через консоль отладки.

 

P.S. Функцию слегка изменил, в верхнем посте. После чего стала выдавать результаты еще чуть лучше -

11:50:40 "TEST ULTIMA: 5.85303"
11:50:47 "TEST KK: 7.53992"
11:51:09 "TEST ULTIMA: 5.875"
11:51:16 "TEST KK: 7.57104"


  • 0

#64 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 24 January 2018 - 13:06

NoNameUltima сказал(а):
В А2 вообще ничего нет подобного, поэтому юзаем, что имеем.

A2 кому то еще нужна?

NoNameUltima сказал(а):
Тестировал в А3, в VR, банально через консоль отладки.

А чем вас не устроила кнопочка слева от кнопочек "execture", на ней еще нарисован такой типа спидометр, или команда

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание


  • 0

#65 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 24 January 2018 - 13:48


А чем вас не устроила кнопочка слева от кнопочек "execture", на ней еще нарисован такой типа спидометр, или команда

А есть существенная разница?

0.56 UL

0.78 KK

0.02 BIS


  • 0

#66 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 24 January 2018 - 15:13


A2 кому то еще нужна?

Играются ребятки))


  • 0

#67 OFFLINE   Schatten

Schatten

    Лейтенант

  • Пользователи
  • 1155 сообщений
  • Откуда:Минск, Беларусь

Отправлено 24 January 2018 - 15:33

Даже 1.64 готовится к выходу:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

.


  • 1

#68 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 24 January 2018 - 17:19

А есть существенная разница?

Существенной с вашим методом - нет
Просто через эти способы более наглядно видно производительность кода, ну и все же вам пришлось писать целый кусок кода, хоть и простого, когда можно было просто нажать одну кнопку :)
  • 0

#69 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3135 сообщений
  • Откуда:РФ

Отправлено 25 January 2018 - 18:29

С тестовым кодом от Ultima на моей машине вообще получился весёлый результат с функцией от КК.

Функция от Ultima и бесовская функция показали итерацию в 10000 циклов в пределах 2 сек.

От КК, хотите верьте хотите нет, ~50 сек. Я не мог поверить тому что я вижу в логе, я сделал несколько десятков проходов по тесту.

После некоторых танцов с бубном над функцией я снизил тайминг в двое.


  • 1

#70 OFFLINE   Dimon UA

Dimon UA

    Ст.сержант

  • Пользователи
  • 300 сообщений
  • Откуда:Севастополь

Отправлено 26 January 2018 - 16:16

а вы проверьте текст по проще, чем
["1234879659809", "sdjfkdf895811kljj923942934201234569dsjfgldjg9y09y096y0965yh096y0596y09586y09586y09586y09580y9805y1234879659809"]


  • 0

#71 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3135 сообщений
  • Откуда:РФ

Отправлено 27 January 2018 - 01:22

Логика подсказывает что тайминги будут меньше, но не всегда же бывает проще).

 

Проблема высокого тайминга в функции от КК в том, что в функции внутри цикла при каждой итерации производится две достаточно ресурсоёмких операции над тестовым массивом, замена более старых команд на более свежие снизили тайминг в два раза, и тем не менее тайминг всё равно достаточно высок. Операции над массивами достаточно жёсткая вещь в плане затрат ресурсов.


  • 0

#72 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 28 January 2018 - 17:58


а вы проверьте текст по проще, чем

А смысл?

В коротком тексте результаты будут в любом случае схожими.

А вот к примеру - есть длл, с рконом, которая возможно будет возвращать массив players, и потом его надо распарсить. - Ясен пень, что можно и в длл распарсить... но как пример - там строка гооораздо длиннее представленной тут.


  • 0

#73 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 29 January 2018 - 12:23

NoNameUltima, для парсинга массива из строки существует parseSimpleArray, которая выполняет эту операцию почти моментально
  • 0

#74 OFFLINE   NoNameUltima

NoNameUltima

    Сержант

  • Пользователи
  • 186 сообщений
  • Откуда:SPB

Отправлено 29 January 2018 - 13:59


parseSimpleArray

1. only А3

2. данные приходят в виде строки, из которой еще отрезать надо несколько символов - заголовок пакета.....

3. Если не ошибаюсь в строке они разбиты нуль байтом - x00

PS да и просто так там не распарсить - не совсем структурированные данные...


Сообщение отредактировал NoNameUltima: 29 January 2018 - 14:00

  • 0

#75 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 29 January 2018 - 14:08

NoNameUltima, неструктурированные данные - плохо... на создание кода, который будет std::vector превращать в массив A3 для parseSimpleArray, у меня ушло всего 5-10 минут. Отрезать какой-либо заголовок из строки проще всего, особенно если вы будете использовать какой-нибудь символ, который точно не сможет встретится в заголовке.

PS Альтернативный синтаксис callExtension позволяет расширениб вернуть код ошибки, что бы оставить output только для результата
  • 0

#76 OFFLINE   Ezreall47

Ezreall47

    Рядовой

  • Пользователи
  • 11 сообщений
  • Откуда:Кавала

Отправлено 13 February 2018 - 23:46

А я не особо понял, как пользоваться командой HideObject. Мне вот допустим надо что бы они были скрыты(объекты), но после того как я подобрал документ, они появились. Как это сделать?


  • 0

#77 OFFLINE   Borizz.k

Borizz.k

    Рядовой

  • Пользователи
  • 1 сообщений

Отправлено 03 April 2018 - 20:22

Всем добрый день!

 

Может тут помогут...

 

Я новичек (не газ!) и только учусь, но во многом уже разобрался (ковыряя в основном dayz sa 0.62)

 

Возникли тут вопросики

Возможно ли получить список всех переменных и их значений из свойства объекта?

 

типа

_test  = _object getVariable *;

 

_test = allVariables _object; не работает почему-то...

 

Если я создаю обьект в игре

_object = createvehicle [_objecttype,[1000,1000,0], [], 0, "CAN_COLLIDE"];

и создаю в его окружении переменную и присваиваю ей значение

_object setVariable ["POSITION",[1000,1000,0]];

то сохраняется ли эта переменная в свойствах обьекта в базе при рестарте сервера?

Обьект сохраняется точно, а во с переменной непонятки...

 

Спасибо!


  • 0

#78 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3067 сообщений
  • Откуда:Кострома

Отправлено 04 April 2018 - 01:17

Возможно ли получить список всех переменных и их значений из свойства объекта?

Да:

allVariables _object

не работает почему-то

У вас надо спросить. Что за _object? Что ищите?

то сохраняется ли эта переменная в свойствах обьекта в базе при рестарте сервера?

В Арме нету никакой БД сервера. Это расширение, соответственно, сохранение чего-либо зависит от того как написали это расширение и того как его используют
  • 0

#79 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3135 сообщений
  • Откуда:РФ

Отправлено 04 April 2018 - 02:09

И не факт что здесь

 

ковыряя в основном dayz sa 0.62

будет то, что можно делать в арме, и наоборот.


  • 0




Яндекс.Метрика