Понедельник, 30 Июня 2025, 23:13

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
maker-rusДата: Вторник, 09 Мая 2017, 22:07 | Сообщение # 81 | Тема: Разработка браузерной игры на PHP
Гений
Сейчас на сайте
Цитата Puni ()
Целесообразно ли использовать для этого PHP-фреймворк и если да, то какой лучше подойдёт для реализации этой цели?

Абсолютно все равно, что ты возьмешь, практически, все зависит от твоих навыков. Взять можешь любой фреймворк, который для тебя удобнее.


Сообщение отредактировал maker-rus - Вторник, 09 Мая 2017, 22:07
maker-rusДата: Воскресенье, 02 Апреля 2017, 21:16 | Сообщение # 82 | Тема: Лицензия CryEngine5 или как не стать ЛОХ'ом
Гений
Сейчас на сайте
maker-rusДата: Понедельник, 27 Марта 2017, 17:05 | Сообщение # 83 | Тема: Лицензия CryEngine5 или как не стать ЛОХ'ом
Гений
Сейчас на сайте
maker-rusДата: Воскресенье, 26 Марта 2017, 23:17 | Сообщение # 84 | Тема: Лицензия CryEngine5 или как не стать ЛОХ'ом
Гений
Сейчас на сайте
die_russofobs, научитесь корректно и читабельно писать посты на форуме, вы все таки, не на ролевом форуме, что бы пользоваться [] {} и прочими символами, не предусмотренными в русском языке и использованных не в целях демонстрации исходного кода. Я, например, из вашего монолога понял только одно, CE - плохие, они вас заблокируют, потому что могут, все остальное написано так, что прочитать очень, очень сложно. :(

Сообщение отредактировал maker-rus - Воскресенье, 26 Марта 2017, 23:19
maker-rusДата: Понедельник, 13 Марта 2017, 02:52 | Сообщение # 85 | Тема: Браузерная игра-тест?
Гений
Сейчас на сайте
Цитата nodepix ()
И тут вопрос как сделать чтобы 2-й уровень был закрыт, пока не пройдешь первый.

Создать таблицу в БД с задачами (ид, условие, ответ, ответ пользователя, статус выполнения). И проверять по статусу выполнения, если задача ид-1 не выполнена, то показывать страницу с ошибкой доступа, если выполнена - страницу с заданием.
Цитата
Подскажите с чего начать? Может тема есть уже на форуме похожая или сталкивался кто с такой задачей?

Легче этой задачи, только To-do лист. А если по делу, то начать тебе нужно с осознания, что такое: реляционные базы данных, язык запросов к ним (SQL), изучить базовый уровень скриптового языка,на котором собираешся реализовывать данную задачу (темы для изучения: операторы присваивания и сравнения, тернарные операторы, условные конструкции, циклы, массивы и их виды, функции, парадигму объектно ориентированного программирования, хотя бы знать наследование и инкапсуляцию, работа с стандартными библиотеками скриптового языка, этот тот минимум, который ты должен знать, что бы написать свое приложение, которое потом можно будет поддерживать). Если ты собрался все это реализовывать на php, тебе облегчается задача, не обязательно в этом случае иметь базовые навыки по работе с unix системами, что бы перенести свое приложение и запустить его, для этого есть масса хостингов с панелями управления. Дальше тебе понадобятся базовые навыки работы с html5 (верстать, хотя бы с помощью bootstrap) и базовые навыки CSS3 (поменять цвета или форму кнопочек), а так же базовые навыки JavaScript, если твой интерфейс будет каким-то сложным (сложная анимация, отправка или получения данных без перезагрузки страницы, динамическое взаимодействие с пользователем и тд).


Сообщение отредактировал maker-rus - Понедельник, 13 Марта 2017, 02:56
maker-rusДата: Понедельник, 06 Марта 2017, 22:57 | Сообщение # 86 | Тема: Стоит ли менять программирование на другую сферу?
Гений
Сейчас на сайте
Цитата Эргалон ()
maker-rus, Ты очень тесно связал геймдизайн и программирование

Геймдизайн вытекает из того, что реализует программист, нельзя играть в несуществующего игрока и смотреть, на нереализованные облака :)
maker-rusДата: Понедельник, 06 Марта 2017, 22:42 | Сообщение # 87 | Тема: Стоит ли менять программирование на другую сферу?
Гений
Сейчас на сайте
Цитата Эргалон ()
В программировании тяжело раскрыть себя и мне кажется это практически невозможно, грубо говоря рутинная работа, которая выполняет условия на базе вычислений и расчетов. Эту специальностьсложно отнести к творчеству или искусству как к таковому.

В рисовании тяжело раскрыть себя, рисуешь постоянно какие-то квадратики, треугольнички, кружочки. Эту специальность сложно отнести к творчеству или искусству, как таковому. Другое дело программирование - выражение своих чувств, фантазий, идей в игровом мире, которым ты управляешь. От нпс до игрока, от облачка, до движущейся травы, от движения игрока, до поздравления игрока с победой. Ты многократно переживаешь события того или иного действия, знаешь, как оно сработает до мельчайшего логического оператора (хотя, знаешь или думаешь, что знаешь?). Ты вдыхаешь жизнь, в бесформенный (или форменный) набор пикселей (или линий), которые живут в том мире, который ты создал.

ps. Надеюсь ты понимаешь, как ты далек от того, о чем рассуждаешь :)
maker-rusДата: Среда, 15 Февраля 2017, 06:11 | Сообщение # 88 | Тема: Чи быдлокод, чи не быдлокод...
Гений
Сейчас на сайте
Gudleifr, из содержания вашей темы, складывается только 2 вопроса.

Чи холивар, чи не холивар? :/
maker-rusДата: Понедельник, 13 Февраля 2017, 14:33 | Сообщение # 89 | Тема: Самая лучшая онлайн игра на Js
Гений
Сейчас на сайте
Цитата gamer26 ()
Скиньте пожалуйста в комменты ссылку на самую красивую (по вашему мнению) онлайн игру, которая была написана на Js.

клик
maker-rusДата: Понедельник, 06 Февраля 2017, 16:32 | Сообщение # 90 | Тема: Новый MMORPG maker Intersect
Гений
Сейчас на сайте
Цитата MysticPurple ()
Я правильно понял, что исходники конструктора еще пока не открыты?

Правильно, они их откроют к релизу.
maker-rusДата: Вторник, 06 Декабря 2016, 20:33 | Сообщение # 91 | Тема: [beta] Браузерная MMORPG FireOfSteel
Гений
Сейчас на сайте
Fireofsteel, начал игру и тут такое: Вот тебе первое задание, сходи к Милебу и получи его. Для этого сначала нажми на мигающую кнопку сверху. Зачем мне получать Милеба? :3
maker-rusДата: Пятница, 07 Октября 2016, 23:26 | Сообщение # 92 | Тема: [2D] Fates [MMO]
Гений
Сейчас на сайте
Цитата k0fe ()
Почему именно чат? Форум был бы намного лучше. Сделай форум +
Цитата maker-rus ()
масса плюшек и наворотов

1. Профиль игрока сделай
2. Бросок кубика прямо в сообщении
2.1. Чтобы избежать ситуаций а ля
Цитата Ordan ()<br / >( Игрок1: я тебя убиль, Игрок2: нет это я тебя убиль!)

И т.д.

Форум удобнее чата (ИМХО)

Форум подразумевает ветки, темы и нет режима реального времени, но есть большое поле для текста, в котором можно много чего описать. Да, его (реал тайм) можно прикрутить и каким-то образом обыграть это. Но я имел ввиду не чистый чат, а гибрид (чат с форумом), где можно попытаться обыграть большое поле, как-то по другому. С кубиком интересная идея, мол у кого больше выпало тот и ударил. Профиль игрока обязательно будет, без этого никуда. Будет рейтинг игроков. Будет динамическая история (глобальные и значимые ситуации из игры, будут внесены в нее). Чат тут реализует общение,наблюдение за миром и действия игрока. То есть, по возможности, действия игрока будут вводится в поле ввода.
Цитата OpenGOO ()
maker-rus, зачем тебе это вообще нужно, если много полноценных игр?

Чем эта игра отличается? Активной мыслительной деятельностью, то есть не глупое тыканье по кнопочкам, а игра своей роли, игра за своего персонажа, в прямом смысле этого слова. Разговоры, действия именно для этого организованны в чат. А так же развития воображения.
Цитата OpenGOO ()
Если о реализции подумать, то IRC лучше будет, там можно написать бота который будет управлять игровым процессом.

Я откажусь от это реализации, за счет того, что нужно иметь стороннее программное обеспечение, а так же уметь его настроить. Что для новых пользователей будет пугающим. Поэтому будет собственная реализация, браузерная версия, аналогичная irc, только со своими плюшками и шоколадками, что будет требовать только современно браузера.
Цитата JackNazaryan ()
maker-rus, развивай идею, главное потом аудиторию найти. Большинство народу - либо тролли, либо олдфаги (могу ошибаться), наверняка тебя интересует второе. Удачи!

Спасибо, конечно меня более интересует - второй вариант (олд фаги), но равноценно меня интересует и привлечение новых людей, не знавших о таком жанре игр, возможно которым он понравится, что бы популизировать данный жанр (вернуть его к жизни).

Добавлено (02 июня 2015, 23:44)
---------------------------------------------
Up!
Логотип (бета)

Игровая область


Добавлено (30 сентября 2016, 15:47)
---------------------------------------------
Появилось у меня достаточно свободного времени, что бы приступить к разработке данной игры. Так вот, больше чем, за год, у меня сложилось примерное представление игры и как она должна выглядеть. Долго и нудно присматривался с движкам/фреймворкам/исходникам/другим играм, но выбрал для себя следующий стэк технологий: nginx + python + tornado + vue.js + sass + postgresql + redis. Что, зачем и почему? Со стороны сервера у нас будет трудится nginx + tornado, в своем проекте я собираюсь использовать сокеты, для реалтайма. На стороне клиента у нас будет html + sass(susy) + vue.js, почему susy и vue.js? Susy - достаточно мощный фреймворк для работы с сеткой, vue.js - современный, достаточно простой, удовлетворяет мои потребности. Почему я выбрал postgresql + redis, на стороне бд? Postgresql - хорошо справляется с большим объемом данных и достаточно быстро. Redis - нужна для хранения игровой сессии персонажа. Так же решил, что игра не будет являться чистым клоном mud игры, точнее, мой проект, будет лишь напоминать данный жанр игр, но порог вхождения для старта игры будет значительно снижен, в плане механики игра так же будет упрощена, но не в угоду гемплею. Идей достаточно много, постараюсь каждые 3-4 дня публиковать changelog в этой теме, о ходе развития проекта, а так же публиковать скриншоты/анимации демонстрирующие механику и геймплей игры.
Если есть какие-то идеи или предложения, то я буду рад прочитать их здесь. ^_^

Добавлено (03 октября 2016, 21:16)
---------------------------------------------
[changelog]
Код

- Организован каркас проекта (выбрана иерархия, структура проекта)
- Сделан небольшой компилятор на Gulp для Susy (sass)
- Реализован простенький чат на сокетах (Tornado)
- Добавлена поддержка Postgresql
- Реализована первая команда для чата.
- Добавлен прототип характеристик
- Реализована запись / чтение сообщений из/в базу данных.
- Вывод последних 15 сообщений от игроков, при заходе в игру.
- Код приведен в порядок и структурирован, выбрана модель MVC.
- Реализовал базовый прототип для игровой области.
- Реализован базовый JSON-ответ от сервера.
- Начал эксперименты с подборкой цветов и шрифтов для удобного чтения и восприятия информации.


Скриншотик прилогаю:


Всем спасибо за внимание. ^_^

Добавлено (07 октября 2016, 23:26)
---------------------------------------------
Обновление: 07.01.16
[changelog]
Код

- Отказ от Vue.js
- Реализована простая авторизация (скриншот ниже)
- Переписана модель игрока, реализовано хеширование пароля.
- Добавлена защита от xsrf (csrf) атак.
- Добавлена сессия игрока.
- Изменена миграция для БД, добавление тестовых данных.

Под спойлером скриншот

^_^


Сообщение отредактировал maker-rus - Четверг, 10 Ноября 2016, 23:16
maker-rusДата: Понедельник, 03 Октября 2016, 22:05 | Сообщение # 93 | Тема: Как сделать такой параметр, как "редкость" у предмета?
Гений
Сейчас на сайте
Цитата Lertmind ()
Для меня так удобней, а генерировать числа от 0 до 99999 чтобы задать вероятность 0.125% считаю нелепым, хотя и возможным. Не знаю про какие проблемы ты намекаешь.

Почти любой костыль, в php выходит боком в производительность, а так же размер потребляемой памяти, в идеале лучше использовать целые расчеты, чем использовать математику с дробными при каждом запросе, что приведет к несоизмеримому сжиранию производительности, погугли мат.тесты на php, в среднем при выполнении 100 мат.операций (косинус,синус,тангенс и тд, кроме rand()) (512 мб / 1 ядро), скорость отдачи страницы доходит до 3 секунд, что при многопользовательской игре с онлайном например, в 1000 игроков вырастет в 5-6 раз. Тут я понятно объяснил?
Цитата
* Во-первых, редкость намекает, что вероятность для каждой категории одинаковая. В "4. Случайно выбираешь предмет с выбранной редкостью." я не указал, но предполагается, что будет применён фильтр или вычисления характеристик предмета, чтобы игрок 5-ого уровня не получил предмет для 40-ого.

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

Решаю не эффективным способом? Бред. В данном случае, я привел самое элементарное, что будет делать автор в данной ситуации. А по факту, при любом подходе, здесь не избежать дополнительных "пустых" запросов, потому что ваша архитектура заведомо провальная, для браузерки. Дергать эти данные из хэш-таблиц итд != делать доп. "пустые" запросы в рбд, которая и без того будет страдать.
Цитата Lertmind ()
В-третьих, если ты разбираешься в высоконагруженных приложениях, то почему не предложил нормальный вариант? В логике твоего совета мы знаем какой предмет надо выкинуть, но не знаем частоту выпадения и обращаемся за ней в базу. Может ты предполагал, что будет выбор по всем предметам базы на основе их вероятностей, но твой код и слова на это не указывают.

Нет, я предполагал, что выбор будет по вероятностям и редкости предмета и все это будет, в одном запросе. То есть получаем процент удачи получения редкой вещи, например от 1 до 10 включительно. Если удача больше 5, то получаем редкую шмотку, если больше 8, то 2 редкие шмотки, если 10, то целых три шмотки. Дальше получаем коэффициент выпадения. Определяем список вещей, которые можно получить персонажу и только потом отправляем запрос в базу, который будет содержать следующее: нам нужны перечисленные шмотки + в зависимости от удачи еще несколько, редких, у которых коэффициент +-1 = нашему, естественно все это ищется по индексам, далее, другим запросом все наши вещички отправляем в базу. В итоге база обходится легким испугом. А мы сильно не захламляем ее бесполезными запросами и бесполезно не лочим строки.


Сообщение отредактировал maker-rus - Понедельник, 03 Октября 2016, 22:06
maker-rusДата: Четверг, 29 Сентября 2016, 12:22 | Сообщение # 94 | Тема: Как сделать такой параметр, как "редкость" у предмета?
Гений
Сейчас на сайте
Цитата Lertmind ()
Твой код равносилен:

Нет, не равносилен, логика абсолютно разная. И нужда, как раз была обусловлена необходимостью из за логики вычеслений.
Цитата Lertmind ()
Замечу, что лучше хранить во float от 0 до 1, тогда можно легко задавать, допустим, 0.125%:
Код
if (random() < 0.00125) { "ok" }
По какой-то нелепости в php нет случайного числа для промежутка [0, 1)

Замечайте после того, как вникните в особенности языка. А не сначала напишу, а потом пойму что зря написал, костыли нужны только там, где они выражены необходимостью, в данном случае можно и с целыми числами работать и не прибигать к тому, что потом вылезит боком.
Цитата Lertmind ()
Для каждой редкости свои вероятности, значит выбираешь редкость предмета с помощью алгоритма выбора предметов с разными вероятностями.

А если он захочет на конкретный предмет выставить определнный процент выпадания? Делать еще одно поле, городить запросы в базу, в пустую, что в совокупности, без понимания построения рбд для высоконагруженных систем, приведет к беде и отдаче ответа пользователю через 30-40 секунд. Все ваши примеры - для стендалона, но никак не для браузерки.
maker-rusДата: Среда, 28 Сентября 2016, 23:00 | Сообщение # 95 | Тема: Как сделать такой параметр, как "редкость" у предмета?
Гений
Сейчас на сайте
Цитата DeadDay ()
Но да, это должно быть на php. При чем количество еденицы вероятности будет браться из БД.

Так в чем проблема-то? Добавь поле с названием, например "rare" в таблицу предметов, в это поле записывает процент, например от 1 до 100 (это будут проценты). А дальше все просто, достаешь значение из этого поля и считаешь, следующим образом:
Код

$db_rareItem = 15; #Допустим это значение мы взяли из поля "rare" в таблице предметов
$chance = rand(1, 100) + $db_rareItem;
if ($chance >= 100){
    echo "Предмет получен!";
}
maker-rusДата: Суббота, 24 Сентября 2016, 13:57 | Сообщение # 96 | Тема: Авторизация, подобно Clash of Clans? Как она работает?
Гений
Сейчас на сайте
robertono, генерируешь уникальный индентификатор сессии, присваиваешь его игроку, записываешь в базу и работаешь с ним так же, как и с парой логин/пароль. Я думал, это очевидно, не понимаю, какие сложности тут могут возникнуть :)

Сообщение отредактировал maker-rus - Суббота, 24 Сентября 2016, 13:58
maker-rusДата: Пятница, 23 Сентября 2016, 18:41 | Сообщение # 97 | Тема: Продаю новую игру для социальных сетей FB, ОК, ВК
Гений
Сейчас на сайте
На всякий случай предупрежу пользователей, по ссылке, которую предоставил ТС лучше не переходить, потому что Касперский ругается на эту страницу и блокирует опасный элемент.
maker-rusДата: Среда, 10 Февраля 2016, 23:34 | Сообщение # 98 | Тема: Помощь с обновлением.
Гений
Сейчас на сайте
Цитата Step ()
и даже удалял remove() и сразу создавал обратно append, на моё удивление даже такие костыльные методы не сработали. Прошу подскажите как исправить данную проблему.

То, что вы делаете - визуальное изменение, из за того, что вы обновили DOM дерево, ничего не измениться. Нужно обновлять значения, загляните в JQUERY API, там написано как этой функцией пользоваться правильно.
В общих чертах, что вам надо сделать:
1. Получить данные из callback.
2. Сохранить их в переменную, например в переменную A.
3. Вывести её (переменную А) в ваш блок.
4. Остановить счетчик.
5. Остановить функцию обновления блока.
6. Пользователь нажимает на кнопку.
7. Обнуляем переменную A. И повторяем все с пункта 1.
^_^


Сообщение отредактировал maker-rus - Среда, 10 Февраля 2016, 23:34
maker-rusДата: Четверг, 12 Ноября 2015, 14:51 | Сообщение # 99 | Тема: Ищу программиста
Гений
Сейчас на сайте
Цитата XyRmaT ()
Требуется программист для написания браузерной игры с нуля!
Языки программирования
HTML
CSS
PHP
JS
MySQL
Python or Ruby
Если владеете достаточно хорошо одним из языков, пишите вк vk.com/xyrmat
P.S. оплата естесственно)

Написал, хочет покемонов, назвался администратором одной изподобных игр, предлагает от 500 до 1000 рублей за день, в зависимости от сложности кода, которую он определяет сам по своим методам, попросил его предоставить скрин с сумой на оплату, хотя бы за день, слился. Скорее всего кидала. wink
maker-rusДата: Четверг, 12 Ноября 2015, 14:39 | Сообщение # 100 | Тема: Помогите пожалуйста исправить скрипт
Гений
Сейчас на сайте
Цитата Alfe ()
Может так надо (Screen.widht/2));
?

Все же потом другая var идет.

Цитата Vladislav77Z ()
// Need to put .x if (touch.position.x > (Screen.width/2))

Там комментарий, который действует на всю строку.
И да, автор не полный код запостил, поэтому и помочь ему нечем, потому что ошибка в другой части кода.
Поиск:

Все права сохранены. GcUp.ru © 2008-2025 Рейтинг