Статья примерно 2012 года, поэтому сейчас всё это скорее относится к тому, как снять кошку камерой телефона, но всё равно её перенесу сюда, тут есть некоторые ценные мысли.
Каждый, у кого дома живет кошка, время от времени испытывает непреодолимое желание запечатлеть ее с помощью фотокамеры. Уж такие она умильные позы принимает! А зевает как – заглядение! Как она нахально дрыхнет на хозяйской кровати кверху пузом, или наоборот – уютно свернувшись калачиком. В общем, сюжетов масса. И как же жаль, что фотоаппарат не всегда бывает под рукой. А если он есть, и кадр снят вовремя, иногда бывает еще обиднее: или фото получилось нечетким, или в глазах – блики от вспышки размером больше, чем сами глаза. Или цветочный горшок, в котором так смешно уселась кошка, получился изумительно четким, а сама кошка – расплывчатой.
Кошки – народ подвижный, и «схватить» ее в движении, сделать кадр, о котором вы мечтаете, очень непросто. Профессиональная съемка кошек проводится с помощью специального осветительного оборудования, позволяющего сделать время открытия затвора фотоаппарата минимальным, а это значит, что момент, запечатленный на фото, будет очень кратким, и кошка не успеет за этот момент сильно пошевелиться и смазать кадр. Но и студийные кадры часто бывают смазанными, особенно если кошка не сидит спокойно, а играет и вертится. Что же говорить о любительской съемке дома на обычный среднестатистический фотоаппарат? В этой статье я дам несколько советов как лучше сфотографировать кошку с помощью недорого фотоаппарата.
На самом деле, дело не только и не столько в фотоаппарате. Не зная теории фотосъемки, сделать хороший кадр одинаково сложно и «мыльницей», и профессиональным фотоаппаратом. Скорее всего у человека, впервые взявшего в руки профи-камеру, снимки получатся даже хуже, чем с «мыльницы». В этой статье я простыми словами расскажу, как с помощью самого обычного фотоаппарата сделать если не шедевры, то вполне добротные снимки, которые не стыдно показать родственникам, друзьям и коллегам.
Во-первых, если в вашем фотоаппарате есть такая возможность, отключите вспышку. Встроенная вспышка делает изображение плоским, слишком пересвечивает ту часть снимаемого, которая находится ближе к объективу, а более далекую оставляет темной. Фото со вспышкой выглядят неестественно и некрасиво. Пожалуй, естественным они покажутся только шахтеру: он привык к такому освещению (один фонарь, луч которого светит от уровня лба).
Отключив вспышку, вы сталкиваетесь с проблемой длинных выдержек: чтобы сделать кадр без вспышки, фотоаппарату нужно более длительное время открытия затвора. Если снимать без вспышки при слабом освещении, предметы на фото со стопроцентной вероятностью получатся размазанными: во время, когда затвор открыт, ваши руки шевелятся, и изображение смазывается. Использование штатива может решить эту проблему, но только не в случае с кошками – кошка за это время может несколько раз облизнуться и убежать, показав вам язык.
Используйте естественное дневное освещение! Понятно, что в некоторые моменты не приходится выбирать освещение, и тогда приходится снимать и фотоаппаратом со вспышкой, и даже телефоном. В таких случаях лучше, если фото будет вообще, хотя бы и плохого качества, чем его не будет вовсе. Например, это фото Сосиски, прилегшей отдохнуть в раковине: если бы не оказавшийся в руке телефон, она бы просто убежала.
Если же вы просто хотите поснимать своего любимца, а не запечатлеть какой-то экстренный сюжет, выбирайте освещение, которое будет оптимальным для качества кадров – естественное.
Я фотографирую своих кошек на остекленной лоджии, где днем обычно достаточно света, а в солнечные дни даже слишком много. Да и кошечки любят погреться на солнце, так что оттачивать мастерство можно сколько влезет – главное, чтобы они не уснули.
Нужно следить, чтобы свет из окна падал кошке на мордочку, иначе самые существенные детали снимка окажутся в тени, как на фото ниже.
То есть снимать ее нужно либо лицом к окну, либо, если она сидит на подоконнике, – немного сбоку. Также можно использовать имитацию отражателя – например, подсветить мордочку кошке листочком фольги от шоколадки или даже просто большим белым листом бумаги (зеркало здесь будет, пожалуй, чересчур ярким), расположенным против света.
В солнечные дни, особенно если окна выходят на юг, можно найти удачные места для съемки и в комнате. Кошки обожают валяться в солнечных пятнах на полу. Там-то мы их и подстережем!
Одна из моих любимых фотографий Фани (под названием «Фанюша – солнечные уши») была сделана как раз в таком солнечном пятне на ковре. Именно освещение сзади (так называемое контровое освещение) дало эффект «солнечных ушей», а для того, чтобы подсветить мордочку, был использован отражатель.
Нужно немало времени, чтобы научиться пользоваться естественным светом, но зато постепенно вы увидите, как ваши фото раз от раза становятся все лучше и лучше.
А что же делать, если солнца на улице нет, да и вообще на дворе поздний вечер, а поснимать хочется? Да еще и без вспышки? Во многих фотоаппаратах, даже самых простых, есть возможность поднять чувствительность матрицы (ISO). Чем слабее освещение, тем больше должна быть чувствительность. При этом выдержки значительно сокращаются, и появляется возможность снимать без «шевеленки». Но зато фото значительно теряют в качестве – появляются «шумы» – точки разных цветов, заполняющие всю поверхность фотографии, при самых больших чувствительностях – очень плотно. Существуют специальные фильтры для удаления шума при обработке фотографий, но даже они не способны сделать это без потери качества. Поэтому нужно попробовать несколько разных ISO при конкретном освещении. Если чувствительности достаточно, чтобы получались резкие снимки, не прибавляйте больше – от этого снимок станет более «шумным».
Если ваш фотоаппарат обладает «зумом», то есть позволяет менять фокусное расстояние, «приближать» объекты, то, снимая в условиях плохого освещения, старайтесь им не пользоваться: увеличится «шевеленка», и резкость снимка заметно упадет. Лучше подойдите к кошке поближе.
Ну, и лишь если даже при максимальной чувствительности, не дающей слишком сильных шумов, снимки все равно получаются нерезкими, используйте вспышку. Старайтесь не снимать со вспышкой слишком близко к кошке – во-первых, ей будет не очень приятно, а во-вторых, чем ближе к снимаемому объекту вспышка, тем менее естественным получится снимок.
На что еще нужно обратить внимание.
Резкость.
Наводитесь на саму кошку, а не на стол, на котором она сидит, и не на вазу с цветами рядом с ней. В идеальном снимке резкость должна быть на глазах животного.
Баланс белого.
Это еще одна из важнейших настроек, необходимых для получения естественных снимков. Свет бывает разным: нейтральным дневным, теплым солнечным и холодным люминесцентным. Белый предмет под каждым из этих источников света будет иметь разный оттенок. Когда мы перемещаемся из одних условий освещения в другие, наш глаз делает «автоматическую» поправку, и белые предметы кажутся нам белыми. Фотоаппарат такой поправки не делает, поэтому фото, снятые без коррекции баланса белого, получаются неправильного оттенка – слишком синими или слишком желтыми. Если баланс белого установлен в автоматическом режиме, то температура освещения учитывается, но в этом случае, как и при любом использовании автоматики, вероятны ошибки. Практически в любой камере (кроме, разве что, встроенных в телефон) существует возможность коррекции баланса белого (white balance). Выберите настройку, наиболее близкую к условиям освещения, в которых вы находитесь. Например, при электрическом освещении выберите настройку, соответствующую этому типу освещения (пиктограмма с лампочкой). На худой конец, используйте автоматический режим (хотя в этом случае вероятны ошибки, это лучше, чем, например, снимать при свете ламп накаливания с настройками солнечного – фотографии при этом получатся с сильным желто-коричневым оттенком, который практически невозможно убрать при постобработке).
Фон.
Не снимайте кошку на фоне нагромождения вещей, особенно с резкими контрастными переходами – кошка на таком фоне просто потеряется! Подойдет светлый подоконник, однотонное кресло или диван, стоящие напротив окна и хорошо освещенные. Рядом могут быть один-два предмета, но они должны подчеркивать красоту кошки, а не заставлять вас смущаться, когда вы показываете снимок друзьям, и говорить «ой, этот грязный носок случайно попал в кадр». Это может быть, например, ваза с цветами, красивый сувенир, корзинка или клубок.
Композиция кадра.
Она также должна быть сбалансирована. Фото, на котором запечатлен целый диван, а в углу него скромно спит, свернувшись клубком, крохотный котенок, может быть интересно только тем, кто хочет оценить размер котенка. В противном случае это может выглядеть попыткой похвастать диваном, а не показать умильность крошечного существа. Гораздо лучше будет снять только часть дивана с лежащим котенком, но, увеличивая размер объекта в кадре, важно знать меру: фотографии, на которых у кошки краем кадра срезаны хвост, уши или лапы, смотрятся хорошо только в том случае, если это была художественная задумка автора.
Фантазируйте, замечайте, где и при каком освещении ваша кошка получается лучше, а главное – не переставайте практиковаться, и ваши снимки станут интересными, яркими – такими, что зритель не удержится и ахнет: ай да кошка, как хороша!
Не потому что снова не спала — на этот раз она легла в разумное время и проснулась сама, без горна физрука Кестера, за добрых полтора часа до общей зарядки. Просто работа ждала, и откладывать её не было смысла.
Эскиз она набросала ещё вчера вечером — быстро, в несколько линий, но достаточно точно, чтобы видеть результат до того, как он появится в металле. Это было одним из первых навыков, которым учил Грюнвальд: видеть готовую вещь раньше, чем начинаешь её делать. Не примерно, не «как получится» — точно. Металл чувствует неуверенность. Металл работает так, как ты о нём думаешь.
Амулет для Мирны Олдт должен был быть другим.
Совсем другим, не как медальон с буквой «С».
Стефани смотрела на эскиз и думала о руках преподавательницы — округлых, тёплых, привыкших перебирать травы, — и о том, что такие руки держат вещи иначе, чем кузнечные. Мягче. Бережнее. Вещь для таких рук должна быть лёгкой, с хорошим балансом, с поверхностью, которая приятна на ощупь, а не только красива на вид.
И с травами.
Это было главным.
Стефани выбрала три растения — чертополох, пустырник и зверобой. Первые два она знала по виду, третий — по запаху, потому что мама иногда заваривала зверобой при простуде и запах был характерный, немного горьковатый, немного смоляной. Все трое красиво ложились в металл: чертополох — геометрия острых листьев, хорошо читается в тонкой чеканке; пустырник — мелкие круглые цветы, требуют терпения, но результат стоит; зверобой — тонкие стебли с маленькими звёздчатыми соцветиями, это уже было настоящей ювелирной работой, почти на грани возможного для обычного инструмента.
Стефани взяла малый молоток.
Горн уже горел — она разожгла его первым делом, прежде чем даже подошла к верстаку. Горн должен гореть раньше, чем начинается работа: металл капризничает, если его нагревают второпях.
Для амулета она взяла серебристую сталь — не настоящее серебро, просто сталь с высоким содержанием никеля, которая при полировке давала почти серебряный отблеск. Красиво. И прочнее, чем серебро, которое мягкое и царапается.
Работа была тонкой.
Не той работой, где молот говорит громко и металл слушается через силу. Тихой работой — когда слышно, как инструмент касается поверхности, когда каждый удар не сильнее, чем нужно, и линия либо получается с первого раза, либо не получается вовсе.
Стефани работала и не думала ни о чём постороннем.
Это было лучшее в ремесле — что оно не оставляло места для посторонних мыслей. Не было ни вчерашнего утра, ни Мирны Олдт на ректоре, ни шапки с ушками, ни стыда, который она методично обрабатывала весь вечер. Было только — вот линия, вот угол, вот лист чертополоха, который нужно выбить чуть глубже у основания, чтобы он казался объёмным.
Чертополох вышел хорошо.
Пустырник потребовал трёх попыток на первый цветок — мелкие лепестки не прощают спешки — но потом пошёл ровно.
Зверобой она оставила напоследок, когда рука уже вошла в ритм и пальцы знали, как держать инструмент для такой тонкости.
Стебли получились живыми.
Она не знала, как иначе объяснить — просто иногда металл решает стать живым, и ты это чувствуешь в момент удара, когда линия идёт чуть иначе, чем ты задумал, но правильнее. Грюнвальд называл это «металл договорился с инструментом». Стефани не знала, правда это или красивые слова, но результат был именно таким — стебли зверобоя на амулете слегка изгибались, как настоящие, под несуществующим ветром.
Она отполировала поверхность.
Добавила петлю для цепочки — тонкую, аккуратную.
Положила амулет на верстак и посмотрела на него.
Это была хорошая работа.
Не потому что она сама так решила — просто она умела видеть разницу между «сделано» и «сделано хорошо». Это был один из немногих навыков, которые не требовали посторонней оценки: либо ты видишь линию правильной, либо нет.
Линии были правильными.
«Девятнадцатый», — подумала она. — «И первый не для себя».
* * *
В дверь постучали.
Стефани не сразу подняла голову — она заканчивала полировку, и последние движения требовали внимания не меньше, чем первые удары. Потом всё-таки подняла.
В дверях стоял физрук Кестер.
Горн висел на шее. В руках — записная книжка, в которой он, судя по всему, отмечал явку. Лицо у него было то, с которым приходят говорить о прогуле.
Он посмотрел на вспотевшую от работы Стефани.
Потом — на верстак с инструментами. На горн. На малый молоток, который она держала. На амулет, лежащий на полировочной ткани.
Потом снова на Стефани.
Хмыкнул и сделал пометку в записной книжке — Стефани не видела какую — и ушёл, не сказав ни слова.
Стефани проводила его взглядом.
«Интересно», — подумала она.
Потом пожала плечами и вернулась к полировке.
* * *
На занятия она пришла в платье.
Это было, строго говоря, не запланировано — просто утром, после кузницы, она пошла помыться и переодеться и взяла платье, потому что оно висело ближе всего и потому что после тонкой работы с металлом хотелось чего-то другого на ощупь. Лёгкого. Тёмно-синего, с узкими манжетами и высоким воротником — не парадного, просто хорошего, сшитого на заказ у той же портнихи, что и всё, что носила Леонора Лютенберг, потому что Леонора считала, что вещи должны быть сделаны правильно или не сделаны вовсе.
Стефани думала об этом принципе применительно к металлу — правильно или никак — и не замечала, как выглядит со стороны.
Дара заметила.
— Ты... — сказала Дара, когда они встретились у входа в учебный корпус. — Ты в платье.
— Да.
— У тебя не до конца высохли волоы. Ты работала в кузнице?
— Да, делала одну безделицу.
— Стефани. — Дара взяла её за руку и повернула к свету. — Посмотри на себя. Ты понимаешь, что происходит?
Стефани посмотрела на себя. Тёмно-синее платье. Манжеты застёгнуты. Волосы убраны — не в косу, как обычно для кузницы, а в низкий узел, потому что коса была бы слишком простой для платья.
— Я выгляжу нормально, — сказала она.
— Ты выглядишь как герцогиня, — сказала Дара. — А не девушка, которая только что закончила махать молотом в кузнице и вышла на прогулку.
— Ты мне льстишь! — Смутилась Стефани.
— Это правда, — сказала Дара. — Всё именно так, как я сказала.
Тут к ним подошёл Томас, посмотрел, кивнул.
— Хороший баланс, — сказал он. — Строгость и детали. Это элегантно.
— Это случайно, — сказала Стефани, еще сильнее покраснев.
— Нет, — сказал Томас. — Случайность в выборе вещей — это привитый вкус. А вкус прививают годами.
Эрик не сказал ничего — просто посмотрел и начал что-то писать в записной книжке, которую он таскал везде, и подняв большой палец, пошёл дальше. Стефани решила не спрашивать, что именно он записал.
На математике Вейс не заметил — или не подал виду, в отличии от однокурсников, которые хвалили ее вид, вызывая смущение и неловкость.
На основах магии сосед по парте, незнакомый первокурсник, который случайно сел рядом и явно пожалел об этом в начале занятия, к середине занятия смотрел в её сторону с видом человека, который пытается сформулировать вопрос и не находит подходящего предлога.
На физике Мирр заметил — бросил взгляд, задержал его на секунду дольше, чем обычно, и вернулся к доске с тем же удовлетворённым видом точного человека, который отметил деталь и внёс её в общую картину.
Стефани всё это замечала краем внимания.
Большей частью она думала о зверобое — о том, правильно ли она выбила стебли, правильно ли лёг последний лепесток пустырника, и не слишком ли глубокая чеканка на крайнем листе чертополоха.
После физики она пошла к корпусу травоведения.
* * *
Мирна Олдт была в своём кабинете — небольшом, тёплом, пахнущем так, что запах был почти видимым: сухие травы, немного воска, немного чего-то терпкого и смолистого, что Стефани не смогла идентифицировать, но запомнила. На полках стояли пучки трав в скляночках— аккуратные, подписанные, с датами сбора. На столе — несколько открытых книг и кружка с чаем.
Сама Мирна Олдт сидела за столом и что-то писала.
Подняла взгляд, когда Стефани вошла, постучав.
Пауза.
— Студентка Лютенберг-Фламберг, — сказала она.
— Да, — сказала Стефани. — Я пришла... — Она достала амулет. — Тогда утром я сказала «прошу прощения», но это было в пять утра перед ректором, и это было явно недостаточно. — Пауза. — Я сделала это. В качестве нормального извинения.
Она положила амулет на стол перед Мирной Олдт.
Преподавательница посмотрела на него.
Взяла — осторожно, как берут что-то хрупкое, хотя сталь была прочной и ничего хрупкого в ней не было. Просто некоторые вещи заслуживают осторожности независимо от прочности.
Повернула к свету.
Молчала.
Стефани ждала. Она умела ждать — кузница учит ждать правильно, не тревожно, а терпеливо, как ждёт металл нужной температуры.
— Это... — начала Мирна Олдт.
— Чертополох, пустырник и зверобой, — сказала Стефани. — Я выбрала по тому, как они выглядят в металле. Если хотите другие растения — могу переделать.
— Нет, — сказала Мирна Олдт быстро. — Нет, не нужно переделывать.
Она встала.
Стефани не ожидала этого — не ожидала, что девяносто восемь килограммов тепла и уюта поднимутся из-за стола и обнимут её с той совершенно искренней теплотой, которая бывает только у людей, привыкших обнимать без предупреждения и без стеснения.
Объятие было крепким.
Стефани секунду не знала, что делать с руками, потом решила проблему практически — просто обняла в ответ. Мирна Олдт пахла лавандой и зверобоем и ещё чем-то тёплым, что Стефани не могла назвать, но что напоминало кухню дома Фламберг-Лютенбергов в воскресное утро.
— Такие мастерицы, — сказала Мирна Олдт в её макушку, — редко появляются в академии. Редко и ненадолго, потому что их быстро переманивают в столицу. — Она отстранилась и посмотрела на Стефани с видом человека, принявшего решение. — Я сейчас налью чай. Садитесь.
Это был не вопрос.
Стефани села.
* * *
Чай у Мирны Олдт был другим.
Не плохим — просто другим, чем дома. Дома мама заваривала воду точно, как положено для каждого вида — температура, время, пропорции. Мирна Олдт заваривала иначе: по запаху, по цвету, по тому, как трава себя вела в горячей воде.
— Вот смотри, — сказала она, подвигая к Стефани кружку, — зверобой не любит кипяток. Он горчит. Ему нужна вода семидесяти градусов, не выше. Как определить без термометра? По пару — когда пар идёт лениво, почти неохотно, вот тогда.
Стефани смотрела на пар над своей кружкой.
«Ленивый пар», — подумала она. — «Как металл при тёмно-красном калении — не горит, но работает».
— Я хотела спросить, — сказала Стефани, набравшись смелости. — Вы знаете про травы в металлургии?
Мирна Олдт посмотрела на неё.
— В закалочных растворах, — уточнила Стефани. — Я слышала про ольховую кору, но не знаю точно, что она даёт, и не знаю, что ещё используется.
Это было как открыть правильную дверь в правильной библиотеке.
Мирна Олдт поставила свою кружку, придвинулась к столу и начала говорить.
Она говорила про ольховую кору — что дубильные вещества в ней слегка взаимодействуют с железом, создавая тонкую тёмную плёнку. Не настоящая защита — но старые мастера говорили, что металл после такой закалки ржавеет медленнее. Про кору дуба — то же самое, только грубее, больше для инструментов, чем для клинков. Можжевеловый уголь считался «живым» — плотным, смолистым, дающим хороший углерод для цементации.
Потом про крапиву — настой крапивы иногда давал стали лёгкий зеленоватый оттенок; считалось, что такая поверхность меньше боится сырости. Про полынь говорили, что она «успокаивает металл» при закалке. Мирна не была уверена, влияет ли она на твёрдость — но поверхность после неё получалась чистой и плотной.
Стефани записывала.
Быстро, угловатым почерком, сокращая там, где понимала с полуслова, разворачивая там, где нужно было зафиксировать точно.
— А горение трав в горне? — спросила она. — Если добавить в уголь?
Мирна Олдт посмотрела на неё с видом человека, которому задали именно тот вопрос, который она ждала.
— Это уже сложнее, — сказала она. — И интереснее. Садись поудобнее.
Стефани пересела поудобнее.
За окном кабинета шёл мелкий дождь — тот осенний дождь, который не торопится, просто идёт, потому что так положено. На полках тихо пахли травы. Кружка с зверобоем остывала правильно, медленно.
Мирна Олдт говорила.
Стефани записывала и думала, что это, пожалуй, лучший урок из всех, что она получила в академии за две недели. Не потому что официальный — как раз потому что нет. Потому что это был разговор двух людей, которые знают своё дело, и дела их неожиданно оказались соседями.
Она заполнила четыре страницы блокнота.
Потом спохватилась — посмотрела на окно, на угол падения дождя, прикинула время.
— Мне нужно на обед, — сказала она. — До фехтования час.
— Иди, — сказала Мирна Олдт. — И приходи ещё. У меня есть книга по использованию растительных компонентов в стариной металлургии — старая, не очень точная, но интересная. Дам почитать.
Стефани встала.
— Спасибо, — сказала она, улыбнувшись и поклонившись.
— Это я тебя благодарю, — сказала Мирна Олдт и тронула амулет на столе. — За работу.
* * *
В столовой уже сидели все трое.
Дара — с тарелкой, которая была слишком полной для одного человека, но Дара ела с той же искренней энергией, с которой делала всё остальное. Стефани решила, что это как то связано с её даром. Томас — с книгой рядом с тарелкой, открытой на нужной странице, хотя во время еды не читал, просто держал под рукой. Эрик — с кружкой горячего чая и видом человека, которому еда менее интересна, чем то, что происходит за окном. Скорее всего так оно и было.
Стефани села, поставив поднос с едой, на котором еды было не меньше, чем у Дары.
— Как травовед? — немедленно спросила Дара, смакуя салатик.
— Хорошо, — сказала Стефани, искренне и тепло улыбнувшись, заставив Эрика поперхнуться чаем. — Она знает про ольху в закалочных растворах.
— Это замечательно, — сказала Дара тоном «я не знаю, что это, но рада за тебя».
— Полынь немного меняет смачивание поверхности при закалке, — добавила Стефани. — В критической зоне охлаждение идёт чуть иначе.
— Это, — сказал Томас, — на самом деле интересно с точки зрения химии.
— Да. Мирр будет доволен, когда я принесу это на физику.
Дара смотрела на них обоих.
— Вы оба, — сказала она, — одинаково смотрите на мир. Всё либо физика, либо химия, либо как это работает.
— А как иначе? — спросила Стефани.
— Ну... — Дара помахала вилкой. — Я смотрю на магию и думаю: красиво. Ты смотришь на магию и думаешь: как?
— «Как» — это тоже красиво, — сказала Стефани.
— Ты ещё не начала практику? — спросил Эрик, оторвавшись от окна.
— Нет. — Стефани закрыла блокнот. — Вэнн говорит, что сначала нужна теоретическая база. — Пауза. — Я понимаю почему. Но это... — Она остановилась.
— Сложно, — сказал Томас.
— Да, — согласилась она. — Все знают, что умеют. Ты — ментальный маг, Эрик — воздух, Дара — свет. Вы уже умеете немного контролировать свою силу. А я... — Она посмотрела на правую руку. — Я не знаю, что у меня происходит, когда происходит. Я узнаю постфактум, когда кто-то уже летит.
Дара положила вилку.
— Ты помнишь, что ты сказала на уроке физики? — спросила она.
— Про молот?
— Про молот. «Я это делала. Слов не знала». — Дара пожала плечами. — Ты делаешь зачарование. Слов пока не знаешь. Придут слова.
Стефани посмотрела на неё.
«Придут слова», — повторила она мысленно.
Это было, пожалуй, самым точным из всего, что Дара говорила за всё время. А Дара говорила много.
— Ладно, — сказала Стефани. — Сейчас — фехтование.
— Удачи, — сказал Томас. — Крайт интересный преподаватель.
— Он на прошлом занятии сказал, что поставит сегодня против меня Касселя, — сказала Стефани.
Пауза за столом.
— Удачи, — повторил Томас.
* * *
Зал для фехтования пах деревом и кожей — кожаными ручками учебных клинков, кожаными перчатками, тем особым запахом, который бывает в помещениях, где регулярно работают телом. Не неприятный запах — рабочий.
Крайт стоял у стойки с клинками.
Первокурсники выстроились.
— Сегодня — спарринги, — сказал он. — Попарно. Цель не победить. Цель — применить то, что разбирали на прошлых занятиях. Стойка, хват, шаг, выпады. — Он прошёлся взглядом вдоль ряда. — Пары я назначил еще в прошлый раз, но повторю их, что бы никто не ошибся.
Он диктовал пары методично, с видом человека, который видит что-то в каждом из студентов и составляет комбинации не случайно.
— Лютенберг-Фламберг. Кассель.
Стефани выдохнула, внутреннее она надеялась, что учитель передумает.
Дориан Кассель не показал своих эмоций, только слегка кивнул. Взял клинок. Встал напротив.
Они смотрели друг на друга.
Между ними было двадцать сантиметров разницы в росте, несколько килограммов разницы в весе и один инцидент в главном зале на второй день, который ни один из них не упоминал вслух, но который висел в воздухе вполне ощутимо.
— Начали, — сказал Крайт.
Кассель двигался хорошо.
Это Стефани отметила честно, без обид — он двигался хорошо, с тем лёгким ритмом, который бывает у людей, начавших фехтование рано, в детстве. Не показная элегантность, а именно рабочая лёгкость: клинок в нужном месте в нужный момент, шаг поставлен, запястье работает правильно.
Она держалась.
Уходила, принимала удар на гарду, отвечала там, где видела возможность. Но возможностей было мало — он лучше знал оружие, это было просто фактом, и злиться на факт было бессмысленно.
«Смотри», — сказала она себе. — «Просто смотри».
Это был кузнечный принцип: прежде чем бить, смотри. Металл всегда говорит тебе, что с ним не так — если смотреть правильно. Неравномерный цвет при нагреве, лёгкая асимметрия поверхности, звук под молотком, который чуть не такой, каким должен быть.
Она смотрела на клинок Касселя.
Он был учебным — тупым, с гардой, стандартным. Как все остальные на стойке. Но не совсем как все остальные.
Там, чуть выше середины клинка, на правой плоскости — едва заметное уплотнение. Она бы не увидела, если бы не смотрела именно так, как смотрят на металл: не на поверхность, а через поверхность.
Небольшое утолщение. Неравномерность структуры. Брак при отливке или при заточке — неважно. Важно то, что в этом месте металл держал нагрузку иначе, чем должен. Чуть хуже. Чуть менее надёжно.
«Вот и ты», — подумала Стефани, зачем-то облизнув верхнюю губу.
Она дала Касселю сделать ещё один выпад — ушла, отступила на полшага, как будто теряла позицию. Он двинулся вперёд, клинок пошёл в сторону её правого плеча — стандартная атака, хорошая, правильная.
Она не уходила от неё.
Она приняла на свой клинок — жёстко, не мягко, не перенаправляя, а именно жёстко, с вложением, с поворотом корпуса, с тем самым весом через переднюю ногу, который Крайт называл «неправильным хватом, но хорошим вложением».
Удар пришёлся точно в точку брака, не выше, не ниже, благодаря навыку кузнеца.
Звук был не тот, которого ждёшь от учебных клинков при столкновении.
Металл лопнул.
Чисто, по линии брака — именно там, где должен был, если смотреть правильно и ударить правильно.
Верхняя часть клинка Касселя описала дугу — небольшую, аккуратную — и упала плашмя точно на носок его ботинка.
Тишина.
Кассель смотрел на обломок клинка у своего носка. Потом на оставшуюся в его руке рукоять с куском металла. Потом на Стефани.
Стефани стояла с целым клинком и выражением человека, который сделал то, что сделал, и теперь обрабатывает последствия, того, что получилось.
— Лютенберг-Фламберг, — сказал Крайт.
Голос у него был особенный — тот голос, который бывает, когда человек одновременно сердится и не сердится, и сам не может определить, чего больше.
— Да? — сказала Стефани.
— Это учебное оружие.
— Да.
— В нём был дефект?
— Да.
— Вы его увидели.
— Да.
Крайт смотрел на неё секунду. Потом перевёл взгляд на сломанный клинок. Потом обратно.
— Хват у вас кузнечный, — сказал он. — Ноги поставлены неправильно. Техники атаки — никакой. — Пауза. — Но увидеть дефект в чужом оружии и использовать его — это не техника. Это наблюдательность. — Ещё пауза. — Это важнее техники. Технику можно выучить. А видеть недостатки врага или его экипировки — это мастерство.
— Мне поставят в счёт клинок? — спросила Стефани.
— Нет, — сказал Крайт. — Оружие с дефектом не должно быть в обороте. Он мог сломаться в более опасной ситуации и мы бы получили раненого студента, в лучшем случае. — Он подобрал обломок. — Это моя ошибка. Я не перепроверил оружие перед занятием.
Он сказал это совершенно ровно, без раздражения — с тем спокойствием человека, который умеет признавать ошибки, потому что ошибки исправляются, а не замалчиваются.
Кассель всё это время молчал.
Стефани посмотрела на него.
У него было лицо человека, который переживает несколько вещей одновременно и не даёт ни одной из них выйти наружу. Хорошая дисциплина.
— Поединок продолжать? — спросила она.
— Нет, — сказал Крайт. — Сегодня достаточно. Следующая пара.
* * *
После фехтования они шли обратно все четверо.
Дара держала Стефани за руку и шла чуть быстрее необходимого — у неё было много энергии, которая требовала движения.
— Ты сломала его клинок одним ударом! — восторженно сказала она.
— Клинок был с дефектом.
— Ты сломала клинок Касселя.
— Дефектный клинок Касселя.
— Это одно и то же с точки зрения результата, — заметил Томас.
— С точки зрения металлургии — не одно и то же, — сказала Стефани.
— Он смотрел на тебя, — сказала Дара. — После того как клинок упал. Он так смотрел.
— Как?
Дара подумала.
— Как человек, который пересматривает классификацию, — сказала она.
Томас кивнул.
— Точно, — сказал он.
Стефани подумала об этом.
«Пересматривает классификацию», — повторила она мысленно. — «Это, наверное, хорошо. Или плохо. Непонятно».
— Эрик, — позвала она. — Ты записал?
— Разумеется, — сказал Эрик.
— И что ты записал?
— Что дефект в металле виден, если знать, как смотреть. — Пауза. — И что это, вероятно, связано с твоим зачарованием. Ты видишь структуру материала иначе, чем обычный человек.
Стефани остановилась.
Остальные тоже остановились.
— Ты думаешь, я вижу дефекты потому что зачарователь?
— Я думаю, что это очень вероятно, — сказал Эрик. — Зачарование работает через понимание свойств материала. Понимание может работать на уровне восприятия. — Пауза. — Это интересная граница твоего таланта.
— Эрик, ты опять... — начала с легким возмущением Дара.
— Ты увидел то, о чем я никогда не задумывалась, — опередила её Стефани. — И ты, вероятно, прав.
Дара посмотрела на Стефани.
— Ты думаешь, ты видишь металл иначе?
Стефани подумала о клинке Касселя. О том, как она увидела утолщение — не просто заметила, а именно увидела, как видят что-то, что не должно быть там, где оно есть.
— Я всегда думала, что это просто опыт, — сказала она медленно. — Что мастер Грюнвальд просто научил меня смотреть правильно. — Пауза. — Может, и он тоже. Но, возможно, не только он.
* * *
Вечером они пришли в кузницу сами.
Не по приглашению — просто пришли, все трое, когда Стефани уже разжигала горн. Дара постучала в дверь и спросила «Можно?» тоном, который означал «А мы уже здесь». Томас вошёл и сразу нашёл место у стены — там, где можно было сидеть и наблюдать, не мешая. Эрик встал у двери с записной книжкой.
Стефани посмотрела на них.
— Вы пришли смотреть?
— Ты после ужина сказала, что будешь чинить клинок, — сказала Дара.
— Крайт отдал мне обломки, сказал, что все равно на выброс, — сказала Стефани. — Да, буду. — Пауза. — Но это долго и неинтересно.
— Интересно, — сказал Томас.
— Неинтересно для тех, кто не понимает.
— А ты объясняй, — просто сказал Томас. — Тогда будет интересно.
Стефани посмотрела на него.
Потом на горн, который уже начинал разгораться.
— Ладно, — сказала она.
Она взяла оба обломка клинка и положила на верстак рядом. Жест был привычным — как раскладывают инструменты перед работой, каждый на своё место.
— Смотрите на линию разлома, — сказала она. — Вот здесь. — Она показала пальцем. — Видите, как она идёт?
Они смотрели.
— Ровно, — сказал Томас.
— Почти ровно, — поправила Стефани. — Видите, где она чуть уходит в сторону? Вот здесь. Это значит, что в этом месте структура была неоднородной ещё до того, как клинок треснул. Металл рос вокруг пузырька или включения при отливке заготовки. — Она взяла обломок. — Если бы я пыталась просто сварить эти два куска, шов бы держал до первой серьёзной нагрузки. Потому что проблема не в шве — проблема вот здесь. — Она провела пальцем по линии чуть в стороне от разлома.
— Ты видишь это? — спросил Эрик.
— Да. — Стефани положила обломок. — Сейчас я вырежу этот участок. Оба куска станут немного короче, зато шов будет на чистом металле. Потом — сварка. Потом — проковка шва, выравнивание, нормализация. Потом — закалка.
— Это долго, — сказала Дара.
— Да. Но быстрее, чем отливать новый клинок.
— Ты будешь всё это делать сейчас?
— Только до сварки. Закалку завтра — она требует холодной головы и полной концентрации.
Стефани взяла зубило.
— Не отходите от стены, — сказала она. — Когда работает зубило, летит окалина.
Они отошли к стене.
Горн разгорелся. Жар волной пошёл по мастерской — не неприятный, привычный Стефани и очевидно новый для всех троих: Дара слегка подалась назад, Томас сделал шаг в сторону, Эрик немедленно записал что-то.
Стефани положила первый обломок в горн.
— Сейчас я его нагрею до нужной температуры, — сказала она, не оборачиваясь. — Какой — определяю по цвету. Тёмно-красный — ещё не готово. Вишнёвый — скоро. Ярко-оранжевый — работаем.
— Ты определяешь температуру по цвету? — спросил Томас.
— Да.
— Всегда?
— Есть инструменты для измерения, — сказала Стефани. — Но опытный кузнец знает по цвету точнее, чем большинство инструментов. Металл не врёт.
— В отличие от людей, — сказала, задумавшись, Дара.
— В отличие от людей, — согласилась Стефани.
Она смотрела на горн.
Металл начинал светиться — сначала еле заметно, потом ярче. Тёмно-красный. Вишнёвый, как и говорила. Ещё немного.
— Когда металл нагревается, — сказала она, — кристаллическая решётка меняется. На занятии по физике Мирр объяснял про состояния вещества — твёрдое, жидкое, газообразное. Но у металлов есть промежуточные состояния. Когда сталь при ковке горячая, она не мягкая — она пластичная. Это разница. Мягкое течёт. Пластичное держит форму, но соглашается с инструментом.
— Соглашается, — повторила Дара.
— Да. — Стефани взяла щипцы. — Металл всегда или сопротивляется, или соглашается. Задача кузнеца — понять, когда и что, и работать с этим, а не против.
Она вынула первый обломок из горна.
Ярко-оранжевый — правильно.
Положила на малую наковальню. Взяла зубило.
— Смотрите на шов, — сказала она. — Я уберу вот этот участок с дефектом.
Удар был коротким, точным. Окалина брызнула в стороны — Дара слегка вскрикнула, Томас не двинулся, Эрик написал что-то.
Металл лёг как надо.
— Хорошо, — сказала Стефани сама себе.
— Это больно? — спросила Дара.
Стефани подняла взгляд.
— Металлу?
— Да.
Пауза.
— Не знаю, — сказала Стефани честно. — Иногда кажется, что да. — Она положила обломок обратно в горн — медленно дойти до рабочей температуры для следующего этапа. — Но если больно, это нужная боль. Как когда мышца болит после правильной нагрузки.
— Философия кузнеца, — сказал Томас.
— Философия металла, — поправила Стефани, обработав второй обломок и вернув его в горн. — Я просто слушаю.
Дара посмотрела на горн. На обломки клинка. На Стефани, которая стояла у наковальни с тем выражением сосредоточенного спокойствия, которое бывает у людей на своём месте.
— Ты знаешь, — сказала Дара тихо, — что это красиво? То, что ты делаешь.
Стефани посмотрела на неё.
— Это ремонт сломанного клинка.
— Нет, — сказала Дара. — Это ты. Ты красиво делаешь.
Стефани открыла рот. Закрыла. «Я не умею принимать комплименты», — поняла она. — «Надо учиться. Это тоже навык».
— Спасибо, — сказала она.
Это вышло немного неловко. Но честно.
Горн гудел. Металл доходил до рабочего состояния. За окном академия жила своей вечерней жизнью — где-то смеялись, где-то шли по коридору с быстрыми шагами, в библиотечном корпусе, как всегда, горел свет.
Они сидели и стояли в кузнице — четверо первокурсников, которые еще недавно были незнакомцами в дилижансе — и смотрели, как горит горн.
Знаете, я к своим вещами отношусь трепетно и аккуратно. Вот, допустим, я не разбила ни одного стекла на своих телефонах. Не потеряла, не утопила случайно. Все в целости и сохранности. Да, аккумулятор может не вынести моей осторожности и жахнуться сам, чтоб, значит, я додумалась новую модель телефона купить и оставить его в покое на старости лет. А так нет, так я вещи берегу.
И особенно мне некомфортно, когда мои вещи берёт кто-то другой. Даже если и с моего разрешения. А тем более ─ если кто-то вещь неаккуратно спиздит.
Тут я, конечно, теряю самоконтроль.
Учила я как-то детей резать по дереву. Конечно, в полном смысле детьми этих оболтусов назвать нельзя ─ в основном это хулиганистые подростки, которые достались мне от предыдущего педагога, Доминика ─ настоящего художника и резчика. (Он совсем не вовремя спился и начал резать портреты и эпитафии на каменных могильных плитах).
Этот бывший педагог человеком был добрым и покладистым, много им позволял, потому что всегда был или подшофе, или с бодуна. И ко мне эта банда попала с расшатанной психикой и неровными моральными принципами.
И вот они у меня сидят. Скучают по своему любимому Доминику и режут… Его резаками в основном режут (добрейший Доминик передал мне и все резаки, и все дрова).
Но, конечно, не только его ученики были. Были и мои личные. И резаки мои личные тоже были. Пара штук, но были. Мне их подарил другой резчик. Они мне, может, дороги как память. Я их, может, привела в порядок, покрасила морилкой и любуюсь всякую минуту.
И вот как-то смотрю ─ а нет на месте одного моего резака!! Вот совсем нет! Такого чтоб резаки пропадали ─ такого эти раненые в душу подростки ещё не видели. И очень огорчились. И обещали сломать руки, нос и шею гаду, который покусился на святое.
Надо, конечно, понимать, что мальчики были в очень растрёпанных чувствах после ухода (в запой и с работы, а не то что вы подумали...) любимого педагога. Их можно понять. И хотя возобновление занятий по резьбе несколько примирило их с потерей, но угроза расправы с любым, кто попадёт под подозрение, оставалась.
─ Не переживайте, ─ поспешила я их успокоить, ─ любой, кто притронется к моим вещами без спроса ─ обязательно пострадает!
Самое главное, думаю я, не допустить рукоприкладства. Смотрю, вроде успокоились. Хорошо, сидим, дальше, пытаемся изобразить что-то из дерева, потому что изобразить что-то приличное на лице не получается: они свирепы, я скалюсь, как идиотка.
Проходит, может, час. Или другое какое-то время. Некоторые уже и домой ушли.
И входит тут ко мне в кабинет преподаватель с первого этажа и говорит, что я нарушаю технику безопасности, разбрасываю везде свои резаки, и дети, может быть, об них травмируются. И вводит в кабинет пострадавшего отрока лет двенадцати. Мой.
─ Как это нарушаю, — говорю, ─ нету такого. Весь инструмент на месте. А если кто и спёр чего по недомыслию ─ то я тут не виновата. Это пусть их родители отвечают.
─ А я, ─ говорит преподаватель, ─ не интересуюсь, кто отвечает. Это пусть милиция разбирается. А только вот вам пострадавший! ─ и толкает ко мне этого отрока. ─ Он, ─ говорит преподаватель, ─ порезался, и ему даже пришлось клеить лейкопластырь на пострадавшую область!..
А отрок глазки прячет и смущается. С чего бы это? Вроде так-то тип нагловатый…
— …Вот туда! ─ громогласно заканчивает обличительную речь преподаватель с первого этажа и указывает пальцем на задницу отрока.
Мы все дружно смотрим туда же. А отрок блеет:
─ Я, ─ говорит, ─ сел на лавочку переобуться, а оно мне как впилось!.. ─ и вздыхает.
Преподаватель с первого этажа ушла, осуждающе окинув всех взглядом.
Мы с остатками мстителей внимательно смотрим на пострадавшего.
─ Вот ваш резак, ─ робко говорит он и выкладывает на стол пропажу.
Мы смотрим и понимаем, что как ни пристраивай на него свою жопу, порезать её не получится. Тем более ─ если жопа в толстых трикотажных штанах.
─ А ну! ─ один из мстителей несколько грубо развернул отрока пострадавшей частью тела к нам: дырки на штанах на означенном месте не наблюдалось.
─ Да там царапина просто, ─ заюлил отрок и начал отступать к двери. ─ Кто-то бросил резак на лавку… Наверное слышал, что вы сказали… Испугался…
Он не уточнил, кто именно и что сказал: то ли про нос и шею, то ли про другие неприятности.
─ Знаете, как иголкой кольнуло, ─ продолжал отрок, продолжая отступать. Мы молчали. ─ Ну, от иголки же штаны не рвутся? ─ он неестественно засмеялся и сдриснул из кабинета.
Никто за ним не побежал. По лицам присутствующих было понятно, что отроку никто не поверил.
─ Надо было внутри кармана посмотреть, там дырка, ─ предположил один.
─ Догоним? ─ это второй.
─ Догонишь его, он как заяц подстреленный, ─ это третий.
─ Не надо никого догонять, ─ это я. ─ И лезть в карманы не надо ─ это незаконно, ─ постаралась я предупредить незаконные действия подопечных.
Конечно, опасения были. Но, с другой стороны, резак вот он, лежит на столе. А значит, и репрессии надо отменять.
Больше у меня в кабинете ничего не пропадало. Или я просто не замечала. А только с того времени меня стали называть ведьмой. Не то чтобы прямо в глаза. А при случае. Не может кто-то найти, допустим, батарейку или какой другой необходимый предмет, ножницы какие-нибудь.
─ Ничего, ─ говорят, ─ вот кто щас ногу сломает ─ тот и спёр.
─ Не бери без спроса, ─ учили новеньких, ─ а то с лестницы свалишься и шею сломаешь.
Стоит оговориться, что речь не просто про Godot как таковой. Потому как я сделал форк Redot'а (форка Godot'а) и там уже в исходниках движка внёс исправления.
Мне показалось странным, что такой базовой вещи, как менеджер пакетов нет в движке из коробки, поэтому я вооружился буквами и пошёл насыпать их в код. В качестве первого этапа разработки подключил АПИ NuGet'а, дальше в будущем планирую добавить добавление пакетов из гита и в последствии, думаю, это будет логично, планирую поднять собственный репозиторий, чтобы хранить там свои какие-то переиспользуемые пакеты или пакеты, предназначенные только для движка.
Вообще, если вы используете для работы не встроенный редактор скриптов, а VS, то стандартного нюгет пакета вполне хватит на первое время, но так как я сморю чуть дальше и чуть глубже, я пошёл по пути собственного инструмента. Дополнительно: я пишу на шарпе, а Годот по умолчанию работает с GDScript и шарп у него подключается отдельно. Я сбилдил свою версию так, чтоб она по умолчанию работала с шарпом.
И так, что же у нас тут по менеджеру пакетов?
В папочке modules/mono/editor/GodotTools/GodotTools/ создаём новую папку нашего инструмента, я назвал её NuGet на текущем этапе. При доработках думаю, переименую уже во что-то более универсальное.
Внутри папки создаётся три файла: NuGetManagerWindow.cs
Класс описывающий окно, наследует и имплементрирует ConfirmationDialog, ISerializationListener. Описать обязательно несколько методов:
public override void _Ready()
{
Title = "NuGet Package Manager";
Size = new Vector2I(800, 600);
Exclusive = true;
_apiClient = new NuGetApiClient();
BuildUI();
RefreshInstalledPackages();
}
BuildUI и RefreshInstalledPackages соответственно это не обязательные прям с точки зрения Годота методы, просто я в них вынес нужную мне логику.
Второй класс NuGetPackageInfo - это буквально описание каждого пакета. То есть просто DTO для пакетов с основной информации:
/// <summary>
/// Represents a NuGet package from search results.
/// </summary>
public class NuGetPackageInfo
{
[JsonPropertyName("id")]
public string Id { get; set; } = string.Empty;
[JsonPropertyName("version")]
public string Version { get; set; } = string.Empty;
[JsonPropertyName("description")]
public string Description { get; set; } = string.Empty;
[JsonPropertyName("authors")]
[JsonConverter(typeof(StringOrArrayConverter))]
public List<string> Authors { get; set; } = new();
[JsonPropertyName("projectUrl")]
public string ProjectUrl { get; set; } = string.Empty;
[JsonPropertyName("iconUrl")]
public string IconUrl { get; set; } = string.Empty;
[JsonPropertyName("totalDownloads")]
public long TotalDownloads { get; set; }
[JsonPropertyName("versions")]
public List<NuGetVersionInfo> Versions { get; set; } = new();
public string AuthorsString => string.Join(", ", Authors);
}
Ну и NuGetApiClient – логично, что дёргает запросы в сторону нюгета, для получения информации о пакетах.
После того, как мы всё что нужно описали, надо отредактировать GodotSharpEditor.cs и добавить туда ссылку на наше окно, добавить пункт меню и его обработчик для открытия нашего окна
Лунная миссия Артемида 2 запомнилась завирусившимся видео с летающей по кабине космического корабля банкой Нутеллы. Видео опубликовали буквально везде, шутили про самую дорогую рекламу в истории, ну и прочее, что шутят в таких случаях.
В общем, "Вирус Нутеллы" было просто не остановить! А что делать, если не можешь остановить? Правильно: возглавь! Поэтому давайте разберемся, как Нутелла попала на борт лунного корабля "Орион". (И нет, это была не рекламная акция, NASA все отрицает)
Когда опубликовали видео с нутеллой, в комментариях зрители и читатели возмущались: банка нутеллы слишком тяжелая, зачем её было брать в меню? Кто вообще такое разрешил, ведь это даже не "космический" продукт! Вспоминали советские борщи в тюбиках. Было даже предположение, что нутеллу взял кто-то из астронавтов в числе личных вещей.
Что такое набор личных вещей? Personal Preference Kit (PPK) это достаточно компактная сумка, 12.7х20.3х5.1 см.
PPK для лунных миссий Аполлон
Примерно столько вещей влезает в PPK.
А канадский астронавт Джереми Хансен, вообще взял с собой только одно ожерелье
В новостях пишут, что кроме ожерелья, Джереми так же взял с собой на борт канадское печенье и кленовый сироп. Так ли это?
Можно подумать — вот он, ответ: нутеллу тоже просто взял кто-то из астронавтов среди личных вещей!! Но вот в чем загвоздка: в личные вещи по правилам NASA нельзя включать еду.
Исключение сделали только для Базза Олдрина, с набором для причащения, в первом полете на Луну. Но там было буквально несколько капель вина, и граммов хлеба. Плюс это применялось не в невесомости, а на поверхности луны.
Но как же тогда на борт попала банка Нутеллы? И как Джереми Хансен протащил с собой на борт печенье и сироп? А все дело в том, что в миссии Артемида-2 NASA позволило полётное меню формировать самим астронавтам! И они просто включили туда все свои любимые блюда, в рамках разумного (то есть критический отбор все равно был и крошащееся печенье, или вонючую селедку, взять бы не разрешили).
Таким образом, Nutella, так же как и кленовый сироп была просто включена в меню миссии Артемида-2 — про это так же есть информация в википедии. И попала она туда по желанию самих астронавтов. Надо отметить, что меню в миссии Артемида-2 было достаточно разнообразным:
А по поводу того, что банка слишком тяжелая, тоже есть объяснение. У NASA жесткость требований отличается для долговременных и кратковременных миссий. В кратковременных миссиях требования к эффективности ниже, поэтому NASA делает послабления в пользу безопасности. Заводская упаковка шоколадной пасты в крепкой банке достаточно безопасна для короткой миссии, а калорийность компенсирует вес.
По итогу, правильный ответ на вопрос "кто разрешил взять банку нутеллы на Луну" — разрешили астронавты сами себе, просто включив вкусняшку в меню! А NASA и не возражало. Ведь любимая еда на борту, очень сильно помогает работать и жить в достаточно стрессовых условиях космического корабля. Интересно, консультировались ли астронавты с нутрициологами... 🤔
В мозге среднестатистического человека около 100 триллионов синапсов — соединений между нейронами, которые передают нервные импульсы и химические сигналы. Вся эта вычислительная мощность умещается в небольшой черепной коробке объемом 1200–1400 кубических сантиметров.
В Млечном Пути, простирающемся на 100 000 световых лет, насчитывается от 100 до 400 миллиардов звезд. Выходит, что число связей в нейронной сети одного человека в сотни раз превышает количество звезд в целой галактике!
Каждый синапс способен передавать импульсы с частотой до нескольких сотен раз в секунду. В любой момент времени — даже когда вы спите — миллиарды нейронов обмениваются сигналами. Во время бодрствования нейронная сеть мозга обрабатывает информацию от органов чувств, управляет движениями, фокусирует внимание, помогает извлекать воспоминания и порождает мысли. Во сне активность не выключается: мозг перерабатывает пережитое, сортирует полученные знания, укрепляет память, регулирует эмоции и поддерживает работу жизненно важных систем.
Галактика против мозга
Звезды в галактике — отдельные объекты, разделенные колоссальными расстояниями. Несмотря на их гравитационное взаимодействие друг с другом, они все же не образуют плотную сеть связей. Мозг устроен иначе: все упаковано очень плотно, и каждый нейрон тесно связан с тысячами других, что вкупе приводит к формированию сложнейшей паутины коммуникаций.
И эта паутина постоянно меняется. Одни связи усиливаются, другие ослабевают, старые исчезают, а их место занимают новые. Это называется нейропластичностью — способностью мозга адаптировать нейронные связи под опыт, обучение и даже травмы.
Ученые давно мечтают смоделировать работу всего человеческого мозга, а не его отдельных участков, но это все еще невозможно из-за отсутствия необходимых вычислительных мощностей. Даже самые мощные суперкомпьютеры способны симулировать лишь крошечную часть процессов — и то с огромными упрощениями.
Мозг — одна из самых сложных известных структур во Вселенной. Да, галактики и даже галактические скопления огромны, но они довольно предсказуемы и без особых проблем поддаются моделированию. Мозг, несмотря на его крошечность в космических масштабах и доступность для прямого исследования, все еще остается очень плохо изученной структурой с невероятно сложной внутренней организацией.
При должном подходе мозг человека способен постичь целую Вселенную, понять законы природы, рождать гениальные идеи, менять через тело окружающий мир и создавать произведения искусства, которые останутся в истории на века.
Прямо сейчас, читая эти строки, в вашей голове разворачивается процесс, по сложности сопоставимый со всем, что происходит в целой галактике. Каждый из вас — космос.
Ну, строго говоря, не совсем «легла» — скорее «добралась до кровати в жилой части флигеля, не снимая рабочих штанов, и горизонтально продолжила думать о катке». Разница принципиальная. Она не просто ложилась спать — она временно переместила рабочий процесс в горизонтальное положение.
Каток не давал покоя.
Трещина шла по боковой поверхности под углом в двадцать — может, двадцать два — градуса к оси. Это важно, потому что угол определяет, как именно металл будет вести себя при нагреве: неравномерно, с расширением именно там, где меньше всего нужно. Чугун — материал капризный, почти злопамятный. Он помнит каждую трещину, каждый неправильный нагрев, каждую попытку починить его слишком быстро.
С чугуном нельзя торопиться.
Это она усвоила в одиннадцать лет, когда попыталась починить треснувшую чугунную сковородку из кухни — просто потому что было интересно, просто потому что трещина казалась небольшой. Сковородка рассыпалась на три части прямо в руках. Мама тогда сказала что-то про неосторожность. Папа сказал что-то про «ну хоть попробовала». Мастер Грюнвальд, которому она потом рассказала, сказал: «Чугун — это не сталь. Сталь можно уговорить. Чугун нужно обмануть».
Она лежала и думала, как обмануть каток.
За окном было темно — та особая академическая темнота, когда всё большое здание рядом спит, и тишина стоит такая, что слышно, как оседает камень. Изредка что-то шуршало во внутреннем дворе — может, ветер, может, что-то живое, у академий всегда есть своя живность.
Горн остыл. Она потушила его правильно, медленно, как положено. Теперь он тихо тикал, остывая окончательно — металл и кирпич всегда тикают при охлаждении, это нормально, это просто физика, кристаллическая решётка перестраивается.
Стефани прислушивалась к этому тиканью, как слушают колыбельную.
Последнее, что она подумала перед тем, как наконец провалиться в сон — что для первого прогрева чугунного катка нужна температура не выше тёмно-красного каления. Медленно. Терпеливо. Обмануть.
Потом — сон.
Глубокий, тяжёлый, честно заработанный.
* * *
Ту-тууууум.
Стефани подскочила с кровати прежде, чем мозг успел проснуться.
Тело среагировало раньше — рефлекс кузнеца, когда резкий звук в мастерской означает либо что-то упало, либо что-то лопнуло, либо что-то, что не должно гореть, начало гореть. Она уже стояла на ногах, уже оглядывалась — где горн, где металл, что случилось?
Горн стоял спокойно. Металл лежал на месте. Ничего не горело.
Ту-тууууууум.
Звук шёл снаружи.
Она посмотрела в окно.
Внутренний двор академии, который час назад был пустым и тихим, сейчас был… другим. Там стояли люди. Много людей. В разной степени одетости и разной степени готовности к существованию — кто-то стоял ровно, кто-то явно держался за соседа из соображений равновесия, кто-то смотрел в небо с выражением «я не понимаю, почему я здесь и как это остановить».
Посреди двора стоял физрук.
С горном.
Не с кузнечным, нет — с маленьким охотничьим горном, блестящим, явно любимым, явно используемым именно для этой цели регулярно и с удовольствием. Физрук держал его с видом человека, которому утро приносит искреннюю радость, и эту радость он считал своим профессиональным долгом распространять на окружающих независимо от их желания.
Ту-туууууум.
Стефани посмотрела на маленькое окошко в спальне.
За окошком было серое предрассветное небо. Не утро. Даже не намёк на утро. Просто ночь, которая слегка посветлела и решила, что этого достаточно.
«Который час», — подумала она. — «Это что вообще происходит.»
Это был не вопрос. Это было состояние.
Она посмотрела на своё отражение в тёмном стекле окна — и обнаружила на голове нечто.
Мама подарила шапку перед отъездом.
«Для сна», — сказала Леонора Лютенберг, доставая из сумки предмет, который Стефани сначала приняла за маленького зверя. — «Уши мёрзнут ночью, когда холодно. И вообще — для уюта».
Шапка была вязаной. Тёплой. С ушками.
С круглыми медвежьими ушками сверху и маленькой вышитой мордочкой над козырьком — нос-пуговка, глаза-бусины, выражение абсолютного медвежьего спокойствия. Мама явно делала её сама или заказывала у кого-то, кто понимал, что «для уюта» означает «максимально мягко и максимально нелепо, потому что дома можно».
Дома — можно.
Стефани одевала её каждую ночь с тех пор, как получила, потому что шапка была тёплой и пахла домом — слегка лавандой от маминого шкафа, слегка чем-то металлическим, что пропитало все вещи в доме Фламберг-Лютенбергов за годы.
Сейчас шапка сидела на голове набекрень — одно медвежье ушко торчало вверх, другое смялось. Но выражение медвежьей мордочки было невозмутимым.
Ту-туууууум.
— Иду, — мрачно сказала Стефани в пространство.
Взяла куртку. Надела сапоги.
Шапку снимать не стала.
Не потому что забыла — просто в пять утра, после трёх часов сна, после ночи с чугунным катком, решение снимать или не снимать шапку находилось в той категории вещей, которые мозг отказывался обрабатывать. Есть задачи важные. Шапка — не важная задача.
Она вышла во двор.
* * *
Двор был полон народу.
Первокурсники — все, судя по всему, потому что физрук, как выяснилось, ходил по корпусам лично, и его горн был слышен из любой точки академии. Рядом с первокурсниками стояли, что несколько неожиданно, второкурсники. И третьекурсники. И — Стефани потёрла глаза, решив, что не так поняла, — несколько преподавателей.
Не все. Но некоторые.
Общеакадемическая зарядка, как выяснилось чуть позже из разговора рядом стоящих, была традицией. Старой традицией, введённой ещё третьим ректором академии, который считал, что магический дар — это хорошо, но тело должно работать независимо от того, есть у тебя магия или нет. Традиция пережила семь ректоров, двадцать три реформы учебного плана и один инцидент с перемещением шпиля. Физрук с горном был её живым воплощением и раз в год проводил ее минута в минуту.
Его звали, как выяснилось, Бруно Кестер. Но студенты за глаза называли его «Горн» — и не только потому что горн был его неотъемлемым атрибутом.
Дара стояла рядом — в пальто поверх ночной рубашки, в штанах для верховой езды, с волосами, собранными в нечто, что утром казалось достаточным. Увидела Стефани и открыла рот.
Томас стоял с закрытыми глазами — не спал, просто экономил ресурсы.
Эрик выглядел, как ни странно, вполне бодро — маги воздуха, похоже, чувствовали утренний холод иначе, как что-то родное.
— У тебя, — сказала Дара тихо, — на голове…
— Шапка, — сказала Стефани.
— Она с ушками.
— Я знаю.
— С медвежьими ушками.
— Дара.
— Да?
— Сейчас пять утра.
— Да, — согласилась Дара после паузы. — Ты права. Очень милая шапка.
Томас приоткрыл один глаз. Посмотрел на шапку. Закрыл.
— Функционально, — сказал он.
Эрик смотрел в сторону горизонта с записной книжкой наготове — судя по всему, утренний воздух над академией имел какие-то особые характеристики, которые стоило зафиксировать.
Кестер прошёлся вдоль рядов с видом человека, которому нравится то, что он видит, даже если то, что он видит — это двести сонных студентов и несколько не менее сонных преподавателей.
— Доброе утро! — сказал он голосом, в котором «доброе» было абсолютно искренним и оттого особенно несправедливым.
Двор ответил нестройным бормотанием.
— Жалко что нас так мало, но я горжусь, что вы пришли соблюсти традиции академии! А теперь бег! Четыре круга! Начали!
Двор двинулся.
Стефани бежала в шапке с медвежьими ушками, которые при каждом шаге слегка подпрыгивали, как живые. Рядом пыхтела Дара. Томас бежал с закрытыми глазами — не полностью закрытыми, приоткрытыми ровно настолько, чтобы не врезаться в кого-нибудь.
После второго круга Стефани почувствовала, как сон отступает.
Это была одна из неприятных правд о физической нагрузке: она работала. Не хотелось признавать это в пять утра, но кровь начала двигаться, голова начала проясняться, и то угрюмое «зачем я здесь» сменилось более деловым «ладно, раз уже встала, можно и побегать».
После четвёртого круга — упражнения.
После упражнений — Кестер объявил, что все свободны до первого занятия.
Двор начал рассасываться. Медленно, как густой металл, вытекающий из ковша.
* * *
Именно в этот момент появилась она.
Преподавательница по травоведению звалась Мирна Олдт.
Это была женщина, которая вызывает мысль «уютно» — округлая, тёплая, с лицом человека, который любит чай, варенье и долгие разговоры о свойствах растений. Волосы — светло-рыжие с легкой сединой, собранные в объёмный узел, из которого торчало несколько шпилек и одна засохшая веточка чего-то ароматного, что, вероятно, было образцом для урока. Шаль поверх преподавательского плаща. В руках — корзинка.
Она была… По всей видимости, «пышная» — это было слово, которое подходило ей совершенно точно, без обидного подтекста, просто как точное описание: пышная, как хорошо поднявшийся и горячий хлеб, как всё, что сделано с запасом и от этого надёжно.
Примерно девяносто восемь килограммов тепла, уюта и искренней любви к студентам и травоведению.
Она шла через двор, улыбаясь утру с той искренностью, которая бывает у людей, для которых пять утра — нормальное время.
Увидела Стефани.
Остановилась.
Посмотрела на шапку с медвежьими ушками — на невысокую фигуру в куртке, на заспанное лицо, на ушки, которые ещё покачивались после бега.
Лицо преподавательницы сделало то, что делают лица добрых людей при виде чего-то, что они считают очаровательным: оно расплылось в улыбке, глаза потеплели, и она сделала шаг вперёд с интонацией человека, который собирается сказать что-то ласковое.
— Ой, какая милая малы…
Стефани не думала.
Это важно — она снова не думала. Три часа сна, чугунный каток, медвежья шапка, пять утра — все вместе они создали условия, в которых расстояние между словом «малы…» и движением левого кулака снизу-вверх оказалось равным нулю.
Хук правой.
Папа говорил — только правый. Левый слишком резкий.
Правый тоже оказался достаточно резким.
Мирна Олдт весила девяносто восемь килограммов тепла и уюта.
Стефани весила пятьдесят четыре килограмма кузнечной работы.
По всем законам физики удар миниатюрной девушки не должен был произвести такого эффекта на женщину почти вдвое тяжелее. По всем законам физики — правильно. Но физика в данном случае не учитывала семь лет молота и наковальни, не учитывала постановку удара, которая у Стефани была, строго говоря, лучше, чем у большинства профессиональных бойцов, просто потому что молот требует той же механики — вложение от плеча, поворот корпуса, вес через переднюю ногу.
Мирна Олдт описала дугу.
Красивую дугу.
Широкую.
Корзинка полетела отдельно — травы рассыпались в воздухе, как маленький ботанический фейерверк.
Ректор Дариус Холм стоял в трёх метрах позади, разговаривал с деканом Зольтом после всеобщей физкультуры и повернулся именно в тот момент, когда девяносто восемь килограммов уюта и тепла устремились к нему с хорошей начальной скоростью.
Он был высоким человеком с хорошей реакцией, тридцатью годами административного опыта и инстинктами, которые никакой административный опыт не вытравит.
Реакции не хватило.
Холм поймал Мирну Олдт.
Точнее, Мирна Олдт поймала Холма — в том смысле, что её траектория пересеклась с его траекторией, и результирующее движение было направлено вниз, и через секунду ректор Академии Семи Шпилей лежал на мощёном дворе с девяносто восемью килограммами травоведения поверх, окружённый рассыпанными травами, выражением человека, который ещё обрабатывает произошедшее, и шпилькой Мирны Олдт, которая каким-то образом оказалась в его бороде.
Двор застыл.
Тишина была громче горна.
Стефани стояла с опущенной рукой и смотрела на результат.
Мозг начал работать — медленно, как нагревается чугун, неохотно, но неизбежно.
«Это преподаватель,» — сказал мозг.
Пауза.
«Я ударила преподавателя.»
Ещё пауза.
«Преподаватель сидит на ректоре. Я ударила преподавателя, которая теперь сидит на ректоре.
Мне восемнадцать лет. Первый курс. Меньше месяца в академии.»
Медвежьи ушки на шапке покачивались, а медведь смотрел все так же невозмутимо.
— О, — сказала Стефани вслух.
Это было не то слово, которое хотелось сказать. Хотелось сказать что-то более точное, более исчерпывающее, что-то, что правильно описывало бы ситуацию. Но «о» вышло само, и оно было честным.
Мирна Олдт тем временем поднималась — с достоинством, надо признать, которое было несколько затруднено тем, что шпильки из её узла разлетелись в разные стороны и волосы теперь рассыпались по плечам. Холм тоже поднимался — молча, с выражением лица, по которому абсолютно невозможно было понять, что он думает, что само по себе говорило о многолетнем административном опыте.
Стефани шагнула вперёд.
— Прошу прощения, — сказала она. Голос был ровным — не потому что ей было не стыдно, а потому что дрожащий голос делу не поможет, а ровный хотя бы информативен. — Это случайность. Я не… я не хотела. Я не подумала. Это рефлекс, он срабатывает раньше, чем я успеваю…
Она остановилась.
Потому что «рефлекс срабатывает раньше, чем я успеваю его остановить» — это объяснение, которое является одновременно правдой и совершенно неудовлетворительным в контексте «я только что отправила преподавателя в полёт на ректора».
— Это был удар правой? — спросил кто-то тихо из толпы.
Это был Эрик Вессен. Он смотрел на Стефани с видом исследователя, делающего заметку.
— Правой, — подтвердил кто-то из студентов.
— Интересно, — сказал Эрик и что-то записал.
Дара стояла с рукой у рта — выражение, которое бывает, когда хочется одновременно ужаснуться и засмеяться, и оба импульса равной силы. Томас наконец открыл оба глаза. Полностью. Даже шире, чем обычно.
Мирна Олдт посмотрела на Стефани.
У неё было лицо человека, который прошёл через несколько стадий реакции очень быстро и сейчас находился на стадии «обрабатываю».
— Ты… — начала она.
— Прошу прощения, — повторила Стефани. — Искренне. Вы сказали слово, которое я… на которое я реагирую. Я понимаю, что это не оправдание. Вы имели в виду хорошее. Я это понимаю. Но реакция случается раньше понимания.
Пауза.
— Какое слово? — спросила Мирна Олдт осторожно.
— «Малышка», — сказала Стефани, покраснев. — Или производные.
— Я не успела договорить.
— Я знаю.
Мирна Олдт смотрела на неё секунду. Потом — совершенно неожиданно — вздохнула с выражением человека, который вспомнил что-то своё.
— У меня была тётушка, — сказала она, — которая не переносила слово «пышка», даже если речь сла о выпечке. Она разбила об голову дядюшки Теодора полный кувшин с молоком. — Пауза. — Кувшин был большой, литра на три.
Стефани смотрела на неё.
— Я не разбиваю кувшины, — сказала она.
— Нет, — согласилась Мирна Олдт, потерев подбородок. — Это, пожалуй, хуже, ведь у тебя отлично поставлен удар.
Холм всё это время молчал.
Он стоял, убрал шпильку из бороды, отряхнул плащ, и смотрел на Стефани с тем выражением, которое она уже начинала знать — «быстрый внутренний расчёт».
— Студентка Лютенберг-Фламберг, — сказал он наконец.
— Да, — сказала Стефани.
— Это второй инцидент за этот месяц.
— Да.
— Оба связаны с одним и тем же словом?
— Да.
Пауза.
— Вы понимаете, что рефлекс такой силы и такой скорости — это не просто привычка? — спросил он.
Стефани открыла рот.
Закрыла.
«Не просто привычка», — повторила она мысленно. — «Что он имеет в виду?»
— Это потенциально магическая реакция, — сказал Вэнн, который появился за плечом ректора с видом человека, который не спал, потому что не успел, — не потому что встал рано, а потому что работал всю ночь. — Зачарование материи на третьем уровне включает взаимодействие с физическими свойствами через намерение. Намерение может быть неосознанным. Особенно в состоянии аффекта.
Стефани смотрела на него, пытаясь понять, что он сказал.
«Намерение может быть неосознанным», — осознала она медленно. — «То есть когда я бью — я не просто бью. Я могу непроизвольно вкладывать что-то ещё. Может быть, поэтому она так далеко полетела?»
Она посмотрела на свой правый кулак.
Потом на Мирну Олдт, которая была явно жива и невредима, только растрёпана.
Потом на Холма, который тоже был жив и невредим, только с травой в складке плаща.
— Это объясняет разницу в результате, — медленно сказал ректор. — Между тем, что должно было быть, и тем, что получилось.
— Именно, — сказал Вэнн.
— Это плохо.
— Это управляемо, — поправил Вэнн. — При наличии контроля.
Холм кашлянул.
— Курсы самоконтроля, — сказал он, сделав вывод. — Они идут у ментальных магов по вторникам и пятницам. Преподаватель — профессор Ленна Крас. Вы будете их посещать. Это не обсуждается, — добавил он, прежде чем Стефани успела что-то сказать. Хотя она не собиралась возражать. Она смотрела на свой кулак и думала о том, что неосознанное намерение — это, по существу, неуправляемый инструмент.
А неуправляемый инструмент — это опасность.
Это она понимала хорошо. Это было первое, чему учил Грюнвальд: инструмент, который ты не контролируешь, опасен прежде всего для тебя.
— Хорошо, — сказала она.
Мирна Олдт собрала свою корзинку — травы частично подобрала, частично решила, что хватит того, что есть. Посмотрела на Стефани напоследок.
— «Компактная», — сказала она. — Вот правильное слово?
Стефани посмотрела на неё.
— Да, — сказала она. — Компактная — правильное слово.
— Запомнила, — сказала Мирна Олдт с достоинством и пошла к корпусу.
Холм последовал за ней, отряхивая плащ.
Зольт шёл рядом с Холмом с видом человека, который хочет что-то сказать и при этом не хочет ничего говорить, потому что непонятно, что именно здесь уместно.
Двор начал медленно оживать — шёпотом, осторожно, как оживает место после чего-то, что все видели, но ещё не решили, как к этому относиться.
Дара взяла Стефани под руку.
— Ты в порядке? — спросила она тихо.
— Нет, — сказала Стефани честно.
— Они оба живы, — сказала Дара. — И невредимы. Это главное.
— Я ударила преподавателя.
— Ты ударила преподавателя, — согласилась Дара. — И у тебя теперь будут дополнительные занятия по вторникам и пятницам.
— И ректор лежал под травоведом.
— Ректор лежал под травоведом, — подтвердила Дара. — Это тоже случилось. — Пауза. — Знаешь, что я думаю?
— Что?
— Что у тебя была очень сложная ночь, и ты пришла на зарядку в шапке с медвежьими ушками, и у тебя есть неуправляемая магия, и это всё серьёзно и требует работы. — Дара помолчала. — Но ты уже договариваешься с ректором и преподавателями о том, что делать дальше, а не стоишь и не ревёшь. Это тоже что-то.
Стефани посмотрела на неё.
Медвежьи ушки на шапке покачивались.
«Это тоже что-то,» — повторила она мысленно.
Томас подошёл с другой стороны.
— Курсы Ленны Крас, — сказал он. — Я уже занимался с ней. Она хороший преподаватель. Строгий, но хороший. Все, как написано в книге про академию.
— Ты читал о преподавателях? — спросила Стефани.
— Я читал обо всех преподавателях, — сказал Томас. — Перед поступлением. Базовая подготовка.
Эрик закрыл записную книжку.
— Правый удар, — сказал он задумчиво. — Вложение от корпуса. Неосознанное зачарование при аффекте. — Пауза. — Это интересная граница.
— Эрик, — сказала Дара.
— Что?
— Это не граница. Это человек. У которого был сложный день.
— Это не противоречит тому, что это интересная граница, — сказал Эрик с видом человека, которого взаимоисключение несколько удивляет.
Стефани слушала их.
Злость от недосыпа прошла — не вся, но большая часть. Осталось что-то другое: усталость, немного стыда, который она обрабатывала методично, как обрабатывают дефект в металле — осмотреть, понять причину, решить, как исправить, не паниковать.
Неуправляемый инструмент.
Курсы самоконтроля.
Она посмотрела на свой правый кулак последний раз.
— Идём завтракать, — сказала она. — Первое занятие через два часа.
* * *
Первое занятие было математикой.
Стефани пришла с блокнотом, карандашом, и шапкой, которую наконец сняла — уже в коридоре перед аудиторией, убрала в сумку, решив, что для учёбы медвежьи ушки несколько избыточны.
Преподаватель по математике звался Арнт Вейс — сухой, точный человек с указкой, которую он держал как продолжение руки, и манерой писать на доске так, что каждая цифра стояла на своём месте с математической неизбежностью.
Стефани смотрела на доску и чувствовала, как что-то в ней успокаивается.
Цифры были надёжными. Пропорции не менялись в зависимости от того, сколько ты спал. Угол оставался углом. Вес оставался весом.
— Начинаем основы алгебры, — сказал Вейс. — Кто знаком?
Несколько рук поднялись — неуверенно, на половину, из серии — «ну, я слышал о таком».
Стефани подняла руку полностью.
Вейс посмотрел на неё.
— Пропорции? — спросил он.
— Прямая и обратная, — сказала Стефани. — Расчёт веса заготовки через объём и плотность материала, расчёт угла обработки через желаемый профиль.
Вейс посмотрел на неё ещё секунду.
— Кузнечное дело? — спросил он.
— Да.
— Хорошо, — сказал он. Не «удивительно», не «для студентки неплохо». Просто «хорошо» — как математик говорит о правильном ответе. — Тогда вам будет полезно заполнить пробелы в теоретической базе. Практику вы знаете. Язык — нет.
Стефани кивнула.
Это было точно.
Рядом Эрик уже что-то записывал — быстро, своим аккуратным почерком, с пометками на полях. Дара смотрела на доску с видом человека, который видит цифры и надеется, что если смотреть достаточно долго, они сложатся в смысл. Томас решал задачу, которую Вейс ещё не написал — просто предугадал следующий шаг по логике предыдущего.
Занятие шло своим чередом.
Потом — основы магии. Длинный зал, преподаватель в синем плаще, доска с классификацией стихий, история первых зафиксированных магических практик, определения.
Стефани слушала и делала пометки — аккуратно, в том же угловатом стиле. Когда преподаватель дошёл до раздела «зачарование», остановился и посмотрел на аудиторию.
— В этом году у нас есть студент с зачарованием третьего уровня, — сказал он нейтрально. — Это редкость. Теоретический материал по зачарованию я буду давать отдельно, поскольку стандартная программа первого курса его не охватывает в необходимом объёме. Но это будет позже, когда дело дойдет до практики.
Несколько голов повернулось к Стефани.
Она не реагировала. Делала пометку в блокноте.
«Дополнительный теоретический курс по зачарованию,» — записала она. — «Уточнить у куратора Вэнна».
Потом — физика.
Это было лучшее занятие дня.
Преподаватель, немолодой человек по имени Гастон Мирр, начал с простого: что такое сила, что такое масса, что такое ускорение. Базовые вещи. Вещи, которые Стефани знала — но знала руками, знала через молот и металл, знала интуитивно, не зная слов.
Когда Мирр написал на доске формулу и спросил, кто может привести пример из жизни, Стефани подняла руку.
— Молот, — сказала она. — Чем тяжелее молот и чем быстрее его опускаешь, тем сильнее удар по металлу. Но при этом слишком тяжёлый молот замедляет удар, и результат хуже, чем с более лёгким, которым можно ударить быстрее.
Мирр смотрел на неё.
— Именно, — сказал он. — Это баланс между массой молота и скоростью удара для максимального импульса. — Пауза. — Вы это знали?
— Я это делала, — сказала Стефани. — Слов не знала.
— Теперь будете знать, — сказал Мирр — и в его голосе было то же самое, что у Вейса: не восхищение, а удовлетворение точного человека, который нашёл точное место для точной вещи.
* * *
Вечером, уже в кузнице, Стефани сидела у верстака с блокнотом.
Горн горел — тихо, на малом огне, просто чтобы было тепло и чтобы мастерская оставалась живой.
Она листала записи за день.
Математика — язык для того, что она считала руками.
Физика — язык для того, что она делала телом.
Основы магии — язык для того, чего она ещё не понимала.
Курсы самоконтроля — инструмент для того, что работало само и неправильно.
«Неуправляемый инструмент опасен прежде всего для того, кто им пользуется», — написала она в блокноте. — «И для тех, кто рядом.»
Подчеркнула.
Потом написала ниже: «Мирна Олдт — спросить на следующей неделе про свойства ольховой коры в закалочных растворах. Вероятно, знает».
Потом добавила: «Извиниться нормально. Не просто «прошу прощения», как в пять утра перед ректором».
Потом закрыла блокнот.
Достала медальон.
Повертела в пальцах.
Металл был тёплым от кармана — не от горна, просто от тепла тела.
За окном академия засыпала — постепенно, по корпусам, огни гасли один за другим. В библиотечном корпусе свет не погас — там, кажется, горел всегда.
Стефани положила медальон на верстак.
Посмотрела на него.
Маленький, грубоватый, с угловатой буквой «С». Восемнадцатый из восемнадцати. Самый новый.
«Нужно сделать девятнадцатый», — подумала она. — «Для Мирны Олдт. В качестве нормального извинения. Что-то с травами — она любит травы. Пустышник или чертополох, красиво смотрятся в металле, если знать, как бить».
Это была конкретная задача.
Конкретные задачи всегда лучше абстрактных переживаний.
Она встала, взяла блокнот снова и начала набрасывать эскиз.
Сегодня мне приснился дом. Не та квартира, которую я на излёте четвёртого десятка оформил в ипотеку, а старый барачного типа, в который мы с семьёй переехали в середине 90-х, спасаясь от ужасов оголтелого национализма одной из бывших союзных республик.
Во сне отец, ещё живой и здоровый, говорит: "Что-то мы давно не готовили пельменей!"
Роли распределены уже давно: отец готовит фарш, а я, как старший сын, замешиваю тесто. Вымешивать приходится долго, тщательно, давая в перерыве "отдохнуть". Рецепт прост, даже ребёнок справится: соль, вода, мука. Иногда, когда есть возможность, яйцо для крепости. В фарше тоже ничего лишнего: мясо (какое есть), жир или сало (при необходимости), лук (много), соль и чёрный перец.
Мама отрезает от настоявшегося теста кусок и раскатывает его в длинную колбаску, которую шинкует на пятачки. Младший брат обваливает эти пятачки в муке и плющит их, подготавливая к формовке. Только так. Исключительно руками. Никаких пельменниц.
Мама, смеясь, рассказывает, как отец в первый же месяц после свадьбы выкинул пельменницу в окно и запретил даже думать о ней. Рассказ этот мы слышим уже не в первый раз, но всё равно улыбаемся.
Параллельно рассказу мама раскатывает получившиеся пятачки пустой стеклянной бутылкой. Скалка потерялась при переезде, а на новую нет денег, зарплату в деревне выдают (когда выдают) молоком, мукой и сахаром.
Опытные руки делают почти идеально круглые блинчики, в которые мы упаковываем фарш. Это работа уже для всех. Лепить нужно тщательно, иначе пельмень при варке распадётся, а виновник получит "леща" от отца. Чей пельмень развалился, угадать несложно: у родителей оказий не случается, а брат лепит такие кривые и несуразные пельмени, что их с лёгкой руки отца иначе как "лизунами" мы не называем.
Незаметно леплю пельмень с кусочком теста вместо начинки. Это "сюрприз". Опытным путём проверено, что этот пельмень всплывёт первым, и без сомнения именно его отец выловит, когда будет проверять партию на готовность. Хихикаю в предвкушении.
Готовые пельмени выкладываются в огромное металлическое блюдо "лаган". Прямо на пол стелится простыня, и мы все садимся вокруг импровизированного "дастархана". Рядом с блюдом стоит пиала с фирменной отцовской примочкой: свежевыдавленный красный перец маленький но очень злой (он всегда растёт у нас на подоконнике), уксус и вода. Без неё пельмени — не пельмени.
Совещание у ректора началось в три часа пополудни и закончилось в половине шестого. Это был рекорд — по крайней мере, так сказал помощник декана Альбер Нотт, человек с лицом бухгалтера и памятью архивариуса, который помнил все совещания за последние двадцать два года с точностью до четверти часа. Предыдущий рекорд держался одиннадцать лет и принадлежал инциденту с третьекурсником, который случайно переместил северную башню на семь метров вверх. Башня потом вернулась на место сама. Почти. Нынешнее совещание побило тот рекорд на сорок минут. Поводом послужила Стефания Фламберг-Лютенберг, дочка герцогской фамилии, первокурсница, которая за один день успела отправить в полёт сына графа, что являлся советником декана, продемонстрировать артефактное определение, не вписывающееся ни в одну стандартную категорию, и совершенно спокойно изложить список требований к своему жилью в стенах академии, от которого у смотрителя хозяйственного корпуса слегка задёргался левый глаз. Список был следующим. Стефани написала его сама — аккуратным, угловатым почерком, тем самым стилем, который она разработала ещё в детстве и применяла к буквам с той же методичностью, с какой применяла к металлу: каждая черта на своём месте, ни одной лишней. Список гласил: «Ванная комната с нормальным котлом для разогрева воды. Спальня с письменным столом и большой кроватью. Горн кузнечный, желательно двойной тяги. Наковальня основная, не менее ста восьмидесяти фунтов весом. Наковальня малая, рабочая, для тонкой работы. Пара катков для проката стали, если возможно. Тиски. Стеллажи для металла и инструмента. Верстак. Хорошее освещение над верстаком — окно на север, если возможно. Место для закалочных ванн. Вытяжка над горном и ванными. Дровяной запас и уголь в достаточном количестве.» Внизу было приписано, почти скромно: «Остальное стандартное.» Смотритель хозяйственного корпуса Граус прочитал список дважды. Потом поднял взгляд на Стефани. Потом снова на список. — Это, — сказал он с видом человека, который ищет слово и не находит подходящего, — не совсем стандартный запрос. — Я знаю, — согласилась Стефани. — Обычно студенты просят комнату. Иногда — комнату побольше. Один раз просили комнату с южным окном для растений. — Я понимаю. — Вы просите... кузницу. С жильём при ней. — Или жильё с кузницей при нём, — поправила Стефания. — Мне важен горн. Остальное вторично. Граус посмотрел на неё ещё раз — долго, с выражением человека, который пытается понять, разыгрывают его или нет, и постепенно приходит к выводу, что нет. — Я передам ректору, — сказал он наконец. — Спасибо. Граус ушёл с видом человека, которому предстоит неприятный разговор. Стефани убрала копию списка в карман — рядом с медальоном — и пошла искать, где здесь столовая, потому что с утра было только то, что успела съесть в дилижансе, а работа у горна расходует больше, чем кажется, и голод был сейчас совершенно конкретным и деловым.
* * * Ректор Академии Семи Шпилей звался Дариус Холм. Это был человек, которого природа явно создавала по шаблону «ректор» — высокий, с аккуратной,длинной седой бородой, в тёмном плаще с тремя рядами пуговиц, которые были именно обычными пуговицами, а не эпатажным заявлением, как у Касселя. Взгляд у него был тем, что старые книги называли «проницательным» — то есть взглядом человека, который за тридцать лет административной работы научился оценивать ситуацию быстро и без лишних слов. Сейчас он смотрел на список, который Граус положил перед ним с видом посланца, доставившего ультиматум. — Горн, — сказал Холм. — Двойной тяги, — уточнил Граус. — Наковальня сто восемьдесят фунтов. — И малая, для тонкой работы. — Катки для проката стали. — Если возможно. Она написала «если возможно». Холм поднял взгляд. — Она написала «если возможно» только к каткам? — Только к каткам. Холм отложил список. Взял его снова. — Созовите всех, — сказал он. Все — это означало: оба декана, начальник хозяйственного корпуса, три старших преподавателя, архивариус (которого позвали на всякий случай, потому что он знал прецеденты), и преподаватель артефактного определения, который заполнял свою часть журнала с тех пор, как закончилась церемония, и всё ещё не дописал. Они собрались в кабинете ректора в три часа пополудни. Холм положил список в центр стола. — Итак, — сказал он.
* * * Первые двадцать минут ушли на то, что все по очереди перечитали список и высказали первоначальную реакцию. Декан первого корпуса, маг воздуха по имени Эрвин Зольт, сказал, что это «беспрецедентно» и что стандартный устав академии не предусматривает кузнечного оборудования в студенческом жилье. Декан второго корпуса, маг огня, немолодая женщина с совершенно огненным именем Ига Бурнс, сказала, что с точки зрения пожарной безопасности горн в студенческом жилье — это «увлекательная перспектива» тоном, который означал ровно противоположное. Начальник хозяйственного корпуса Граус сказал, что технически всё это можно построить или найти, потому что академия за триста восемьдесят лет накопила разнообразнейший инвентарь, включая две старых наковальни в западном складе, которые никто не трогал лет сорок. Архивариус сказал, что прецедент имеется — в восемнадцатом году правления короля Отто Третьего один студент-алхимик потребовал отдельный лабораторный корпус, и академия пошла навстречу. Студент впоследствии открыл три новых соединения и оставил академии немалое состояние. И благодаря ему алхимия разделилась на химию и физику. Архивариус сказал это таким тоном, каким люди, работающие с историей, говорят «вы, конечно, сами решайте, но вот что бывает». Преподаватель артефактного определения, Карл Вэнн, сказал, что в его практике за двадцать три года зачарование материи второго уровня встречалось дважды. Оба случая дали академии результаты, которые Вэнн описал осторожно как «значительные». Один из зачарователей переделал боевое снаряжение целого полка. Второй создал материал для укрепления городских стен, которые до сих пор стоят. « — Оба, — добавил Вэнн, — с самого начала работали с конкретным физическим материалом. Не с теорией. С материалом. Она же третьего уровня. Тишина. Холм смотрел на список. — У неё уже есть навык работы с металлом? — спросил он. — Семь лет в кузнице, — ответил Вэнн. — Самостоятельно, с мастером Грюнвальдом из Айнбрука. По результатам показаний артефакта — она не просто «предрасположена к зачарованию». Она уже работает с материей интуитивно. Горн, наковальня, молот — это не хобби. Это её метод взаимодействия с магией. — То есть кузница — это не каприз девочки из герцогской фамилии? — Кузница — это инструмент, — сказал Вэнн. — Как у мага воды — резервуар, у мага огня — костер, камин, горн. Только в её случае горн буквально нужен для ее магии и развития. Зольт кашлянул. — Устав... — Устав, — перебила его Бурнс, — писался людьми. Люди могут его и пересмотреть. — Она помолчала. — По крайней мере, в части, касающейся прецедентов. — Пожарная безопасность, — не сдавался Зольт. — Она дочь мага огня, — сказал Вэнн. — Она с детства у горна. Если кто-то из первокурсников и умеет обращаться с огнём безопасно, то именно она. Зольт открыл рот. Закрыл. — Расположение, — сказал он после паузы, явно переключая атаку. — Нельзя разместить кузнечный горн в жилом корпусе. Шум, жар, дым. — Западное крыло, — сказал Граус неожиданно. — Там есть отдельный флигель, который не использовался лет двадцать. Бывшая мастерская скульптора, который преподавал здесь в прошлом поколении. Там уже есть вентиляция, толстые стены, отдельный вход. — Он пожал плечами. — Я смотрел планировку, пока шёл сюда. Все посмотрели на него. Граус, судя по виду, и сам несколько удивился своей инициативе. — Ну, — сказал он, — наковальни всё равно пылятся на складе. Холм взял список снова. Посмотрел на строчку «если возможно» рядом с катками. — Катки у нас есть? — спросил он. — На восточном складе, — сказал Граус. — С тех пор как закрыли практическую металлургию в семьдесят восьмом году. Холм кивнул. Положил список. — Строим, — сказал он. — Чувствую, простаивать это всё не будет.
* * * Стефани сообщили решение на следующее утро. Сообщил лично Вэнн — преподаватель артефактного определения, который, как выяснилось, был также куратором нестандартных студентов, потому что нестандартные студенты в академии случались регулярно, хотя и по разным причинам. Он нашёл её в столовой — за угловым столиком, с кружкой горячего отвара и небольшим блокнотом, в котором она что-то чертила. Рядом сидел Томас Вэй, который оказался ментальным магом, с книгой, потому что Томас везде сидел с книгой, как некоторые люди везде сидят с трубкой. — Студентка Лютенберг-Фламберг, — сказал Вэнн. Стефани подняла взгляд. — Флигель в западном крыле, — сказал он. — Мастерская бывшего скульптора. Мы её перестроим под ваши нужды в течение двух недель. — Он положил перед ней лист бумаги. — Это план помещения. Если у вас есть предпочтения по расположению оборудования — укажите сейчас, пока не началась отделка. Стефани взяла план. Развернула. Изучила с той методичностью, с которой изучают чертёж перед работой — сначала общее расположение, потом детали, потом детали деталей. Потом взяла карандаш. — Горн — здесь, — сказала она, отметив угол с хорошей вентиляцией. — Вытяжка прямо над ним. Наковальня основная — на расстоянии двух шагов от горна, не ближе, иначе работать неудобно. Малая — у окна, там нужен хороший свет. Закалочные ванны — вот здесь, рядом с водопроводом, если он есть. — Есть, — сказал Вэнн. — Хорошо. Верстак — длинный, вдоль этой стены. Стеллажи — над верстаком и по правой стене. — Она сделала несколько быстрых пометок. — Спальня и ванная — в дальней части, чтобы не было жара от горна ночью. Между мастерской и жилой частью — дверь с хорошим уплотнением. Дым и запахи должны оставаться в мастерской. Вэнн смотрел, как она работает с планом. Стефани почувствовала его взгляд и подняла голову. — Это слишком много? — спросила она. — Нет, — сказал он. — Это именно то, что нужно знать строителям. — Пауза. — Вы знаете, как работает вытяжка? — Я её проектировала в городской кузнице, — сказала Стефани. — Мастер Грюнвальд дал мне задание переделать старую. Я потратила три недели на расчёты. Тяга должна быть такой, чтобы дым шёл вверх, а не в стороны, и при этом не создавать сквозняка, который гасит горн. — Понятно, — сказал Вэнн. Его тон был нейтральным. Но Стефани научилась за годы в кузнице слышать то, что не сказано — как слышат, правильно ли держит шов, по звуку молота, а не только по виду металла. В нейтральном тоне Вэнна было что-то ещё. — Что? — спросила она напрямую. Вэнн помолчал секунду. — Совет вчера обсуждал два часа сорок минут, — сказал он. — Прецеденты, уставы, пожарную безопасность, расположение. — Ещё пауза. — Решение было принято единогласно. Это тоже прецедент. Стефани посмотрела на него. — Спасибо, — сказала она. — Не благодарите, — ответил он. — Учитесь. — Он забрал план с её пометками. — Два недели. Пока что вам выделена временная комната в первом жилом корпусе. Он ушёл. Томас закрыл книгу. — «Единогласно», — повторил он задумчиво. — Это интересно. — Почему? — Потому, что в советах редко бывает единогласно, — объяснил он. — Обычно есть кто-то, кто принципиально против, просто чтобы показать, что он был. — Томас взял кружку. — Значит, все сочли, что это достаточно важно, чтобы не упираться из принципа. Стефани посмотрела на место, где только что стоял Вэнн. «Важно,» — повторила она мысленно. — «Кузница важна. Моя кузница.» Что-то тёплое снова поднялось в груди — то же, что вчера у шара. Не гордость. Что-то больше гордости и тише одновременно. Она достала блокнот и продолжила чертёж.
* * * Две недели до заселения в собственный флигель прошли в общем корпусе первокурсников. Комната была стандартной — кровать, стол, стул, шкаф, окно на восток. Всё добротное, без излишеств. Стефани распаковала вещи методично, разложила по местам, повесила медальон на гвоздь над кроватью и решила, что для временного жилья вполне достаточно. Расписание первого курса она изучила в первый же день. Изучила внимательно — как изучают чертёж, выискивая слабые места и точки, которые потребуют особого внимания. Расписание выглядело так: Математика. Три раза в неделю, с утра. Стефания читала с некоторым облегчением — математику она знала, потому что кузнечное дело без расчётов пропорций, весов и углов не работает. Мастер Грюнвальд учил считать в уме быстро и точно, потому что горячий металл не ждёт, пока ты пересчитаешь. Письмо и чтение. Первые недели — для тех, кто не умеет или умеет недостаточно хорошо. Стефания умела. Писала тем же угловатым почерком, что и список для Грауса. Читала быстро и помнила прочитанное хорошо — она всегда читала то, что было в доме: технические руководства по кузнечному делу, отцовские книги по магии огня, мамины пособия по гидростатике, которые поначалу казались скучными, но оказались неожиданно полезными для понимания закалочных жидкостей. Основы магии. Теория, история, классификация — первый курс не предполагал практики, только понимание того, что вообще существует и как называется. Стефания подозревала, что здесь ей будет сложнее — её магия не вписывалась в стандартные категории, и сравнивать было не с чем. Физика. Тела, движение, силы, вещество. Стефания прочитала название предмета и почувствовала, как что-то в ней заинтересованно подняло голову. Это было её. Молот, наковальня, давление, сопротивление материала — всё это была физика. Просто она никогда не знала правильных слов для того, что делала руками. Химия. Вещества, их состав, превращения. Снова — близко, знакомо по ощущению, хотя незнакомо по языку. Сталь — это железо с углеродом. Это она знала. Что за этим стоит — предстояло выяснить. География. Карты, страны, торговые пути, климат. Полезно. Неочевидно зачем — пока. Физкультура. Ежедневно, утром, до первого занятия. Бег, упражнения, общая подготовка тела. Стефания посмотрела на эту строчку с лёгким недоумением — она три часа утром работала у горна, это физическая нагрузка почище любой гимнастики. Но раз в расписании, значит, будет ходить. Фехтование. Два раза в неделю, со второй половины дня. Стефания остановилась на этой строчке дольше остальных. Фехтовать она с одной стороны возможно умела, но... Она умела работать всеми видами молотков и молотов, и в случае крайней необходимости кулаком, что вчера и было продемонстрировано, но это не то же самое, что работа с клинком. Это было что-то новое. Что-то, что предстоит изучать с нуля. Она отметила это в блокноте отдельно. И ещё раз подчеркнула. Основы травоведения. Один раз в неделю. Растения, их свойства, применение в быту и простейших составах. Стефания поставила вопросительный знак — не потому что возражала, просто не понимала пока, где это пересечётся с кузницей. Потом стёрла вопросительный знак. Пересечётся где-нибудь. Всё со всем пересекается, если смотреть достаточно внимательно. Основы артефактики. Только теория, первый курс. История артефактов, принципы создания, классификация. Стефания поставила звёздочку. Большую.
* * * На первый день занятий Дара пришла на физкультуру в шляпе. Не потому что холодно — просто шляпа была частью образа, и расставаться с образом ради физических упражнений Дара считала несправедливым. Преподаватель физкультуры, широкоплечий мужчина лет сорока с усами, которые он явно считал своей главной отличительной чертой, посмотрел на шляпу. Шляпа, если бы смогла, посмотрела бы на него в ответ — с достоинством, свойственным хорошим шляпам. — Снять, — сказал преподаватель. — Она часть меня, — сказала Дара. — Снять. Дара сняла с видом человека, который отрезает себе руку. Они бегали по кругу во внутреннем дворе. Четыре круга, потом упражнения — наклоны, прыжки, что-то, что преподаватель называл «строевая стойка», хотя никто из первокурсников не понимал, зачем им строевая стойка. Стефания бежала привычно — не быстро, но ровно, тем темпом, каким ходят люди, привыкшие к длинной работе, а не к коротким усилиям. Дыхание ровное. Руки чуть согнуты — кузнечный навык, не давать рукам болтаться бессмысленно. Ноги встают уверенно — двор был мощёным, неровным, но она ходила по похожим поверхностям всю жизнь. Рядом пыхтела Дара. — Ты... совсем... не устаёшь? — выдохнула она на третьем круге. — Нет, — сказала Стефания. — Это... несправедливо. — Ты же работаешь с активной магией, — сказала Стефания. — Маги света двигаются быстро, используя магию, вместо мышц. — Я... ни разу не думала... о мышцах мага... — Думай, — посоветовала Стефания. — Это полезно. Дара посмотрела на неё с одышкой и выражением «этот совет сейчас физически неприменим, но я его запомню». Томас бежал ровно, хотя бледнел с каждым кругом — не потому что плохая форма, просто люди, которые большую часть времени сидят с книгами, строят другой тип выносливости. Эрик бежал хорошо — и Стефания подумала, что маги воздуха, вероятно, неосознанно используют потоки воздуха при движении. Не намеренно. Просто тело знает, что делает. — Лютенберг-Фламберг, — сказал преподаватель, когда она пробегала мимо него. — Темп ровный. Хорошо. Но увеличьте. Она увеличила. Просто потому что сказали.
* * * Фехтование началось во второй половине дня. Зал для фехтования находился в отдельном корпусе — длинный, с деревянным полом, с оружейными стойками вдоль стен. На стойках висели учебные клинки — тупые, с защитными гардами, достаточно тяжёлые, чтобы усилие было настоящим, достаточно безопасные, чтобы новичок не снёс себе палец и голову случайному прохожему. Преподаватель фехтования звался Ансельм Крайт. Это был человек, чей возраст определялся исключительно манерой двигаться, потому что лицо было одновременно молодым и очень старым. Двигался он так, как движется нечто, для которого экономия усилий давно стала второй природой — без лишних жестов, без лишнего пространства. Каждый шаг именно такой, какой нужен. Стефания смотрела, как он проходит вдоль ряда первокурсников, и отмечала детали. — Фехтование, — сказал Крайт, — это не про то, как красиво держать клинок. Это про то, как выжить в ситуации, когда кто-то хочет вас убить. — Пауза. — Первый курс этого ещё не умеет. Поэтому начинаем с основ. Стойка. Хват. Шаг. Потом всё остальное. Он прошёлся вдоль ряда, проверяя, как первокурсники держат учебные клинки. Остановился перед Стефанией. — Хват, — сказал он. Она держала клинок так, как держат молот — с уверенностью, с правильным распределением веса между пальцами, не зажимая. Это был неправильный хват для фехтования, но правильный хват для человека, чьи руки привыкли к инструменту. Крайт смотрел на её руки секунду. — Слабее, — сказал он. — Молот зажимают. Клинок — нет. Клинок должен лежать в руке, а не сидеть. — Почему? — спросила Стефания. — Потому что жёсткий хват замедляет запястье, — ответил он — без раздражения, с тем тоном человека, которого вопросы не раздражают, потому что он давно понял: кто не спрашивает, тот не учится. — В кузнице молот делает работу весом и скоростью удара. Клинок делает работу точностью и углом. Это разные инструменты. Стефания ослабила хват. Почувствовала разницу немедленно — клинок стал легче. Не физически, а по ощущению — как будто он перестал быть продолжением руки и стал чем-то самостоятельным, что нужно не тащить, а направлять. — Лучше, — сказал Крайт и пошёл дальше. Стефания стояла и держала клинок правильным хватом. «Направлять, а не тащить,» — повторила она мысленно. — «Как будто он сам знает, куда идёт, а ты только подсказываешь.» Она подумала, что это немного похоже на работу с магией зачарования — по крайней мере, по ощущению у шара. Не принуждение. Разговор. Как жалко, что практика еще не скоро...
* * * На двенадцатый день Граус постучал в дверь её временной комнаты и сообщил, что флигель готов. — Полностью? — спросила Стефания. — Горн проверен, тяга хорошая, — сказал Граус с видом человека, который лично убедился. — Наковальни установлены. Катки — там есть один нюанс, скажу на месте. — Иду. Флигель находился в западном крыле, отдельным строением, связанным с основным зданием крытым переходом. Снаружи он выглядел скромно — серый камень, небольшие окна, отдельная труба дымохода, который уже немного потемнел от чистки. Граус открыл дверь. Стефания вошла. И остановилась. Это было не то, что она ожидала — хотя она сама составляла список и сама делала пометки на плане. Просто одно дело — видеть на бумаге, другое — войти и почувствовать запах. Кузница пахнет. Не так, как пахнет новая комната — деревом, штукатуркой, чистым камнем. Кузница пахнет металлом — не острым запахом свежего металла, а тем глубоким, тёплым запахом, который бывает, когда металл жил в помещении, когда стены помнят жар, когда наковальня уже приняла форму своего места. Они нашли старые наковальни на складе, как говорил Граус. Это были работавшие наковальни — с ямками, с следами многолетнего удара, с той особой матовостью поверхности, которая бывает только у инструмента, знающего своё дело. Стефания пересекла мастерскую. Положила руку на основную наковальню. Металл был холодным, но он ждал тепла горна и работы... «Привет, моя хорошая» — подумала она. — «Потерпи, скоро будем работать.» — Катки, — напомнил Граус из дверей. — Да, нюанс. — Один каток треснул при перевозке. Не критично, но для полноценной работы, наверное, нужно будет либо заменить, либо... — Я починю, — сказала Стефания. Граус посмотрел на неё. — Он чугунный. — Я знаю. — Чугун плохо сваривается. — Плохо, — согласилась Стефания. — Но можно. — Она обошла наковальню и нашла каток у стены — массивный, тяжёлый цилиндр с трещиной по боковой поверхности, не сквозной, но глубокой. — Трещину нужно расширить, зачистить, прогреть правильно и заполнить. Потом — медленное охлаждение, иначе снова лопнет. — Она выпрямилась. — Неделя работы, если осторожно. Граус смотрел на неё с тем выражением, которое Стефания уже начинала узнавать — «я думал, что понимаю ситуацию, но оказывается, я недооценил». — Ладно, — сказал он. — Спасибо за флигель, — сказала Стефания. — Хорошая работа. Граус, кажется, слегка растерялся от похвалы — как растерялся бы стол, которому вдруг сказали, что у него красивые ножки. Кивнул и ушёл. Стефания осталась одна. Обошла мастерскую медленно — не торопясь, трогая каждую вещь. Горн — сухая кладка, хороший огнеупорный кирпич, фурма аккуратная. Мех — новый, это видно, строители постарались. Стеллажи — дерево твёрдых пород, широкие полки. Верстак — длинный, вдоль стены, как она просила, с тисками на конце. Окно над малой наковальней смотрело на север. Рассеянный ровный свет. Именно такой, как нужен для тонкой работы. Она остановилась у окна и посмотрела наружу — внутренний двор, деревья, серое апрельское небо с редкими облаками. «Вот и мой новый дом», — подумала она. Не комната. Не временное жильё. Не «пока не определишься». Дом — с горном, с наковальнями, с запахом металла и правильным северным светом. Она достала медальон. Подошла к малой наковальне. Положила медальон на металл — просто положила, на секунду. Металл и металл. Потом убрала медальон обратно в карман. Сходила в жилую часть — небольшую, но достаточную: кровать, стол, шкаф, та самая ванная с котлом, о которой она написала первым пунктом в списке, потому что три часа у горна каждое утро — это хорошо, но потом нужно нормально помыться. Поставила сумку на кровать. Вернулась в мастерскую. Разожгла горн. Не потому что была нужна. Не потому что нужно было что-то сделать прямо сейчас. Просто потому что горн, который не горит — это горн, который ещё не стал своим. А горн, который горит — это уже кузница. Огонь разгорелся не с первого раза — уголь был хорошим, но холодным, и начало требовало терпения. Она знала это. Дала разгореться медленно, правильно, без спешки. Запах горящего угля заполнил мастерскую. Жар пошёл волной. Стефания встала рядом с горном — не слишком близко, на правильном расстоянии, так, чтобы чувствовать тепло, но не жариться. Тум-тум-тум... Она не била молотом по металлу. Просто стояла. Тум-тум... Просто слушала, как горит горн. ТУММ. Кузница ожила.
Короткий познавательный пост, основанный на моей больной фантазии. Все совпадения случайны.
Обратился как-то один человек на профильном форуме с вопросом, как запустить (не сказать чтобы старую) игру на Windows 10. Игра (хотя я бы назвал это технодемо) была разработана на легендарном XNA 4.0 (земля пухом) и планировалась к выпуску через Steam Greenlight (и ему земля пухом) еще в далеком 2012, после чего заброшена и убрана со всех магазинов.
Игра была куплена тем человеком еще в тот момент, когда она легально продавалась. А спустя годы она просто перестала подавать признаки жизни. $5 за полную версию уплочены, а поиграть нельзя. Обидно.
Так как типовые решения по типу установки XNA Redistributable не помогли, то был предложен единственно возможный выход из ситуации - отладка через dnSpy.
Внимание: обратная разработка хоть прямо и не запрещена законодательно, но разрешенные случаи весьма ограниченны. В других странах разрешен явный запрет любых манипуляций через лицензию, превращающий это занятие во вполне наказуемое. Не повторяйте дома.
Так как ПО было приобретено легально и оно не работает, то этот теоретический случай допустим в соответствии со статьей 1280 гражданского кодекса.
Демонстрировать буду на бесплатной демоверсии, скачать можно здесь.
dnSpy
Театр начинается с вешалки, а программа на C# с атрибутов сборки. Они нам сейчас не сильно интересны, поэтому пытаемся сразу запускать отладку. С неизвестными программами лучше использовать виртуальную машину, так как может быть встроена какая-нибудь пакость для кулхацкеров, но мне можно и так.
Ошибка. Открываем стек вызовов и ищем место, где произошел провальный запрос в сеть.
А вот и виновник торжества. По сообщению из исключения можно сделать вполне однозначный вывод, что проблемой является скупердяйство и непредусмотрительность автора, который решил перестать платить за домен и хостинг, а вместе с этим случайно (а может и намеренно) сделал запуск игры невозможным без интернета. Так как на сайте заявлено отсутствие DRM, то это явно недосмотр.
Что тут происходит?
Если почитать документацию на XNA, то этот метод предназначен для загрузки контента и вызывается автоматически при запуске игры. Первым делом выполняется инициализация некоторых вещей, после чего открывается файл настроек (options.xml) и начинает последовательно считываться. Как только считываются параметры аккаунта для таблицы рекордов, то происходит отправка логина+пароля на официальный сайт и попытка получить ID. Если сервер возвращает Failure, то открывается диалог входа, который можно пропустить. Если сервер возвращает число, то игра запускается. А вот если сервер недоступен, то вылетает исключение, которое никак не обрабатывается и приводит к молчаливому вылету.
Диалог входа официально можно пропустить.
На этом этапе есть 2 варианта действий:
Вручную отредактировать настройки и убрать пункт об аккаунте. Тогда игра будет всегда запускаться без входа.
Физически убрать запрос на несуществующий сайт.
Нормальные герои всегда идут в обход, так что переходим к написанию небольшого патча. (На самом деле, о первом варианте я додумался не сразу. Более того, полная версия зависает при убирании этого пункта из настроек).
Выделяем строчку с запросом и нажимает "Изменить инструкции IL". Открывается окно с заголовком "Изменение тела метода".
Это - язык MSIL. Он очень прост и сильно напоминает Forth, на самом деле, но новичка может отпугнуть.
Ключевым элементом является стек. Что такое стек я уже когда-то рассказывал. Это некоторое место, на вершину которого можно последовательно добавлять значения (числа, строки и прочие объекты), а так же снимать их в обратном порядке.
Не эти стеки, но суть та же. Можно добавлять сверху новые фишки и снимать с вершины старые.
ldloc.2: Значение локальной переменной под номером 2 (с типом строки)
ldstr: Строку "&p=".
ldloc.3: Значение локальной переменной под номером 3 (тоже строка).
Потом мы вызываем String::Concat(), принимающий в себя 4 строки и соединяющий их вместе. При вызове метода будут сняты 4 верхние строки со стека и добавлена новая строка.
Вызов следующего метода (WebClient::DownloadString()) снимает строку, полученную от String::Concat(), и веб-клиент. В результате должна остаться только 1 строка, возвращенная WebClient::DownloadString().
Следующим этапом мы должны снять эту строку со стека и сохранить её в локальную переменную 1, но этого не произойдет, так как WebClient::DownloadString() всегда будет проваливаться и выбрасывать исключение. Исключение, если его не обработать сразу, будет раз за разом проваливаться глубже по стеку вызовов, пока не достигнет обработчика или дна. Так как никаких обработчиков по пути нет, то исключение достигает дна и приводит к вылету.
Чтобы избежать получения исключения, мы можем убрать всё, что предназначено для запроса в сеть. Примерно вот так:
8 инструкций превратились в 2: загрузка строки с числом (которое может быть любым) и сохранение в локальную переменную под номером 1.
Сохраняем и проверяем результат.
Было.
Стало.
Из декомпилированного кода полностью исчез кусок с запросом. Осталась лишь загрузка константной строки и сравнение с "Failure", которое всегда будет успешным.
Сохраняем модуль и пытаемся запускать опять.
Жопиздан!
С этой задачей успешно справился человек, который не смыслит в программировании вообще ничего. По его словам, он джва года ждал эту игру!
Но не всё так просто. Если попытаться пройти любой уровень, то вылетит то же самое исключение.
Для исправления точно так же выделяем строку и опять редактируем инструкции в теле метода. Но так как отправка статистики нонче ни на что не влияет, то просто удаляем выделенные инструкции без остатка.
А для надежности выделяем WebClient, нажимаем "Анализировать" и смотрим, где еще может ждать нас подлянка.
В Finish.Update() мы ошибку только что исправили, в Game1.LoadContent() исправили в самом начале, а Login.button1_Click(), Program.Main() и Title.Update() нас не интересуют, так как достаточно просто не делать того, что приведет к обращению в сеть (а конкретно: не открывать диалог входа, не указывать никакие аргументы при запуске и не пытаться авторизоваться через главное меню (вроде бы не реализовано)).
Они спокойно плавали, пока мимо кто-то не начинал проходить, как кто-то подходил, они вот так вот быстро подплывали и орали о_о
Я знаю что Чингисхан был великим реформатором. Он не только объединил все племена, но и создал единый закон для всех и единые стандарты для воинского снаряжения. Именно дисциплина, правильная подготов...