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

Пределы и редактор игры

Тысяча инструкций, четыреста символов буфера, 256 команд рисования — пределы стоит знать до того, как упрёшься

Что Предел
инструкций в программе 1000
меток в текстовой записи 500
символов в буфере печати 400
команд рисования до drawflush 256
связей у процессора по радиусу блока, а не по счёту
мест в ячейке памяти 64, в блоке памяти — 512

Тысяча инструкций — это много: столько не пишут руками. Упираются в неё те, кто собирает программу чем-то другим — компилятором или генератором.

Окно процессора — это блочный редактор: перетаскивание, выпадающие списки, стрелки переходов. Он хорош, пока программа держится в голове, и мучителен, когда в ней три сотни строк.

Поэтому у него есть вторая дверь — «Правка кода»: то же самое текстом. В ней:

  • программу можно вставить целиком из буфера обмена;
  • работают метки вместо номеров строк;
  • удобно править массовые вещи — поиском и заменой в любом текстовом редакторе.
Куда Как
в другой процессор на той же карте скопировать текст через «Правка кода»
на другую карту так же — текст не привязан к карте
вместе с блоками схемой: процессор копируется вместе с программой и связями

Схема — единственный способ перенести программу со связями: имена cell1, duo1 в ней сохраняются, если блоки переносятся вместе. Отдельно скопированный текст связей не помнит вовсе: их придётся расставить заново, и порядок будет другим.

  • поиска по программе. В трёхстах строках искать приходится глазами;
  • комментариев, которые живут. Написать комментарий можно: в текстовой записи всё после # до конца строки игра пропускает. Но стоит открыть программу блоками и сохранить, как редактор соберёт текст заново — из блоков, — и комментарии исчезнут вместе с метками;
  • отладчика. Есть только окно переменных; точек останова и шага по строкам нет — их приходится изображать самому, wait и печатью в блок сообщений;
  • истории правок. Отмены нет: стёрли — значит стёрли.

Отсюда привычка опытных: держать программу текстом вне игры, править её обычным редактором и вставлять целиком.

Неофициальный проект, с Anuke не связан. Спрайты, шрифты и переводы Mindustry © Anuke, используются по GPL-3.0; Fira Code — по OFL-1.1. Код сайта — GPL-3.0.