— Шефе, ви мусите розуміти, — нахилившись, зашепотів Тимур, — я не компілював той код. То було просто немислимо! Я ж не можу взяти й скомпілювати окрему процедуру чи вирваний з контексту клас. У нас не було жодного шансу протестувати власні розробки під час реальної гри. Тож, якщо у них…
— Заспокойся, — обірвав його бос, — я добре пам’ятаю ту химерну заявку. До тебе немає жодних претензій. Якраз навпаки: в даній ситуації я цілком на твоєму боці.
— Тоді я не розумію, в чому проблема? І чому вони схаменулись аж зараз? Спливло цілих три роки!
Пузатий знизав плечима:
— Поговори з цим піжоном. Він мені нічого не пояснює. Хоче балакати лише з розробником, цебто з тобою.
— Про що?
— Про те, що його хвилює… І не кіпішуй, — очі Пузатого хитро зблиснули. — Сподіваюсь, нам вдасться витрусити з нього трохи грошенят.
Тимур випростався в кріслі і спробував посміхнутися.
— Хай, Оскаре! — вдруге привітався хлопець і далі діловито заговорив англійською: — Це я писав коди на ваше замовлення три роки тому.
— Так. Я вже знаю.
— То що у вас негаразд?
— У мене все чудово, — говорячи, Штаєрман майже не мінявся на лиці, наче замість шкіри у нього була гумова маска, — але ваші боти… з ними почались проблеми.
— Не сприйміть за банальну відмовку, але в тому немає моєї вини, — пиндючність напомадженого гостя трохи дратувала Тимура. — Згадайте ваше технічне завдання. Та його не було! Я був наче тесля, якого примусили стругати віконні рами, не показавши розмірів вікон.
— Так було потрібно, — мовив Оскар.
— Воля ваша! Але що робити мені? Минуло цілих три роки. За цей час ви навіть не повідомили, чи підійшла вам концепція. Для моїх ботів потрібен специфічний ігровий простір. Цілком імовірно, вони виявились надто складними для вашого математичного ядра.
— Складними? — перепитав гість, якось дивно посміхнувшись. — О, ні. Вони були чудовими. Ідеальними! Вони аналізували все, що відбувалося, вони приймали рішення, вони співпрацювали між собою, діючи, наче справжній загін… Для нас саме це було головне.
Тимур ніяк не міг второпати, чому Штаєрман розповідає про віртуальних бійців у минулому часі. Він наче розказував про живих людей. І це добряче різало вуха.
— І що ж трапилося? Хтось наколобродив, оптимізуючи код?
Оскар стулив рота, аж на щоках проступили жовна, і витріщився у вікно. Коли він повернув обличчя назад, Тимур встиг (уже вдруге) розгледіти в його погляді відблиски безрадісної фатальності і ще чогось такого, чого він геть не очікував узріти в очах пихатого заморського стиляги… Неконтрольований страх?.. Паніка?.. За мить Штаєрман взяв себе в руки, але так і не відповів на запитання.
— Давайте я скажу кілька слів, — встрянув директор. — Ми зараз міняємо концепцію побудови світу, — певна річ, він говорив про віртуальний ігровий простір, тривимірну сцену, та все одно слова прозвучали кострубато й пафосно. Він виглядав неначе Зевс на Олімпі. У найгіршому, якщо можна так висловитися, значенні. — Замість опису поведінки окремих об’єктів, як то дерева, хмарки, струмки чи озера, ми переходимо до агентно-орієнтованого підходу. Якщо раніше хмарка являла собою 3D-модель, що змінювала форму, розмір, колір та прозорість залежно від концентрації вологи, рухалась у визначеному напрямку, зрідка зливаючись з іншими моделями свого типу, то тепер це — величезне скупчення, така собі мережа або рій крихітних агентів, що несуть у собі набір функцій для взаємодії з суміжними агентами. Така краплина-агент може «випаровуватись», «конденсуватись», набувати «кристалічної форми» залежно від зовнішніх умов, а також від стану сусідніх агентів, — попри паскудний характер, директор з розробки «TTP Technologies» був чудовим спеціалістом. Він продовжував: — Уявіть, як розігріта хмара-рій потрапляє в зону холодного повітря. Граничні або поверхневі агенти швидко охолоджуються і перетворюються на вологу — в ігровому світі йде дощ. Під час конденсації з агента-краплини виділяється енергія у вигляді тепла. Якщо повітря досить швидко нагрівається, дощ стихає, а хмара, що втратила частину агентів, суне далі. Якщо ж холодне повітря продовжує надходити, внутрішні агенти також почнуть конденсуватися і злива не припинятиметься, поки хмара не вичерпається. Агенти на землі збиратимуться в калюжі, струмки чи озера, поки не випаруються знов. Отакий безперервний колообіг!
Директор зацікавлено зиркнув на візитера. Оскар Штаєрман лишався незворушним. Його спокій межував з байдужістю. Дмитро Пузатий правив далі:
— Звісно, на початковому етапі написання та налаштування агентів займає купу часу та врешті-решт окупиться сторицею. Агентно-орієнтований підхід знімає чимало обмежень з віртуального світу. Тепер достатньо лиш сформувати рельєф, «загнати» на сцену агенти, що відповідають рідині, повітрю та органічній матерії, задати початкові умови і запустити сонце. У результаті ми отримаємо не просто ігрову сцену, то буде унікальний і неповторний віртуальний світ! — наче для підсилення останніх слів, начальник змахнув руками у повітрі. — До речі, Тимур зараз працює над тим, щоб персонажі гри… кгм… комфортно почувалися у новому світі. Попереднє покоління ботів тут не годиться… Вони розгублюються, тетеріють… словом, ні на що не здатні.
Тимур стримано кивнув на підтвердження.
— Тому, можливо, буде краще, якщо замість переробки застарілих проблемних кодів, ми спробуємо вирішити ваше питання новим…
— Ні, — Оскар Штаєрман обірвав Дмитра. — Не потрібно ніяких нових підходів. Ми хочемо, щоб той, хто створив вихідні коди для ботів три роки тому, розібрався у проблемах. Ви мене чуєте? Для ботів. Крапка.