Создание файла cfg
Содержание:
- How to auto-run autoexec.cfg file in CSGO?
- Когда необходим файл конфигурации приложения?
- Как создать конфиг
- Скачивание и установка конфиг на кс го про игрока
- Подборки команд
- Бинды
- Где находится конфиг ?
- Выдать себе оружие через консольную команду
- Как установить конфиг CS:GO
- Сохранение конфига
- Как загрузить config в игру?
- Параметры запуска игры
- Проверяем что получилось
- Как вернуть стандартный конфиг
- Стандартный конфиг кс го
- Как сохранить конфиг в КС ГО
- Команды для тренировки смоков
- Demo CSGO moments #1
- Conclusion
- Типы конфигов
- Hydra — упрощаем разработку, динамически создавая иерархическую структуру конфигурации приложения
How to auto-run autoexec.cfg file in CSGO?
Advertisement
I am adding both the methods here, first using the Steam launcher, and a simple code that is added to the end of the file. You can try any of your choices, it will also help you to troubleshoot in case the file is not working.
- To auto-run CSGO autoexec.cfg through steam launcher, right click on CSGO in the game library. Click on Properties > Set Launch Options. Type the command +exec autoexec.cfg and click on Ok.
- The second way is open autoexec.cfg file and add the following code to the end of text file – exec autoexec.cfg.
So these are the two methods to auto-run or auto-launch the autoexec.cfg file in CSGO. Both are working methods allowing you to launch your custom game settings. You can then edit the notepad file and add remove settings as per your need. CSGO autoexec.cfg file will help you to try out various combos and techniques to improve your game. You can then just download custom settings by searching on Google and apply them instantly. Copy-paste the text and save the file.
Когда необходим файл конфигурации приложения?
Перед разработкой конфигурационного файла сначала необходимо спросить себя, нужен ли вообще какой-либо внешний файл с данными? Разве мы не можем просто поместить их в виде константных значений прямо в исходном коде? Собственно, достаточно известная концепция The Twelve-Factor App давно отвечает на этот вопрос:
Подходы рекомендованные этой концепцией предписывают, чтобы любые параметры, зависящие от среды, такие как учетные данные базы данных, находились во внешнем файле. В противном случае их реализуют просто обычными константами в коде. Другой вариант использования, который я часто вижу, – это хранение динамических переменных (данных) во внешнем файле (базе данных), например, черный blacklist или белый whitelist список пользователей. Ими могут быть числа в заданном диапазоне (например, длительность тайм-аута) или любые текстовые файлы с произвольным содержимым. Отметим, что эти динамические переменные (данные) остаются неизменными вне зависимости от особенностей исполняемой среды.
В свою очередь файл конфигурации делает программное обеспечение более гибким и легким для редактирования его функциональных возможностей. Однако, если он слишком сильно разрастается, рациональнее все таки перенести его в базу данных.
Как создать конфиг
Редактировать конфиги можно любым текстовым редактором, например, стандартной программой Windows — «Блокнот».
Создать свой конфиг можно одним из 3-х способов:
- Вручную создайте cfg файл или скопируйте стандартный config.cfg и назовите копию, например, my.cfg — заполните его своими значениями.
- Поставьте нужные настройки через меню игры и сохраните их в файл путём ввода в консоль следующей команды:
После этой команды в папке появится файл my.cfg с установленными вами настройками и в дальнейшем можно редактировать его через «Блокнот». - С помощью специальных программ.
Во всех 3-х способах создается новый файл cfg с указанным названием, а загрузить такой файл и применить ваши настройки в игре можно вводом простой команды в консоль:
Скачивание и установка конфиг на кс го про игрока
Если хотите настраивать конфиг cs go с нуля, то вы можете скачать config файл для кс го и затем установить настройки cfg кс го от про игроков. В этом случае, вы не будете знать всех тонкостей настроек, поэтому эффективнее будет создать собственный уникальный файл с настройками. Как устанавливать чужой .cfg файл на примере сайта prosettings.com:Сперва вписываем никнейм про игрока в поле как на скриншоте ниже
Сайт prosettings
Далее мы выбрали игрока Magisk играющего в Astralis. Жмём на кнопку ‘config’ и загружаем. Теперь находим его в папке download/downloads:Переносим файл, который скачали в папку стима для конфигов. Для этого ищем папку Steam на вашем диске и ищем папку steamapps. Внутри steamapps нужна папка common. Внутри common ищем нашу папку с игрой CS:GO и заходим в нее. И наконец находим нужную папку под названием cfg. Теперь нужно установить файл конфига с нашего архива в эту папку cfg. Поэтому надо поменять название файла, который мы скинули, с config.cfg на magiskboy.cfg или любое другое название, но главное в формате .cfgПосле этого заходим в игру и в консоли вбиваем команду “exec”, далее пробел и название нашего конфига. В нашем случае будет так “exec magisk.cfg”. Настройки запущены!
Подборки команд
Параметры запуска
Данный список параметров запуска в CS:GO использует большинство игроков.
- -console — открывает возможность использовать в игре консоль;
- -novid — при запуске игры убирает заставку;
- -threads 4 — заставляет использовать 4 ядра процессора (2 ядра, то ”-threads2”, 6 ядер, то ”-threads6”);
- -refresh 120 — частота обновление монитора, если Ваш монитор не поддерживает такую частоту, то выставляем значение меньше;
- -noforcemparms — отключаем акселерацию мышки в игре (скорость мышки всегда будет одинаковая);
- -high — запускает игру с высоким приоритетом;
- -tickrate 128 — рекомендуемое значение сетевого параметра , всем знакомый еще с CS 1.6;
- +cl_cmdrate 128 — рекомендуемое значение сетевого параметра;
- +cl_updaterate 128 — рекомендуемое значение сетевого параметра;
- +rate 128000 — рекомендуемое значение сетевого параметра;
- +ex_interpratio 1 — рекомендуемое значение сетевого параметра;
Команды для тренировки
В данный список мы постарались включить все необходимые команды для тренировок со своей командой.
- sv_infinite_ammo 1 — бесконечные патроны в игре;
- sv_grenade_trajectory 1 — прорисовывает всю траекторию полета гранаты, точками показывает, где граната соприкасалась с текстурами;
- ammo_grenade_limit_total 111 — максимальное количество гранат у игрока;
- sv_showimpacts 1 — показывает точки, в которые попали пули;
- sv_showbullethits 1 — при попадании прорисовывает силуэт противника в данной точке;
- cl_disable_ragdolls 1 — убирает Ragdoll физику, работает при включенной команде sv_cheats 1. Как правило данную команду используют при тренировке, когда fps просидает при большем количестве дымов;
- dsp_slow_cpu 1 — Уменьшает качество звуков. Не рекомендуем использовать данную команду;
- mat_disable_bloom 1 — данная команда отключает bloom эффект;
- r_drawparticles 0 — убирает анимацию оружия, всплеска воды и.т.п;
- mp_buy_anywhere 1 — позволяет покупать оружие на всей карте;
- mp_freezetime 0 — убирает заморозку в начале раунда;
- mp_buytime 3600 — увеличивает время на закупку оружия до 60 минут;
- mp_roundtime_defuse 60 — увеличивает время раунда до 60 минут;
- mp_maxmoney 55500 — увеличиваем максимальное количество денег до $55500;
- mp_startmoney 55500 — увеличивает стартовое количество денег на $55500;
- mp_warmup_end — закончить разминку;
- mp_autoteambalance 0 — отключает автобаланс игроков в командах;
- mp_warmuptime 55555 — данной командой устанавливается бесконечная разминка на карте;
- mp_timelimit 50 — время до смены карты
Команды для ботов
- bot_add — добавить бота в команду, в которой не хватает игроков;
- bot_add_ct — добавить бота за контр-террористов;
- bot_add_t — добавить бота за террористов;
- bot_kick — с помощью данной команды можно кикнуть всех ботов;
- bot_kickBob — в таком случае мы кикним только одного бота с именем «Bob»;
- bot_kill — если мы не указываем имя, то убиваем всех ботов;
- bot_zombie 1 — с помощью данной команды мы заморозим всех ботов;
- bot_dont_shoot — если мы не указываем имя, то все боты прекратят стрельбу;
- bot_difficulty — устанавливает уровень интеллекта ботов (0 = легко, 1 = нормально, 2 = тяжело);
- bot_stop — боты просто остановятся;
- bot_mimic 1 — бот будет повторять действия игрока;
- bot_mimic_yaw_offset 0 — с помощью этой команды мы отменяем повтор действий ботом игрока;
- bot_crouch 1 — с помощью данной команды заставляем ботов присесть;
- bot_place — бот появляется перед вами;
Настройка радара
При отсутствии нормальной инфы от своих тимейтов, необходимо постоянно следить за радаром и отслеживать их передвижение по карте. Для этого необходимо его правильно настроить и данные команды быстро помогут вам это сделать.
- cl_radar_always_centered 0 — центрирование карты;
- cl_radar_scale 0.3 (обычно 0.3 или 0.4) — размер карты;
- cl_radar_icon_scale_min 0.7 (рекомендуем значение 0.7)- размер точек игроков на карте;
Настройка FPS
- net_graph 3 — показывает количество fps;
- fps_max 305 — указать максимальное количество fps в игре;
- func_break_max_pieces 0 — количество осколков от объектов;
Команды для спавна объектов
Кроме всего вышеперечисленного, существует большое количество команд для спавна (генерации) объектов на карте CS:GO. Про них мы рассказали в отдельном материале — Команды для спавна объектов в CS:GO
Пришло время подвести итоги данной статьи. Мы рассказали, как включить консоль кс го. Затронули большое количество консольных команд для Counter-Strike: Global Offensive, которые могут Вам пригодится в любой момент. Можно считать, что это коды на кс го. Мы постарались написать развернуто, понятно и надеемся, что многие игроки найдут что-то полезное для себя.
Бинды
Ну и последнее, на что вам стоит обратить внимание — это бинды. Именно они играют очень важную роль, так как с их помощью вы сможете персонализировать настройки своего клиента
Что такое бинды? Это понятие, крайне распространенное в онлайн-играх. Бинд — это привязка конкретной игровой функции к выбранной геймером клавише или комбинации клавиш. Вам необходимо потратить немало времени на то, чтобы разобраться, какая конфигурация лучше всего подходит именно вам, какие кнопки вам удобнее всего нажимать, после чего вы сможете их забиндить, что может повысить ваши игровые способности. Более того, вы сможете подготовить различные комбинации для разных игровых условий. Например, если вы собираетесь тренироваться в точности бросков гранат, вы можете забиндить быструю покупку и быстрые броски этих самых гранат.
Однако обратите внимание на то, что некоторые команды являются читерскими. Их можно отличить по части sv_cheats 1, которая обозначает, что вы включаете режим читов
Такие команды можно использовать во время тренировок, но строжайше запрещено делать это во время игры с другими геймерами. Если вы перепутаете конфиги, то вас сразу же забанят. Поэтому к выбору конфига необходимо подходить чрезвычайно серьезно. Как видите, конфиг может значительно облегчить вам игру и повысить вашу эффективность.
Где находится конфиг ?
Когда вы первый раз запускаете CS:GO, автоматически создается дефолтный конфиг . Но находится он не в папке с самой игрой, а в одной из корневых папок стима – в папке UserData.
Если через конкретный стим клиент вы заходили с множества различных аккаунтов, то найти нужный может оказаться серьезной проблемой. Однако, есть одна фишка, очень упрощающая работу с конфиг ами на разных аккаунтах.
Работает она следующим образом: В клиенте стима нужного нам аккаунта идем в Инвентарь, далее в Предложения обмена:
на появившемся справа меню кликаем по Кто может отправлять мне предложения об обмене?, после чего в блоке снизу появляется ссылка на трейд оффер.
Нас интересует не сама ссылка, а номер в ней. Полностью запоминать его не нужно, достаточно трех-четырех последних цифр.
730LocalCFG
Выдать себе оружие через консольную команду
Не забываем, что данные команды работают только при включенном чит режиме на сервере sv_cheats 1.
Винтовки CT
- give weapon_m4a1 — выдать M4A4 (без глушителя)
- give weapon_m4a1_silencer — выдать M4A1 (с глушителем)
- give weapon_famas — выдать FAMAS
- give weapon_aug — выдать AUG
- give weapon_scar20 — выдать SCAR-20
- give weapon_awp — выдать AWP
- give weapon_ssg08 — выдать SSG-08
Винтовки T
- give weapon_ak47 — выдать AK 47
- give weapon_galilar — выдать Galil AR
- give weapon_sg556 — выдать SG556
- give weapon_g3sg1 — выдать G3SG1
- give weapon_awp — выдать AWP
- give weapon_ssg08 — выдать SSG-08
Пистолет-пулемет CT и T
- give weapon_mp9 — выдать MP9
- give weapon_mp7 — выдать MP7
- give weapon_ump45 — выдать UMP-45
- give weapon_p90 — выдать P90
- give weapon_bizon — выдать ПП-19 Бизон
- give weapon_mac10 — выдать MAC-10
Пистолеты CT и T
- give weapon_usp_silencer — выдать USP-S
- give weapon_hkp2000 — выдать P2000
- give weapon_glock — выдать Glock
- give weapon_elite — выдать Dual Berettas
- give weapon_p250 — выдать P250
- give weapon_fiveseven — выдать Five Seven
- give weapon_cz75a — выдать CZ75-Auto
- give weapon_tec9 — выдать Tec-9
- give weapon_revolver — выдать Revolver R8
- give weapon_deagle — выдать Desert Eagle
Тяжелое CT и T
- give weapon_nova — выдать Nova
- give weapon_xm1014 — выдать XM1014
- give weapon_mag7 — выдать MAG-7
- give weapon_sawedoff — выдать Sawed-Off
- give weapon_m249 — выдать M249
- give weapon_negev — выдать Negev
Снаряжение
- give weapon_knife — выдать нож
- give weapon_c4 — выдать бомбу C4
- give weapon_taser — выдать Zeus
- give item_defuser — выдать кусачки/дифуза.
- give item_vesthelm — выдать броню с каской
- give item_vest — выдать броню без каски
Как установить конфиг CS:GO
Часто у новичков назревает вопрос: “Где находится конфиг или как использовать готовый?”. В этом руководстве мы расскажем вам об этом.
- Для его установки переносим файл с расширением .cfg в папку csgocfg. Если Вы устанавливали игру по умолчанию, то путь такой:
- C:Program FilesSteamsteamappscommonCounter-Strike Global Offensivecsgocfg
- Для запуска конфига в CS:GO пишем в консоли exec и название файла с расширением .cfg.
- Пример: exec edward.cfg
- Как сохранить (записать или создать) свой cfg
- Это делается с помощью консольной команды host_writeconfig и вашего названия будущего файла конфига на английском с расширением .cfg.
- Пример: host_writeconfig moiconf.cfg
- К слову, moiconf.cfg – это то название, которое вы сами придумаете. Это может быть, к примеру, qwerty.cfg, или supreme.cfg, или clickstormthebest.cfg. Сохранится конфиг туда же в папку cfg (путь выше).
- Открывать и редактировать файлы .cfg лучше всего обычным блокнотом в Windows.
Сохранение конфига
Нам поможет консоль разработчиков
Сохраняем config через консоль разработчиков
Чтобы включить консоль переходим в
Настройки > Параметры игры
- Переходим в консоль разработчиков по умолчанию это клавиша “~”
- Придумываем название а и прописываем команду:
host_writeconfig “название а”
Найти конфиг можно будет тут:
Steam\userdata\Вам steamid\730\local\cfg
Как загрузить config в игру?
Перекидываем|копируем свой конфиг сюда:
Steam\steamapps\common\Counter-Strike Global Offensive\csgo\cfg
Затем открываем консоль разработчиков и вводим команду:
exec “название а”
Параметры запуска игры
Теперь, что бы все автоматически подгружалось при запуске игры, возвращаемся в клиент стима, в библиотеке игр кликаем правой кнопкой по Counter-strike Global Offensive, в появившемся списке жмем свойства:Далее Установить параметры запуска. В появившемся окошке вписываем несколько маст хев команд:
- -novid, для автопропуска заставки,
- -tickrate 128 для создания лобби с тикрейтом 128,
- -freq с максимальной частотой обновления вашего монитора. 60, 75, 120 или 144. У меня монитор 144, поэтому я пишу 144.
- И наконец -exec ez.cfg для автоматической подгрузки ранее созданного нами а.
Проверяем что получилось
Заходим в CS:GO, чтобы проверить чего мы там наделали. Создаем карту с ботами.
- прицел есть
- бинды гранат есть
- бинд поиска бомбы тоже работает
Как видите все довольно просто, если знать что делаешь.
Как вернуть стандартный конфиг
Valve позволяют быстро избавиться от лишних настроек игры, даже не запуская ее. Понадобится попросту удалить измененный конфиг – и тогда он будет девственно чистым после следующего входа в CS GO. Перед этим лучше сохранить старые файлы, чтобы иметь возможность позднее их восстановить или перетянуть из них некоторые строчки.
Чтобы восстановить изначальный конфиг для CS GO, необходимо:
Найти на компьютере папку Steam;
Открыть раздел userdata;
Выбрать папку с названием из цифр – это уникальный код, присваиваемый каждому игроку;
Открыть директорию 730 (важно не перепутать код, иначе можно сбросить файлы совершенно других игр!);
Затем перейти в раздел local, а оттуда – в cfg;
Внутри папки cfg удалить файл config.cfg (если при этом удалить прочие файлы – будут также сброшены параметры графики).
После этого настройки восстановлены. Можно смело заходить и играть – ни одной лишней команды в CS GO не будет.
Конфигурация пиратской версии CS GO хранится по адресу
Counter-Strike Global Offensive/csgo/cfg/.
Но простым удалением дело не ограничится. Необходимо скачать чистую конфигурацию, а затем заменить старую в этой папке на новую.
Если старый конфиг ещё нужен
Поскольку многие игроки дорожат своими уникальными (или не очень, но уже привычными) настройками, полностью избавляться от любимого cfg необязательно. Можно даже одновременно использовать оба, если наличие уникальной конфигурации не возбраняется.
Для этого достаточно попросту сохранить свой файл в той же папке, где хранится обычный кфг, но под другим именем. Например, оставить стандартный под названием
config.cfg,
а свой обозвать
mycfg.cfg.
После этого в процессе игры можно с легкостью переключаться между двумя версиями параметров. Как поставить стандартный или собственный файл, не выходя из игры:
- Открываем консоль в CS GO;
- Прописываем команду exec mycfg.cfg или exec config.cfg (в зависимости от того, какой конфиг сейчас необходим);
- Закрываем консоль и играем с новым файлом.
Команда позволяет переключаться между конфигурациями за несколько секунд. Это позволит вернуть обычные настройки в любой момент, когда они понадобятся.
Admin
31
Если вы зарегистрируетесь сможете: скачивать все файлы с сайта, конкурсы, доступ к различным модулям.
Россия.
Комментарии: 22Публикации: 1592Регистрация: 22-02-2018
Стандартный конфиг кс го
Если случилось так, что вам нужно очистить CS:GO на настройки по умолчанию, чтобы был дефолтный конфиг — просто удалите папку cfg, в папке steamuserdataваш steamid730local
Детальная настройка конфига
Детальная настройка конфига с описанием всех параметров CS:GO в ЭТОЙ теме.
Лучшие переводы обновлений CS:GO и их детальные обзоры также можно читать в нашей группе Вконтакте. Будь в курсе последних изменений первым! Подпишись!
подписаться
Как сохранить конфиг в КС ГО
Приветствую всех фанатов КС ГО! По названию статьи понятно, что ты захотел сохранить свой конфиг в КС ГО, потому что меняешь ПК или переустанавливаешь ОС, а может еще лучше, захотел поделиться им с другими пользователями, потому что ты уже профи. Сути это не меняет, ты попал точно по адресу, и сейчас я расскажу как быстро сохранить и повторно установить свой конфиг в кс го через консоль. Поехали!
- Для начала необходимо запустить игру.
- Далее открываем консоль «~» (по стандарту это кнопка тильда) если консоль не открвается, активируйте ее в настройках игры «Настройки-Игра»
- Прописываем в консоли команду: host_writeconfig blogprocsgo (как вы уже поняли, вместо blogprocsgo вы можете написать свое название — это название конфига)
Готово! Об этом свидетельствует надпись в консоли Wrote cfg/BLOGPROCSGO.cfg
Шаг 2. Поиск сохраненного конфига на ПК в папке steam.
1. Для начала нам необходимо узнать ACCOUNT ID, для этого переходим на сайт SteamDB, вставляем ссылку на свой профиль (у меня это https://steam.com/id/proxxnsg) и нажимаем кнопку «Get disappointed…», после этого нас перекидывает на страницу где вы найдете нужную информацию под строчкой Account ID. У меня это 127680145. Скопируйте свои цифры.
2. Далее заходим в папку с конфигом, которая будет иметь следующий путь: Steamuserdata127680145730localcfg
ВНИМАНИЕ! Вместо номера 127680145, необходимо вставить свой номер Account ID полученный ранее на сайте SteamBD. Таким образом получится путь к месту где лежит сохраненный ранее конфиг кс го!
Как видно из скриншота выше, файл который я назвал blogprocsgo.cfg лежит вот в этой папке, это и есть наш конфиг. Данный файл можно скопировать например в любой облачный сервис которым ты пользуешься (mail облако, google drive, dropbox, yandex диск и т.д.), что бы на любом компьютере получить быстрый доступ к своим настройкам. Возможно дальше у тебя может возникнуть вопрос, а как его теперь установить этот конфиг?
Как установить конфиг в кс го?
1. Копируем ранее сохраненный конфиг blogprocsgo.cfg в папку csgo/cfg
Полный путь выглядит так: SteamsteamappscommonCounter-Strike Global Offensivecsgocfg
2. Запускаем CS GO
3. Открываем консоль кнопкой «~» и вводим команду exec blogprocsgo
4. Готово! Наш конфиг успешно установлен! Если вы делаете эту процедуру не в первый раз, то настроить кс го получается очень быстро.
Как видите, сохранить конфиг из кс го не сложно! Но есть другой способ как сохранить настройки кс го не прибегая к сохранению конфига, об этом можно прочитать здесь «Лайфхак по настройка КС ГО на ЛАНе». С Вами был PROXXNSG, смотрите мои видео на ютубе, подписывайтесь на канал, рассказывайте о блоге своим друзьям! Это самая лучшая награда за мои старания. До новых встреч!
- Не забывай, что тебе еще нужно тренировать прострелы! Читать далее «Команды для тренировки прострелов в кс го»
- Разбавляй свои тренировки различными картами из мастерской. Какими? Читать далее «Лучшие карты для тренировки аима в кс го»
- Если ты уже про в кс го, заходи и скачивай готовые конфиги для тренировки прострелов и гранат здесь «Скачать конфиги»
Вы можете найти меня в соц сетях Чекайте vk группу, подписывайтесь на ютуб канал, смотрите трансляции на твиче
Команды для тренировки смоков
Введение. Команды для тренировки смоков в кс го. Рано или поздно игрок приходит к пониманию того, что для получения тактического…
Demo CSGO moments #1
Первая запись в данной рубрике «DEMO». Буду частенько выкладывать демки со своими интересными моментами, и не только со своими, которые…
Как настроить прицел в КС ГО для себя и очень быстро? Привет, на связи PROXXNSG!Расскажу и покажу несколько способов, а ты выберешь…
Conclusion
The config and autoexec files in CS:GO are very useful for tweaking settings. Most professional players use a customized config and autoexec file, which they bring with them whenever they have to play CS:GO.
Autoexec can access settings not found in-game settings and give you a small advantage compared to people that are not aware of these settings. That is also why Valve and the CS:GO developers, are making more and more settings available from the in-game options.
To learn more about console commands, we recommend that you read our article on the best sv_cheats console commands.
We hope that you found the guide useful if you have anything to add or would like to show your own settings or autoexec, you are welcome to leave a comment.
Типы конфигов
Конфиг является обычным текстовым файлом, но для него принято использовать расширение «.cfg».
В первую очередь ответим на простой вопрос: «Где лежит конфиг игры или куда кидать созданный конфиг?». Файлы конфигов в Counter-Strike 1.6 находятся в папке:
- Для Steam (английская версия):
- Для Steam (русская версия):
- Для NoSteam:
На скриншоте справа вы можете увидеть стандартный список файлов конфигов, которые присутствуют в папке с игрой. Нас интересуют только 3 файла выделенные на скрине в красную рамку, а это:
- autoexec.cfg — это основной конфиг, который игра грузит в самом начале, сразу после своего запуска. Благодаря этой особенности, данный файл могут использовать различные вирусы, способные сломать не только ваш клиент игры CS 1.6, но и нанести вред компьютеру. Читайте ниже.
- config.cfg — этот файл автоматически загружается после autoexec.cfg и содержит стандартные настройки игрока. Именно этот файл постоянно перезаписывается и меняет свои значения, если вы изменяете какие-либо показатели в самой игре.
- userconfig.cfg — индивидуальный конфигурационный файл игрока. Этот файл не грузится автоматически, но необходимость его загрузки указывается в конце файла config.cfg строчкой:Если userconfig.cfg подключен, то все его настройки переопределяют значения, указанные в файле config.cfg. То есть, если настройка задана в userconfig.cfg, то игра будет смотреть именно на её значение и игнорировать такую же настройку в файле config.cfg.
Все остальные файлы конфигов в папке (joystick.cfg, listenserver.cfg, server.cfg, listip.cfg и т.д.) либо не нуждаются в редактировании, либо отвечают за настройку создания своего сервера, что не относится к теме данной статьи.
Hydra — упрощаем разработку, динамически создавая иерархическую структуру конфигурации приложения
Рассмотрим последним, в этой статье, способ создания и поддержки конфигурации для вашего приложения, который по сути является гораздо большим, чем просто загрузчик и парсер файлов с настройками.
Hydra – это платформа, разработанная для гибкой и элегантной настройки самых сложных приложений. Которая помимо чтения, записи и валидации корректности файлов конфигурации, реализовывает свою достаточно рациональную стратегию упрощения управления несколькими конфигурационными файлами, переопределения (перезаписи) их с использованием интерфейса командной строки, создания snapshot снимка состояния приложения перед каждым его запуском (между перезапусками) и т.д.
Чтение
Рассмотрим основы использования hydra. Так в следующем примере команда , добавленная в командную строку при запуске скрипта, позволяет добавить новое поле (настройку) в конфигурацию приложения, а также осуществить перезапись значения существующего поля (значения настройки) .
import hydra from omegaconf import DictConfig, OmegaConf @hydra.main(config_name="config") def my_app(cfg: DictConfig) -> None: print(OmegaConf.to_yaml(cfg)) if __name__ == "__main__": my_app() # запускаем в командной строке скрипт с командами # python3 source/hydra_basic.py +APP.NAME=hydra # # результат его выполнения # APP: # ENVIRONMENT: test # DEBUG: true # NAME: hydra1.1
Валидация
Hydra прекрасно интегрируется с декоратором для выполнения основных проверок корректности, таких как проверка типов или значения полей. Однако у нее нет поддержки метода расширенной проверки значений, как это описано в моей предыдущей статье.
from dataclasses import dataclass from omegaconf import MISSING, OmegaConf import hydra from hydra.core.config_store import ConfigStore @dataclass # @dataclass(frozen=True) способ определения полей только для чтения class MySQLConfig: driver: str = "mysql" host: str = "localhost" port: int = 3306 user: str = MISSING password: str = MISSING @dataclass class Config: db: DBConfig = MISSING cs = ConfigStore.instance() cs.store(name="config", node=Config) cs.store(group="db", name="mysql", node=MySQLConfig) @hydra.main(config_path="conf", config_name="config") def my_app(cfg: Config) -> None: print(OmegaConf.to_yaml(cfg)) if __name__ == "__main__": my_app()
Группа конфигураций
Hydra вводит концепцию под названием config group . Идея которой состоит в том, чтобы сгруппировать файлы конфигурации одного типа (или для выполнения одних задач) и затем выбирать один из них во время выполнения приложения. Например, у вас имеется группа настроек «Базы данных» с одной конфигурацией для Postgres, а другой для MySQL.
Когда конфигурация приложения станет более сложной, то в вашей программе она может иметь следующую структуру (пример из документации Hydra).
├── conf │ ├── config.yaml │ ├── db │ │ ├── mysql.yaml │ │ └── postgresql.yaml │ ├── schema │ ├── school.yaml │ ├── support.yaml │ └── warehouse.yaml └── my_app.py
Например, вы хотите протестировать свое приложение с различными комбинациями опций , и , это можно сделать следующим образом:
python my_app.py db=postgresql schema=school.yaml
Далее…
Hydra поддерживает использование нескольких наборов параметров конфигурации с опцией , при этом запускаются параллельно несколько задач с различными файлами конфигурации. Например, для предыдущего примера мы можем запустить скрипт следующим образом:
python my_app.py schema=warehouse,support,school db=mysql,postgresql -m
В этом случае в основном потоке запускаются 6 задач одновременно:
- Launching 6 jobs locally - Sweep output dir : multirun/2019-10-01/14-44-16 - #0 : schema=warehouse db=mysql - #1 : schema=warehouse db=postgresql - #2 : schema=support db=mysql - #3 : schema=support db=postgresql - #4 : schema=school db=mysql - #5 : schema=school db=postgresql
Вывод
В этой статье мы рассмотрели несколько способов управления конфигурацией приложений в Python. Независимо от того какой из них вы выберете, всегда необходимо думать о удобочитаемости файлов конфигурации, дальнейшей их поддержки, а также способах обнаружения ошибок для случаев их некорректного использования. Таким образом, конфигурационный файл – это по сути еще один тип кода.