18 марта 2012 18.03.12 22 2315

Генераторные войны: Братство бубна.

+4

Вот и закончилось первое знакомство с генераторным программированием, и сразу же пришло второе знакомство. Мы с другом, на протяжении месяца, работали на генератором летающих островов, для глобального проекта, и первый же вариант генератора наконец закончен, пересмотрев приоритеты и узнав наши быдлокодские способности, к программированию, мы начали работать над 2 версией, с другим видом генерации. Но первая программа оставила неизгладимое впечатление, которое перелилось в этот рассказ. Плюс выкладываю саму программу для ознакомления(программный код по заявке в личку).Приятного чтения.
p.s всё основано на реальных событиях, но приукрашено с помощью безумной фантазии. Выложены первые 2 части из 7...

Не было ничего…
Была лишь пустота. Тёмная, всепоглощающая пустота…
Двое… В полной темноте… На месте предполагаемого горизонта не возникало ни единого пикселя света.
-Это оно? — спросил голос в темноте.
-Да, то самое, — ответил другой.
-Ну, сколько можно 3 раз уже.
-Не горячись, ещё не всё потерянно.
-Но…
Не успев договорить Первый, так называли его жители мира, уставился на неожиданно выплывшие из-за чёрной середины горизонта строки света, которые залили тёмный мир тысячами символов, налету формируя из них очертания деревьев, воды, камней, гор…
-Неужели… получилось. Ура получилось! Ты слышишь, нулевой, получилось. Мир начал генерироваться и посмотри, как он прекрасен.
-Да… Мы это сделали… Мне нужно срочно выпить… Наконец он работает.
Огромный белый мир, на фоне чёрной пустоты, возвышался на сотни координат во все стороны. Жизнь зародилась и начала расцветать. Первый подлетел к консоли и начал судорожно проверять глобальную кодировку. Нулевой в свою очередь, последовав зову сердца, откупорил бутылку и начал судорожно поглощать содержимое.
-Я вижу, что генерация очень странно ведёт себя в координате 115,27.
-Не может быть. Код идеален. Да, ты и сам это знаешь. Ты его писал.
Огромный парящий в небытие архипелаг вдруг содрогнулся, и стал легонько кренится на севера восток. Создатели поспешили к месту аномалии и обнаружили огромный вырванный кусок ландшафта, с идеально ровным краем.
-Да, аскет его побери, как? Ответь мне, Первый, как это случилось?
— Я… Я сам не понимаю. Код на это не рассчитан, в нём нет такой функции, он не может вырывать куски местности!
— Ну, ты сам видишь этот кусок. Вернее его отсутствие.
Граница света неожиданно исказилась и начала проваливается в пустоту, расширяя обрыв.
— Нам придётся его уничтожить.
— Я знаю. На данный момент это единственный выход.
Создатели взлетели ввысь и с грустью, смотря на своё творение, щелчком пальцев остановили процесс. Мир замер и испарился. Снова осталась только тьма…
Вокруг царил хаос и порядок. Миллионы строк, символов кружили в пространстве совершенно непредсказуемо, но взглянув на весь этот хаос со стороны, можно увидеть структуру и смысл. Это место нельзя назвать, чем то определённым, и оно само не имело название. Создатели называли его начало или мать. Ближе всего можно было это охарактеризовать огромной средой для создания миров из кусков знаний.
Кроме первого и нулевого здесь были ещё тысячи создателей. Все они были заняты созданием. Кто то работал в парах, кто то в одиночку, кто то объединялся в группы и создавал нечто потрясающие. В общем, везде кипела робота
-Ну, с чего начнём, Нулевой?
-Ты проверь свои функции, а я займусь отладкой связей.
-Никак не могу уложить в голове, почему такое случилось? Программа не может работать как хочет она, она прямо выполняет команды, как же получаются такие результаты.
-Неважно как, у нас есть факт, и мы должны с ними работать. Ой, Ёжики. Я только что придумал, как добавить более прогрессивные методы генерации.
-Как раз кстати, может с ними он не будет давать такие результаты. Стоп, а кто такие эти твои ёжики.
— Это новый вид, который будет населять наш мир.
-Ещё один, их уже набралось около миллиарда. Подожди. Я прогнал тест по функциям. Всё идеально. Не единой ошибки, странно…
-Да это действительно странно, что же создаёт такую аномалию. Ладно, я уже почти всё, осталось только связать переменные.
— Значит снова глобальный тест?
-да…

сама программа


Лучшие комментарии

Я нихрена из этого не понял, более того, я даже половины не прочитал, что это вообще?
Почему же, как раз таки непростая где то 500 строк. Использовался метод «свободной линии»
И это не считать, что мы начали только с идеи и не «гуглели» код, с начальными знаниями языка и чертовски дальним расстоянием меж нами(разные города).
Не знаю… Но у меня есть идея о примерном виде алгоритма. И он не очень сложен. Другое дело — его воплощение.
нужно? поможем. интересно? покажем свой. обращайся.
Какого? По-моему, такая программа не очень сложна(с точки зрения алгоритмов).
Ненене. Я таким не занимаюсь. Просто хорошо умею составлять алгоритмы.
Нет, эту игру я и мой друг придумали сами. Дварфач здесь имеет место, так как сопрограмер ровнялся на неё, но это совершенно иная вселенная.
Иии… Это начало рассказа.
Читай также