Всем привет. У меня есть вопрос по серверному движку, код не смотрел, возможно ли отключить выпадание монет при убийстве NPC монстров, а также запрет получения монет за квест от NPC? Чтобы только админ мог вводить монеты в игру?
Запросто.
Открываешь базовый код всех существ, в данном случае BaseCreature.cs
находишь метод, который отвечает за добавление дропа золота в пак/лут. Ставишь проверку типа
if (Item is Gold)
return;
Прекрасно, значит это возможно, спасибо за быстрый ответ.
А предположим автоматизировать ввод и вывод средств из игры, ну например будет возле банка NPC, который будет выводить золото из игры (игрок передаёт ему номер кошелька сообщением, в диалоге) или от него получать номер кошелька на который переводя, вне игры, можно пополнять средства в игре. Такое реально в данном движке реализовать? Или это можно реализовать через веб для личного кабинета?
Aimed несколько напутал.
Интерфейс с магазином проще и удобнее сделать в игре. Для пополнения баланса нужно api ряда платежных систем или просто апи промежуточного сервиса, на котором уже настроены всевозможные платежки - с чем уже клиент не справится. Ссылки на гампах не решают эту проблему, т.к. всё равно надо делать веб обвязку платежки.
с CUO конечно всё можно запилить в игре, включая пополнялку. Да даже захукать обычный клиент можно под открытие браузера внутри игры. Но это уже неоправданный изврат будет
ХЗ что я тут напутал.... Давайте рассмотрим конкретный пример - PayPal.
У нас есть 2 типа гампов. Один гамп для того что б игрок мог купить у сервера - гамп 1 и гамп для того что б игрок мог вывести средства и получить реал, гамп 2.
-Гамп 1:
Тут сперва выборка платежных систем через radio button.
Жмём далее, прилетает новый гамп, в нашем случае был выбран Paypal.
Тут есть одно поле для ввода почты ПП аккаунта игрока
Жмём далее, прилетает гамп со ссылкой на ПП акк шард овнера, куда надо переводить деньги.
Сервер в это время пишет о том что игрок хочет сделать транзакцию + его ПП мыло + время с датой. Можно писать куда угодно. Сразу в обьект аккаунта, файл, базу, пофигу и потом 24 часа, каждые Х минут, авторизируется и чекает список транзакций через PayPal REST API, пока не увидит новую транзакцию с этим мылом, после чего игроку выдаётся игровое имущество...
Потом можно ради статистики куда-нить записать данные о транзакции. Игровой аккаунт такой-то перевел столько то в такой-то системе оплаты и получил столько-то игрового имущества.
-Гамп 2( для вывода игрового имущества в обмен на реальные деньги):
Опять сперва выборка платежных систем через radio button.
Выбераем PayPal, жмём далее и прилетает новый гамп:
Поле1: тут игроку надо вводить email адрес от его PP акка.
Поле2: количество выводимой игровой валюты
Жмём далее. Игроку прилетает гамп, который покажет сколько реальных денег игроку переведут на его счет и удаляется игровое имущество, которое было указано в поле1.
Дальше сервер через REST API авторизируется и делает перевод со своего аккаунта в выбранной платежной системе. Заодно пишет в свою базу или в файл о транзакции, на всякий случай. В таком случае даже браузер открывать не надо, просто из игры все делается. Удобно.
Естетсвенно сервер овнеру надо предварительно настроить все кошельки/аккаунты, а потом работу с их REST API что б смотреть новые транзакции и самому делать транзакции на аккаунты игроков.
Итог:
Если нужно купить у сервера, клиент открывает браузер с нужной ссылкой, дальше игроку надо только залогиниться и сделать транзакцию. 1 переход из игры в веб и все.
Если нужно продать серверу то все можно сделать из игры, если игрок в состоянии вписать айди своего кошелька/аккаунта или если это мыло.
Все что ввел игрок можно запомнить и в следующие разы присылать гампы уже заполненными, игроку только прийдется прожимать далее и в случае покупки у сервера заходить в свою системы оплаты и осуществлять перевод.
Схема понятна, но чем она лучше веб версии? На автоматизацию палки уйдет больше времени чем на подключение платежного сервиса с готовым апи под 20, 30 и более платежных систем.
В примере с палкой это выглядит работоспособным, но на деле работать должным образом не будет, т.к. в палке постоянно всякие холды, блоки, задержки и прочие конфузы происходят, т.е. толку от автоматизации будет мало, т.к. всё равно многое будет сводится к ручной обработке заявок.
И в результате мы всё равно клиента отправляем работать с браузером, пусть даже в упрощенном виде.
Каждая новая платежная система и её обвязка через гампы, базы, логи - будет создавать новую головную боль.
Такая боль может быть оправдана, если мы хотим экономить на комиссиях. Но это не отменяет простоту использования веб версии . И если говорить про комиссию, то множество платежек позволяет настраивать комиссию, разделяя её между собой или полностью перенося на клиентов.
Я к примеру на своих серверах просто подключал платежку на сайте, где апи платежки кидало данные в локальную базу сервера, создавало лог, а игрок после пополнения заходил в интерфейс магазина в игре, и сервер просто считывал баланс юзера.
Делов на несколько часов, при наличии готового игрового магазина. А на выходе приятный UI платежки на сайте, куча платежных сервисов, двухсторонее информирование по почте и молниеносная обработка платежей. От игрока требовалось только нажать кнопку "Пополнить баланс" в игре, после чего открывалась ссылка и надо было ввести имя аккаунта. Аналогичным образом используя твою идею с гампами, можно было автоматом подставлять аккаунт перса при открытии браузера по кнопке , или просто куками хранить в браузере последний пополняемый аккаунт.
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)