wishes to get promoted
6mos ago
0

Evidence-0001: Promotion to Rank 1

Report Date Date of submission (2025/01/09)
Submitted by Cedric Decoster

Member details

  • Matrix username: @roxontox:matrix.org
  • Polkadot address: 14MVAs6jPc7bPW33fC7eTwz4Zf1pD3KWW4tQtrHWUd9w1Phx
  • Current rank: 0
  • Date of initial induction: 2025/01/09
  • Date of last report: N/A
  • Area(s) of Expertise/Interest:
    • Substrate C# Stack
      • Code Generators (CodeDom & Roslyn)
      • Rust Primitive Base Wrappers
      • Scale Decode and Encoding
      • Wallet Functionalities
    • Polkadot SDK for Unity
    • On-Chain Gaming with Substrate
    • Game Simulation and Automations

Reporting period

  • Start date: 2020/09/07
  • End date: 2025/01/09

Evidence

Explain why your contributions in relation to the Polkadot SDK are worthy of retention/promotion. Refer to the terms in Section 6 of the Manifesto and provide links to relevant content (i.e code, articles, media, etc.) to show that you are meeting all the requirements.

I have been actively contributing to the Substrate ecosystem since 2020 (first commit), working on open-source repositories and projects such as Ajuna Network, SubstrateGaming, and PolkadotPlay. As Founder and Core Contributor of Ajuna Network, and as core developer behind the entire Substrate C# Stack, including the Polkadot SDK for Unity.


Key Projects & Contributions

GitHub handle: https://github.com/darkfriend77

Substrate C# Stack Architected, Developed & Maintained by Me

Since September 2020, I have been working on the C# Stack for Substrate, focusing on building and maintaining critical projects that form the foundation of the C# Stack for Substrate, and also the base for the Polkadot SDK for Unity. These tools are essential for enabling game developers to utilize C# as the programming language for Substrate-based projects. Below are the key projects I have architected, developed, and continue to maintain:

  • Substrate .NET API: The core of the Substrate C# Stack, providing essential functionality for wrapping Rust primitives and managing JSON-RPC calls to connect, access, and interact with Substrate nodes.
  • Substrate .NET Toolchain: A vital component for utilizing the C# Stack, is the Toolchain, the code generator creates a full SDK based on a node's metadata.
    • Extends the core API client with typed access to storage elements and extrinsics.
    • Recently updated to support JSON-RPC 2.0 transaction handling ('transactionWatch_v1_submitAndWatch') and enhanced event tracking via 'TransactionEventInfo'.
    • Refactored code generation to Roslyn instead of CodeDom. PR
  • Substrate .NET Wallet: A comprehensive C# wallet stack supporting functionalities like key derivation and account creation, mirroring features available in Polkadot.JS.
  • Substrate Chains .NET: A repository of pre-generated SDK artifacts for various Polkadot relay and parachains.
    • These SDKs are released as NuGet packages for easy integration into C# projects.
    • Example: Polkadot C# SDK and its published NUGet package.

Highlights and Achievements in 2024

  • Polkadot SDK for Unity Technical Verification: Successfully developed, published and passed the technical verification for the Polkadot SDK for Unity in early 2024. LINK

  • Async Backing Adoption: Led Ajuna Network to adopt asynchronous backing with runtime upgrades on Kusama and Polkadot, becoming the first non-common-good parachains to do so through runtime upgrades. Big learnings after breaking our rococo parachain as early adopters of async backing. LINK

  • BBB Android App: Developed and published the first production mobile Unity app/game in the Google Play Store, a full-onchain game running on top of a non-EVM Polkadot Parachain (ajuna network). LINK

  • S.A.G.E. Framework: Currently leading the architecture and development on the asset state transition engine for game backends. This framework abstracts Substrate/Rust code into basic transition functions and verification rules with free-to-play modules, anti-account farming measures, tournaments, rewards, and much more. LINK

A Personal Coding highlight

One personal highlight from the past year was my new solution for representing Rust enums in C#. Rust enums posed a challenge due to their design in Rust versus the strongly-typed nature of C#. My initial implementation worked effectively with Mono for Unity but caused unexpected crashes when using Unity's IL2CPP (Intermediate Language to C++ scripting backend).

Problem Identification and Reporting

The crash occurred during the creation of production builds for the BBB game. After extensive debugging, I identified that IL2CPP had issues handling an excessive number of generic functions with varying argument counts—up to 255. These functions were generated as part of the Rust enum wrapper abstraction in the SDK. The issue was reported to Unity to raise awareness: Bug Report on Unity Discussions.

Solution Implementation

I redesigned the BaseEnumRust representation in the Substrate C# SDK to reduce unused code and unnecessary complexity in the wrapper abstraction.

Additional Work

Over the past four years, I have contributed to numerous artifacts and projects as part of various initiatives, including:

  • The Substrate Builders Program and its three milestones, which we successfully accomplished.
  • Web3 Foundation Grants.
  • My role as the Founder of Ajuna.
  • And my personal passion as a dedicated Substrate and Polkadot enthusiast.

For many of these contributions, I played different multiple roles—some I authored and developed directly, while others I focused on providing solution architecture only. In all cases, I was responsible for inventing and shaping the ideas, as well as driving the vision and the narrative behind them.

If needed, I am happy to provide additional evidence of these contributions.

Engagement

I have represented substrate-based projects and tools at various conferences, personally and as lead of the Ajuna team:

  • Substrate Seminar | Build .NET and Unity parachain apps LINK
  • Sub0 2022 | Substrate .NET Toolchain & Unity LINK
  • DOTMog Presentation LINK

I was also a core contributor of Team Hexalem, which won at the Polkadot Winter Hackathon 2023

Additionally, there is a short bio presented by Nicholas at Polkadot Decoded 2022: Video link (timestamped)

Voting record

Provide your voting record in relation to required thresholds for your rank.

Misc

  • Question(s):

  • Concern(s):

  • Comment(s):

Reply
Up
Share
#274·
Comments
No comments here