[DRAFT] Asteria by TxPipe: a Hackathon to showcase the capabilities of the UTxO model
current project status
Current Project Status
in_progress
Total
amount
Received
₳32560
Total
amount
Requested
₳191572
Total
Percentage
Received
17%
₳32560 Received out of ₳191572
Solution
A hackathon / code challenge, incentivized by ADA rewards, that showcases the capabilities of the UTxO model by participating in a compelling on-chain strategy challenge.
Problem
![Asteria: An eUTxO bot challenge in space](https://cardano.ideascale.com/a/attachments/embedded-files/asteria-banner-294ad9/png) The UTxO model is a powerful paradigm but also a very complex one. It is one of the main barriers for adoption of developers coming from account-based ecosystems.
Impact alignment
Feasibility
Value for money

This proposal was approved and funded by the Cardano Community via Project F11: Cardano Open: Developers - technical Catalyst funding round.

[SOLUTION] Please describe your proposed solution.

Executive Summary

  • Asteria is an open hackathon, a bot challenge that leverages the eUTxO model.
  • Players participate by moving a ship across a 2D grid and gathering resources. ADA rewards are available to players that reach the center of the gird.
  • All interactions from participants happen through on-chain transactions, forcing the developer to learn about the UTxO Model.
  • With ADA reward incentive and a compelling experience, we hope to attract developers from both inside and outside of the Cardano ecosystem

Mechanics

In this bot challenge you compete by moving a ship (your bot) through a 2D grid. The ship that reaches the center is allowed to collect the rewards.

Ships are implemented as UTxOs with a datum holding a pair of (x, y) coordinates that represent their position in the 2D grid. To move a ship, a transaction must consume the UTxO and create a new one with holding the new position.

Asteria Grid

Movement of the ships is constrained by a Space-Time on-chain script that limits their velocity. Strictly speaking, the max distance that a ship can move in any given transaction has a constant upper bound. Distances are defined using [Manhattan distance] to simplify the math.

Aster Move Tx

Movement of the ships is also constrained by a fuel token that is required for any change in position. An specific amount of fuel is required per distance unit. The lack of the required fuel amount will block the movement of the ship.

Asteria Gather Tx

To accumulate fuel, ships must gather these tokens which are distributed randomly across the same grid. To gather a fuel token, your ship needs to be in the same coordinates as the fuel.

To create a ship, a participant must mint the corresponding NFT from the valid policy id. A minimum amount of ADA will be requried for the mint. This ADA used to mint the ships will be increment the rewards locked for the winner. The initial position of the ship is decided by the player but is contrainted to the external boundary of the grid.

A unique UTxO will be place at the center of the grid to hold the rewards for the winner of the challenge. To claim rewards, a ship must be located at the center of the grid. Each claim is allowed to collect 1/2 of the total rewards.

[IMPACT] Please define the positive impact your project will have on the wider Cardano community.

  • it promotes the adoption of the UTxO model in a fun and compelling way

  • incentivized participation will attract developers from outside the ecosystem

  • on-chain activity will increase, generating fees for SPOs

  • Hackathon rewards will go to developers

    [CAPABILITY & FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?

  • TxPipe has experience developing on-chain contracts such as the one required for this project

  • TxPipe has a great track-record of past Catalyst proposals.

    [Project Milestones] What are the key milestones you need to achieve in order to complete your project successfully?

On-chain validators

Outputs

  • a set of Aiken on-chain validators to enforce the rules of the challenge
  • documentation describing the rules of the challenge
  • example transactions executed on preprod demonstrating different interactions

Acceptance Criteria

  • a technical reviewer / developer is able to understand the rules of the challenge
  • example transactions can be verified on-chain

>Map generation

Outputs

  • a script that can be used to generate random 2D maps for the challenge
  • a script that can be used to submit the map on-chain
  • an initial map for the preprod network
  • a document explaining how to explore the on-chain map

Acceptance Criteria

  • a technical reviewer / developer can use the scripts to generate their own maps
  • transactions representing the map can be verified on-chain

>Frontend

Outputs

  • a web frontend to serve as entry-point for the challenge
  • a basic map visualizer to show the locations of the ships in real-time
  • detailed instructions on how to participate of the challenge

Acceptance Criteria

  • a developer can understand how to participate by browsing the Hackathon frontend
  • any user can appreciate the status of the game by looking at the visual map

>Mainnet

Outputs:

  • the official challenge publicly available on mainnet
  • all rewards from sponsors deposited on-chain
  • communication of the challenge through all social media channels available to TxPipe

Acceptance Criteria

  • a technical reviewer / developer can participate of the challenge using mainnet
  • there's reasonable awareness of the challenge on social media
  • sponsor rewards can be verified on-chain

>Final Report

Outputs

  • a detailed report showing participation metrics (devs, activity, progress, winners) so far
  • a video recording summarizing the process and results of the whole project
  • publicly available source-code containing all artifacts custom-built for the challenge

Acceptance Criteria

  • report activity can be verified on-chain by sampling procedures

  • a technical reviewer / developer is able to assess the extent of the source code with reasonable accuracy

    [RESOURCES] Who is in the project team and what are their roles?

  • Santiago Carmuega, TxPipe: Backend Developer - Github

  • Federico Weill, TxPipe: Community Manager/Technical Writter - Linkedin

  • Lucas Rosa, CF, TxPipe : Aiken developer - Github

  • Kasey White, CF, TxPipe: Aiken developer - Github

  • Rodrigo Suaya, TxPipe: Developer Relations Manager - Linkedin

  • Paulo Bressan, TxPipe: FrontEnd Developer / Graphic Designer- Github

  • Manuel Gunther, TxPipe: Contract Auditor - Github

    [BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources.

Software Development

  • Aiken developer: 2 FTE x 2 months = 88,889 ADA
  • Backend developer: 1 FTE x 2 months = 44,444 ADA
  • Frontend developer: 1 FTE x 1 months = 11,111 ADA
  • Technical writer: 1/2 x 2 months = 8,333 ADA
  • Contract auditor: 2 FTE x 1 month = 44,444 ADA

Marketing & Communication

  • Graphic designer: 1 FTE x 1 months = 8,333 ADA
  • Community manager: 1/4 FTE x 3 months = 6,250 ADA
  • Developer Relations Manager: 1/2 x 3 months = 16,667 ADA

Infrastructure

  • Cloud hosting: 1 x 4 months = 2,2222 ADA

The total budget is: ₳ 230,693, which exceed the maximum amount for the proposals in this category. The exceeding ₳ 30,693 will be supplied directly by TxPipe.

[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?

The bulk of the budget falls under the software development category. TxPipe has experience in the field, providing reasonable value for money. The hourly rates are defined using fair market prices. The estimation for the level of effort takes into account all of the optimizations that our team is capable of providing after years of experience developing software solutions in the Cardano ecosystem.

Avis des conseillers communautaires (1)

Comments

Monthly Reports

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3 min 24 s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4 min 3 s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3 min 48 s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2 min 16 s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3 min 14 s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3 min 19 s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4 min 59 s
    Darlington Kofa
0:00
/
~0:00