Разработка движка шахмат
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
Шукаю досвідченого Full Stack розробника для створення SaaS-сервісу для інтернет-магазинів.Ідея сервісу: Клієнт завантажує посилання на свій товарний фід (XML або CSV). Сервіс автоматично отримує товари, бере їхні фотографії та створює нові рекламні зображення за готовими шаблонами: ціна, знижка, логотип, акційні плашки тощо. Також у сервісі має бути простий редактор… Javascript та Typescript, Веб-програмування ∙ 2 дні 10 годин тому ∙ 86 ставок |
Розробка WebGL/Three.js сцени з генерацією та експортом 3D (снапшот) з анімованого шейдераОпис об'єкта:Проект являє собою дизайнерський стіл, виконаний у формі реалістичного, глибокого водовороту (центральна воронка, яка плавно переходить з широкої горизонтальної стільниці в тонку витончену ніжку). Суть задачі:Потрібен WebGL / Creative Coding розробник для створення… Javascript та Typescript, Веб-програмування ∙ 3 дні 7 годин тому ∙ 30 ставок |
Підтримка та розвиток сайту клінінгової компанії
904 UAH
Шукаю веб-розробника / вебмайстра для довгострокової підтримки та розвитку сайту клінінгової компанії. Сайт: https://donely.ca Про проєкт DoneLy Home Services — компанія з надання послуг прибирання в Канаді, яка активно розвивається та розширює географію роботи. Шукаю… Javascript та Typescript, Веб-програмування ∙ 5 днів 9 годин тому ∙ 64 ставки |
Розробка сайту по ТЗ на FramerПотрібно зробити сайт по цим параметрам що в тз https://docs.google.com/document/d/1ODO2C9Krb4AaMiJz9wfbNzWlAyA2FwCCHL8r0biajUY/edit?usp=sharing Називайте реальний рейт на основі цього дизайну HTML та CSS верстання, Javascript та Typescript ∙ 6 днів 10 годин тому ∙ 30 ставок |
Розробка інтерактивної карти Palworld для сайтуПотрібно розробити інтерактивну карту Palworld за прикладом: https://palworld.gg/map Нам потрібна не просто статична картинка, а повноцінна інтерактивна карта, де користувач може дивитися локації, вмикати / вимикати категорії об’єктів, шукати потрібні точки та взаємодіяти з… HTML та CSS верстання, Javascript та Typescript ∙ 8 днів 1 година тому ∙ 36 ставок |