Инструменты пользователя

Инструменты сайта


help:limits

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
help:limits [2022/07/14 10:32]
aleks_versus
help:limits [2024/10/14 13:20] (текущий)
aleks_versus обновление 5.9.0
Строка 1: Строка 1:
-=====Ограничения QSP=====+[[help:​analyzer|Назад:​ Анализатор кода]] 
 + 
 +====== Ограничения QSP =====
 + 
 +**Актуализировано для плеера версии 5.9.0**
  
 При написании игр на QSP необходимо учитывать следующие ограничения:​ При написании игр на QSP необходимо учитывать следующие ограничения:​
  
-  * Максимальное число одновременно видимых действий на локации:​ 50  +  * Максимальное число одновременно видимых действий на локации:​ 50 
-  * Максимальное число подключаемых файлов QSP ([[help:​modules|модулей]]):​ 100  +  * Максимальное число подключаемых файлов QSP ([[help:​modules|модулей]]):​ 100 
-  * Максимальное число аргументов:​ 20 (для плееров версии ​5.7.0 — 10) +  * Максимальное число ​передаваемых функции ​аргументов:​ 20\\ 
-  * Максимальная вложенность выражений:​ 30  +Например,​ функции ''​%%MAX%%''​ можно передать 20 чисел: <sxh qsp> 
-  * Максимальное число операторов ​в выражении(на одном уровне вложенности):​ 100  +     max(1,​2,​3,​4,​5,​6,​7,​8,​9,​10,​11,​12,​13,​14,​15,​16,​17,​18,​19,​20) 
-  * Максимальное число пунктов всплывающего пользовательского меню: 100  +</​sxh>​ Нужно помнить,​ что при работе с локациями,​ имя локации так же является аргументом,​ поэтому при использовании таких операторов и функций,​ как ''​%%GOTO%%'',​ ''​%%GOSUB%%'',​ ''​%%FUNC%%'',​ на локацию можно передавать только девятнадцать аргументов.\\ 
-  * Максимальное число предметов в инвентаре:​ 1000  +При работе с оператором ''​%%DYNAMIC%%''​ одним из аргументов является код, передаваемый ​оператору,​ поэтому ​в код тоже можно передавать не больше 19 аргументов. То же касается ​и функции ''​%%DYNEVAL%%''​
-  * Максимальное число одновременно проигрываемых звуков:​ 500 +  * Максимальная вложенность выражений ​(открытые скобки): 30 
 +  * Максимальное число операций ​в выражении (на одном уровне вложенности):​ 100 
 +  * Максимальное число пунктов всплывающего пользовательского меню: 100 
 +  * Максимальное число предметов в инвентаре:​ 1000 
 +  * Максимальное число одновременно проигрываемых звуков:​ 500
  
-Длина строки теоретически ограничена только объемом доступной оперативной памяти,​ либо размером типа "​int":​ 2 гигабайта текста. ​+Длина строки теоретически ограничена только объемом доступной оперативной памяти,​ либо размером типа "​int":​ 2 гигабайта текста.
  
-Числовые переменные принимают значения от **-2147483647** до **2147483647**.+Как и в строках,​ предел объёмов данных для кортежа 2 Гигабайта или **2147483648** элементов. Величина кортежа не может превысить объём оперативной памяти. 
 + 
 +Числовые переменные принимают значения от **-2147483647** до **2147483647**. ​Превышение предела уводит число к противоположному знаку. 
 + 
 +<sxh qsp> 
 +*pl (2147483647+22) 
 +</​sxh>​
  
 Количество переменных ограничено 12800, при этом не допускается более 50 переменных с одинаковым [[https://​ru.wikipedia.org/​wiki/​%D0%A5%D0%B5%D1%88-%D1%81%D1%83%D0%BC%D0%BC%D0%B0|хэшем]] имени. Количество переменных ограничено 12800, при этом не допускается более 50 переменных с одинаковым [[https://​ru.wikipedia.org/​wiki/​%D0%A5%D0%B5%D1%88-%D1%81%D1%83%D0%BC%D0%BC%D0%B0|хэшем]] имени.
  
-Количество элементов массива ограничено размерностью "​int",​ в зависимости от того, как собрана библиотека,​ 32768 или **2147483648** соответственно.+Количество элементов массива ограничено размерностью "​int",​ в зависимости от того, как собрана библиотека,​ 32768 или **2147483648** соответственно ​(то есть максимальный возможный номер ячейки массива ''​%%2147483647%%''​.).
  
 Количество локаций ограничено размером типа "​int"​. В зависимости от того, как собрана библиотека,​ "​int"​ будет ограничивать либо 32768, либо **2147483648** локаций. Количество локаций ограничено размером типа "​int"​. В зависимости от того, как собрана библиотека,​ "​int"​ будет ограничивать либо 32768, либо **2147483648** локаций.
 +
 +===== F.A.Q. по ограничениям =====
 +
 +  * [[https://​aleksversus.github.io/​howdo_faq/​docs/​howdo/​contents/​restriction/​inclib_numbers/​|Видел в справке ограничение на 100 подключаемых файлов. Это что, я не смогу использовать более ста файлов картинок и музыки?​]]
 +  * [[https://​aleksversus.github.io/​howdo_faq/​docs/​howdo/​contents/​restriction/​actions_numbers|Хочу разместить на локации около 100 действий. Это вообще возможно?​]]
 +  * [[https://​aleksversus.github.io/​howdo_faq/​docs/​howdo/​contents/​restriction/​varnames|Генерирую переменные с помощью оператора dynamic, и вдруг выходит ошибка 123. Что это, и как с этим бороться?​]]
 +
help/limits.1657794725.txt.gz · Последние изменения: 2022/07/14 10:32 — aleks_versus