Предложения о покупке. Новый функционал в КриптоКотиках

Разработчики тестируют новый смарт-контракт, который позволит пользователям делать предложения о покупке любого, понравившегося котика.  

Безопасность – это один из краеугольных камней приложений на блокчейне. Команда Dapper Labs понимает это и уделяет обеспечению безопасности много внимания. Также они приглашают членов сообщества участвовать в  программе Bug Bounty и помочь искать уязвимости в смарт-контракте нового функционала игры.

 

Что вы должны знать о КриптоКотиках:

КриптоКотики – это самая популярная игра в блокчейн сети Ethereum. Здесь игроки могут собирать и разводить очаровательных цифровых котят. Она запущена в ноябре 2017 года и на данный момент родилось более миллиона котят. За пределами бирж, смарт-контракты КриптоКотиков – наиболее часто используемые контракты сети Ethereum. Игроки в течение года продали котиков более чем $25 млн, используя более трёх миллионов транзакций смарт-контрактов.

 

Что вы должны знать о новом функционале в КриптоКотиках?

Новая функция “Offers” позволит игрокам делать предложения по покупке любого криптокотика.

Эта функция добавляет один официальный смарт-контракт, the Offers contract и поддерживается функцией approve() Core контрактом КриптоКотиков при принятии действительного предложения.

В любой успешной сделке с предложениями есть пять сторон: тот, кто делает ставку; владелец криптокотика; the Offers контракт; the CryptoKitties Core контракт и COO.

Чтобы сделка была успешной: покупатель создаёт своё предложение, а владелец кота должен его принять. Владелец не взаимодействует с Offer контрактом, но может вызвать функцию approve() у Core контракта, чтобы передать своё токен.

После того, как предложение принято, COO выполняет условия предложения, после нескольких проверок. Если предложение не одобрено для этого токена, то транзакция не будет выполнена.

 

Дальше текст будет более понятен тем, кто разбирается в программировании, но всегда можно на него ссылаться, если что-либо не понятно в работе новой функции.

Критерий выполнения

  • контракт предложения одобрен для этого токена
  • предложение принято владельцем, имеет флаг TRUE в базе данных КриптоКотиков
  • котик не выставлен на аукцион
  • время предложения не истекло

 

Определения

  • Expiry – время действия предложения
  • Offer Cut – максимальный процент значениея msg.value, отправленный с транзакцией createOffer, зависит от результата предложения
  • Unsuccessful compensation – фиксированный сбор в случаях, когда срок действия предложения истёк
  • Роли
    • Bidder – покупатель, создавший предложение
    • Owner – владелец котика, получивший предложение
    • CEO – возможность заменить CEO, COO, CFO, LostAndFound
    • COO – возможность настройки параметров конфигурации и выполнения предложения
    • CFO – способность получать сбор от Offer Cut
    • LostAndFound – вывод средств, которые не были отправлены на другие адреса

 

Условное депонирование и структура сборов

В целях упрощения платежей при массовом количестве сделок, все возможные взносы объединены в один, который называется “offer cut”.

Offer cut оплачивается авансом покупателем. СК определяют политику возврата суммы покупателю, когда предложение выполнено, отменено или истечёт его срок.

Предложение заключается в смарт-контракте и содержит идентификатор токена, offer cut (S),  сбор при неудачном предложении (flat), в дополнение к общей стоимости предложения (T) (включая комиссионные и сумму, которая поступает владельцу)

  • T – значение, отправленное с транзакцией createOffer, общая стоимость предложения, отправленная покупателем
  • S – offer cut, настраиваемый
  • P – предложение владельцу токена, сумма которую тот получит, если предложение успешно выполнено P = T / (1+S)
  • flat – компенсация при неудачных предложениях (истёкший срок или оверставка), настриваемая COO

 

Что получает каждая сторона в каждом случае (успех, отмена, истёкший срок/оверставка)

Случай Успех Отмена Оверставка/истёк срок
Owner P 0 0
Bidder 0 T – S * P T – flat
CFO T – P S * P flat
Sum T T T

 

Более подробно о структуре контракта и его определениях вы можете прочитать на гитхаб странице контракта. Там описаны случаи, когда предложение перебито более высоким предложением, описание настроек и ответственности сторон, функции заморозки и сегрегирования средств.

Также там была анонсирована Bug Bounty программа для сообщества, которая будет обеспечивать вознаграждение пользователям, нашедшим какие-либо баги в коде. На данный момент, период тестирования нового смарт-контракта закончился(14-18 ноября), посмотрим на развитие программы в дальнейшем.

 

Подписывайтесь на наш твиттер (@kotobaza_co) и телеграм канал (t.me/kotobazaco) чтобы узнавать о новых новостях из мира КриптоКотиков.