Разработка движка шахмат
26 000 UAHНужно реализовать сам движок (доску) для одновременной игры нескольких тысяч/десятков тысяч игроков.
Что нужно от Вас:
1. Реализация системы мультиигры: одновременная поддержка нескольких тысяч/десятков тысяч партий (пример: lichess.org/).
Всех остальных наворотов (шахматных каптч, задач, различных вариаций шахмат(шахматы Фишера,... и т.п.) не будет). Только классические шахматы.
Игрок создает стол, выбирает себе цвет фигур (белые/черные/случайный цвет), задает продолжительность партии и выбирает силу противника в диапазоне (скажем, от 1600 до 1800).
Визуально процесс выбора оппенента должен выглядеть как здесь: joxi.ru/Y2L8JVzf9YYnq2, обязательно с двойным бегунком.
После чего стол появляется в списке партий в ожидании, и любой другой свободный игрок может за него сесть. Одновременно игрок может играть только в одной партии.
2. Реализация самого геймплея. Тут от Вас потребуется твердые знания правил игры: рокировки на длинную и короткую сторону, шах, мат, пат, удар пешкой через поле, и т.п.
3. Реализация входа в игру. С нашей стороны мы будем передавать Вам через GET параметр в iframe username игрока, а также хеш (md5(username+salt)), сверив который,
Вы убедитесь в отсутствии попытки взлома. Далее, обратившись на данный нами урл по API key, который мы Вам дадим, Вы получите рейтинг Эло игрока.
4. Реализация кнопок "предложить ничью" (подтверждение/отмена со стороны противника) и "сдаться". Обе эти кнопки должны быть с подтверждением (чтобы игрок случайно не нажал на "сдаться").
Реализация js таймера (взять с lichess.org/). Если время игрока на партию истекает, игроку автоматически засчитывается поражение.
5. По завершении партии Вы должны будете передать данные о ее результате на указанный нами роут по АПИ черех POST request.
В request-е нужно будет передать: username_1, хеш (md5(username_1+salt), username_2, хеш (md5(username_2+salt), API key, результат партии (1 – победа белых, 0 -ничья, 2 – победа черных),
продолжительность партии в секундах, история ходов партии в формате:
(1)b3e5(2)Bb2d6(3)e3Nf6(4)h3Be7(5)Be2Nc6 (без пробелов!!!)
В ответ на этот реквест Вы получите пересчитанный рейтинг Эло каждого из игроков в json формате и отобразите эти изменения в интерфейсе на своей стороне.
Сам интерефейс шахматной партии можно сделать полностью по аналогии с lichess.org/ , изменив детали, чтобы не было плагиата. Картинки фигурок и самой доски мы Вам дадим.
В целом будущий проект это будет упрощенный по функционалу вариант lichess.org/. Искусственный интеллект писать не нужно, партий человек – компьютер не будет. Только человек-человек.
От Вас требуются знания шахматных правил (желательно опыт реальной игры), знания css, html, js, jquery, плюс php (обязательно фреймворк kohana) на котором будет написан сам движок,
управляющий партиями, а также готовность поддерживать проект на протяжении длительного времени и оперативно устранять все ошибки.
Весь пересчет ходов в партии должен проверяться на бекенде (php kohana) посредством аякс запросов. Чтобы человек не мог хаккерскими методами по средством js
(будь то консоль F12 или любой другой способ) изменить расположение фигур на доске в обход нашего алгоритма. То есть от Вас требуются навыки защиты веб приложений.
Проект должен быть реазизован на php frameork kohana 3.3, nodejs (socket сервер), js, jquery, css, html
Флеш, другие языки программирования (c#, java, python, perl, ruby, ASP.NET, etc) и другие джаваскрипт библиотеки использовать НЕ разрешается.
Страница самой игры на сайте:
/play
Урл, передаваемый в iframe с нашего сервера на Ваш:
robot.<yourserver>.com/api?username=10000000 27&hash=a7107d1e8baa9dba151b7ebfa965fec4
API роут, отдающий от нашего сервера Вашему рейтинг Эло (пересчитывается на нашей стороне):
/page/rating_7128937192?user=1000000025&user_hash= 5caffbb3d0a381f0e38020179404bc1a&api_key=ckvnw4rbt 73iynci2uny7
API роут, на который нужно отсылать запрос по завершению партии (в ответ приходит пересчитанный рейтинг Эло):
/page/complete_7889937103?user1=1000000025&user1_h ash=5caffbb3d0a381f0e38020179404bc1a&user2=1000000 026&user2_hash=d5853d613298023918a5bb5b6d441fe7&ap i_key=ckvnw4rbt73iynci2uny7&result=1&time=1234&mov es=(1)b3e5(2)Bb2d6(3)e3Nf6(4)h3Be7(5)Be2Nc6
api_key и соль для md5 хеша юзернеймов нужно ОБЯЗАТЕЛЬНО вынести в конфиги.
Дизайн доски и фигурок – во вложении.
ВАЖНО! Условием сдачи проекта и закрытия проекта является успешно пройденное независимое тестирование (фирма-тестировщий вибирается по нашему смотрению, таких фирм может быть несколько).
В случае обнаружения ошибок ошибки исправляются до их полного устраниния, после этого Вы заливаете код на наш VDS, настраиваете там nodejs и сокет сервер,
и лишь после этого мы принимаем работу и зарезервированные деньги списываются на Ваш счет.
Приложения 2
Отзыв заказчика о сотрудничестве с Ярославом Федирко
Разработка движка шахматЧетко, в срок, без существенных ошибок.
-
776 11 0 Я готов взяться за ваш проект. Все сделаю без ошибок и в указанные сроки. Обсудим детали.
-
поржал с последнего абзаца)
-
Актуальные фриланс-проекты в категории Javascript и Typescript
Поддержка и развитие сайта клининговой компании
906 UAH
Ищу веб-разработчика / веб-мастера для долгосрочной поддержки и развития сайта клининговой компании. Сайт: https://donely.ca О проекте DoneLy Home Services — компания по предоставлению услуг уборки в Канаде, которая активно развивается и расширяет географию работы. Ищу… Javascript и Typescript, Веб-программирование ∙ 14 часов 42 минуты назад ∙ 53 ставки |
Разработка сайта по ТЗ на FramerНеобходимо сделать сайт по этим параметрам, что в ТЗ https://docs.google.com/document/d/1ODO2C9Krb4AaMiJz9wfbNzWlAyA2FwCCHL8r0biajUY/edit?usp=sharing Назовите реальный рейд на основе этого дизайна HTML и CSS верстка, Javascript и Typescript ∙ 1 день 15 часов назад ∙ 26 ставок |
Разработка интерактивной карты Palworld для сайтаНеобходимо разработать интерактивную карту Palworld по примеру: https://palworld.gg/map Нам нужна не просто статическая картинка, а полноценная интерактивная карта, где пользователь может смотреть локации, включать / выключать категории объектов, искать нужные точки и… HTML и CSS верстка, Javascript и Typescript ∙ 3 дня 6 часов назад ∙ 32 ставки |
Разработка платформы AM Mobility (автосервис, парковка, страхование, аренда автомобилей)
257 282 UAH
Ищем команду или опытного Full Stack разработчика для создания MVP платформы AM Mobility. AM Mobility — это единая цифровая экосистема для автомобилистов, объединяющая в одном приложении и веб-платформе: парковку; автосервис; шиномонтаж; автомойку; аренду автомобилей;… Javascript и Typescript, Веб-программирование ∙ 8 дней 12 часов назад ∙ 119 ставок |
Gsap анимации
1000 UAH
Добрый день. Нужно внести правки в текущем проекте. Нужен специалист, который хорошо работает на gsap/lenis Нужно сделать анимацию карточек. Подробное ТЗ здесь: https://www.figma.com/design/5bLEJudN5LPpB9ZSoJa2Eb/Untitled?m=auto&t=qwyluUctL1lrMNvh-6 Нужно… Javascript и Typescript, Веб-программирование ∙ 8 дней 18 часов назад ∙ 21 ставка |