Перейти к содержимому

Doob

Гуру
  • Публикации

    1 089
  • Зарегистрирован

  • Посещение

  • Победитель дней

    141

Все публикации пользователя Doob

  1. Сделал одним файлом: pastebin get DrQ1VG7x /bin/kopalka.lua
  2. Doob

    OC Лабиринт

    На входе должен быть комп, который отрубает все права на варпы, хомки, телепортации и переключает игровой режим на приключенца. Основа для лабиринта будет очень простая, но на деле, алгоритм связей разгадать довольно сложно (может-быть, в качестве бонуса будут выдаваться очки с подсказками) Лабиринт состоит из комнат, связанных друг с другом переходами. После каждого перемещения из одной комнаты в другую, связи между комнатами меняются, по заданному алгоритму перемешивания. Помимо обычных комнат с ловушками, есть секретные комнаты, в которые можно попасть только при выполнении определенных условий (жертвоприношение, выполнение переходов, в определенной последовательности) При выполнении заданных условий, определенные переходы в основном лабиринте подменяются на переходы к секретным комнатам. Самое сложное это придумать наполнение - ловушки, условия, отслеживание игроков в лабиринте.
  3. У меня работало на любой высоте, но я этой прогой пользовался всего пару раз, от других игроков жалоб нет.
  4. Doob

    OC Лабиринт

    Хм.. Видели мод qCraft? Это тоже можно реализовать на OC, будет квантовый лабиринт))
  5. Ну, что? Никому халявные блоки ресов и 10 шт иридия не нужны? Можно запускать академию?
  6. Doob

    OC Лабиринт

    Всеми конечностями поддерживаю. Только в одиночку лабиринт не сделать, нужны идеи для ловушек, много идей. При помощи дебаг-платы можно все очень красиво сделать, ведь у нее возможности ограничиваются только фантазией программиста. P.S. Хорошая разминка для мозгов!
  7. WoT можно и без КБ сделать, на роботах. А лепить, потому-что майн - песочница, тут можно лепить все.
  8. Нафиг моды, я в стармейд порежусь лучше, там лагов нет.
  9. Да, телеротреры, корабль это просто дом, мониторы и окна никак не прикрутить. Корабль создается из шаблонов, все происходит в том же мире, где и все управляющие компы. Чат мне не нравится, а вот через интернет карту все команды делать это нужен мост.
  10. Попробуй третьим аргументом в функцию запуска задать высоту, на которой находится робот.
  11. Чтобы опнуть себя через монитор без клавиатуры это надо быть мегаклухацкером из фильмов. Можно сделать все то-же самое, но это долго надо пыхтеть, настраивать управление лутом в куче сундуков. Табличек без админов тоже бы небыло, что теперь, выкинем таблички и будем делать бартерные автоматы?
  12. Алекс, никуда никакие корабли не двигаются, ни за чьей тушей они следом не летят. Он предлагает, чтобы корабли статично висели в специально выделенном для них мире, а полет это всего-лишь имитация, просто в персональном телепортаторе меняется точка финиша после каждого перелета. Вот тут я довольно подробно это описал: http://computercraft.ru/topic/781-korabl-iz-strabound-na-komandnom-bloke/?p=19067 Спавнить кораблики вообще не вопрос, могу сделать демонстрацию, да и на ютубе уже были видео про майнбаунд. Вся проблема была в том, что точку старта можно корректно потереть только на MC 1.8 и выше, и весь корабль должен находиться в одном чанке, а идея Картографа этой проблемы лишена.
  13. Фактически это не админшоп, ведь все ресы добыты игроками, просто товары хранить в виде циферок намного удобней, чем забивать ими сундуки и таблички.
  14. Количество слотов можно узнать из robot.inventorySize() Какие программы залипают? Для того, чтобы робот нормально работал на сервере, надо постоянно делать проверку на корректность выполнения действий, иначе будет такой бред... Я про это однажды забыл, так робот все факела и лампы вырубил, а сам спрятался в угол, в который программа загнать его не могла. P.S. Все ясно-понятно, цифры надобно выкинуть, сделать поворотники, при условии обнаружения стены, ибо робот пропускает движения.
  15. Я хотел влепить торговый автомат, но он ведь не будет принимать универсальную валюту, в отличие от табличек. Следовательно, никто не будет ничего покупать, это я на своем опыте знаю. Предлагаю сделать рынок в виде пимки с дебаг-картой - покупать и продавать игроки могут вечно, а цены компьютер рассчитывает в зависимости от объема продаж и покупок, это значит, что цены будут самыми справедливыми.
  16. Окей, программа спавнит комп, и телепортирует туда первого попавшегося админа и заставляет его установить wakeUp и поставить блок реда, я правильно понял? Это уже отвалилось, потому-что проще установить корявый мод на чанклоадеры, чем клонировать роботов с включенными ЧЛ.
  17. @Kartograf в игровом чате предложил переоформить идею. Я думаю, это можно легко реализовать на MC1.7.10 , потому-что нет переноса блоков и можно добавить очень много интересных плюшек, которые нельзя было реализовать в ином случае. Имеем 6 миров: I. большая пригодная для жизни планета (единственная, на которую можно попасть без корабля) II. планета, похожая на I, но с другой генерацией. III. небольшая вулканическая планета. IV. маленькая безжизненная луна V. облако астероидов VI. космическая станция (админ-мир, спавн, рынок, телепортер на планету I) Новый игрок появляется на космической станции, через телепортер попадает на планету. Игрок копает ресы, торгует, грабит корованы, в общем, добывает деньги. Накопив достаточно денег он покупает корабль и начинает его обустраивать. Вот примерный список того, что игрок может купить: Основной модуль - 14x14 блоков (имеет две кабинки для телепортации на планету) Дополнительный модуль - 14х18 блоков (требует наличия основного модуля) Жилые модули - 2x 10х23 блоков (требуют наличия доп. модуля) Грузовой модуль - 32х18 блоков (требует наличия доп. модуля) Апгрейд варп-привода - сокращает время перемещения между локациями на 33%, но повышает расход энергии на 10% (максимум 3) Апгрейд преобразователя энергии - снижает расход энергии на 25 % (максимум 2) Универсальный преобразователь энергии - выдает 512 eu/t (требует наличия доп. модуля) Механика: Корпуса кораблей и космической станции состоят из неразрушимых блоков, модули устанавливает компьютер. На корабле находятся две кабинки, которые переносят игрока на выбранную локацию. Чтобы подняться с планеты на корабль, игрок должен отправить определенное сообщение через интернет-карту (т. к. нельзя сделать несколько связанных карт на одном канале - приходится изощряться) Чтобы сменить доступную локацию игрок должен находиться на корабле и послать сообщение, указав пункт назначения, комп на спавне, который управляет всей механикой перелетов и телепортаций рассчитывает необходимое количество энергии и времени, блокирует выход с корабля на время перелета, а потом перезаписывает в телепортерах точку назначения. Все корабли постоянно находятся в админ-мире на таком расстоянии друг от друга, чтобы ники не просвечивались сквозь блоки (чтобы не портить ощущение "космичности") На космической станции можно сделать несколько кают, которые могут заприватить игроки (автомат продающий участки в таком случае будет очень простым), просто выбрав номер каюты и заплатив указанную сумму. В других мирах приватов нет. Стоимость корабля должна быть такой, чтобы игрок копил на него не одну неделю, например: Основной модуль - 1 млрд. кредитов и 1000 UU Модуль 2 - 5 млн. 400 UU Модуль 3 - 5 млн. 600 UU Модуль 4 - 8 млн. 900 UU С такими ценами, игроки будут жить по 5 штук на одном корабле. Не помешал-бы мод, добавляющий блок вакуума и регенератор воздуха, чтобы при генерации безатмосферных миров заменить вакуумом блоки воздуха.
  18. Как все сложно.. Пробовал хоть реактор так запускать? И поставь слипы, а то оно очень часто к сундукам обращается.
  19. Как-нибудь потом. Все можно сделать, изменив функцию отрисовки - чтобы снежинки не всей кучей перерисовывались, а индивидуально.
  20. Без антиалиасинга и с потерей качества.
  21. Небольшое динамичное украшательство к праздникам. pastebin run M6z8f6q1
  22. Размер голограммы 48x32x48 вокселей, при этом ее масштаб можно изменять от 1x1x1 до 9x6x9 реальных блоков. Перед началом работы не забываем загрузить компонент. local hologram = require('component').hologram В консоли lua можно сразу =component.hologram.функция И так, с чего начнем? Самая главная функция у нас будет clear() Почему главная? Да потому-что ей мы будем подтирать наши первые жалкие потуги, при освоении третьего измерения. clear, как понятно из названия - стирает все содержимое, что есть на проекторе. Далее у нас идет set(x, y, z, индекс) Собственно, это и есть одна из функций вывода. Чтобы отобразить воксель, задаем в функцию его координаты по x, y и z в виде числовых значений и состояние вокселя. Состояние вокселя это либо true/false, либо индекс палитры цветов. Координаты как во всем майнкрафте - x это ширина, y - высота, z - длинна. Для примера сделаем так: hologram.set(1, 1, 1, 1) т. е. создается воксель по координатам x = 1, y = 1, z = 1, с состоянием = 1 Если у нас монохромный монитор, то четвертый аргумент может быть только 1 или 0, в ином случае, можно задать от 0 до 3 А если необходимо узнать значение вокселя по определенным координатам, есть функция get(x, y, z) Она принимает координаты и возвращает состояние указанного вокселя. Теперь разберемся, что это за четвертый аргумент. У голопроектора I уровня можно задать только один цвет, у голопроектора II уровня - 3 Цвета задаются функцией setPalleteColor(индекс, цвет), в формате 0xRRGGBB, например: hologram.setPalleteColor(1, 0xFF0000) - теперь под индексом 1 у нас красный цвет hologram.setPalleteColor(2, 0x00FF00) - под индексом 2 установлен зеленый hologram.setPalleteColor(3, 0x00FFFF) - под индексом 3 установлен бирюзовый... ну, вроде-бы, понятно. Узнать, под каким индексом, какой цвет можно при помощи функции getPalleteColor(индекс) Она принимает номер индекса и возвращает его значение. Разберем еще один инструмент вывода. fill(x, z, минимум_y, максимум_y, индекс) Этой функцией можно рисовать столбы - задаем горизонтальные координаты по x и z, указываем координаты нижнего и верхнего блока и цвет. Пример: hologram.fill(1, 1, 1, 10, 1) - создаем столбик высотой в 10 вокселей. Это может быть полезно, если надо отрисовывать какие-то фигуры с заливкой по вертикали, например, карту рельефа. Еще один не совсем удобный инструмент это копирование. copy(от_x, от_z, до_x, до_z, цель_x, цель_z) Видно, что копировать можно только в горизонтальной плоскости. Первые два значения это точка отсчета, вторые два - конец, третьи - целевые координаты. Например: hologram.copy(1, 1, 10, 10, 10, 1) - скопирует 10x10 вокселей на 10 вокселей по x Иногда бывает нужно спрятать проектор за блоками и чтобы голограмма выглядывала сквозь блоки. Для этого можно использовать setTranslation(x, y, z) Этой функцией можно сместить всю голограмму на 0.5 собственной величины по горизонтали и на 1 по вертикали. Т.е. hologram.setTranslation(0, 1, 0) при размере голограммы 0.3 она будет отрисовываться на 1 блок выше, при размере 4 - на 6 блоков. Для работы с масштабом голограммы имеется две функции: setScale(размер) и getScale() Первая задает масштаб от 1/3 до 4, а вторая возвращает установленное значение. В недавнем обновлении, для проекторов II уровня была добавлена возможность вращения голограм. Функция setRotation(угол, x, y, z) позволяет повернуть голограмму на заданный угол по любой оси. функция setRotationSpeed(скорость, x, y, z) задает скорость вращения по определенной оси и заставляет голограмму постоянно вращаться, пока есть энергия. Для примера, сделаем такой набросок: hologram.setTranslation(0, 1, 0) -- поднимаем голограмму повыше hologram.set(1, 16, 1, 1) -- ставим точку в начале отсчета горизонтальных координат hologram.set(22, 16, 22, 2) -- ставим точку примерно в центре hologram.setRotation(45, 23, 0, 0) -- наклоняем голограмму на 45 градусов по оси x hologram.setRotationSpeed(30, 0, 23, 0) -- задаем вращение со скоростью 30 по оси y
  23. Комп опять работает, приз и условия те же, что и раньше.
×
×
  • Создать...