[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.
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.
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.
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.
More information
If you're interested in learning more about the project, even outside the scope of the Catalyst proposal, please bookmark our git repository. We'll make sure to maintain the README updated with relevant information and news.
[IMPACT] Please define the positive impact your project will have on the wider Cardano community.
Educate developers about the UTxO model
This bot challenge is a compelling and fun way to introduce developers to benefits and complexity of the UTxO model. This knowledge will lower the entry barrier for these developers to start building Cardano dApps.
Attract developers from other ecosystems
By incentivizing participation through rewards, this challenge will attract developers from inside and outside the ecosystem, increasing the number of developers with technical knowledge about Cardano.
Fund developers directly
The beneficiaries of the rewards of this challenge will be developers. By funding developers directly, we foster a community of specialized builders with the potential to continue building in Cardano.
[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 is an active member of the Cardano ecosystem
TxPipe has been developing open-source tools for the Cardano ecosystem for over 2 years and we're not going anywhere. Evidence of our commitment can be found by evaluating the continuous activity of our public code repositories.
Experience developing in the Cardano ecosystem
TxPipe has helped developed several dApps for the Cardano ecosystem. This experience allows us to evaluate the feasibility of the project and its potential benefit from a developer's perspective.
Succesful Catalyst proposals
We have successfully completed 2 prior Catalyst proposals. This may serve as evidence that our team has the required capabilities to fulfill these type of projects.
Development process will be public and open-source
Both the output and the development process will be public and open-source. This approach provides an easy way for the Catalyst team and the Cardano community to evaluate the progress at each step of the process.
[Project Milestones] What are the key milestones you need to achieve in order to complete your project successfully?
On-chain development
This milestone is about building the smart validators that will govern the transactions of the challenge that are executed on-chain.
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 generator development
This milestone is about developing an algorithm to create fairly distributed maps of resources to be used by the challenge.
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 development
This milestone is about developing a web frontend that allows participants to enter the challenge and visualize the overall progress.
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 release
This milestone is about auditing the on-chain contracts and releasing the official challenge on the Cardano mainnet network.
Outputs:
- an report of the audit process of the on-chain code describing the findings and applied changes.
- 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
>Completion Report
This milestone is about wrapping up the project and providing relevant insights for the Catalyst team and larger Cardano community to evaluate the result of the proposal.
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?
Active Development (Blue Team)
- Santiago Carmuega, TxPipe: Developer Relations Manager - Github
- Federico Weill, TxPipe: Community Manager - Linkedin
- Rodrigo Suaya, TxPipe: Project Manager - Linkedin
- Florencia Luna - TxPipe: Technical Writer - Linkedin
- Paulo Bressan, TxPipe: Backend Developer - Github
- Rodrigo Santa Maria - Frontend Developer - Github
- Manuel Gunther, TxPipe: Aiken Developer - Github
- Franco Luque, TxPipe - Aiken Developer - LinkedIn
Code Audit (Red Team)
- Lucas Rosa, CF, TxPipe: Blockchain developer - Github
- Kasey White, CF, TxPipe: Blockchain developer - Github
Additional Members
-
We'll recruit a UI / UX designer with experience in responsive web design and pixel art graphics (not mandatory)
[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources.
FTE = Full-time equivalent
Total budget = ₳ 191,572
Software Development
- Aiken developer: 2 FTE x 2 months = ₳ 91,429
- Backend developer: 1 FTE x 1 month = ₳ 22,857
- Frontend developer: 1 FTE x 1 month = ₳ 11,429
- Technical writer: 1/2 x 2 months = ₳ 8,571
- Contract auditor: 1 FTE x 1 month = ₳ 22,857
Marketing & Communication
- Graphic designer: 1 FTE x 1 month = ₳ 8,571
- Community manager: 1/4 FTE x 3 months = ₳ 6,429
- Developer Relations Manager: 1/2 x 3 months = ₳ 17,143
Infrastructure
-
Cloud hosting: 1 x 4 months = ₳ 2,286
[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 extensive experience in the field, allowing it to provide good 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.