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

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


help:limits

Различия

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

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

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
help:limits [2023/01/03 15:19]
aleks_versus
help:limits [2024/10/14 13:20] (текущий)
aleks_versus обновление 5.9.0
Строка 1: Строка 1:
-[[help:​analyzer|Вперёд: Анализатор кода]]+[[help:​analyzer|Назад: Анализатор кода]]
  
 ====== Ограничения QSP ====== ====== Ограничения QSP ======
  
- +**Актуализировано для плеера версии 5.9.0**
-**Актуализировано для плеера версии 5.8.0**+
  
 При написании игр на QSP необходимо учитывать следующие ограничения:​ При написании игр на QSP необходимо учитывать следующие ограничения:​
  
-  Максимальное число одновременно видимых действий на локации:​ 50  +  ​* Максимальное число одновременно видимых действий на локации:​ 50 
-  ​Максимальное число подключаемых файлов QSP ([[help:​modules|модулей]]):​ 100  +  ​Максимальное число подключаемых файлов QSP ([[help:​modules|модулей]]):​ 100 
-  ​Максимальное число передаваемых функции аргументов:​ 20\\ Например,​ функции ''​**MAX**''​ можно передать 20 чисел:<​sxh qsp> +  ​Максимальное число передаваемых функции аргументов:​ 20\\ 
- max(1,​2,​3,​4,​5,​6,​7,​8,​9,​10,​11,​12,​13,​14,​15,​16,​17,​18,​19,​20) +Например,​ функции ''​%%MAX%%''​ можно передать 20 чисел: <sxh qsp> 
-</​sxh>​ Нужно помнить,​ что при работе с локациями,​ имя локации так же является аргументом,​ поэтому при использовании таких операторов и функций,​ как ''​**GOTO**'',​ ''​**GOSUB**'',​ ''​**FUNC**'',​ на локацию можно передавать только девятнадцать аргументов.\\ При работе с оператором ''​**DYNAMIC**''​ одним из аргументов является код, передаваемый оператору,​ поэтому в код тоже можно передавать не больше 19 аргументов. То же касается и функции ''​**DYNEVAL**''​. +     ​max(1,​2,​3,​4,​5,​6,​7,​8,​9,​10,​11,​12,​13,​14,​15,​16,​17,​18,​19,​20) 
-  ​Максимальная вложенность выражений:​ 30  +</​sxh>​ Нужно помнить,​ что при работе с локациями,​ имя локации так же является аргументом,​ поэтому при использовании таких операторов и функций,​ как ''​%%GOTO%%'',​ ''​%%GOSUB%%'',​ ''​%%FUNC%%'',​ на локацию можно передавать только девятнадцать аргументов.\\ 
-  ​Максимальное число операторов ​в выражении (на одном уровне вложенности):​ 100  +При работе с оператором ''​%%DYNAMIC%%''​ одним из аргументов является код, передаваемый оператору,​ поэтому в код тоже можно передавать не больше 19 аргументов. То же касается и функции ''​%%DYNEVAL%%''​. 
-  ​Максимальное число пунктов всплывающего пользовательского меню: 100  +  ​Максимальная вложенность выражений ​(открытые скобки): 30 
-  ​Максимальное число предметов в инвентаре:​ 1000  +  ​Максимальное число операций ​в выражении (на одном уровне вложенности):​ 100 
-  ​Максимальное число одновременно проигрываемых звуков:​ 500+  ​Максимальное число пунктов всплывающего пользовательского меню: 100 
 +  ​Максимальное число предметов в инвентаре:​ 1000 
 +  ​Максимальное число одновременно проигрываемых звуков:​ 500 
 + 
 +Длина строки теоретически ограничена только объемом доступной оперативной памяти,​ либо размером типа "​int":​ 2 гигабайта текста.
  
-Длина строки теоретически ограничена только объемом доступной оперативной памяти, либо размером типа "​int":​ 2 гигабайта текста+Как и в строках, предел объёмов данных для кортежа 2 Гигабайта ​или **2147483648** элементов. Величина ​кортежа не может превысить ​объём ​оперативной памяти.
  
 Числовые переменные принимают значения от **-2147483647** до **2147483647**. Превышение предела уводит число к противоположному знаку. Числовые переменные принимают значения от **-2147483647** до **2147483647**. Превышение предела уводит число к противоположному знаку.
Строка 29: Строка 32:
 Количество переменных ограничено 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** локаций.
Строка 35: Строка 38:
 ===== F.A.Q. по ограничениям ===== ===== F.A.Q. по ограничениям =====
  
- * [[https://​aleksversus.github.io/​howdo_faq/​pages/podkljuchaemye_fajly_0170.html#​faq_23_01|Видел в справке ограничение на 100 подключаемых файлов. Это что, я не смогу использовать более ста файлов картинок и музыки?​]] +  ​* [[https://​aleksversus.github.io/​howdo_faq/​docs/​howdo/​contents/​restriction/​inclib_numbers/​|Видел в справке ограничение на 100 подключаемых файлов. Это что, я не смогу использовать более ста файлов картинок и музыки?​]] 
- * [[https://​aleksversus.github.io/​howdo_faq/​pages/vyvodimye_dejstvija_0171.html|Хочу разместить на локации около 100 действий. Это вообще возможно?​]] +  * [[https://​aleksversus.github.io/​howdo_faq/​docs/howdo/​contents/​restriction/​actions_numbers|Хочу разместить на локации около 100 действий. Это вообще возможно?​]] 
- * [[https://​aleksversus.github.io/​howdo_faq/​pages/imena_peremennyh_0172.html|Генерирую переменные с помощью оператора dynamic, и вдруг выходит ошибка 123. Что это, и как с этим бороться?​]]+  * [[https://​aleksversus.github.io/​howdo_faq/​docs/howdo/​contents/​restriction/​varnames|Генерирую переменные с помощью оператора dynamic, и вдруг выходит ошибка 123. Что это, и как с этим бороться?​]]
  
help/limits.1672759167.txt.gz · Последние изменения: 2023/01/03 15:19 — aleks_versus