Skip to content

Latest commit

 

History

History
242 lines (196 loc) · 6.18 KB

PITCHME.md

File metadata and controls

242 lines (196 loc) · 6.18 KB

---?image=pitch/back-cyan.png

@snap[west text-left span-70] @css[text-18](Comment vendre un chat 140k sur @csscolor-cyan) @snapend()

@snap[text-05 south-west text-left] Présenté par @css[color-cyan](Mathieu Durand) Hexira @snapend()

---?image=pitch/back-cyan.png

@snap[west text-left span-70] @csstext-18 color-cyan @css[text-18](Comment vendre un chat @css[color-red](des armes) 140k @csscolor-red sur @csscolor-cyan) @snapend()

@snap[text-05 south-west text-left] Présenté par @css[color-cyan](Mathieu Durand) Hexira @snapend()


@snap[midpoint span-80] Never gonna work @snapend() @snap[north span-80] ** @css[color-red](SALUT, JE SUIS UN CRYPTO-KITTY) ** @snapend() @snap[south span-80] ** @css[color-red](MOI JE VOUS LE DIS, ÇA MARCHERA JAMAIS CE JEU-LÀ) ** @snapend()

---?image=pitch/back-cyan.png @snap[north-west] @csstext-18 color-cyan Un jeu de duel entre des guerriers @snapend

@snap[west]

@ul

  • Un contrat pour les armes
    • Token ERC-721
  • Un contrat pour les guerriers
    • Créer un guerrier
    • Lancer un duel
    • Accepter un duel
    • Des combats
  • Un frontend React @ulend @snapend

---?code=pitch/src/weapon-contract.sol&lang=js

@snap[north-east span-50 text-06 text-gray] Vendre des armes avec Solidity @snapend

@snap[south span-100 text-08 color-green] @[1-2](Utilisation de packages existants) @[4](Comme une classe en JS, mais c'est un contrat) @[6](Un event est lancé par le contrat à tous ceux qui écoutent) @8-11 @[13](La liste complète des armes) @[15-16](Le titre et le nom de notre TOKEN) @[18-28](Le coeur de notre contrat) @[22-23](Création de la structure de l'arme) @[24](_mint instancie le TOKEN (ERC-721)) @[25](Le URI du TOKEN, qui permet d'obtenir son metadata) @[26-27](On avertit tout le monde... c'est le temps d'acheter) @snapend


@snap[midpoint span-80] Never gonna work @snapend() @snap[south span-80] ** @css[color-red](Pas sur d'avoir suivi, est-ce qu'on peut recommencer à "Contrat"?) **
@snapend()

---?image=pitch/back-blue.png

@snap[west text-left span-70] @css[text-18](** Ok, maintenant
@css[color-blue](COMMENT ON ACHÈTE?) **) @snapend()

---?image=pitch/back-blue.png

@snap[west text-left span-70] @css[text-14](FACILE,
on réutilise un
) [@csscolor-blue text-14](https://rinkeby.opensea.io/assets/cryptowars-marketplace) @csstext-14
@snapend()

---?image=pitch/back-purple.png

@snap[west text-left span-70] @css[text-18 color-purple](** Premier problème**)

  • 150 transactions à chaque 10-15 secondes, pour l'ensemble du réseau @snapend()

@snap[midpoint span-80] Never gonna work @snapend() @snap[north span-80] ** @css[color-blue](Je l'ai testé son jeu) ** @snapend() @snap[south span-80] ** @css[color-blue](ET C'EST VRAIMENT LENT!!!) **
@snapend()

---?image=pitch/back-purple.png

@snap[west text-left span-70] @csstext-18 color-purple
@ul

  • Ajouter des transitions
  • Utilise un sidechain (ex. Loom Network) @ulend @snapend()

---?image=pitch/back-purple.png

@snap[west text-left span-70] @css[text-18](@css[color-purple](Deuxième problème))

  • Ethereum est un système déterministe
  • Donc pas de fonction @csscolor-purple @snapend()

@snap[midpoint span-80] Never gonna work @snapend() @snap[north span-80]

** @css[color-red](C'est n'importe quoi ce jeu-là) ** @snapend() @snap[south span-80] ** @css[color-red](Les combats sont pipés d'avance) ** @snapend()

---?image=pitch/back-purple.png

@snap[west text-left span-70] @css[text-18](** @csscolor-purple**)
@ul

  • Utiliser un "seed"
    • le timestamp du block
    • le hash de block précédent
  • Utiliser un Oracle @ulend @snapend()

---?image=pitch/back-cyan.png

@snap[west text-left span-70] @csstext-18 [@csscolor-cyan](http://cryptowars.fun/?account=0x8dac237e839d09b7e82d9190314d52e90d2c9794078f039971da5b99764ebc21) @snapend()

---?code=pitch/src/web3.js&lang=js

@snap[north-east span-50 text-06 text-gray] Application React:
Appel d'un contrat intelligent avec Web3 @snapend

@snap[south span-100 text-08 color-green] @[1-2](Code généré) @[4-7](Création du contrat client) @[9-14](Appel d'une fonction du contrat) @[11-13] @snapend

---?image=pitch/back-purple.png

@snap[west text-left span-80] @css[text-18](@css[color-purple](Troisième problème)) Comment on met ça à jour un contrat immuable? @snapend()


@snap[midpoint span-80] Never gonna work @snapend() @snap[south span-100] ** @css[color-purple](Ya clairement un bug, regardez moi...) **
@snapend()

---?image=pitch/back-purple.png

@snap[west text-left span-70] @css[text-18](** @csscolor-purple**)
@ul

  • Ne pas faire de bugs?
  • Séparer logique et données en plusieurs contrats @ulend @snapend()

@snap[midpoint span-80] Never gonna work @snapend() @snap[north span-80]

**@css[color-blue](Ok, mais, POURQUOI ETHEREUM?) ** @snapend() @snap[south span-80] ** @css[color-blue](Ça serait pas plus simple en Node?) **
@snapend()

---?image=pitch/back-blue.png

@snap[west text-left span-70] @css[text-18](** @csscolor-blue **) @ul

---?image=pitch/back-blue.png

@snap[west text-left span-70] @css[text-18](** @csscolor-blue ) @csstext-08 @css[text-08](Demo on the Rinkeby testnet: http://cryptowars.fun?account=YOUR_PRIVATE_KEY) @css[text-18]( @css[color-red](NOT PROD READY) **) @snapend()