Last updated a week ago
While Cardano is the ideal platform for web3 indie game developers, there are currently no tools for the Godot game engine that provide easy access to minting functions and using digital collectibles.
This is the total amount allocated to NMKR SDK for Godot. 2 out of 4 milestones are completed.
1/4
Project setup and initial integration
Cost: ₳ 20,000
Delivery: Month 1 - Sep 2024
2/4
Full NMKR API endpoints implementation
Cost: ₳ 20,000
Delivery: Month 2 - Oct 2024
3/4
Real-World use case
Cost: ₳ 20,000
Delivery: Month 3 - Nov 2024
4/4
Example game released
Cost: ₳ 20,000
Delivery: Month 4 - Dec 2024
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
We will create a Godot plugin that is a wrapper of the NMKR API, to create more integrated minting experiences and to take advantage of the multi-asset ledger to easily implement digital collectibles.
No dependencies.
The project will be fully open source and provided, under the MIT License, in a publicly accessible repository on GitHub.
This applies to both the Godot plugin and the example applications, including a game, that will be distributed in the same repository.
Our proposal involves developing a Godot plugin that interfaces with NMKR's API so that game developers can take advantage of the multi-asset ledger feature of the Cardano blockchain and just use digital collectibles in their games.
The open-source Godot game engine is increasingly becoming the popular choice for indie game developers. By creating this SDK, we can help these developers integrate Cardano-based web3 gaming experiences more easily into their productions.
The NMKR Studio API is an enormously powerful tool that is designed not only for easy NFT minting and payment processing, but also for wallet verification, access, and management. Using our plugin, Godot developers have easy access to all the endpoints provided by the NMKR Studio API: https://studio-api.nmkr.io/swagger/index.html
We will also build open-source demos to show how to use the SDK, including an example game. This ensures we support a collaborative environment where developers can work together and contribute.
Credits to
We want to have the plugin available both on GitHub and on the Godot assets library, making it more accessible to developers. We aim to work with NMKR to achieve this. In doing so, we'll make the "Building on Cardano" process simpler for developers and improve the overall usability of the Cardano ecosystem.
The project already went through an in-depth briefing and planning phase, where we conducted a comprehensive review of NMKR's API and Godot's specific requirements. Using this information, we developed a detailed project timeline, identifying key deliverables and deadlines.
Compatibility
The NMKR SDK for Godot plugin will be written using Godot's main scripting language, GDScript. This will ensure full compatibility for every user, as GDScript is always available with any Godot build. This means that users developing with different languages, like C#, can still use the plugin in their projects.
We aim to achieve full compatibility with all Godot versions from 4.x and above.
Ease of use
Once the plugin is activated, a new custom node named "NMKR" will be available everywhere in your projects. Just reference it in your script to access all of its features, as you do for any other internal Godot nodes.
Flexibility
To maximize the consistency of the NMKR SDK for Godot, all the required data are passed with function parameters, and the result will always be provided as a dictionary. However, depending on the developer's needs, there are several different ways to use the functions provided by the plugin:
1) Async method
Each function will emit a specific signal on completion. For async access, the developer will simply connect a callback to the signal.
2) Sync method "A"
Most scenarios will require accessing several NMKR endpoints in sequence. Developers will use the desired function as a coroutine and await its completion, assigning the result to a variable.
3) Sync method "B"
The developer can also call the desired function and await either its specific signal (see method 1) or the generic signal emitted on completion of any function, and then retrieve the result.
Documentation
Godot's internal documentation system is extremely powerful and always available directly inside the editor, without the need to look up on the Internet what you need to know about a specific component or function: just CTRL (or CMD on Mac) + click on a function name, and the corresponding documentation will be opened in the editor.
We want to leverage this system to provide clear, correct, and concise documentation for every aspect of the NMKR SDK for Godot. While all the documentation will be redacted by the main developer while building the plugin, we will ensure that the quality will be top-notch by asking a professional to review all the written text.
Example applications
Another important aspect of any high-quality developer tool is the inclusion of tools and easy-to-understand examples built with it. For this reason, we decided to include three different example applications:
Conclusions
As the blockchain gaming space evolves, the need for robust and accessible tools becomes increasingly evident. Our project, a Godot plugin for the NMKR API, is designed to bridge this gap, offering Godot developers a seamless integration with the Cardano blockchain through NMKR’s powerful services.
Previously, Project Catalyst Fund 10 recognized the potential of blockchain integration in gaming by funding a similar project for the Unity engine. This initiative paved the way for Unity developers to engage with blockchain technology, demonstrating the demand for such tools within the gaming community.
Building on this momentum, our project aims to extend these capabilities to the Godot community. Godot’s open-source nature aligns perfectly with the decentralized ethos of blockchain, making it an ideal platform for this endeavor. The engine’s flexibility, coupled with its community-driven development model, ensures that the plugin can be refined and expanded to meet the evolving needs of developers. By developing the NMKR SDK for Godot, we aim to lower the barrier to entry for game developers looking to incorporate blockchain elements into their games. This plugin will enable Godot developers to access NMKR’s services directly within the engine, streamlining the development process. Also, we can foster an inclusive environment where more developers can participate in the burgeoning blockchain gaming market.
For those reasons, the NMKR SDK for Godot represents a significant step towards democratizing blockchain game development. It embodies the principles of open-source collaboration and innovation, which are at the core of both Godot and Cardano.
Our solution addresses the need for seamless integration of Cardano's capabilities in the gaming industry, particularly targeting indie game developers using the open-source Godot game engine. By developing a Godot plugin for NMKR's API, we facilitate easier Cardano adoption, potentially increasing both the number of NFTs minted and the transactions within the Cardano network.
Video gaming is a booming billion-dollar industry that is expected to grow enormously in the following decade. A tool like this could attract new developers and users to the Cardano ecosystem, broadening its user base: the multi-asset ledger feature of the Cardano blockchain allows developers to easily integrate and use digital assets in their games, without the need to deploy complicated smart contracts, which is often seen as a barrier also by experienced developers who are approaching their first web3 projects.
I'm an IT professional with more than 25 years of experience as a developer and systems engineer, and I started to focus on game development 5 years ago. In late 2019, I released my first commercial game, Wood 'n Stones, now available for free on Steam.
I fell in love with the Cardano technology about 3 years ago. During the spring of 2022, I started the European Cardano Community together with my teammates: Marcus, Mauro, and Ricardo. We host regular town halls/fireside chats to present the latest projects building on Cardano, and we host X spaces in several different languages spoken in Europe and have also started focusing on in-person events.
During the development of my previous project, to facilitate the integration with the Unity game engine, I released an open-source component, which is still available to everybody who wants to create NFT games. During Fund 10 a proposal for creating an official Unity component was funded, but that project gave me the necessary experience to build a very professional alternative for Godot, which is an open-source project, just like Cardano.
The goal of our first milestone, which will be achieved in the first month, is to provide a version of the plugin with all the needed fundamental functions. This will allow us to include functions for accessing the first subset of the NMKR API endpoints.
The provided example application will show the users how to access the API wrapper: the same criteria will apply to all current and to-be-implemented functions.
Milestone outputs
Acceptance criteria
Evidence of milestone completion
For the second milestone, which also will take a month to be completed, we will focus exclusively on implementing all the remaining NMKR API endpoints, along with the full documentation correctly implemented in the Godot engine internal documentation system.
We'll also release a second example application that implements a simple GUI frontend for testing all the API endpoints with user-provided data.
Milestone outputs
Acceptance criteria
Evidence of milestone completion
Keeping to our planned one-month-milestones schedule, we reserved the third one for building the fundamentals of the full-functioning game that we will release as the final example application.
At least some of the planning game mechanics will be available with this first alpha version of the game, and it will implement some basic interaction with the NMKR plugin.
Milestone outputs
Acceptance criteria
Evidence of milestone completion
We will finally release the full, playable version of the example game!
It will include all the planned game mechanics and show developers how to achieve more advanced use cases for accessing the NMKR API.
Milestone outputs
Acceptance criteria
Evidence of milestone completion
Davide Lucchesi
Project leader and main proposer. Passionate game developer and proud team member of the European Cardano Community
Hara Iliopoulou
An expert multi-lingual translator, who can guarantee that all the available documentation will be clear, concise, and free of the usual bumpf
Development and Management
1 x Senior Developer / Project Leader, 60$ x hour
Game Assets
Fixed budget
Documentation
1 x Professional Reviewer, 30$ x hour
Total: 35,000$
Assuming ~0.437$ x ADA (value at the time of editing this proposal): ~80,000 ADA
Solving a Key Problem
Our project directly addresses a vital need in the gaming and Cardano ecosystem, namely, streamlining the process of NFT minting, accessing assets from a wallet, and generating transactions within game development. The NMKR SDK for Godot we will develop acts as a bridge connecting developers and the Cardano blockchain, simplifying the integration process. This clear-cut solution will encourage more developers to engage with Cardano, thereby enriching the ecosystem with increased activity and innovation.
Budgeting
The reported prices are slightly lower than the European market average, but considering the size of the project and that everything can be built internally without the need to hire any external specialist (apart from the art assets necessary for the example game), we think that the proposed budget aligns with our team's need to maintain a fair standard of living while dedicating our skills and time to the project. This commitment reflects our belief in the transformative potential of our project, and our desire to see Cardano thrive as a platform for game developers.
Long-Term Impact
The scope and budget for our project reflect its significant long-term impact. This four-month timeline will allow us to design, develop, and refine both a Godot plugin that is not only functional but also user-friendly, and a compelling game that will highlight to game developers what is possible to achieve, with ease, and without the need to deploy any smart contract. This duration accounts for thorough testing, community engagement, documentation, and eventual launch.
We're committed to fostering an environment where game asset creation is more accessible and integrated, and help Cardano become the go-to blockchain for game developers.