После продолжительных колдований над программулиной, выложил новую версию пасьянса косынка работающим на блокчейне голос. Вроде даже работает, но это еще не точно и надо тестировать. Играть можно здесь https://sol.pisolog.net/newgame
Выплаты
Основное изменение, оно научилось выплачивать выигрыши. Это было самое сложное. Для этого пришлось допиливать свою java библиотеку для голоса, что бы она могла общаться с блокчейном на его языке. Было очень сложно, узнал много нового, в основном о себе, - насколько я тупой в математике. Но было интересно. Код java библиотеки лежит там же где и до того, не уполз. Вот здесь
Я закинул в игровой банк 500 GOLOS-ов, так что налетайте и дербаньте банк, пока его товарищ @ultrastod не разобрал на мелкие части. Пока в самой игре не видно, сколько в банке игры монеток, посмотреть можно в кошельке аккаунта @payme. (Смотреть TIP-баланс)
Логин
Возможно некоторые из вас видели пост от @lex на счет нового официального сервиса авторизации. Теперь не надо вводить ключи и пароли на моем сайте, а вводить теперь надо на другом, на официальном. Надесь это снимет страхи введения ключей на незнакомом сайте и поможет добавить больше пользователей. По кнопке "Войти" вас перенаправит на сайт авторизации голоса, где вы, если еще не залогинились, можете залогиниться либо паролем либо активным ключем. После чего можете подтвердить необходимые пасьянсу права.
Выглядит это так
(кстати @lex, примечание несколько странное, я лично ничего не понял)
Сайту с пасьянсом необходимы разрешения делать донаты и отправлять Custom-операции в блокчейн. Последнее совсем безобидная операция, на ваши средства ни как не влияющая. Она необходима для отправки в блокчейн игровых данных, вроде ходов и команд боту игры.
А основная операция для которой требуется разрешение - донаты. Ставки делаются с TIP баланса. На сайте пасьянса, вы можете выбрать сумму ставки, которая и будет снята с вашего TIP счета и отправлена аккаунту @payme-reserved.
Известные проблемы
- В браузре Vivaldi такая аутентификация не работает, потому как судя по всему он запрещает межсайтовые куки.
- Если окно с Signer не открывается, проверьте, может у вас запрещанны popup окна. В браузере надо разрешить для сайта sol.pisolog.net.
- В некоторых браузерах после разрешения аутентификации ничего не происходит и окно с Signer не закрывается. Проверьте вкладку с игрой, возможно все же аутентификаци была успешна.
Ставки = Донаты
Список со ставками формируется динамически, в зависимости от наличности в игровом банке. Максимальная ставка выбирается в зависимости от уровня сложности, так что бы выигрыш составил максимально половину суммы в игровом банке. Что бы не дать раздербанить весь банк за раз. Я постарался сформировать список так, что бы каждому было по карману сделать ставку. Я закинул 1500 GOLOS в СГ @payme аккаунту, что бы банк постепенно наполнялся из эмиссии. Потом докину еще, сразу не подумал об этом, выведу немного деньгов из своей СГ и закину туда. Надеюсь конечно, что банк будет наполняться за счет ваших проигрышей. )))
Мне с каждой ставки уходят 10%. На чай. :)
Уровни сложности
В игре четыре уровня сложность. "Простой", "Нормальный", "Сложный". При выборе одного из этих трех уровней сложности, будет случайным образом выбран расклад карт из базы данных с известным решением. Различие между тремя этими уровнями в колличестве ходов требуемым для решения пасьянса. Самый сложный расклад требует минимум 209 ходов. Человеку его очень трудно осилить. Самый простой расклад требует 100 ходов, там карты прямо как по заказу подлетают. Но простой уровень не значит, что все сложится само собой. Всегда возможны варианты и некоторые тупиковые.
В режиме игры "Случайный расклад" карты раскладываются случайным образом, поэтому может выпать как простой расклад, так и сложный, а возможно даже вообще не имеющий решения. В это случае все зависит от воли случая.
Статистика
Кстати о статистике. Сегодня посмотрел, за все время афльа-теста было сыграно более 600 игр. В основном это @ultrastod и @slavjanka. Спасибо им за это огромное. А еще я добавил личную статистику на сайте. Потом добавлю общую, что бы было интереснее.
Можно посмотреть свою статистику. Сейчас она почти пустая. Во время альфа-теста выигрыши не выплачивались, потому в статистике они не отображаются. Возможно после бета-теста я всю статистику обнулю.
Перезапуск игровой сессии
Добавил возможность перераздать расклад и переиграть его. В этом случае сумма выигрыша уменьшается на две трети. Если повторить попытку, то выигрыш уменьшится еще на две трети. И так далее. Переиграть можно только незаконченную игру. После получения выплаты переиграть игру уже не получиться.
Длительность игровой сессии
Забыл сразу добавить. Игровая сессия длится 4 часа. Потом игровой бот принудительно завершит игровую сессию. Игра считается проигранной и все заблокированные средства будут переведены в игровой банк. Это сделано потому, что ставка и сумма потенциального выигрыша резервируются на @payme-reserved аккаунте. Что бы избежать ситуации, кода ты выиграл, а в банке к тому времени не осталось средств для выплаты выигрыша. Что бы зарезервированные средства не зависали там на долго, приходится принудительно завершать игру. 4 часа думаю достаточно, что бы завершить игру. Не шахматы же. Хм.
Бета-тест
Пока все. Пока игра будет в бета-тесте. Потому сильно не пинайте за баги. Буду добавлять всякие всякости, фиксить баги. Выплачивать баунти. Как то так.
В планах
- устранять баги
- работать над стабильностью игры
- добавить отмену хода
- добавить живую ленту голоса с боку, в виде списка актуальных комментариев под постами. Что бы играть и не пропускать актуальные темы на голосе.
- добавить общую статистику топовых игроков.
- как то сделать покрасивее дизайн игры, в этом я слаб
- адаптировать для телефона, что бы играть по дороге на работу
- ну и другие хотелки, которые появятся по ходу игры
@bitwheeze, замечательно, продолжим тесты 😊
@bitwheeze, добрый день! Только собралась писать пост , как я пыталась зарегиться на странице новой "косынки", а тут, глядь, все новости выложены. Форма изменилась, че-то исчезло, че-то появилось, че-то будет. Пока сыграла 1 игру и выигрыш получила! Очень приятно, спасибо! Но какие муки были при регистрации!!! Короче, никак мой логин не принимали с Голоса - то начаться должен с буквы, то slavjanka есть, но это не вы... Ёлки, да че надо? Придумала новый, в результате мой аккаунт вековой исчез начисто, появился новый блог, где ни одной "пока ещё" записи. Давай крутиться, удалятсья, искать себя. И все сделано. Форма косынки появилась, но без подробностей по статистике и нет разрешения - как-то я проскочила мимо... Продолжу тестирование и, если чё - сообщу. Заказывала возврат хода. Если можно. Спасибо за труды! Успехов!
@slavjanka, с трудностями при логине лучше обращаться к @lex, под этим постом наверное https://golos.id/ru--golos/@lex/golos-app-i-funkcional-oauth-signer-rasshirenie-uvedomlenii-i-prochie-pravki
Мне лично странным показалось
Но я рад, что в конце концов все получилось 👍️
@bitwheeze, .хорошо, буду к нему обращаться...да просто исчез мой постоянныйй блог и появился новый, пустой, где нет ни одной записи, всё по нолям. Будто новый человек пришёл.... Но всё вернулось на круги своя!.Жду обновлений, дополнений! Продолжаю тестировать!
@bitwheeze,
@ultrastod, да, я видел, возможно просто уберу крестик и добавлю кнопку "Показать статистику" или что то такое наверное. Или добавить после закрытия окна по крестику показ детального результата игры. Сколько ходов сделано, какая ставка была, какой выигрышь итп.
@bitwheeze, и к утру статистика поломалась. Я больше играю сложные уровни - теперь данные по ним лежат в случайных, а в сложном всего 8 игр.
@ultrastod, да, я вчера перед сном поменял местами уровни сложности в диалоге старта игры. А в статистике забыл поправить . Я поправил сегодня , должно теоретически все верно отображаться.
@bitwheeze, на 113-ом ходу произошла аномалия. А дело было близко к выигрышу :(
Играю с акка @id-quantpleasers
продолжила, разобрав сложенное и вижу там, что обе стопки теперь бубновые ). Забавно. Я не помню, какая из них червовая была. Кажется, последняя.
@lllll1ll, почему то на вашем ходу завис игровой сервер и непонятно почему. Интересно. Буду разбираться
@bitwheeze, похоже я там не всё поломала и получилось сейчас чисто на Среднем уровне сыграть.
@lllll1ll, сыграли то вы ок, но выплат не было, так от вас через блокчейн не было отправлены ходы. Я думаю все дело в СГ аккаунта, которым вы играете. У вас ее там всего 1 Голос, и этого недостаточно и судя по всему в игрушке эта ошибка не отслеживается! 😎 Вот где собака зарылась!
@bitwheeze, внизу мой коммент с новым событием. Сейчас пополню СГ. я выше предполагала про бендвич.
@bitwheeze, так я там ещё до 132 походила, а вот на новой игре он и завис.
@lllll1ll, а пробовали F5 нажать. Часто помогает. Такой эффект еще ни разу не наблюдал.
@bitwheeze, не пробовала. Начала новую игру, но расклад мне не выдали. Сейчас попробую с F5.
И ещё: как-то нестабильно там всё держится. При каждом клике дёргается. Может это и браузера проблемы, потому что в первой версии тоже так иногда случалось.
и с F5 расклад не выдали.
А с бендвичем это не может быть связано? На акке СГ почти нет.
@lllll1ll, спасибо за баг репорт, был баг, я его поправил. игровой бот завис на вашем ходу. 🤔 Как так получилось неясно. Судя по всему новый сервис, который недавно анонсировал @lex и через который отправляются ходы в блокчейн завис или просто какое то время не отправлял транзакции в блокчейн. По идее, ходы отправляются в блокчейн, если их в буфере браузера накопится минимум 5 штук. В вашем случае они долго не отправлялись в блокчейн. В блокчейне было только 28 ходов записано, а вы сделали 133. Ну а потом просто все рассинхронизировалось. Был отправлен неверный ход и бот завис на нем, так как не знал куда положить карту. 😂
Игра вся происходит на игровом сервере, в браузере только отображается результат. Видимо у вас соединение с интернетом или по крайней мере до сервера слабое. Дома у меня то все отлично работает, ничего не дергается. А сегодня на работе тоже было с тормозами и как то все дергано происходило. Буду работать над этим.
@bitwheeze, дёргается во всех браузерах, но примерно до 50-го хода. Потом успокаивается. Номально поигралось с Опера. Без накладок всяких. Так что в одном браузере не стоит с двух акков автоизоваться.
Не понравилось, что до конца приходится доигрывать, когда уже всё ясно с победой.
И со статистикой, похоже, беда: решила Случайный расклад, о выигрыше сообщено, а в статистике не отобразилось. Это последняя игра на 143 хода.
@lllll1ll,
Скорее всего дергается пока картинки всех 52 карт не загрузятся в кэш браузера. Я думаю над этим
Вообще то там уже сделана автосборка. Включается автоматическ если нет закрытых карт в нижних семи стопках и нету карт в колоде, в этом случае пасьян собирается уже сам.
Возможно просто не успело дойти до игрового бота. Все ходы отправляются через блокчейн, только им доверяет бот, потому прежде чем закрыть игру бот ждет пока последние ходы дойдут по цепочке блоков до него :) Потому может получиться так, что вы получили сообщение о победе, но бот об этом не знает и в статистике этого еще не отображено.
Секунд 6 надо наверное, что бы до него дошло. Тогда же и перевод выигрыша делается и статоистика обновляется.
@bitwheeze,
нормально работает и в Вивальди. Проблем не наблюдала. Квадратом играю только с Вивальди.
@bitwheeze,
@ultrastod, да, добавлю более подробный текст с сообщением об ошибке Поленился. Текст сейчас в консоль разработчика выводится. По идее
@bitwheeze, а вот сейчас ещё интереснее:
после выигрыша следующую, на сложном уровне, проиграла. Новую начала на Среднем. Тоже там произошёл сбой по мастям, когда брала из прикупа: лёг пиковый Король, вместо какой-то красной маленькой(не помню) и я сделала F5, но мне просто выдало новый расклад и с ним я доигралась вот до этого, когда ставила 2 бубен на бубнового туза, оттуда слетел на двойку пиковый туз.
@lllll1ll, Ну думаю все из за рассинхронизации. Сам клиент в браузере туповатый, он надеется на сервер. Попробуйте, с большей СГ. Если все ходы будут отправляться в блокчейн, то F5 должно помогать. Сейчас же у вас в блокчейне черти что творится )) Надо будет поправить.
@bitwheeze, СГ уже есть. Но на первой игре уже повторилось с заменой мастей. После F5 опять выдан новый расклад. Это может быть всё оттого, что и основной аккаунт, с которого сейчас пишу и игра открыты в одном браузере?
@lllll1ll, вряд ли, я думаю просто в базе данных все испортилось. Там несколько игр зависшие. Я их удалил. Попробуйте еще раз. Если будет зависать, то придется вам ждать. Видимо маловато СГ для игрушки. У меня СГ полно, потому все работало всегда. Буду думать, как быть. Постараюсь в ближайшее время поправить. Почему карты портятся - загадка честно говоря. Хотя идеи есть.
@bitwheeze, с другого браузера после разрешения доступа ничего не происходит. Не аторизует. Сейчас перейду на акк @quadrate, с которого играла раньше. Там СГ нормальная
@lllll1ll, может баг в сервисе, @lex надо может быть сообщить. В чем это выражается? Ничего не происходит где, в игре или в авторизационном сервисе? Пробовали перезагружать по F5?
@bitwheeze, всё пробовала, но похоже это проблема браузера Вивальди. В Опера получилось. Играю уже с квадрата.
@lllll1ll, боже, вивальди. В первые слышу 😂
@lllll1ll, надо снова из игры попробовать запустить процесс авторизации. Там таймаут стоит. Если не успеть авторизировать, то надо просто попробовать снова нажать кнопкеу Войти. Должно сработать. У меня вроде бы работало с разных браузеров.
@bitwheeze,
Да, надо переформулировать, речь то о том что закрыв вкладку браузера с приложением/игрой (будучи авторизованным через GolosSigner) приложение не будет иметь доступа в отсутствии пользователя. Ну там отправлять донаты и т.д...
@lex, всё нормально! Спасибо за донаты!
@lex, да, а то я сначала понял это как "Если закрыть вкладку с приложением, доступ пропадет".