Standard Grant Proposal: Fabstir Game Dev Toolkit for Web3

Project Name: Game Dev Toolkit for Web3 Sia Network

Organisation:

Fabstir, led by Jules Lai (Founder, CEO, and CTO)

Previous Work for Sia

https://github.com/Fabstir/.github

Short Bio:

Jules Lai, with degrees in computing and mathematics and based in London, has extensive experience as a senior software developer, creating financial modelling software for notable clients including Lloyd’s of London and the Bank of England. He also leads major UK filmmaking communities. Since summer 2021, he’s dedicated himself to developing Fabstir, a multifaceted platform for content creators, integrating video and music streaming, e-commerce, 3d graphics and social media. Jules successfully completed a one-year grant with Sia, enhancing Web3 capabilities through open-source projects and leveraging Sia’s decentralised storage. Other relevant experience include coding rasterised and ray-traced engines for games and experimentation.

Project Overview:

The Fabstir Game Dev Toolkit aims to advance the integration of Web3 technologies with gaming development, focusing on leveraging Sia’s decentralised storage. The open-source toolkit will provide game developers with essential tools and resources, fostering a metaverse ecosystem where they can build, share, and monetise their creations within a decentralised framework.
This project aims to develop a real-time, peer-to-peer networking layer enabling seamless, decentralised interactions and dynamic data exchange. It will leverage modern P2P protocols to optimise network traffic and ensure low-latency communication across the virtual environments. This architecture facilitates a robust, scalable platform for user connectivity without centralised servers. By integrating Sia, we ensure secure, scalable, and cost-efficient data management, to offer persistent and robust virtual worlds.
This project will build upon the code that was developed from the previous grant work funded by Sia Foundation. It will also draw upon the expertise of Derrick Hammer for guidance, including possible reuse of his existing Hypercore codebase for the networking elements.

Milestones

Q1

Networking Infrastructure Development (part I): Research into P2P networking solutions to optimise data transmission.
Design aand prototype spatial subdivision method To optimise data transmission based on visible areas, explain with prototype demo.
Continue the tokenisation of 3d assets With more extensive support for RMRK’s modular for EVM compatible blockchain. Showcase via front end integration examples.

Q2

Networking Infrastructure Development (part IIa): Implement the P2P networking solution using Holepunch (Hypercore) and state channels.
Networking Infrastructure Development (part IIb): Testing and performance optimisation. Prototype demo to show progress.
Scripting Language and Web3 integration: Develop and integrate JavaScript/TypeScript as the primary scripting language.

Q3

User Interface and Experience Enhancement: Develop the UI using React, Next.js, and Tailwind CSS, and integrate React Flow for node-based world building.
Implement spatial audio features To align with 3D environments.
Renderer Development (part I) Enhance existing custom-built WGPU renderer with deferred rendering, shadows and indirect lighting. Showcase with audio via integration into Fabstir Media Player.

Q4

Physics Engine Integration Integrate and test the Rapier physics engine.
Renderer Development (part II) Scripted animation and events.
Toolkit demos With further testing, bug fixes and documentation.

Budget Breakdown:

Total budget for the year: $91,000

  • Development and Programming: $73,000
    – $55,000 to the part-time salary of Jules Lai.
    – $15,000 for additional contract work for spatial audio and physics
    – $3000 for user interface design to incorporate node-based world builder and educational/explainer webpages on how to use the toolkit.
  • Software/hardware, networking, cloud: $11,000
    – $4500 Server with discrete graphics card
    – $1500 Software and 3d asset libraries
    – $3000 Cloud compute charges
    – $2000 Backup costs, internet charges, electricity costs + misc.
  • Accounting, administration, legal: $1,500
  • Attend conference and events for gaining insights, industry trends, and knowledge exchange with peers (not for promotional activities) $1500
  • Contingency and Miscellaneous: Unplanned software upgrades or licensing costs, faulty hardware replacements, additional cloud, networking or compute costs, inflation, discovered costs for security measures and testing etc. $4,000

Expected Results:

The envisaged toolkit, primarily powered by Sia’s decentralised storage solutions to offer persistence for virtual world elements for Web3 gaming, media and metaverse environments. This includes the storage of NFT metadata, 3D objects, animations, and the dynamic states of game worlds, as well as immersive audio and in-game media content. The integration with Sia not only ensures secure, scalable, and cost-efficient data management but also champions the concept of true digital ownership. The backbone of this toolkit is its ability to leverage real-time, peer-to-peer networking layers for decentralised interactions and dynamic data exchanges, optimising network traffic and ensuring low-latency communication across virtual environments. The result is to be a robust and scalable platform, driven by Sia’s technology, that promises to bring a new era of decentralised, user-centric gaming and metaverse experiences.

Demo Day Presentation:

We will demonstrate the toolkit’s capabilities, showcasing how it integrates with Sia’s decentralised storage and the impact on the game development community.

This proposal seeks to continue the momentum from the successful completion of the previous grant, in integrating Web3 technologies, focusing on leveraging Sia’s infrastructure for the gaming and metaverse sector.

I updated the proposal to align with Sia Foundation’s direction to not include marketing. Also clarified some items that didn’t fit in that bracket to their own itemised work. Plus restructured milestones to enable easier verifiable progress with more showcases and demos.

I support this and think it could be a valuable set of legos on an L3/L4/app layer for Sia to power the data storage of gaming and “virtual world”-related applications.

This will open Sia up as the data backbone of a new market so that game developers can build in web3.

I love games and I even developed some, so this sounds interesting. Could you please describe how the SDK would be used on some imaginary game? And while I know it’s extra effort, could an example game project be developed along the SDK and be bundled with it? Such example would definitely lower the barriers so even beginners could just use it as the starting point for their game.

Also what platforms and development environments will be supported? I don’t understand from the description if this will be a live service that games developed with the SDK will connect to, or if it’s some different approach, possibly letting anyone run a lite node as part of the game after Utreexo (Sia 2.0)? Or some mix of those options so anyone can decide if they want a direct control, or through a live service.

Hi, really great overarching questions. To keep focus so I don’t ramble, I’ll divide my response into two sections, the technological side and the gaming side.

The technological side is the main focus as per the milestones. So open-source code for efficient, low-latency, decentralized peer-to-peer, scalable, for multiple user connectivity in browser and without centralised servers. Persistent data like the world and game state, digital asset, media data and 3d world meshes/textures, character models stored on Sia. You’ll be able to take each of the components and deploy this yourself.

I plan yes to have a live decentralised platform where developers can plug in and go with it, to develop their own games and not worry about the networking infrastructure deployment and maintenance. This is later on in the cycle and not something that my grant proposal is intended to cover.

I will ensure there is an example game that covers the full spectrum from importing assets, tokenisation, building out a small world, the integration with the networking layer, some simple game mechanics/physics, and the tokenisation and trading features, so you can try it out on a testnet.

The game dev things will run in browser so use JavaScript/TypeScript or WASM (a lot of components will be coded in Rust). The smart contracts for the NFT trading/tokenisation stuff will be in Solidity, I will be testing on Polygon Mumbai.

Hope that answers the questions. Let me know if you have any other queries or I should explain any aspect in more detail.

As far as Utreexo in Sia, I’m, not familiar with the UTXO ecosystem. But of course will learn up about it, see what’s possible.

Hello @juleslai,

Thanks for your proposal! We had a wealth of projects to review at our latest meeting and didn’t have enough time to give this grant the attention it deserves.

Our committee will be skipping their next meeting because it falls on the day after Christmas, but we’ll be able to get a full review within the 4-6 week quoted timeframe on January 9th.

Thanks again, we’ll be in touch!

Regards,
Kino on behalf of the Sia Foundation and Grants Committee

Thanks for submitting your proposal to the Sia Foundation Grants Committee. The committee has decided to temporarily pause decisions on your grant requests while we evaluate the progress you made on the original Fabstir grant. One factor is that this grant isn’t a direct follow up to Fabstir, so we really want to understand where Fabstir is relative to its original proposal before moving forward with a different grant from the same team.

We should be able to update you next week. Thank you so much for your patience!

1 Like

Thank you for your kind measured response. Hopefully you’ve gathered that I want to change the world for the better tomorrow! It’s my motivation to why I’m building lots.
Let me know if you want me to explain things further or help with any aspects.

I’m glued most of the time to my computer these days as I aim to get things done as much as i can :)

1 Like

We really appreciate this proposal and your other for Sia Discovery Hub. They definitely have potential, but before reviewing any new proposals from your team the committee would like to discuss the current state of your original Fabstir grant, and any plans you might have to make it more usable by end users.

Oliver from the Foundation has reached out to schedule a time with you and our team. Feel free to leave this grant here in the Proposed section for now.

Thanks, and we look forward to speaking with you!

Yes, that is good. I look forward to the opportunity to speak with you and/or your team. There is a lot of cool stuff (my opinion) that relates to the grant, that feeds into the plans :)

Thanks again

Thanks so much for your patience while we navigate how to proceed with your Fabstir grants. We also really appreciated you expressing the vision for Fabstir on our call. It definitely helped the committee understand your thought process with your various submissions.

We’re excited to consider the Game Dev Toolkit and Sia Discovery Hub, but after thorough discussion the committee would first like to see an additional grant to get Fabstir polished and user-facing. Specifically, they’d like to see the Fabstir media player have the ability to be used without requiring lengthy set up. It should have the ability to stream videos (transcoded and uploaded by you) with a public website or app.

Simply to keep the Proposed category clean as it may be a while before reconsidering, I’ll move this proposal to Rejected. If you want to re-submit this post for consideration in the future after completing the above requested Fabstir grant, let us know.

Thank you greatly for the support I’ve had with the grant. So much appreciated.

You’ve made me see just how important it is to ensure development (that I just love doing) is out there and “user-facing”. I hope to make it as frictionless as possible and bring people on a journey of understanding that us techies take for granted.

I will face that challenge. Thanks again.