# Web3 Games School * Content/community platform * Integrated into builders funnel * hackathons + grants + community + job board * Onboard game developers to web3/NFTs * Focus on practical and forkable examples ## Goals * Grow usage of IPFS, libp2p and Filecoin in web3 game dev * Introduce the benefits of using public permissionless networks for games over lock-in platforms, grounded in libp2p, IPFS and Filecoin * Teach web3 architectures through practical and forkable examples of web3 games * Showcase ecosystem partners, tools, systems, frameworks, libraries - and be where they want to be listed * Pipeline learners into jobs or new businesses Outcomes * Is *the* hub and reference for web3 games * New learners come here first for learning web3 gaming * Experienced devs come here for the reference documentation and examples * Trad g Non-goals: * Complete education of web3/crypto/NFT fundamentals - point to Proto.school, NFTschool, project docs, etc for that ## Requirements Contribution flow * People who want to submit can do through PR - template issue that has category, technology, etc * TODO: who's reviewing PRs? ## Roadmap / Timeline ## Website ### Content approach Focus on practical and forkable examples from game developer perspective. For example, not "How IPFS works" but "How to mint and award NFTs for boss battles with Flow" and "How to make a distributed leaderboard with NEAR". Topic areas * Architecture overviews and patterns * Comparisons to HTTP or native platforms * Common modules game devs can use * Wallet/identity options * Different chain options * Game frameworks - integrations w/ web3 ### Interactions (optional) * Optional decentralized login * Earn NFTs for posts read * Earn NFTs for repos forked * Earn NFTs for contributions ### Content Sources Ecosystem partners * Dapper/Flow * Ceramic * NEAR * Unlock * Drand * Protocol Labs * Chainlink * more... ## CONCEPTS: Why Web3 is important for game devs and users * Platform control * Revenue control * Creative control * Public vs private scaling * Platform-independent user awards/status * Permissionlessness * Hack/cheat mitigation ## HOWTO: Login with wallet * why web3 better than company/platform silos for logins/identity * overview of how a web3-based identity works * code listing using one of the ways * pointers to services/frameworks that make it easier * pointers to other examples from hackathons Networks/Wallets * Metamask + Eth * NEAR / Paras * Ceramic * Torus * Magic.link * Brave wallet ## HOWTO: Leaderboard * why web3 better than company/platform silos for a game leaderboard * overview of how a web3-based leaderboard might work * code listing using one of the ways * pointers to services/frameworks that make it easier * pointers to other examples from hackathons ## HOWTO: In-game Purchases * why web3 better than company/platform silos for in-game purchases * overview of how web3-based purchases work * list a few chains that could be used * code listing using one of the ways * pointers to services/frameworks that make it easier * pointers to other examples from hackathons ## HOWTO: Game Loot * why web3 better than company/platform silos for game loot * overview of how web3-based game loot work * list a few chains that could be used * code listing using one of the ways * pointers to services/frameworks that make it easier * pointers to other examples from hackathons ## CONCEPTS: NFTs * Intro post * What you can use them for in games * What the architecture and application/network topology looks like * Walk through a minting flow * Walk through viewing * Code listing for using with a given network and game framework for loot or a level completion ## HOWTO: Next Level NFTs * Why L2s * List of them * Code examples of a few (point to hackathon examples?) Systems * Polygon (Matic) * Flow * ??? other L2s or NFT-focused platforms/chains? ## HOWTO: Distributed randomness * https://drand.love * "Something I noticed is that a lot of folks were using just the raw randomness from Drand, and not incorporating that into a randomness seed." - johnny * "The first one I looked at using drand was putting it through a prng function. What I wanted to see is something that used drand to verify the random seed for highscores or something. Store the results on-chain, verify seed later via drand" - disco * As we have a partnership with Chainlink - wouldn't it be useful to advise people to use Chainlink VRF (verifiable random function / oracles for randomness) - ofc does depend on the engineering circumstance - Ally ## Existing Frameworks How to use framework X for web3 game? Web3 game frameworks * https://chainsafe.github.io/game-docs/ * Game3js * Moralis (has a unity sdk) Using web3 for all above topics with non-web3 frameworks/tools: * Phaser * Defold * Godot Engine * A-Frame * Construct * GameMaker * Unity * Unreal Engine * ??? ## Platforms * Eth / L2s * Harmony * Avax ## Teams for Case Studies / Storytelling / Content * Immutable (re JV) * Forte (re JV) * gala games (re JV) * gameDAO (re Lukas) - https://gamedao.co/ * Prominence Games (re HQ) Orgs * Asia Blockchain Gaming Alliance (re HQ) ## Scratchpad * Andrew Hill: games that are token gated? i.e. you must own a minimum of the dao token in order to play? perhaps you must own more to play higher levels. ties in & worth a read if anyone is interested https://gnosisguild.mirror.xyz/t4F5rItMw4-mlpLZf5JQhElbDfQ2JRVKAzEpanyxW1Q * Unlock maybe? * General dao tools * VR/ AR applications * Making things on the metaverse eg. SAND/ MANA