Ну ок, да лимит переменных 5000. Это ж до фига много!
Для крупного проекта, это не так уж много. Просто пара примеров.
В игре 10 фракций, у которых есть репутация, репутация влияет на реакцию каждого отдельного НПЦ, на реакцию каждого отельного НПЦ влияет ещё и его личная история, даже, настроение. НПЦ на 10 фракций у нас 200 человек (те, с которыми мы можем работать), чтобы суммировать всё это дело и грамотно проверять реакцию нам необходимо хотя бы по 1 переменной, а лучше по 2, на каждого НПЦ. Это уже 400 штук, ну и репа фракций 410.
У нас есть 10 навыков, каждый навык имеет свои бонусы от вещей, состояний и всего остального, так же и штрафы. Чтобы работать со всем этим было удобно, желательно выделить по 3 переменных на навык. Текущее значение\штраф\бонус. И вот ещё 30 штук.
А там еще квесты, где нужны переменные, ачивки, другие всякие механики, рандомы\погоды\строительство и крафты ну и т.д...
Набрать на 5к переменных можно довольно быстро и сам не заметишь как. Да, далеко не всем проектам это нужно, я не буду спорить, но ведь может случиться так, что и нужно (8 но всё это ведь не относится к вопросу, не так ли?
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Если же мы говорим о конкретном примере из вопроса, то зачем нам плодить переменные - это не так удобно. Куда удобнее когда за 1 персонажа будет отвечать 1 переменная, вместо 10. Ты будешь знать какое значение и где должно быть и проверить его будет намного проще, чем постоянно листать список переменных (очень уж это в тесте делать неудобно, стандартными средствами), особенно если НПЦ будет не 2-3, а штук 20.
По этому оптимизировать количество необходимых переключателей и переменных, по моему здравая идея (8 даже, если вопрос не тупой экономии числа переменных.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Плагины - дело совершенно другого порядка (8 да и зачем они, когда можно без них.