Sui Dynamic NFT для улучшения игрового процесса
Вот два коротких прототипа игровых пре-альфа, которые демонстрируют скорость, масштабируемость и богатые взаимодействия, которые стали возможными благодаря изменчивым, выразительным NFT. В первый прототип, Sui Monstar , уже можно играть.
Sui и игры
Игры как одна из первых вертикалей для быстрого внедрения веб3 — популярная тема для обсуждения. Тем не менее, существующие веб-игры, возможно, рассматриваются скорее как инвестиции, чем как игры, поскольку на удержание пользователей влияют рыночные условия, а не сами игры.
Так чего же не хватает в существующих играх web3? Во-первых, успешная игра web3 должна предлагать опыт, полностью отличающийся от любых игр web1 или web2. Чтобы по-настоящему сиять, игры web3 должны осмысленно использовать преимущества полностью сетевых, динамических и компонуемых цифровых активов с проверяемым правом собственности. Эти функции могут обеспечить невероятный и творческий игровой процесс и экосистемы, создавая огромную ценность и вовлеченность.
Во-вторых, для отличных игр требуются опытные разработчики и строители игр — люди, которые знают, как создавать игры и создавать увлекательные, ориентированные на пользователя впечатления. Существует множество талантов, стремящихся создать Web3, но их творчеству мешают ограничения платформы и трудности изучения нового языка программирования.
С Sui мы считаем, что разработчики игр не должны быть ограничены производительностью платформы или сборами, и они должны иметь возможность создавать любые впечатления, которые они себе представляют. Важно отметить, что разработка отличных игр не должна требовать, чтобы разработчики игр также были экспертами в написании смарт-контрактов. Скорее им следует сосредоточиться на том, в чем они хороши, — на создании крутых игр для геймеров.
Смарт-контракты по желанию
Движение просто потрясающее: оно безопасное, выразительное и невосприимчивое к повторному входу; но опыт перемещения не требуется для создания значимого опыта на Sui. Чтобы разработчики и создатели могли легко начать использовать Sui для игр, мы будем выпускать игровые SDK, которые охватывают распространенные варианты использования и функции, связанные с игровыми активами.
Как мы это сделали
Эти прототипы, созданные студией разработки игр Geniteam, используют как Unity SDK, так и Sui API .
Разработчики Geniteam, которые работали над этим сотрудничеством, не являются ни разработчиками смарт-контрактов, ни разработчиками Move. На основе их отзывов мы создали модель данных и поделились простыми API. С помощью этих API-интерфейсов Geniteam смогла создавать полностью внутрисетевые NFT, которые могут изменяться, владеть другими активами в сети и свободно передаваться другим приложениям.
Это доказательство концепции сборки предназначено для демонстрации возможностей разработчиков игр, разблокированных с помощью Sui. Мы с нетерпением ждем возможности увидеть, что придумают творческие умы в игровом сообществе, когда мы представим дополнительные возможности в ближайшие месяцы. После исправления каждой ошибки мы получили представление о том, что разработчики игр ищут в SDK. Sui стремится создавать SDK, доступные для разработчиков всех уровней с разной степенью знаний смарт-контрактов.
«Работа с Sui SDK прошла очень гладко. Эти SDK было легко понять и внедрить. Команда Mysten Labs не уклонялась от наших отзывов о внедрении SDK. Их взаимодействие с нашей командой было безупречным, и это привело к тому, что вызовы API стали очень быстрыми, что привело к минимальному времени загрузки». — Генитим
Вот примеры API-интерфейсов Geniteam, которыми мы поделились, а также смарт-контракты для создания и обновления монстров (в прототипе они называются MonStars).
API Move Call — создать Monstar
{"отправитель": " {{владелец}} ","packageObjectId": "0x2","модуль": "Генитим","функция": "создать_монстра","аргументы": ["0x {{идентификатор_игрока}} ","0x {{id_фермы}} ","0x {{pet_monsters}} ",{{имя_монстра}} ,{{monster_img_index}} ,{{порода}} ,{{monster_affinity}} ,{{monster_description}}],"gasObjectId": " {{gas_object_id}} ",«ГазБюджет»: 2000 г.}
API Move Call — Monstar обновлений
{"отправитель": " {{владелец}} ","packageObjectId": "0x2","модуль": "Генитим","функция": "update_monster_stats","аргументы": ["0x {{идентификатор_игрока}} ","0x {{id_фермы}} ","0x {{pet_monsters}} ","0x {{monster_id}} ",{{уровень_монстра}} ,{{уровень_голода}} ,{{уровень_привязанности}} ,{{уровень_приятеля}}],"gasObjectId": " {{gas_object_id}} ",«ГазБюджет»: 2000 г.}
API Move Call — Чтение данных Monstar
ПОЛУЧИТЬ /object_info?objectId= {{monster_id}}
Смарт-контракт: Monstar
struct Monster has key, store { id: VersionedID, monster_name: String, monster_img_index: u64, порода: u8, monster_affinity: u8, monster_description: String, monster_level: u64, monster_xp: u64, голод_уровень: u64, уровень_привязанности : u64, уровень_приятеля: u8 , // Идентификатор примененной косметики в этом слоте apply_monster_cosmetic_0_id: Option<ID>, // Идентификатор примененной косметики в этом слоте apply_monster_cosmetic_1_id: Option<ID>, }
// Создадим монстра и добавим его в общую коллекцию монстров на Ферме порода: u8, monster_affinity: u8, monster_description: vector<u8>, ctx: & mut TxContext ) { let monster = create_monster_( имя_монстра, индекс_изображения_монстра, порода, сходство с монстром, описание_монстра, ctx ); // Проверяем, правильная ли это коллекция assert!(*&farm.pet_monsters_id == *ID::id(pet_monsters_c), EMONSTER_COLLECTION_NOT_OWNED_BY_FARM); // Добавляем в коллекцию
Collection::add(pet_monsters_c, монстр); } // Создает базовый объект - монстр _ _ _ _ _ _ _ : TxContext::new_id(ctx), monster_name: ASCII::string(monster_name), monster_img_index, порода, monster_affinity, monster_description: ASCII::string(monster_description), monster_level: 0, monster_xp: 0, голод_уровень: 0, привязанность_уровень: 0, приятель_уровень: 0, apply_monster_cosmetic_0_id: Option::none(), apply_monster_cosmetic_1_id: Option::none(), } }
Смарт-контракт: обновить Monstar
// Обновить атрибуты общедоступного развлечения монстра update_monster_stats( _player: & mut Player, _farm: & mut Farm, _pet_monsters: & mut Collection::Collection, self : & mut Monster, monster_level: u64, голод_уровень: u64, привязанность_уровень: u64 , buddy_level: u8, _ctx: & mut TxContext ) { self .monster_level = monster_level; self .hunger_level = голод_уровень; self .affection_level = привязанность_уровень; себя.buddy_level = уровень_приятеля; }
Protype 1 Sui Monstar
Первый прототип — Sui Monstar , игра-симулятор домашних животных.
- Играйте, кормите и одевайте своих собачьих и кошачьих друзей.
- Развивайте своих питомцев с помощью рун родства!
- Украсьте свою ферму.
- Повышайте уровень своей фермы и питомца с помощью игрового процесса и взаимодействий.
В Sui Monstar ловите симпатичных монстров и наблюдайте, как они приближаются к вам, когда вы кормите их и взаимодействуете с ними. Эти монстры, ваша ферма и аксессуары — все это NFT в сети. По мере прохождения игры такие атрибуты, как здоровье, дружелюбие и аксессуары, обновляются в реальном времени.
Это еще не все, так как ваш Монстар становится сильнее, вы можете использовать его, чтобы помочь вам в бою… в следующем прототипе>>>
Предстоящий Protype 2 Sui Battler
Скоро мы выпустим Sui Battler, где ваши милые монстры превращаются в воинов!
- Сражайтесь с волнами врагов и получайте опыт и бонусы.
- Получите помощь от собственного питомца в Sui Monstar.
- Развивайте своего питомца в Sui Monstar и открывайте специальные боевые способности.
- Ваши монстры записывают историю вашей битвы в сети!
Почему это важно
- Изменяемые NFT означают более богатый и творческий игровой процесс. Больше никаких сложных обходных путей или сжигания NFT, потери всех ваших данных и истории для «модификации» NFT.
- API-интерфейсы, ориентированные на удобство использования, упрощают создание Sui.
- Непревзойденная масштабируемость и мгновенные расчеты означают, что изменения, статус активов, баланс и права собственности могут происходить мгновенно во время игры. Больше никаких задержек или обходных путей.
- Творчество – это предел. Создатели могут свободно использовать свои активы в различных приложениях и играх.
- Полностью встроенные компонуемые NFT с богатой историей делают возможным следующее поколение игровых экономик.
Дальнейшее чтение
- Ознакомьтесь с API -интерфейсами Sui .
- Узнайте об объектах Sui .