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

Поиск по сайту

Результаты поиска по тегам 'php'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Блоги

  • Робот Байт
  • Fingercomp's Playground
  • 1Ridav' - блог
  • Totoro Cookies
  • Блог cyber01
  • IncluderWorld
  • KelLiN' - блог
  • Крутой блог
  • eutomatic blog
  • Programist135 Soft
  • Сайт в сети OpenNet
  • PieLand
  • Очумелые ручки
  • Блог недоблоггера
  • В мире Майнкрафт
  • LaineBlog
  • Квантовый блог
  • Блог qwertyMAN'а
  • some blog name
  • Дача Игоря
  • Путешествия Xytabich'а
  • Рецепты программирования
  • Шкодим по крупному
  • 123
  • mineOS и её удивительный мир
  • Поляна говнокода Bumer 32

Форумы

  • Программирование
    • Программы
    • База знаний
    • Разработчикам
    • Вопросы
  • Игровой раздел
    • Игровые серверы
    • Моды и плагины
    • Жалобы
    • Ивенты и конкурсы
    • Файлы
  • Общение
    • Задать вопрос
    • Обратная связь
    • Беседка
    • Шкатулка
  • Технический раздел
    • Корзина

Группы продуктов

Нет результатов для отображения.


Искать результаты в...

Искать результаты, которые...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


ВКонтакте


Gtalk


Facebook


Twitter


Город


Интересы

Найдено 2 результата

  1. Итак сегодня я наконец сделал свою "мега-крутую" программу. Это так сказать "криптовалюта" только без того самого крипта, блокчейна и всякие другие вещи которые есть в реальных криптовалютах. Но, все принципы майнинга здесь есть - вы жрете электричество и мощности своего компьютера чтобы заработать монетку работает это крайне примитивно, НО РАБОТАЕТ! Так как всё-таки это бета версия. То тут всё ещё есть баги и код написан не очень хорошо, в дальнейшем это будет всё фикситься и т.д. Работа программы: В моей программе клиент/сервер в клиентской стороне - 3 программы и серверный код на PHP который будет на каком-нибудь веб-хостинге. Итак разбор скриптов: Сервер: Клиент: Скриншоты: Установка и авторы Загрузка: wget https://raw.githubusercontent.com/LaineZ/OCCoins/master/Client/installer.lua Установка: installer.lua Авторы: kikito - автор библиотеки md5.lua ECS - автор библиотеки windows.lua Laine_prikol - автор программы и серверных скриптов Репо на гитхабе ------- ЛОВИТЕ БАГИ И ГЛЮКИ -------
  2. Думаю большинство пользователей форума помнят банк, который был на IT, да, он был местами лагучий, но это же шедевр. Я еще не видел ни одного подобного проекта (OpenNet не в счет т.к. там все разнозненно было и не понятно нафига оно надо ). В связи с заинтересованностью несколькими людьми в банке (да и самому интересно его запустить) решил выложить некий мануал по его запуску. Возможно владельцы других серверов и проектов смогут его использовать у себя. Собственно приступим: Для начала некоторая терминология в программах банка и его алгоритм работы на словах: Термины: Терминал (terminal) - пользовательская часть, через которую игрок взаимодействует с банком. Представляет собой обычный компьютер с монитором и клавиатурой. Кассир (teller) - робот, задачей которого является обработка всех данных по покупке/продаже чего-либо в банке. Осуществляет финансовые операции (работа с балансом) в банке, также забирает товар, полученный от игрока (продажа в банк) и отправляет запросы командному блоку, на выдачу банковского пароля и выдачу предметов. Виртуальный командный блок (netcb) - обычный компьютер, который получает команды от робота и передает команды в командный блок Супервайзер (supervisior)- административный элемент банка, позволяет выполнять различные операции в нем (выключение компьютеров, блокировка/разблокировка терминалов, принудительное обновление цен, блокировка дверей в кабинках) Алгоритм работы банка на словах: 1. Пользователь заходит в кабинку, тыкает в терминал 2. Двери кабинки закрываются и пользователю предлагают ввести пароль (либо восстановить его) 3. Если пользователь успешно авторизовался, то в зависимости от выбранной услуги выполняются различные действия: В случае продажи предметов банку: Пользователь выбирает пункт "Продать", бросает предметы в "яму" Робот забирает их, считает, выгружает в сундук На экране терминала отображается количество предметов и сумма, которую банк заплатит игроку. Игрок нажимает кнопку "Продать" и сумма зачисляется ему на счет. В случае покупки предметов у банка: Пользователь выбирает пункт "Купить", выбирает товар Выбирает количество товара и нажимает купить Если у игрока достаточно средств, то с его счета списывается необходимая сумма. Робот посылает командному блоку команду на выдачу предметов игроку. Выдача предметов осуществлялась через плагин BetterEnderChest 4. Игрок заканчивает сессию в банке, терминал деавторизовывает игрока и открывает двери Теперь рассмотрим, что требуется для постройки банка: Для создания банка, а будем строить для начала только одну кабинку, дополнительно потребуется: Web-часть: PHP скрипт + база данных - через них осуществляются все операции по зачислению/списанию баланса, хранению банковской сессии и пароля. Игровая часть: Плагины: Серверный плагин Essentials - по умолчанию командный блок отправляет сообщение игроку в виде письма из плагина Essentials Серверный плагин BetterEnderChest - по умолчанию выдача купленных игроком предметов осуществляет в Эндер сундук, доступ к которому извне реализуется плагином. В плагине есть баг, не сохраняются метаданные (зачарования, уровни энергии и прочее) Моды: OpenComputers - компьютеры, роботы и т.п. IC2 Exp. - покупка энергии AFSU - огромное хранилище энергии, для хранения энергии, которую смогут купить Nuclear Control - информационные экраны по краям терминала для показа информации о доступной энергии Iron Chest - не обязательно, на случай, если игрока буду продавать огромными партиями Applied Energistics 2 - в ней будут храниться все ресурсы, проданные банку Advanced Solar Panels - квантовые генераторы, для продажи энергии RedLogic - освещение и липкий редстоун Блоки: Командный блок - собственно все операции по отправке сообщений и выдаче предметов будут проходить через него. Командные блоки должны быть включены в конфигах сервера. Необходимое ПО лежит здесь. ПО немного изменено,а именно удален механизм автоапдейта (кроме прайслиста) т.к. при создании банка могут появиться необъяснимые баги (оно загружает всегда обновленную версию, не смотря на вашу ) Web-часть: Данные о балансе игрока, его банковской сессии и пароле хранятся в базе данных, Opencomputers общается с ней с помощью PHP скрипта, отправляя запросы на него и получая соответствующий ответ. Поэтому для работы банка в первую очередь нужно обзавестись хостингом с поддержкой PHP. К сожалению локальные вебсервера не подходят (OpenComputers их просто не видит). Выполнение этой части делится на несколько этапов: Импортируем структуру базы данных Загружаем PHP файл Указываем параметры доступа к базе данных (в PHP скрипте) Указываем ключ авторизации (абсолютно случайный, но без спец.символов). При попытке запросить баланс или его изменить для игрока, в случае, если игрока не существует - он будет создан. Игровая часть: Не забудьте поставить плагины для сервера. Собственно приступим к постройке: 1. Супервайзер Первым делом сделаем супервайзера т.к. его адрес указывается во всех программах. Конфигурации компьютеров/роботов выкладываю такими, какие они были в оригинальном банке, может будет работать и на менее мощной комплектации. Конфигурация компьютера-супервайзера: Системный блок 3 уровня Жесткий диск 2 уровня (золотой) Планка оперативной памяти 3.5 Видеокарта 2 уровня Процессор 3 уровня Плата беспроводной сети Ставим системный блок, монитор, подаем энергию, устанавливаем операционную систему. (все как с обычным компьютером). Например так: Далее загружаем программу-супервайзера (папка supervisior в архиве) любым удобным для вас способом. Выполняем команду components , чтобы посмотреть адрес модема и записываем его, он еще пригодится. Можно также отредактировать init.lua, добавив перед строкой local result, reason = os.execute(os.getenv("SHELL")) строки print("Running Supervisor:") require('shell').execute('имяпрограммы-супервайзера', _G) , чтобы она загружалась при старте компьютера. Перезагружаем компьютер, если все хорошо - программа успешно запустится. На этом с супервайзером закончили. 2. МЕ-сеть (система хранения) Получаемые от игроков ресурсы нужно где-то хранить, поэтому сделаем МЕ-сеть. Конфигурация ее произвольна, но сделаем простую: МЕ контроллер Терминал МЕ накопитель Плотный кабель (будет идти к каждому кассиру) Несколько ячеек хранения. Например так: Построение первой кабинки: 1. Виртуальный командный блок Конфигурация виртуального командного блока (компьютера такая же, как и у супервайзера). Ставим компьютер, рядом с ним ставим адаптер, а к нему командный блок (например так: . Подаем питание, устанавливаем операционную систему. После установки операционной системы также выполняем команду components и записываем адрес модема виртуального командного блока. Теперь загружаем программу netcb (доступна в архиве) любым удобным вам способом. Можно также добавить ее в автозапуск по аналогии с супервайзером. 2. Комната кабинки. Разделяем кабинку на половины (для клиентов и внутреннюю часть). С одного краю делаем углубление в один блок(разделите ее на 2 части с помощью стеклянного блока), для робота-кассира. Например так: . Робот может забрать ресурсы даже сквозь стекло! Далее ставим монитор и клавиатуру(терминал), а также заряжающую плиту. Например так: . Подключаем к монитору (сзади) кабель, ведущий под кабинку. А в углублении ставим зарядное устройство и рядом с ним блок, на который ставим сундук. Например так: Далее делаем обыкновенные поршневые двери. При этом вместо красной пыли используем Red alloy wire из Red logic, край "провода" выводим вниз, под кабинку. Например так: Слева и справа от экрана терминала за стеклом ставим информационные панели из Nuclear Control (продвинутая панель+расширитель). Они будут показывать заказанный вами объем энергии и доступный всего (датчики разместим позднее). Например так: На этом с кабинкой временно закончили. 3. Терминал. Теперь настала очередь терминала (самого компьютера). Конфигурация аналогична супервайзеру и виртуальному командному блоку, но здесь еще добавляется интернет плата и вторая планка оперативной памяти 3.5 уровня. Ставим компьютер. Подаем энергию, устанавливаем операционную систему. Далее устанавливаем необходимое ПО: 3.1 Загружаем любым удобным способом все файлы из папки terminal. 3.2 Редактируем файл bank.ini, где в ID указываем номер кабинки (1), а в CB указываем адрес модема виртуального командного блока (вы его получили ранее). 3.3 Редактируем файл terminal.lua, указываем адрес модема супервайзера (29 строка) 3.4 Обязательно добавляем файл в автозагрузку (как описано в начале для супервайзера, запускать программу start). 3.5 Перезапускаем компьютер. Можно для проверки поставить рядом монитор, чтобы проверить работоспособность (должно вывести надпись "Логин". Если все хорошо, убираем монитор т.к. далее будет подключен монитор в кабинке (позже) 4. Управление дверями, хранилища энергии. Теперь нужно построить хранилища энергии. Привожу скриншоты, тут ничего сложного. 4.1 Сначала делаем такую конструкцию: 4.2 Добавляем красный камень (блок из ОС), провода разъединители и квантовые генераторы: 4.3 Соединяем проводами красный камень, терминал и монитор терминала (в кабинке): 4.4 Подводим красную пыль от двери к красному камню (блок из ОС), можно также поставить рычаг, для ручного блокирования дверей: 4.5 Берем два набора для энергетического хранилища (из Nuclear Control), одним тыкаем по ЭХПФ (AFSU) и вставляем в левую (от монитора терминала) информационную панель, а вторым тыкаем по заряжающей плите и вставляем в правую информационную панель. В результате левая показывает общее количество энергии в системе, а правая уровень энергии в заряжающей плите. С этой частью закончили, осталась одна. 5. Кассир (teller) Кассир это робот определенной комплектации. Поэтому сначала соберем его. Нам потребуется следующая комплектация: Системный блок 3 уровня Улучшение "Контейнер плат" 2 уровня Дисковод Улучшение "Контроллер инвентаря" Улучшение "Притягивающий луч" 4 улучшения "Инвентарь" Монитор 1 уровня Клавиатура Интернет карта Плата беспроводной сети Видеокарта 1 уровня Процессор 3 уровня 2 планки памяти 3.5 уровня Lua Bios Жесткий диск 3 уровня Как только робот будет собран, устанавливаем его на зарядное устройство в кабинке (за стеклом), "лицом" к дверям. Под зарядное устройство (снизу) подводим энергию, а также ставим рычаг и включаем его (чтобы включить зарядное устройство). Таким образом робот должен быть на бесконечной зарядке. Далее устанавливаем операционную систему После чего загружаем все файлы из папки teller. Редактируем bank.ini, где в ID ставим 1 (номер кабинки), а в CB ставим адрес модема виртуального командного блока Добавляем программу на автозапуск (запускаем программу start) Редактируем файл teller.lua. Изменяем следующее: VIRTUALCB (строка 35) - ставим адрес модема виртуального командного блока, SUPERVISOR (строка 36) - адрес модема супервайзера, KEY и KEY2 (можно ставить одинаковыми) - ключ доступа, который указали в PHP файле. Далее в коде находим и меняем ссылки на PHP скрипт (по умолчанию это строки 707,710,714,717,765,768,785,791,794). Меняем только часть ДО(!) знака вопроса. Сохраняем файл Вставляем в робота плату на красном камне 2 уровня. А теперь пробуем запустить нашего кассира. После запуска кассира нужно перезапустить компьютер с терминалом и попытаться (после запуска) авторизоваться в терминале. Осталось поставить на сундук (что над роботом) шину импорта, вставить в нее 2 модуля ускорения и подвести к ней МЕ-кабель. Вот собственно и все. Первая кабинка готова. Для создания дополнительных кабинок требуется повторить все 5 пунктов, что и для первой кабинки (создать новый КБ, новый терминал, нового кассира). А также сменить ID кабинки в bank.ini, teller.lua и terminal.lua Прайс лист с ценами доступен тут . Ссылка на pastebin прайслиста указывается в teller.lua строка 25 Не забудьте поставить эндер сундук, чтобы игроки смогли забрать купленное. Выражаю огромную благодарность разработчикам банка: Alex(AlexCC) и Totoro.
×
×
  • Создать...