Loading video player...
Alright, GMBM semuanya. E, nama gua Davis, gua Defrel di base Indonesia. Dan
video ini gua bakal nunjukin gimana caranya kita tuh deploy smart contract
di jaringan base atau di China base gitu ya. Nah, kalian bisa ya buka dokumentasi
gua ya di sini namanya tuh daviskalvin. Kalian cari aja di internet ya. Nah,
terus di sini kalian tuh bisa lihat nih ee ada lima series ya. Di sini ada gua
buat lima series. Nah, ini nih apa series-seriesnya? Jadi, eh di bulan
September sampai Oktober itu eh gua dan base dan tim base Indonesia itu buat
workshop gitu ya. Workshop untuk base Indonesia yang ngejelasin dari awal gitu
ya, Guys. Dari apa itu smart contract, dari basic holidity dan juga exercise
yang bisa kalian lakukan ya. Jadi, per series itu bakal ada exercise yang bisa
kalian lakukan mulai dari building ya, gitu ya, kayak toko kalian sendiri,
deplo NFT gitu. Nah, tapi untuk video kali ini gua bakal jelasin gimana
caranya deploy smart contract dengan foundry ya. Salah satu framework untuk
bikin smart kontrak ya. Sebenarnya ada dua ya framework yang terkenal itu ada
foundary dan hard head. Tapi di sini di video ini gua bakal jelasin dulu tentang
foundry. Oke. Nah, kalau gitu kita langsung aja masuk ke yang pertama yaitu
eh overview dulu tentang foundary ya dan juga kenapa kita tuh deploy ke baseia.
Apa sih itu beapolia gitu ya. Palingkan untuk buat kalian yang udah
pernah bikin smart kontrak dan juga udah pernah gitu ya eh integrasi smart
kontraknya ke front end-nya dan basically ya kalian udah berkecimpunglah
di dunia web 3 ini. Kalian harusnya udah ngerti dan it's a good time untuk
refresh e otak kalian tentang e fundamental-fundamentalnya
gitu ya. Oke dan tapi buat kalian yang newb yang belum tahu apa-apa ini bagus
banget ya. Ini sebenarnya buat kalian tujuannya. Dan sebenarnya ini bukan
newb-nyoobi banget karena kita langsung ee deploy ya. Kita enggak belajar dari
awal. Paling nanti kalau kalian mau gua bikin video tentang ee lebih awalnya
lagi ya tentang basic solidity eh apa artinya ERC gitu kan, apa artinya smart
kontrak, kalian bisa komennya aja di bawah dan gua bakal e try my best gitu
ya buat ngejelasin sejelas-jelasnya tentang yang kalian mau gitu.
Oke. Nah, kita mulai dari overview Foundry. Jadi, found itu adalah salah
satu framework ya, Teman-teman. Salah satu framework untuk e building perct
untuk dikembangkan, diuji ya, untuk testing, dibagging,
nulis script juga bisa gitu ya. Nah, kenapa sih gua tuh lebih prefer foundry
daripada hard head ya? Karena preferensi sendiri sih, Teman-teman ya. Karena
kalau gua tuh gua lebih suka kalau smart contract itu ya semuanya solidity semua
language-nya gitu. Kalau hard head itu masih ada campur tangan type script ya.
Tapi gua lebih suka foundry dan juga Foundry itu punya tools-tools yang
menurut gua tuh bagus banget ya kayak Forge, C, Enfil, chisel gitu ya. Dan
sebenarnya H kalau kalian pakai hard itu juga sebenarnya bisa import ya. Kalian
juga bisa download eh foundary library-nya, kalian juga bisa pakai
fordge sebenarnya di hard yang terbaru ya. Tapi ya gua memang dari dulu udah
pakai foundry dan memang itu yang gua suka gitu ya. Oke, jadi paling dari
empat tools ini gua mau kalian tuh e fokusin ke forge dan cas doang gitu ya.
Mungkin Enfield juga kepakai, tapi untuk paling yang beginner atau mungkin
beginner to mid level, Ford sama CAS ini harusnya udah eh cukup gitu. Apalagi
karena kita juga deploy-nya ke base polia gitu, yaitu not base testnetnya
sendiri ya. Dari base itu dia punya testnet coinnya itu di baseia. Jadi kita
tuh enggak terlalu butuh nfield sebenarnya karena nfiil tuh berperan
sebagai local test note juga. Jadi sebenarnya sama aja tapi karena ya tapi
buat apa? Karena kan kita juga mau bakal eh deploy dia ke base gitu kan, jadi
lebih baik langsung gunain aja buat base testnet network-nya sendiri gitu ya.
Nah, eh untuk forge ini adalah comen ya untuk komen utama ya untuk developing,
testing, compiling, deploying itu pakai forge. Jadi force ini bakal dipakai
banget untuk cash. Cash itu command line tool ya untuk melakukan panggilan RPC
Ethereum. Jadi nanti untuk eh check balance world kalian juga bisa gitu ya.
Untuk import eh word kalian juga bisa. kirim transaction, interaksi dengan
smart contract itu bisa pakai cash ya. Nah, pal itu untuk overview-nya untuk
foundry. Next-nya kita bakal ke setup foundary ya. Karena ya kalau kalian mau
pakai foundary kalian harus setup dulu. Ada dua cara ya, tergantung kalian pakai
device apa untuk macOS ya. Kalian cukup perlu untuk buka terminal ya. Terus
kalian install aja langsung ya pakai curl foundry ya. akan install. Terus
kalian export dulu ya eh foundry-nya ke environment eh Linux-nya gitu ya.
Tergantung kalian pakai ZSH atau pakai BH. Kalau gua, gua pakai ZSH. Jadi gua
pakai yang di atas ini. Kalau kalian pakai B ya pakai bawah ini gitu ya.
Terus tinggal diinstall ya pakai foundry up terus cek version-nya gitu ya. Force
version, cash version, enf version. Kalau udah muncul berarti ya udah
keinstall bisa kalian pakai. Nah, kalau kalian pakai Windows ya, pakai Windows
kalian tuh harus pakai USL ya atau Windows subsistem Linux ya. Karena kalau
enggak enggak bisa pakai Windows doang. Jadi kalian install dulu WSL, kalian
buka terminal WSL-nya baru kalian lakukan hal yang sama kayak MicOS tadi.
Tinggal install foundry-nya, masukin environment-nya ke bash ya. Terus
install juga foundry up. Pakai foundry up ya, install foundry-nya. Terus cek
version-nya kalau udah berarti udah install ya. Jadi segampang itu buat
setup foundry-nya. Oke, next kita bakal set up e RPS game
project dengan base testnet ya. Jadi di sini kita bakal bikin projectnya ya.
Kita bakal masuk ya. Eh, kalian palingan siapin dulu aja terminal ya. E, di sini
kita bakal pakai forge ya langsung ya. Forge init RPS game contract ya.
Ini. Oke. Nah, force ini itu apa? Jadi ini komen untuk membuat ya
menginisialisasi eh smart contract kita ya framework-nya gitu. pakai foundry.
Jadi ketika kita eh ketik ini forge init RPS game contract. RPS Game contrct ini
by the way ini adalah nama kontrak kita ya.
Oke dia bakal initialize install semua library ya. Nah kalau kita cek nih
harusnya dia udah kebikin ya RPS game. Oke salah ya RPS game contract.
Oke gua clear dulu bentar. Nah dia bakal instal semua ini. Nah tapi kita lanjut
dulu ya. kita bakal tadi kita udah masuk ya, kita udah CD ke dalam situ. Nah,
jangan lupa juga buat install library dari Open Zaplin ya, karena kita bakal
pakai library open zapline.
Oke. Nah, kalau udah kita bisa aja langsung masuk ke dalam ID yang kalian
mau ya. Bisa pakai kursor atau pakai visual code. Di sini gua pakai V Code
aja ya. Oke, masuk ke VS Code. Kalian bisa lihat nih semuanya ya, ada
library-nya, script, source, sama test. Nah, gua bakal jelasin dulu ya dari
source, test, sama script ya. Kalau source ini adalah kontrak kalian ya.
Yang bisa kalian tulis di sini adalah kontrak kalian. Kalau test ya, ini ada
counter.Ss ini adalah test file-nya. Jadi, kalian tuh bisa melakukan testing
dulu untuk eh function-function yang ada di kontrak kalian sebelum kalian deploy.
Itu pakai test eh file ya. Terus ada script. script ini ibaratnya kalian tuh
bisa ee nge-deploy gitu ya. Misalnya kalian mau nge-deploy tapi kalian tuh
mau ada ee konsol loging-nya gitu. Ada loging-nya
terus kalian enggak mau nih deploy repot-repot. Kalian cuma mau jalanin
satu line doang itu pakai script juga bisa gitu. Jadi kalian itu dan gua
sangat menyarankan untuk kalian tuh pakai script untuk nge-deploy kontrak
kita nanti gitu ya. Nah, tapi pertama di sini gua bakal eh setup dulu buat
konfigurasinya di foundary tomel-nya ya. Jadi ini konfigurasi buat kontrak kita.
Kita copy aja yang ada di sini ya. Kita copy ke foundry. Di sini ya. Pan
yang harus kalian perhatiin tuh adalah ini ya konfigurasi buat base-nya. Di
sini kita karena kita bakal pakai kita bakal deploy ke baseolia testnet ya,
kita harus bikin ya RPC URL-nya adalah si Sepolia base ya dengan chain ID-nya
si 84532 yaitu chain ID-nya si base testnet gitu ya. Nah, ini remapping open
zin ini cuman buat eh pad dari open zaplin-nya doang ya. Oke, next. Nah, ini
juga kita harus setup dulu ya ENV-nya. Jadi di sini kita bikin aja file baru
ya. eh invv buat set up sier scan api nah kenapa kita harus pakai scan apiq
karena eh kita harus ng-verify kontrak kita nanti. Jadi kita kita deploy kita
tuh gak cukup buat deploy doang, tapi kita harus juga verify supaya nanti-nya
kelihatan, kode kita juga kelihatan waktu orang-orang itu mau ngecek kontrak
kalian di base scan ya atau di scan gu karena kan ee kontrak itu harus bisa
dilihat semua orang gitu ya. Dan kalau orang tuh enggak enggak ini ya, kalau
kontrak kalian tuh belum keverify terus orang lihat kontrak kalian itu
belum keverify ya orang-orang ggak bakal percaya gitu untuk makai dep kalian ya
app kalian karena ya kontrak kalian belum keverify gitu kan siapa tahu itu
scam gitu karena di mereka juga belum bisa lihat gitu kontrak kalian. Oke jadi
jangan lupa buat ee masukin dulu aja api-nya. Di sini gua bakal masukin dulu
ya. Oke di sini gua udah masukin ya. Ini gua tutup aja karena gua enggak mau
nge-share kalian juga gua. Oke, next-nya kita bakal lanjut ya untuk
membuat smart kontrak-nya nih. Jadi, sebenarnya kalian enggak usah bikin lagi
ya dari awal karena gua udah kasih semuanya di sini. Kalian tinggal copy
terus paste saja literally ya. Kita copy di sini. Jangan lupa ya buat diganti nih
buat ini kan di sini gua bilang buat file dengan nama rpsgame.Ss
jadi di sini di kontraknya kita Ctrl A Ctrl V aja gitu ya untuk copy semuanya.
Terus kita ganti nih nama file-nya ya. kita rename tadi RPSGame.So.
Nah, by the way kenapa dia namanya RPS game ya di sini ya? Karena itu gua bikin
smart contract untuk game. Jadi RPS itu singkatan dari rock paper scissor. Jadi
kita bakal bikin game tentang batu gunting kertas gitu. Jadi sesimpel itu
aja sih. Jadi di sini kalian bakal bisa buat nge-create game ya. Ya. Nge-create
game, join game. Jadi ini bakal jadi satu lawan satu gitu ya. Terus subit
move kalian. Terus nanti pemenangnya bakal dipilih secara otomatis oleh
kontraknya gitu ya. Siapa yang menang karena udah ditulis di semua di sini.
Nah, nanti yang menang bakal bisa ng-redeem NFT victory-nya untuk sebagai
tanda kalau dia itu memang menang di game itu. Jadi, sesimpel itu doang ya,
Teman-teman ya. Nah, dia itu udah otomatis nih kepilih
nih di sini ya di Fit move nih. Gua bilang kalau misalnya eh player 1 ya
move 1 ya, move 1 itu adalah eh move-nya si player 1 itu tidak kosong atau N dan
move-nya si player 2 itu enggak kosong juga berarti kan udah jalan tuh
dua-duanya. Langsung aja kita determin winnernya itu siapa gitu ya. Kita pilih
di sini. Terus yang menang bakal bisa redeem victory NFT ya. Jadi sesimpel
itu. Nah, kalau kalian udah copy semuanya, kalian tinggal nge-forge build
nih untuk nge-compile kontrak kita gitu ya. Jadi kita balik lagi ke sini. Ini
kan kita udah tulis semua, ya. Ah, copy semua. Kita tinggal forge
build.
Oke, ini masih error ya. Kenapa? Karena kalau kalian lihat ya di test dan
scriptnya dia itu masih nge-import si counter, tapi kan udah hilang semua nih.
Jadi eh kita bakal skip dulu aja buat first build-nya. Kita bakal lanjut ke
buat file test ya. Kita bakal copy dulu semuanya biar semuanya itu enggak error
gitu ya. Jadi kita copy dulu aja nih buat file testing-nya
ke test file-nya ya. Betulah Ctrl V. Oke udah semua ya. Terus kita jangan
lupa juga ganti ya, kita rename dia tuh jadi Rpgame.s
nah kalau kalian bikin test file tuh jangan lupa pakai Dtannya ya supaya dia
tuh nandain kalau dia ini test file-nya si kontrak kita gitu ya. Jadi nama
kontraknya Dt test file-nya gitu ya. Setelah itu sebenarnya dia juga ada
force test ya tapi dia juga harusnya bakal error karena kita tuh masih
nge-import si counter di script-nya. Sebenarnya kalian bisa ngakalin aja
dengan e apa e dikomen aja ya counternya. Tapi
eh gua lanjut aja sekalian ya. Nah, untuk
script-nya itu kalian kasih depannya ds gitu ya untuk script. Jadi kalau test.t,
kalau script.ss. Kalau kontraknya ya enggak usah dikasih apa-apa gitu. Jadi
itu naming convention untuk file-file di ee smart contractnya.
Oke, kalau udah semua kita balik dulu ya ke yang pertama ya.
Eh, kita bakal forge test ya. Kita ulang lagi. Forge build ya. Forge build. Nah,
dia bakal ngompile. Nah, dan sudah hijau semua nih. Berarti kalau udah hijau
semua udah benar semua. Nah, terus gimana nih? Ee kalian kan mau tahu, Tan
semua function kalian bikin itu udah benar atau belum, gitu kan. Maka dari
itu kita harus nge-testing di sini. Jadi, test file ini isinya apa? isinya
adalah semua eh kalian tuh mau ngetes semua function yang dibikin di kontrak
kalian gitu ya. Kalau kalian enggak tes ya kalian jangan ngetes ya guys yang
guys ya karena kalau kalian enggak tes terus kalian tuh bakal tahu errornya di
mana waktu kalian integrate di front end-nya gitu ya. Tapi kan kalau kalian
udah integrate di front end berarti kan kalian udah deploy. Kalau error berarti
kan kalian harus deploy ulang kan. Jadi itu adalah dua kali step double step
gitu. Jadi it's a bad decision gitu untuk gak tes duluan. Jadi paling kalian
for test saja dulu. Ya, di sini kayak gua ya, gua forge test
nih karena gua udah bikin test file-nya juga.
Nah, bisa lihat nih eh gua ngetes ya ada sekitar
tujuh function dan semuanya itu pas berarti udah benar semua nih function
gua dan bisa diintegrate different end-nya dengan benar. Nah, tapi gimana
caranya kalau kalian tuh mau ngetes dan ada loging-nya gitu, ada console
loging-nya. Nah, kalian bisa pakai ya E force test terus strip V-nya 4 kali.
gitu. Nah, ini buat nge-loging ya. Jadi, sama aja kayak forchise biasa, tapi
bakal ada tulisan eh bakal ada loging-loging yang lebih jelas gitu ya.
Nah, kayak gini-gitu ya. Jadi, setiap langkah dari function yang kalian tulis
di test file-nya itu bakal diogin di sini gitu ya. Pas atau enggak, kalau
error divert atau enggak gitu ya. Kayak gini ya. Oke, itu untuk e test file-nya.
Nah, next-nya berarti kita udah berhasil buat nge-build, kita udah berhasil buat
ngetes. Next-nya adalah kita bakal deploy gitu ya. Dan kita bakal
deploy-nya pakai si script ini, gitu ya. Kalau kalian di sini nih, gua udah
siapin nih, eh kita bakal deploy pakai wallet gua sendiri ya. W ya kalau in
this case wallet kalian sendiri. Jadi kita tuh bakal nge-import private key di
eh environment virtual environment-nya si foundry-nya gitu ya.
Nah, untuk ini kita harus import dulu nih world kita ya. Nah, kalau kalian
lihatnya di si eh script-nya gua udah bisa nge-consol nih. Konsol-nya juga
dari e important library si eh foundry-nya gitu ya. Di sini gua tinggal
nge-start ya, ng-estart broadcast terus ya udah udah kedeploy gitu. Nanti kita
coba ya. Nah, paling pertama kalian tuh harus nge-cash dulu nih nge-cash fad
kalian. Kalian harus import dulu. Nah, kalau gua di sini, gua tuh sebenarnya
udah nge-import ya. Jadi, kalau kalian lihat di sini, gua tulis ya, cash wallet
list. Ini gua clear dulu deh. Gua clear ya, cash wallet list. Nah, jadi udah ada
satu ya, namanya Dafis strip base strip wallet dan ini gua udah bikin memang
wallet-nya gitu ya. Jadi, kalau buat kalian yang belum bikin ya, sebenarnya
kalian bisa bikin wallet baru aja kayak gini ya. Ini kalau kalian memang
benar-benar enggak ada wallet sama sekali, kalian enggak ada Metamask,
kalian enggak ada rep wallet dan lain sebagainya, Coinbase wallet gitu ya,
kalian bisa bikin wallet dibikinin gitu ya. Tapi menurut gua itu a bad idea ya,
a bad decision karena menurut gua kalian bikin aja wallet secara manual gitu di
Metamas atau di Coinbase wallet gitu ya. Terus kalian tinggal import wallet
kalian dengan cara nge-copyent key-nya pakai yang cara ini gitu ya.
Jadi kalau kalian belum ada nih, belum ada wallet-nya, kalian tinggal copy aja
di sini gitu ya. Terus kasih nama wallet kalian ya. Nih kalian kan harus ganti
kan. Kalau kalian lihat tadi yang gua tulis cash wallet list itu ada Dafis
strip basis strip wallet karena gua kasih namanya sendiri di sini. Jadi
namanya itu bisa beda bisa aja Kelvin base wallet itu juga bisa gitu ya. Terus
kalian tinggal ganti ya private keyaknya kalian bisa import langsung aja private
key kalian sendiri di sini ya. E terserah kalian mau import dari Metamask
atau dari Coinbase Wallet itu terserah atau Reby Wallet terserah yang penting
dari wallet kalian gitu ya. Terus ya udah kalau kudalian
tuh bakal bisa lihat nih kayak gua tadi yang cash world list
muncul di sini gitu ya. Nah, kalian juga bisa ngecek ya eh address world kalian
misalnya kayak gini ya. Ini gua copy ya. Wal address strip account dari si Davis
base wallet gitu. Ini masukin password dari laptop kalian.
Oke, ulangnya salah masukin. Eh,
oke ini ya e address word dari gua gitu ya. Jadi masukin aja eh password yang
sudah kalian bikin dari awal gitu. Oke, kalian juga bisa ngecek balance ya pakai
cash balance ini. Tapi gua lewatin aja. Nah, by the way kalian juga perlu ya ada
base polnya feth. Jadi kalau kalian lihat di sini nih gua
punya ya token ada 0,3 Etherium di wallet gua gitu ya
dari base testnet gitu ya. Jadi kalau kalian mempunya kalian bisa ke ini aja
ya ke super chain ya. ini kalian bisa request for dari sini atau kalian bisa
masuk aja ke dalam e Telegram-nya Base Indo dan mungkin nge-chat gua ya atau
teman-teman yang ada di situ yang mungkin mau ngasih kalian gitu.
Nah, next-nya kita bisa ke deployment ya. Kita langsung di deploy. Nah,
sebenarnya ada dua cara ya. Kalian bisa nge-deploy secara manual. Jadi enggak
pakai script yang kayak gua udah bikin tadi. Tapi kan kita udah bikin script
kan. Jadi kita bakal cara pakai cara yang di bawah aja yang menggunakan
script deployment karena lebih bagus dan lebih mudah gitu ya. Oke, langkah
pertama adalah kita harus ekspor dulu kita ke global ya. Karena kan kalau
kalian lihat tadi di script dia itu bakal ngambil deployer priv key-nya dari
vm.invu in ya jadi kita bakal ngambil dari environment virtualnya. Jadi kita
copy aja tadi di sini ya. Dan kita cuman harus ganti ganti yang your wallet name.
Jadi wallet name kita tadi ya Daf strip base strip wallet
ya. Kita enter. Masukin lagi password yang sudah kalian bikin. Dan udah ya
udah masuk. Setelah udah masuk kita tinggal copy
semuanya di sini ya. Comen untuk ng-deeploy script-nya.
Dia bakal manggil kan e for script terus pad dari file script kita ya RPC-nya
yang mana broadcast gitu kan. Terus account yaitu si world kita Dafis Base
W.
Oke, ini ada typo ya, Teman-teman ya. Ini gua malah nulis RPG game ya. Jadi
RPS game. Oke, kita ulang lagi ya.
Oke, dia bakal nge-deploy.
Oke, kita tunggu dulu.
Nah, kalian bisa lihat nih semua logging yang ada karena kita udah ngelakuin log
di sini gitu ya. Nah, kita bisa lihat nih deployer address-nya siapa yaitu gua
sendiri ya. Balance-nya ada berapa? Ada empat Etherium di address gua yang ini
ya. Ya, of course empat Etherium adalah eh sepol doang ya, testnet doang ya.
Networknya B testnet. Dan kalian bisa lihat nih di sini rock
paper scissors yaitu game kita itu di deploy di address ini ox22 bla bla bla
bla. Nah, inilah contract address dari si RPS game kita. Jadi, kita copy dulu
ya. Gua komen dulu di sini ya. Nah, di sini. Terus coba ya kita coba
buka basec di sini.
Oke, kita coba ganti dulu ya. Jangan lupa ganti dulu networknya ke base
testnet. kita copy di sini address yang tadi.
Oke. Ee jangan lupa buat masukin dulu password-nya ya.
Oke, nice. Kita udah punya ya di sini kita udah berhasil nge-deeploy
sucses ya kotak dash-nya Ox22 tadi ya. Benar. Coba kita refresh lagi deh.
Nah, udah benar ya. Nah, tapi di sini kalau kalian ke bagian kontrak ya, dia
itu cuma muncul hasing doang nih. Terus dia bilang nih, "Are you a contract
creator? Verify and publish your contract source code today." Kita ini
belum keverify gitu ya, belum kepublish kontraknya.
Sehingga orang-orang yang lihat ini kalau kali kalau dia pakai app kalian
terus dia lihat kontrak addressnya begini ya bakal kabur semuanya gitu ya.
Ini pasti scam gitu ya. Bahasa enggak di-verify kontraknya gitu kan. Nah, maka
dari itu ya next step dari ini ya ke bawah kita masuk ke contract
verification ya. Gua bakal verification ya menggunakan sourcify yang tadi gua
bilang kalian harus dapetin dulu scan API yang tadi gua sudah set di ee
sebelum-sebelumnya. Kalian bisa langsung aja ke dashboardnya si terus bikin aja
gratis ya. Masukin ke DNV-nya terus verify contract pakai kayak gini
komennya. Kita copy aja dulu. Coba kita copy dulu ya ke sini aja. Nah, pertama
kita bakal masukin dulu contract address kita ke ganti ya yang your devel
contract jadi contract address kita. Dan next-nya kita harus ganti ya your
wallet name. Semua your wallet name ini jadi wallet yang mau kita deploy gitu
ya. Yang tadi Dafis base wallet. Kalau in your case ya berarti world yang
kalian sudah daftarin gitu ya. Terus udah itu doang yang perlu diganti kita
copy lagi ya. Terus kita masukin ke dalam sini copasnya langsung masukin
password dan dia lagi verifying submitting
dan berhasil gitu ya. Submitted contract verification respons-nya. Oke, kita
balik lagi ke basec. Kita tinggal refresh.
And then your contract is verified gitu ya. Jadi asalkan kontrak kalian itu ada
checkmark hijau di atasnya itu berarti udah keverify dengan benar gitu ya. Dan
udah bisa lihat nih ini source code dari RPS Game Soul kita ya. bisa lihat ya
semua kodenya dan karena kita juga import dari library-nya si IRC 721 ya
karena kan gua kan mau pakai NFT right? Nah di sini udah eh muncul juga nih
kode-kode dari ERC 721 karena kan basically itu smart kontrak juga karena
kita tinggal pai library-nya gitu ya. Dan kalian juga bisa ya kalau ngescroll
ke bawah sini paling bawah itu muncul Abi-nya ya kontrak ABI. Nah, kontrak MBI
ini adalah yang dipakai di front end kalian untuk pakai smart kontraknya, ya.
Jadi, ini penting banget. Kalian harus copy ini kalau mau pakai eh smart
kontrak kalian diintegrate ke front end-nya gitu ya, di kontrak-nya.
Dan next-nya kalian juga udah bisa buat nge-re and write contract ya. Ini buat
ngetes nih kontrak kalian tuh eh jalannya gimana, ada function apa aja.
Kay misalnya di sini ada balance off gitu ya. Ini karena gua ada masukin eh
e open zaplin contract tadi gitu ya. Terus gua juga bisa nge-create game nih.
Misalnya gua nge-create game ini harus connect dulu ya. Connect wallet dulu.
Oke kita coba pakai metamask kita write ya getah
dia bakal pakai base poli ya kan. Kita confirm.
Nah udah berhasil ya. Coba kita baca ya. Kita read contract games-nya ada apa aja
gitu ya. coba eh ke nol gitu ya.
Oke, coba kita ke refresh eh games zero.
Oke, coba satu.
Oke, games pertama ya dia itu udah eh muncul nih address gua tadi. Nanti
tinggal player dua gabung terus kita udah bisa main nih. Karena kakak ini
kantu tuh harus ada dua player dulu yang gabung baru bisa main. Kalau cuman satu
orang e enggak bisa gitu ya. Nah, gimana caranya kalau kalian tuh mau nyoba semua
ini dalam dep nyata gitu ya, dalam yang udah dibikin. Sebenarnya gua udah bikin
juga ya. Oke. Nah, kalau kalian mau ngecek secara langsung ya, cobain secara
langsung game-game-nya terus main sama teman-teman kalian gitu ya, kalian bisa
aja eh masuk ya ke base-workshop-pi.
Nah, di sini gua sebenarnya udah integrate eh kontrak tadi ke dalam front
end. Di sini bisa lihat ada 50-an game lebih gitu ya. Misalnya gua connect
wallet dulu.
Oke. Nah, di sini bisa dilihat nih ada my room ya atau room yang memang punya
gua dan juga available rooms yang memang masih kosong nih bisa kalian join
game-nya gitu ya. Misalnya gua coba view rooms yang game ke-35 gitu yang di mana
gua main sama address si ox8515. Nah, harusnya itu address gua sendiri
sih. Nah, di sini gua menang ya ternyata ya gua menang dan pemenangnya adalah si
OX 449 yaitu ya gua sendiri sih sebenarnya. Terus gua bisa ngeklaim
Victory NFT di sini. Nah, tapi misalnya kalau kalian tuh
belum jalan gitu ya, ini yang gua kalah.
Coba yang belum jalan ada enggak ya? Nah, kayak gini ya. Misalnya kalian
belum jalan nih nanti gimana nih? Nah, di sini gua bikin game-nya itu lebih
interaktif gitu ya. Kalian bisa pilih rock, Papers, Caesar ya atau misalnya
random gitu mau yang mana gitu ya. Tuh, mau yang mana. Terus tinggal disapit
move terus yang menang siapa langsung didetermine gitu, Guys. Jadi kalau
kalian mau coba bisa langsung aja ke sini dan gua juga bakal nge-drop link
ini di kolom description gitu ya. Oke, jadi itu aja untuk cara buat nge-deploy
dengan foundry ya, smart contractnya. Kalian bisa ulang lagi aja video ini
kalau kalian tuh banyak ng-skip. Oke, gua saranin kalau kalian tuh langsung
coba aja biar langsung cobain pertama kali gimana caranya buat e nge-deploy
smart contract dengan foundry. Eh, terus kalau kalian memang misalnya enggak ada
sepolianya, Ethereum Solia on base, eh kalian bisa join Telegram Bas Indo aja.
Gua bakal taruh juga semua sosial tentang Base Indonesia di bawah dan
kalian bisa nge-chat gua atau kalian bisa tanya orang-orang ada yang punya
enggak untuk kalian dapetin atau cara yang paling gampangnya adalah kalian ke
super chain tadi ya ee yang tadi ya super chain dari si
optimismnya ini bisa di langsung minta aja tapi kalian harus sign in dulu ya
gitu guys. Oke jadi segitu aja buat video kali ini. Gua bakal lanjut buat
video-video selanjutnya untuk matemateri yang lebih bagus. Eh, mult materi
selanjutnya kayak diupload di Foodhead, terus cara pakai tool-tols di base kayak
nanti bakal ada account base account onschain kit gitu ya, mini kit ya.
Kalian juga bisa bikin eh e-agen kalian sendiri dengan base gitu. Ada banyak di
sini dan kalian selalu bisa untuk balik ke dokumentasi gua di sini jav. Kitboot.
itu free, kalian bisa pakai dan ya it's free for you guys to use. And kalau
kalian mau masuk lagi lebih dalam untuk gimana cara jadi contct developer atau
mau cari tim buat hacketon, ikut-ikut hacket gede, dapat duit banyak gitu ya,
kalian bisa join aja langsung ke Telegram-nya Base Indo, Discord-nya Base
Indo, dan juga semua social base Indo gitu ya. Bisa juga kontak gua atau defal
yang lainnya defal base kita satunya lagi Alex atau langsung konak aja ke
ambasador ambasador di base Indo ada banyak juga gitu guys ya. Jadi, eh ya,
that's it
Documentation: https://daviskelvin.gitbook.io X: https://x.com/davis_kelvin_ RPS Game Demo: https://base-workshop-pi.vercel.app/ Learn how to deploy smart contracts to the Base Network using Foundry from DevRel Base Indonesia! In this video, you'll learn step-by-step how to set up a Foundry environment, write smart contracts with Solidity, and deploy them to the Base network (Layer 2 Ethereum) — quickly, efficiently, and with significantly lower gas costs. What you'll learn: - How to install and setup Foundry - Create a simple smart contract with Solidity - Configure RPC & private keys for Base - Deploy smart contracts to the Base Testnet/Sepolia Tools used: - Foundry (Forge & Cast) - MetaMask / Coinbase Wallet - Base Sepolia Network RPC - Solidity Base is a Layer 2 Ethereum platform built by Coinbase, designed for developers looking to build low-cost, high-performance Web3 applications. If you have any questions, leave them in the comments, and I'll help you as much as I can! Don't forget to Like, Subscribe, and turn on notifications to get the latest blockchain & Web3 tutorials every week! 🇮🇩 Base Indonesia • Telegram: https://t.me/+OsncF43BqxM2Yzg1 • X: https://x.com/baseindo • Discord: https://discord.com/invite/baseindo #BaseNetwork #Foundry #SmartContract #Ethereum #Web3 #Blockchain #BaseChain #FoundryTutorial #Solidity