Лаунчер для minecraft
Здравствуйте. Нашему клиенту требуется написать лаунчер для minecraft. Цитируем:
По сути обычный лаунчер майнкрафта, который скачивает ресурсы игры с серверов, умеет запускать эти версии и показывает рекламные сервера.
Основной функционал:
1) Автообновление лаунчера при запуске.
2) Выбор версий майнкрафт начинать с 1.5.2. Чистые версии скачивать с лицензионных серверов игры. Остальные версии скачивать с серверов tLauncher Legacy. Версии в списке доступных для загрузки выделить серым, а установленные версии выделить белым цветом.
3) Создание профиля в лаунчере для указания своего никнейма.
4) Отображение 7-9 рекламных серверов на главной странице лаунчера, с возможностью быстрого запуска через кнопку "играть", которая запустит определенную версию игры и подключится к выбранному серверу. Выдача серверов с удаленного сервера.
Немного более подробное ТЗ -https://docs.google.com/document/d/1DaVSlu9NUOvKk4UAwPjnI397L9BESfoGpeZKCW8ato8/edit?usp=sharing
Дополнительный функционал (хотелось бы добавить позже):
1) Вывод информации о причине краша: код ошибки, название проблемного мода.
2) Возможность собирать статистику по запускам лаунчера и кликам в списке серверов.
Расположение файлов лаунчера на своем сервере. В идеале требуется минимальная нагрузка на сервер и потребляемый им трафик.
Есть вариант написать используя чужие исходники. Взять исходники Сашка, например. http://rubukkit.org/threads/sashok724-launcher.42883/
Внешне ориентироваться на синий Tlauncher. В идеале по функционалу требуется полная копия Tlauncher legacy, с отличием только в дизайне.
Наглядно можно посмотреть скачав tlauncher (синий), tlauncher legacy, freelauncher и прочие.
Tlauncher Синий - vk.com/tlauncher , tlauncher.org/
Tlauncher Legacy - vk.com/public26018968 , Исходник - tlaun.ch/jar
Freelauncher - https://github.com/dedepete/FreeLauncher
Интересует примерная цена разных вариантов:
1) Написание основного функционала на основе чужих исходников.
2) Написание основного и доп. функционала на основе чужих исходников.
3) Написание основного функционала с нуля.
4) Написание основного и доп. функционала с нуля.
5) Примерные цен на доработку, то есть выпуск обновлений.