WEBVTT
Kind: captions
Language: en

00:00:26.240 --> 00:00:28.870 align:start position:0%
 
install<00:00:26.880><c> the</c><00:00:27.119><c> the</c><00:00:27.400><c> dependencies</c><00:00:28.400><c> and</c><00:00:28.640><c> while</c>

00:00:28.870 --> 00:00:28.880 align:start position:0%
install the the dependencies and while
 

00:00:28.880 --> 00:00:30.310 align:start position:0%
install the the dependencies and while
this<00:00:28.960><c> is</c><00:00:29.119><c> running</c><00:00:29.439><c> this</c><00:00:29.599><c> takes</c><00:00:30.039><c> couple</c>

00:00:30.310 --> 00:00:30.320 align:start position:0%
this is running this takes couple
 

00:00:30.320 --> 00:00:32.310 align:start position:0%
this is running this takes couple
seconds<00:00:30.920><c> while</c><00:00:31.080><c> this</c><00:00:31.199><c> is</c><00:00:31.359><c> running</c><00:00:32.000><c> I'm</c><00:00:32.160><c> going</c>

00:00:32.310 --> 00:00:32.320 align:start position:0%
seconds while this is running I'm going
 

00:00:32.320 --> 00:00:34.470 align:start position:0%
seconds while this is running I'm going
to<00:00:32.480><c> quickly</c><00:00:32.759><c> explain</c><00:00:33.040><c> you</c><00:00:33.200><c> what</c><00:00:33.320><c> mud</c><00:00:33.640><c> is</c><00:00:34.000><c> so</c>

00:00:34.470 --> 00:00:34.480 align:start position:0%
to quickly explain you what mud is so
 

00:00:34.480 --> 00:00:36.990 align:start position:0%
to quickly explain you what mud is so
mud<00:00:34.800><c> is</c><00:00:34.879><c> a</c><00:00:35.040><c> fully</c><00:00:35.360><c> onchain</c><00:00:36.320><c> uh</c><00:00:36.480><c> well</c><00:00:36.600><c> mud</c><00:00:36.840><c> is</c><00:00:36.920><c> a</c>

00:00:36.990 --> 00:00:37.000 align:start position:0%
mud is a fully onchain uh well mud is a
 

00:00:37.000 --> 00:00:38.670 align:start position:0%
mud is a fully onchain uh well mud is a
full<00:00:37.239><c> stack</c><00:00:37.520><c> framework</c><00:00:37.960><c> for</c><00:00:38.120><c> building</c><00:00:38.399><c> fully</c>

00:00:38.670 --> 00:00:38.680 align:start position:0%
full stack framework for building fully
 

00:00:38.680 --> 00:00:41.350 align:start position:0%
full stack framework for building fully
onchain<00:00:39.160><c> games</c><00:00:39.760><c> or</c><00:00:40.000><c> really</c><00:00:40.239><c> any</c><00:00:40.440><c> onchain</c><00:00:41.120><c> app</c>

00:00:41.350 --> 00:00:41.360 align:start position:0%
onchain games or really any onchain app
 

00:00:41.360 --> 00:00:44.270 align:start position:0%
onchain games or really any onchain app
that<00:00:41.440><c> you</c><00:00:41.559><c> want</c><00:00:41.640><c> to</c><00:00:42.120><c> build</c><00:00:43.120><c> and</c><00:00:43.280><c> now</c><00:00:43.480><c> that</c><00:00:43.719><c> the</c>

00:00:44.270 --> 00:00:44.280 align:start position:0%
that you want to build and now that the
 

00:00:44.280 --> 00:00:46.510 align:start position:0%
that you want to build and now that the
um<00:00:44.520><c> dependencies</c><00:00:45.200><c> have</c><00:00:45.360><c> been</c><00:00:45.640><c> installed</c><00:00:46.399><c> we</c>

00:00:46.510 --> 00:00:46.520 align:start position:0%
um dependencies have been installed we
 

00:00:46.520 --> 00:00:49.029 align:start position:0%
um dependencies have been installed we
can<00:00:46.879><c> start</c><00:00:47.199><c> the</c><00:00:47.440><c> local</c><00:00:47.719><c> Dev</c><00:00:47.960><c> Runner</c><00:00:48.879><c> which</c>

00:00:49.029 --> 00:00:49.039 align:start position:0%
can start the local Dev Runner which
 

00:00:49.039 --> 00:00:52.150 align:start position:0%
can start the local Dev Runner which
will<00:00:49.360><c> start</c><00:00:50.039><c> a</c><00:00:50.680><c> uh</c><00:00:50.840><c> client</c><00:00:51.120><c> Dev</c><00:00:51.360><c> Runner</c><00:00:51.960><c> and</c><00:00:52.079><c> it</c>

00:00:52.150 --> 00:00:52.160 align:start position:0%
will start a uh client Dev Runner and it
 

00:00:52.160 --> 00:00:54.349 align:start position:0%
will start a uh client Dev Runner and it
will<00:00:52.359><c> also</c><00:00:52.559><c> start</c><00:00:52.800><c> a</c><00:00:52.960><c> contract</c><00:00:53.359><c> Dev</c><00:00:53.600><c> Runner</c>

00:00:54.349 --> 00:00:54.359 align:start position:0%
will also start a contract Dev Runner
 

00:00:54.359 --> 00:00:56.709 align:start position:0%
will also start a contract Dev Runner
and<00:00:54.559><c> it</c><00:00:54.640><c> will</c><00:00:54.879><c> also</c><00:00:55.079><c> start</c><00:00:55.320><c> a</c><00:00:55.480><c> local</c><00:00:55.719><c> node</c><00:00:56.480><c> and</c>

00:00:56.709 --> 00:00:56.719 align:start position:0%
and it will also start a local node and
 

00:00:56.719 --> 00:00:58.830 align:start position:0%
and it will also start a local node and
it<00:00:56.840><c> will</c><00:00:57.079><c> also</c><00:00:57.359><c> start</c><00:00:57.960><c> the</c><00:00:58.160><c> local</c><00:00:58.519><c> World</c>

00:00:58.830 --> 00:00:58.840 align:start position:0%
it will also start the local World
 

00:00:58.840 --> 00:01:01.029 align:start position:0%
it will also start the local World
Explorer

00:01:01.029 --> 00:01:01.039 align:start position:0%
Explorer
 

00:01:01.039 --> 00:01:02.430 align:start position:0%
Explorer
all<00:01:01.160><c> right</c><00:01:01.440><c> the</c><00:01:01.600><c> first</c><00:01:01.840><c> thing</c><00:01:02.079><c> we're</c><00:01:02.239><c> going</c><00:01:02.320><c> to</c>

00:01:02.430 --> 00:01:02.440 align:start position:0%
all right the first thing we're going to
 

00:01:02.440 --> 00:01:14.510 align:start position:0%
all right the first thing we're going to
have<00:01:02.559><c> a</c><00:01:02.680><c> look</c><00:01:02.960><c> at</c><00:01:03.960><c> is</c><00:01:04.519><c> our</c>

00:01:14.510 --> 00:01:14.520 align:start position:0%
 
 

00:01:14.520 --> 00:01:20.830 align:start position:0%
 
client<00:01:15.520><c> our</c>

00:01:20.830 --> 00:01:20.840 align:start position:0%
 
 

00:01:20.840 --> 00:01:23.469 align:start position:0%
 
Cent<00:01:21.840><c> need</c><00:01:22.119><c> the</c><00:01:22.240><c> video</c><00:01:22.479><c> to</c>

00:01:23.469 --> 00:01:23.479 align:start position:0%
Cent need the video to
 

00:01:23.479 --> 00:01:25.710 align:start position:0%
Cent need the video to
start<00:01:24.479><c> there</c><00:01:24.560><c> you</c><00:01:24.720><c> go</c><00:01:24.920><c> all</c><00:01:25.040><c> right</c><00:01:25.400><c> so</c><00:01:25.560><c> the</c>

00:01:25.710 --> 00:01:25.720 align:start position:0%
start there you go all right so the
 

00:01:25.720 --> 00:01:26.670 align:start position:0%
start there you go all right so the
first<00:01:25.920><c> thing</c><00:01:26.040><c> we're</c><00:01:26.200><c> going</c><00:01:26.280><c> to</c><00:01:26.360><c> have</c><00:01:26.439><c> a</c><00:01:26.560><c> look</c>

00:01:26.670 --> 00:01:26.680 align:start position:0%
first thing we're going to have a look
 

00:01:26.680 --> 00:01:28.910 align:start position:0%
first thing we're going to have a look
at<00:01:26.960><c> is</c><00:01:27.159><c> our</c>

00:01:28.910 --> 00:01:28.920 align:start position:0%
at is our
 

00:01:28.920 --> 00:01:31.030 align:start position:0%
at is our
client<00:01:30.000><c> for</c><00:01:30.200><c> that</c><00:01:30.320><c> we're</c><00:01:30.439><c> going</c><00:01:30.520><c> to</c><00:01:30.720><c> open</c><00:01:30.920><c> the</c>

00:01:31.030 --> 00:01:31.040 align:start position:0%
client for that we're going to open the
 

00:01:31.040 --> 00:01:34.149 align:start position:0%
client for that we're going to open the
URL<00:01:31.439><c> that's</c><00:01:31.680><c> printed</c><00:01:32.040><c> here</c><00:01:32.799><c> and</c><00:01:33.520><c> mud</c><00:01:33.880><c> has</c>

00:01:34.149 --> 00:01:34.159 align:start position:0%
URL that's printed here and mud has
 

00:01:34.159 --> 00:01:36.789 align:start position:0%
URL that's printed here and mud has
onboarding<00:01:34.880><c> and</c><00:01:35.040><c> smart</c><00:01:35.399><c> accounts</c><00:01:35.759><c> built</c><00:01:36.040><c> in</c>

00:01:36.789 --> 00:01:36.799 align:start position:0%
onboarding and smart accounts built in
 

00:01:36.799 --> 00:01:38.789 align:start position:0%
onboarding and smart accounts built in
so<00:01:37.119><c> we</c><00:01:37.280><c> could</c><00:01:37.479><c> connect</c><00:01:38.040><c> uh</c><00:01:38.200><c> our</c><00:01:38.439><c> external</c>

00:01:38.789 --> 00:01:38.799 align:start position:0%
so we could connect uh our external
 

00:01:38.799 --> 00:01:40.389 align:start position:0%
so we could connect uh our external
wallet<00:01:39.079><c> here</c><00:01:39.240><c> or</c><00:01:39.399><c> we</c><00:01:39.520><c> can</c><00:01:39.720><c> just</c><00:01:39.880><c> create</c><00:01:40.119><c> a</c>

00:01:40.389 --> 00:01:40.399 align:start position:0%
wallet here or we can just create a
 

00:01:40.399 --> 00:01:42.789 align:start position:0%
wallet here or we can just create a
fresh<00:01:40.720><c> wallet</c><00:01:41.079><c> that's</c><00:01:41.320><c> pasy</c><00:01:41.680><c> controlled</c><00:01:42.119><c> here</c>

00:01:42.789 --> 00:01:42.799 align:start position:0%
fresh wallet that's pasy controlled here
 

00:01:42.799 --> 00:01:45.109 align:start position:0%
fresh wallet that's pasy controlled here
um<00:01:42.960><c> and</c><00:01:43.119><c> then</c><00:01:43.320><c> create</c><00:01:43.520><c> a</c><00:01:43.680><c> local</c><00:01:44.600><c> uh</c><00:01:44.719><c> session</c>

00:01:45.109 --> 00:01:45.119 align:start position:0%
um and then create a local uh session
 

00:01:45.119 --> 00:01:47.190 align:start position:0%
um and then create a local uh session
account<00:01:45.600><c> that</c><00:01:46.200><c> received</c><00:01:46.560><c> some</c><00:01:46.719><c> delegations</c>

00:01:47.190 --> 00:01:47.200 align:start position:0%
account that received some delegations
 

00:01:47.200 --> 00:01:49.230 align:start position:0%
account that received some delegations
from<00:01:47.360><c> the</c><00:01:47.479><c> main</c><00:01:47.680><c> wallet</c><00:01:48.439><c> um</c><00:01:48.560><c> so</c><00:01:48.719><c> that</c><00:01:48.920><c> now</c><00:01:49.119><c> we</c>

00:01:49.230 --> 00:01:49.240 align:start position:0%
from the main wallet um so that now we
 

00:01:49.240 --> 00:01:51.870 align:start position:0%
from the main wallet um so that now we
can<00:01:49.439><c> move</c><00:01:49.759><c> our</c><00:01:50.360><c> little</c><00:01:50.640><c> color</c><00:01:50.960><c> blop</c><00:01:51.360><c> here</c><00:01:51.680><c> in</c>

00:01:51.870 --> 00:01:51.880 align:start position:0%
can move our little color blop here in
 

00:01:51.880 --> 00:01:54.789 align:start position:0%
can move our little color blop here in
this<00:01:52.200><c> in</c><00:01:52.320><c> this</c><00:01:52.479><c> world</c><00:01:53.360><c> um</c><00:01:53.560><c> without</c><00:01:53.960><c> having</c><00:01:54.159><c> to</c>

00:01:54.789 --> 00:01:54.799 align:start position:0%
this in this world um without having to
 

00:01:54.799 --> 00:01:57.709 align:start position:0%
this in this world um without having to
hit<00:01:55.000><c> approve</c><00:01:55.399><c> every</c><00:01:55.600><c> time</c><00:01:55.880><c> again</c><00:01:56.880><c> all</c><00:01:57.039><c> right</c>

00:01:57.709 --> 00:01:57.719 align:start position:0%
hit approve every time again all right
 

00:01:57.719 --> 00:02:00.670 align:start position:0%
hit approve every time again all right
let's<00:01:58.000><c> have</c><00:01:58.119><c> a</c><00:01:58.320><c> look</c><00:01:58.640><c> at</c><00:01:58.960><c> the</c><00:01:59.240><c> Explorer</c>

00:02:00.670 --> 00:02:00.680 align:start position:0%
let's have a look at the Explorer
 

00:02:00.680 --> 00:02:04.350 align:start position:0%
let's have a look at the Explorer
next<00:02:02.039><c> um</c><00:02:03.039><c> for</c><00:02:03.240><c> that</c><00:02:03.399><c> we'll</c><00:02:03.680><c> click</c><00:02:03.960><c> this</c><00:02:04.119><c> little</c>

00:02:04.350 --> 00:02:04.360 align:start position:0%
next um for that we'll click this little
 

00:02:04.360 --> 00:02:06.630 align:start position:0%
next um for that we'll click this little
button<00:02:04.640><c> here</c><00:02:04.799><c> on</c><00:02:04.960><c> the</c><00:02:05.079><c> bottom</c><00:02:05.719><c> in</c><00:02:05.880><c> mut</c><00:02:06.240><c> all</c><00:02:06.439><c> the</c>

00:02:06.630 --> 00:02:06.640 align:start position:0%
button here on the bottom in mut all the
 

00:02:06.640 --> 00:02:09.469 align:start position:0%
button here on the bottom in mut all the
state<00:02:07.079><c> is</c><00:02:07.240><c> stored</c><00:02:07.680><c> in</c><00:02:07.880><c> tables</c><00:02:08.759><c> and</c><00:02:09.000><c> the</c><00:02:09.160><c> state</c>

00:02:09.469 --> 00:02:09.479 align:start position:0%
state is stored in tables and the state
 

00:02:09.479 --> 00:02:11.110 align:start position:0%
state is stored in tables and the state
the<00:02:09.599><c> onchain</c><00:02:10.080><c> state</c><00:02:10.399><c> is</c><00:02:10.560><c> automatically</c>

00:02:11.110 --> 00:02:11.120 align:start position:0%
the onchain state is automatically
 

00:02:11.120 --> 00:02:12.790 align:start position:0%
the onchain state is automatically
synchronized<00:02:11.720><c> with</c><00:02:11.840><c> the</c><00:02:11.959><c> client</c><00:02:12.400><c> and</c><00:02:12.560><c> also</c>

00:02:12.790 --> 00:02:12.800 align:start position:0%
synchronized with the client and also
 

00:02:12.800 --> 00:02:14.949 align:start position:0%
synchronized with the client and also
with<00:02:12.920><c> the</c><00:02:13.080><c> Explorer</c><00:02:13.599><c> here</c><00:02:14.120><c> so</c><00:02:14.319><c> we</c><00:02:14.519><c> as</c><00:02:14.599><c> we</c><00:02:14.720><c> move</c>

00:02:14.949 --> 00:02:14.959 align:start position:0%
with the Explorer here so we as we move
 

00:02:14.959 --> 00:02:17.270 align:start position:0%
with the Explorer here so we as we move
around<00:02:15.280><c> our</c><00:02:15.480><c> little</c><00:02:15.680><c> color</c><00:02:16.000><c> blob</c><00:02:16.800><c> um</c><00:02:17.040><c> we</c><00:02:17.160><c> can</c>

00:02:17.270 --> 00:02:17.280 align:start position:0%
around our little color blob um we can
 

00:02:17.280 --> 00:02:19.270 align:start position:0%
around our little color blob um we can
see<00:02:17.720><c> the</c><00:02:17.920><c> state</c><00:02:18.319><c> on</c><00:02:18.480><c> the</c><00:02:18.599><c> bottom</c><00:02:18.959><c> in</c><00:02:19.080><c> our</c>

00:02:19.270 --> 00:02:19.280 align:start position:0%
see the state on the bottom in our
 

00:02:19.280 --> 00:02:21.589 align:start position:0%
see the state on the bottom in our
Explorer<00:02:19.760><c> update</c><00:02:20.519><c> and</c><00:02:20.640><c> we</c><00:02:20.720><c> can</c><00:02:20.879><c> also</c><00:02:21.160><c> explore</c>

00:02:21.589 --> 00:02:21.599 align:start position:0%
Explorer update and we can also explore
 

00:02:21.599 --> 00:02:23.589 align:start position:0%
Explorer update and we can also explore
all<00:02:21.720><c> the</c><00:02:21.840><c> other</c><00:02:22.040><c> state</c><00:02:22.319><c> that's</c><00:02:22.480><c> in</c><00:02:22.599><c> this</c><00:02:22.760><c> app</c>

00:02:23.589 --> 00:02:23.599 align:start position:0%
all the other state that's in this app
 

00:02:23.599 --> 00:02:25.350 align:start position:0%
all the other state that's in this app
and<00:02:23.760><c> then</c><00:02:24.000><c> another</c><00:02:24.239><c> very</c><00:02:24.400><c> useful</c><00:02:24.760><c> feature</c>

00:02:25.350 --> 00:02:25.360 align:start position:0%
and then another very useful feature
 

00:02:25.360 --> 00:02:27.790 align:start position:0%
and then another very useful feature
that<00:02:25.560><c> the</c><00:02:25.800><c> Explorer</c><00:02:26.319><c> gives</c><00:02:26.560><c> us</c><00:02:26.920><c> is</c><00:02:27.560><c> um</c><00:02:27.680><c> the</c>

00:02:27.790 --> 00:02:27.800 align:start position:0%
that the Explorer gives us is um the
 

00:02:27.800 --> 00:02:29.229 align:start position:0%
that the Explorer gives us is um the
interact<00:02:28.319><c> tab</c><00:02:28.640><c> where</c><00:02:28.760><c> it</c><00:02:28.879><c> basically</c>

00:02:29.229 --> 00:02:29.239 align:start position:0%
interact tab where it basically
 

00:02:29.239 --> 00:02:31.070 align:start position:0%
interact tab where it basically
automatically<00:02:29.959><c> synchronizes</c><00:02:30.599><c> the</c><00:02:30.760><c> entire</c>

00:02:31.070 --> 00:02:31.080 align:start position:0%
automatically synchronizes the entire
 

00:02:31.080 --> 00:02:33.630 align:start position:0%
automatically synchronizes the entire
ABI<00:02:31.599><c> of</c><00:02:31.720><c> the</c><00:02:31.840><c> world</c><00:02:32.200><c> dynamically</c><00:02:33.200><c> um</c><00:02:33.360><c> and</c><00:02:33.480><c> then</c>

00:02:33.630 --> 00:02:33.640 align:start position:0%
ABI of the world dynamically um and then
 

00:02:33.640 --> 00:02:36.390 align:start position:0%
ABI of the world dynamically um and then
we<00:02:33.800><c> can</c><00:02:34.400><c> use</c><00:02:34.680><c> the</c><00:02:34.840><c> interact</c><00:02:35.760><c> functionality</c>

00:02:36.390 --> 00:02:36.400 align:start position:0%
we can use the interact functionality
 

00:02:36.400 --> 00:02:38.550 align:start position:0%
we can use the interact functionality
here<00:02:36.800><c> to</c><00:02:37.080><c> interact</c><00:02:37.480><c> with</c><00:02:37.560><c> the</c><00:02:37.640><c> world</c><00:02:37.959><c> directly</c>

00:02:38.550 --> 00:02:38.560 align:start position:0%
here to interact with the world directly
 

00:02:38.560 --> 00:02:40.390 align:start position:0%
here to interact with the world directly
um<00:02:38.680><c> for</c><00:02:38.920><c> stuff</c><00:02:39.200><c> that</c><00:02:39.360><c> doesn't</c><00:02:39.599><c> have</c><00:02:39.800><c> UI</c><00:02:40.239><c> yet</c>

00:02:40.390 --> 00:02:40.400 align:start position:0%
um for stuff that doesn't have UI yet
 

00:02:40.400 --> 00:02:42.229 align:start position:0%
um for stuff that doesn't have UI yet
for<00:02:40.560><c> example</c><00:02:41.239><c> so</c><00:02:41.360><c> in</c><00:02:41.519><c> this</c><00:02:41.720><c> case</c><00:02:41.959><c> we're</c><00:02:42.159><c> going</c>

00:02:42.229 --> 00:02:42.239 align:start position:0%
for example so in this case we're going
 

00:02:42.239 --> 00:02:44.070 align:start position:0%
for example so in this case we're going
to<00:02:42.440><c> move</c><00:02:42.959><c> another</c><00:02:43.400><c> we're</c><00:02:43.519><c> going</c><00:02:43.640><c> to</c><00:02:43.720><c> spawn</c>

00:02:44.070 --> 00:02:44.080 align:start position:0%
to move another we're going to spawn
 

00:02:44.080 --> 00:02:47.030 align:start position:0%
to move another we're going to spawn
another<00:02:44.519><c> color</c><00:02:44.800><c> blop</c><00:02:45.560><c> and</c><00:02:46.000><c> uh</c><00:02:46.080><c> move</c><00:02:46.280><c> it</c><00:02:46.480><c> around</c>

00:02:47.030 --> 00:02:47.040 align:start position:0%
another color blop and uh move it around
 

00:02:47.040 --> 00:02:51.270 align:start position:0%
another color blop and uh move it around
by<00:02:47.280><c> calling</c><00:02:47.599><c> the</c><00:02:47.720><c> functions</c><00:02:48.200><c> directly</c><00:02:48.560><c> on</c><00:02:48.720><c> the</c>

00:02:51.270 --> 00:02:51.280 align:start position:0%
 
 

00:02:51.280 --> 00:02:53.309 align:start position:0%
 
Explorer<00:02:52.280><c> and</c>

00:02:53.309 --> 00:02:53.319 align:start position:0%
Explorer and
 

00:02:53.319 --> 00:02:56.390 align:start position:0%
Explorer and
then<00:02:54.319><c> now</c><00:02:54.640><c> it's</c><00:02:54.879><c> time</c><00:02:55.080><c> to</c><00:02:55.480><c> add</c><00:02:55.720><c> some</c><00:02:56.159><c> game</c>

00:02:56.390 --> 00:02:56.400 align:start position:0%
then now it's time to add some game
 

00:02:56.400 --> 00:02:58.550 align:start position:0%
then now it's time to add some game
mechanics<00:02:56.840><c> to</c><00:02:57.000><c> add</c><00:02:57.159><c> some</c><00:02:57.400><c> functionality</c><00:02:58.400><c> for</c>

00:02:58.550 --> 00:02:58.560 align:start position:0%
mechanics to add some functionality for
 

00:02:58.560 --> 00:02:59.830 align:start position:0%
mechanics to add some functionality for
that<00:02:58.680><c> we're</c><00:02:58.800><c> going</c><00:02:58.920><c> to</c><00:02:59.080><c> open</c><00:02:59.319><c> our</c><00:02:59.560><c> fav</c>

00:02:59.830 --> 00:02:59.840 align:start position:0%
that we're going to open our fav
 

00:02:59.840 --> 00:03:02.110 align:start position:0%
that we're going to open our fav
favorite<00:03:00.360><c> code</c><00:03:00.640><c> editor</c><00:03:01.599><c> and</c><00:03:01.760><c> we're</c><00:03:01.879><c> going</c><00:03:02.000><c> to</c>

00:03:02.110 --> 00:03:02.120 align:start position:0%
favorite code editor and we're going to
 

00:03:02.120 --> 00:03:04.670 align:start position:0%
favorite code editor and we're going to
open<00:03:02.720><c> uh</c><00:03:02.840><c> in</c><00:03:02.959><c> this</c><00:03:03.080><c> case</c><00:03:03.280><c> the</c><00:03:03.400><c> move</c><00:03:03.720><c> system</c>

00:03:04.670 --> 00:03:04.680 align:start position:0%
open uh in this case the move system
 

00:03:04.680 --> 00:03:07.149 align:start position:0%
open uh in this case the move system
systems<00:03:05.200><c> are</c><00:03:05.640><c> what</c><00:03:05.879><c> mud</c><00:03:06.120><c> uses</c><00:03:06.440><c> to</c><00:03:06.640><c> implement</c>

00:03:07.149 --> 00:03:07.159 align:start position:0%
systems are what mud uses to implement
 

00:03:07.159 --> 00:03:09.630 align:start position:0%
systems are what mud uses to implement
the<00:03:07.360><c> logic</c><00:03:07.840><c> of</c><00:03:08.000><c> the</c><00:03:08.120><c> game</c><00:03:08.720><c> so</c><00:03:08.959><c> the</c><00:03:09.080><c> move</c><00:03:09.319><c> system</c>

00:03:09.630 --> 00:03:09.640 align:start position:0%
the logic of the game so the move system
 

00:03:09.640 --> 00:03:11.350 align:start position:0%
the logic of the game so the move system
here<00:03:09.840><c> for</c><00:03:10.000><c> example</c><00:03:10.360><c> implements</c><00:03:10.840><c> the</c><00:03:10.959><c> logic</c><00:03:11.200><c> to</c>

00:03:11.350 --> 00:03:11.360 align:start position:0%
here for example implements the logic to
 

00:03:11.360 --> 00:03:12.830 align:start position:0%
here for example implements the logic to
move<00:03:11.560><c> a</c><00:03:11.760><c> player</c><00:03:12.239><c> and</c><00:03:12.360><c> this</c><00:03:12.440><c> is</c><00:03:12.560><c> where</c><00:03:12.720><c> we're</c>

00:03:12.830 --> 00:03:12.840 align:start position:0%
move a player and this is where we're
 

00:03:12.840 --> 00:03:14.910 align:start position:0%
move a player and this is where we're
going<00:03:12.920><c> to</c><00:03:13.120><c> add</c><00:03:13.680><c> um</c><00:03:13.840><c> one</c><00:03:13.959><c> more</c><00:03:14.200><c> game</c><00:03:14.440><c> mechanic</c>

00:03:14.910 --> 00:03:14.920 align:start position:0%
going to add um one more game mechanic
 

00:03:14.920 --> 00:03:17.350 align:start position:0%
going to add um one more game mechanic
which<00:03:15.040><c> is</c><00:03:15.480><c> the</c><00:03:15.640><c> ability</c><00:03:16.080><c> to</c><00:03:16.360><c> teleport</c><00:03:16.920><c> a</c>

00:03:17.350 --> 00:03:17.360 align:start position:0%
which is the ability to teleport a
 

00:03:17.360 --> 00:03:20.550 align:start position:0%
which is the ability to teleport a
player<00:03:18.239><c> um</c><00:03:18.360><c> in</c><00:03:18.519><c> this</c><00:03:18.680><c> case</c><00:03:19.159><c> we</c><00:03:19.319><c> can</c><00:03:20.120><c> uh</c><00:03:20.280><c> we</c><00:03:20.400><c> we</c>

00:03:20.550 --> 00:03:20.560 align:start position:0%
player um in this case we can uh we we
 

00:03:20.560 --> 00:03:22.550 align:start position:0%
player um in this case we can uh we we
just<00:03:20.720><c> receive</c><00:03:21.040><c> two</c><00:03:21.360><c> input</c><00:03:21.680><c> variables</c><00:03:22.440><c> and</c>

00:03:22.550 --> 00:03:22.560 align:start position:0%
just receive two input variables and
 

00:03:22.560 --> 00:03:24.149 align:start position:0%
just receive two input variables and
then<00:03:22.680><c> we're</c><00:03:22.840><c> going</c><00:03:22.920><c> to</c><00:03:23.120><c> write</c><00:03:23.440><c> them</c><00:03:23.879><c> to</c><00:03:24.080><c> the</c>

00:03:24.149 --> 00:03:24.159 align:start position:0%
then we're going to write them to the
 

00:03:24.159 --> 00:03:26.670 align:start position:0%
then we're going to write them to the
onchain<00:03:24.720><c> table</c><00:03:25.599><c> um</c><00:03:25.760><c> and</c><00:03:25.879><c> then</c><00:03:26.080><c> as</c><00:03:26.200><c> we</c><00:03:26.360><c> write</c>

00:03:26.670 --> 00:03:26.680 align:start position:0%
onchain table um and then as we write
 

00:03:26.680 --> 00:03:27.910 align:start position:0%
onchain table um and then as we write
that<00:03:26.840><c> it's</c><00:03:26.959><c> going</c><00:03:27.080><c> to</c><00:03:27.159><c> be</c><00:03:27.319><c> synchronized</c><00:03:27.840><c> to</c>

00:03:27.910 --> 00:03:27.920 align:start position:0%
that it's going to be synchronized to
 

00:03:27.920 --> 00:03:30.869 align:start position:0%
that it's going to be synchronized to
the<00:03:28.080><c> client</c><00:03:28.480><c> again</c><00:03:29.480><c> and</c><00:03:29.599><c> then</c><00:03:29.959><c> once</c><00:03:30.159><c> we</c><00:03:30.360><c> save</c>

00:03:30.869 --> 00:03:30.879 align:start position:0%
the client again and then once we save
 

00:03:30.879 --> 00:03:32.550 align:start position:0%
the client again and then once we save
once<00:03:31.000><c> we</c><00:03:31.200><c> hit</c><00:03:31.360><c> save</c><00:03:31.680><c> here</c><00:03:31.959><c> after</c><00:03:32.159><c> we're</c><00:03:32.360><c> done</c>

00:03:32.550 --> 00:03:32.560 align:start position:0%
once we hit save here after we're done
 

00:03:32.560 --> 00:03:35.470 align:start position:0%
once we hit save here after we're done
implementing<00:03:33.040><c> this</c><00:03:33.400><c> function</c><00:03:34.400><c> the</c><00:03:35.159><c> death</c>

00:03:35.470 --> 00:03:35.480 align:start position:0%
implementing this function the death
 

00:03:35.480 --> 00:03:38.670 align:start position:0%
implementing this function the death
Runner<00:03:36.000><c> is</c><00:03:36.159><c> going</c><00:03:36.360><c> to</c><00:03:36.640><c> pick</c><00:03:36.959><c> up</c><00:03:37.959><c> the</c><00:03:38.080><c> change</c>

00:03:38.670 --> 00:03:38.680 align:start position:0%
Runner is going to pick up the change
 

00:03:38.680 --> 00:03:40.910 align:start position:0%
Runner is going to pick up the change
here<00:03:39.360><c> um</c><00:03:39.480><c> in</c><00:03:39.599><c> the</c><00:03:39.760><c> contract</c><00:03:40.519><c> and</c><00:03:40.680><c> it's</c><00:03:40.799><c> going</c>

00:03:40.910 --> 00:03:40.920 align:start position:0%
here um in the contract and it's going
 

00:03:40.920 --> 00:03:43.869 align:start position:0%
here um in the contract and it's going
to<00:03:41.400><c> redeploy</c><00:03:42.400><c> redeploy</c><00:03:42.959><c> upgrade</c><00:03:43.680><c> it's</c>

00:03:43.869 --> 00:03:43.879 align:start position:0%
to redeploy redeploy upgrade it's
 

00:03:43.879 --> 00:03:45.110 align:start position:0%
to redeploy redeploy upgrade it's
actually<00:03:44.080><c> not</c><00:03:44.239><c> going</c><00:03:44.360><c> to</c><00:03:44.439><c> redeploy</c><00:03:44.840><c> the</c><00:03:44.920><c> world</c>

00:03:45.110 --> 00:03:45.120 align:start position:0%
actually not going to redeploy the world
 

00:03:45.120 --> 00:03:46.949 align:start position:0%
actually not going to redeploy the world
but<00:03:45.200><c> it's</c><00:03:45.280><c> going</c><00:03:45.360><c> to</c><00:03:45.480><c> upgrade</c><00:03:45.920><c> the</c><00:03:46.040><c> system</c><00:03:46.840><c> um</c>

00:03:46.949 --> 00:03:46.959 align:start position:0%
but it's going to upgrade the system um
 

00:03:46.959 --> 00:03:48.910 align:start position:0%
but it's going to upgrade the system um
so<00:03:47.080><c> we</c><00:03:47.239><c> still</c><00:03:47.400><c> see</c><00:03:47.599><c> our</c><00:03:47.760><c> state</c><00:03:48.040><c> here</c><00:03:48.519><c> and</c><00:03:48.680><c> now</c>

00:03:48.910 --> 00:03:48.920 align:start position:0%
so we still see our state here and now
 

00:03:48.920 --> 00:03:50.509 align:start position:0%
so we still see our state here and now
immediately<00:03:49.519><c> the</c><00:03:49.599><c> new</c><00:03:49.799><c> ABI</c><00:03:50.239><c> has</c><00:03:50.360><c> been</c>

00:03:50.509 --> 00:03:50.519 align:start position:0%
immediately the new ABI has been
 

00:03:50.519 --> 00:03:52.110 align:start position:0%
immediately the new ABI has been
synchronized<00:03:51.040><c> and</c><00:03:51.159><c> we</c><00:03:51.239><c> can</c><00:03:51.400><c> now</c><00:03:51.560><c> interact</c>

00:03:52.110 --> 00:03:52.120 align:start position:0%
synchronized and we can now interact
 

00:03:52.120 --> 00:03:54.190 align:start position:0%
synchronized and we can now interact
with<00:03:52.319><c> this</c><00:03:53.000><c> uh</c><00:03:53.319><c> with</c><00:03:53.439><c> this</c><00:03:53.599><c> new</c><00:03:53.799><c> function</c><00:03:54.079><c> that</c>

00:03:54.190 --> 00:03:54.200 align:start position:0%
with this uh with this new function that
 

00:03:54.200 --> 00:03:57.470 align:start position:0%
with this uh with this new function that
we've<00:03:54.400><c> just</c><00:03:55.040><c> built</c><00:03:56.040><c> the</c><00:03:56.200><c> teleport</c>

00:03:57.470 --> 00:03:57.480 align:start position:0%
we've just built the teleport
 

00:03:57.480 --> 00:04:00.309 align:start position:0%
we've just built the teleport
function<00:03:58.480><c> all</c><00:03:58.720><c> right</c><00:03:59.799><c> I</c><00:03:59.920><c> think</c><00:04:00.040><c> this</c><00:04:00.159><c> is</c>

00:04:00.309 --> 00:04:00.319 align:start position:0%
function all right I think this is
 

00:04:00.319 --> 00:04:01.990 align:start position:0%
function all right I think this is
pretty<00:04:00.519><c> good</c><00:04:00.680><c> so</c><00:04:00.840><c> far</c><00:04:01.079><c> so</c><00:04:01.439><c> it's</c><00:04:01.599><c> time</c><00:04:01.799><c> to</c>

00:04:01.990 --> 00:04:02.000 align:start position:0%
pretty good so far so it's time to
 

00:04:02.000 --> 00:04:04.270 align:start position:0%
pretty good so far so it's time to
deploy<00:04:02.560><c> to</c><00:04:02.720><c> a</c><00:04:02.840><c> chain</c><00:04:03.680><c> um</c><00:04:03.799><c> for</c><00:04:04.000><c> that</c><00:04:04.159><c> we're</c>

00:04:04.270 --> 00:04:04.280 align:start position:0%
deploy to a chain um for that we're
 

00:04:04.280 --> 00:04:06.750 align:start position:0%
deploy to a chain um for that we're
going<00:04:04.360><c> to</c><00:04:04.560><c> run</c><00:04:04.799><c> the</c><00:04:04.959><c> deploy</c><00:04:05.319><c> command</c><00:04:06.280><c> and</c><00:04:06.560><c> this</c>

00:04:06.750 --> 00:04:06.760 align:start position:0%
going to run the deploy command and this
 

00:04:06.760 --> 00:04:08.110 align:start position:0%
going to run the deploy command and this
in<00:04:06.879><c> this</c><00:04:07.040><c> case</c><00:04:07.200><c> we're</c><00:04:07.319><c> going</c><00:04:07.400><c> to</c><00:04:07.680><c> deploy</c><00:04:08.040><c> to</c>

00:04:08.110 --> 00:04:08.120 align:start position:0%
in this case we're going to deploy to
 

00:04:08.120 --> 00:04:10.869 align:start position:0%
in this case we're going to deploy to
the<00:04:08.200><c> r</c><00:04:08.720><c> rol</c><00:04:09.120><c> light</c><00:04:09.360><c> chain</c><00:04:10.200><c> and</c><00:04:10.400><c> we</c><00:04:10.519><c> didn't</c><00:04:10.760><c> have</c>

00:04:10.869 --> 00:04:10.879 align:start position:0%
the r rol light chain and we didn't have
 

00:04:10.879 --> 00:04:13.110 align:start position:0%
the r rol light chain and we didn't have
to<00:04:11.000><c> fund</c><00:04:11.360><c> our</c><00:04:11.680><c> deployer</c><00:04:12.200><c> account</c><00:04:12.560><c> here</c>

00:04:13.110 --> 00:04:13.120 align:start position:0%
to fund our deployer account here
 

00:04:13.120 --> 00:04:14.509 align:start position:0%
to fund our deployer account here
because<00:04:13.439><c> it's</c><00:04:13.599><c> actually</c><00:04:13.799><c> going</c><00:04:13.920><c> to</c><00:04:14.040><c> use</c><00:04:14.239><c> Smart</c>

00:04:14.509 --> 00:04:14.519 align:start position:0%
because it's actually going to use Smart
 

00:04:14.519 --> 00:04:16.229 align:start position:0%
because it's actually going to use Smart
accounts<00:04:14.879><c> again</c><00:04:15.280><c> and</c><00:04:15.439><c> the</c><00:04:15.599><c> deployments</c><00:04:16.120><c> are</c>

00:04:16.229 --> 00:04:16.239 align:start position:0%
accounts again and the deployments are
 

00:04:16.239 --> 00:04:18.349 align:start position:0%
accounts again and the deployments are
going<00:04:16.320><c> to</c><00:04:16.440><c> be</c><00:04:16.680><c> sponsored</c><00:04:17.680><c> um</c><00:04:17.799><c> so</c><00:04:17.959><c> now</c><00:04:18.120><c> we</c><00:04:18.239><c> have</c>

00:04:18.349 --> 00:04:18.359 align:start position:0%
going to be sponsored um so now we have
 

00:04:18.359 --> 00:04:21.030 align:start position:0%
going to be sponsored um so now we have
deployed<00:04:18.720><c> to</c><00:04:18.840><c> real</c><00:04:19.040><c> chain</c><00:04:19.799><c> and</c><00:04:20.040><c> we</c><00:04:20.120><c> can</c><00:04:20.359><c> now</c><00:04:20.880><c> um</c>

00:04:21.030 --> 00:04:21.040 align:start position:0%
deployed to real chain and we can now um
 

00:04:21.040 --> 00:04:22.990 align:start position:0%
deployed to real chain and we can now um
run<00:04:21.280><c> the</c><00:04:21.400><c> client</c><00:04:21.720><c> again</c><00:04:22.040><c> against</c><00:04:22.440><c> this</c>

00:04:22.990 --> 00:04:23.000 align:start position:0%
run the client again against this
 

00:04:23.000 --> 00:04:25.230 align:start position:0%
run the client again against this
version<00:04:23.320><c> that</c><00:04:23.440><c> we</c><00:04:23.560><c> have</c><00:04:23.680><c> just</c><00:04:24.000><c> deployed</c><00:04:25.000><c> um</c>

00:04:25.230 --> 00:04:25.240 align:start position:0%
version that we have just deployed um
 

00:04:25.240 --> 00:04:28.909 align:start position:0%
version that we have just deployed um
and<00:04:25.440><c> then</c><00:04:25.919><c> we</c><00:04:26.080><c> can</c><00:04:26.720><c> open</c><00:04:26.960><c> our</c><00:04:27.120><c> browser</c><00:04:27.919><c> again</c>

00:04:28.909 --> 00:04:28.919 align:start position:0%
and then we can open our browser again
 

00:04:28.919 --> 00:04:30.749 align:start position:0%
and then we can open our browser again
and<00:04:29.320><c> connect</c><00:04:29.840><c> wallet</c><00:04:30.080><c> again</c><00:04:30.280><c> this</c><00:04:30.400><c> time</c><00:04:30.560><c> to</c>

00:04:30.749 --> 00:04:30.759 align:start position:0%
and connect wallet again this time to
 

00:04:30.759 --> 00:04:33.909 align:start position:0%
and connect wallet again this time to
real<00:04:30.960><c> chain</c><00:04:31.919><c> um</c><00:04:32.199><c> and</c><00:04:32.400><c> then</c><00:04:33.160><c> yeah</c><00:04:33.360><c> we're</c><00:04:33.520><c> in</c><00:04:33.800><c> and</c>

00:04:33.909 --> 00:04:33.919 align:start position:0%
real chain um and then yeah we're in and
 

00:04:33.919 --> 00:04:36.390 align:start position:0%
real chain um and then yeah we're in and
we<00:04:34.039><c> can</c><00:04:34.320><c> again</c><00:04:34.600><c> move</c><00:04:34.880><c> around</c><00:04:35.759><c> um</c><00:04:36.000><c> in</c><00:04:36.160><c> our</c>

00:04:36.390 --> 00:04:36.400 align:start position:0%
we can again move around um in our
 

00:04:36.400 --> 00:04:39.550 align:start position:0%
we can again move around um in our
little<00:04:36.919><c> world</c><00:04:37.919><c> if</c><00:04:38.000><c> you</c><00:04:38.120><c> want</c><00:04:38.240><c> to</c><00:04:38.680><c> try</c><00:04:38.960><c> out</c><00:04:39.360><c> this</c>

00:04:39.550 --> 00:04:39.560 align:start position:0%
little world if you want to try out this
 

00:04:39.560 --> 00:04:41.390 align:start position:0%
little world if you want to try out this
game<00:04:39.919><c> I</c><00:04:40.000><c> won't</c><00:04:40.360><c> promise</c><00:04:40.680><c> it's</c><00:04:40.880><c> fun</c><00:04:41.199><c> but</c><00:04:41.320><c> you</c>

00:04:41.390 --> 00:04:41.400 align:start position:0%
game I won't promise it's fun but you
 

00:04:41.400 --> 00:04:43.830 align:start position:0%
game I won't promise it's fun but you
can<00:04:41.560><c> go</c><00:04:41.680><c> on</c><00:04:41.880><c> workshop.</c><00:04:42.479><c> mde</c><00:04:43.199><c> and</c><00:04:43.400><c> and</c><00:04:43.560><c> try</c><00:04:43.720><c> it</c>

00:04:43.830 --> 00:04:43.840 align:start position:0%
can go on workshop. mde and and try it
 

00:04:43.840 --> 00:04:44.990 align:start position:0%
can go on workshop. mde and and try it
out<00:04:44.000><c> try</c><00:04:44.160><c> the</c><00:04:44.240><c> onboarding</c><00:04:44.639><c> flow</c><00:04:44.840><c> and</c>

00:04:44.990 --> 00:04:45.000 align:start position:0%
out try the onboarding flow and
 

00:04:45.000 --> 00:04:47.990 align:start position:0%
out try the onboarding flow and
everything<00:04:45.960><c> and</c><00:04:46.360><c> if</c><00:04:46.600><c> this</c><00:04:47.240><c> made</c><00:04:47.440><c> you</c><00:04:47.680><c> a</c><00:04:47.800><c> little</c>

00:04:47.990 --> 00:04:48.000 align:start position:0%
everything and if this made you a little
 

00:04:48.000 --> 00:04:50.310 align:start position:0%
everything and if this made you a little
bit<00:04:48.199><c> curious</c><00:04:49.160><c> um</c><00:04:49.360><c> you</c><00:04:49.440><c> should</c><00:04:49.600><c> scan</c><00:04:49.880><c> this</c><00:04:50.000><c> QR</c>

00:04:50.310 --> 00:04:50.320 align:start position:0%
bit curious um you should scan this QR
 

00:04:50.320 --> 00:04:52.469 align:start position:0%
bit curious um you should scan this QR
code<00:04:50.639><c> because</c><00:04:50.880><c> there's</c><00:04:51.080><c> a</c><00:04:51.600><c> much</c><00:04:51.840><c> better</c><00:04:52.360><c> like</c>

00:04:52.469 --> 00:04:52.479 align:start position:0%
code because there's a much better like
 

00:04:52.479 --> 00:04:54.430 align:start position:0%
code because there's a much better like
longer<00:04:52.880><c> version</c><00:04:53.160><c> of</c><00:04:53.320><c> this</c><00:04:53.440><c> Workshop</c><00:04:54.240><c> that's</c>

00:04:54.430 --> 00:04:54.440 align:start position:0%
longer version of this Workshop that's
 

00:04:54.440 --> 00:04:56.230 align:start position:0%
longer version of this Workshop that's
going<00:04:54.520><c> to</c><00:04:54.600><c> be</c><00:04:54.720><c> held</c><00:04:54.919><c> tomorrow</c><00:04:55.240><c> at</c><00:04:55.400><c> Mud</c><00:04:55.639><c> day</c><00:04:56.000><c> and</c>

00:04:56.230 --> 00:04:56.240 align:start position:0%
going to be held tomorrow at Mud day and
 

00:04:56.240 --> 00:04:58.150 align:start position:0%
going to be held tomorrow at Mud day and
this<00:04:56.639><c> QR</c><00:04:56.960><c> code</c><00:04:57.160><c> is</c><00:04:57.280><c> going</c><00:04:57.360><c> to</c><00:04:57.479><c> bring</c><00:04:57.680><c> you</c><00:04:57.960><c> right</c>

00:04:58.150 --> 00:04:58.160 align:start position:0%
this QR code is going to bring you right
 

00:04:58.160 --> 00:05:00.230 align:start position:0%
this QR code is going to bring you right
there<00:04:58.840><c> um</c><00:04:59.080><c> frolic</c><00:04:59.680><c> from</c><00:04:59.800><c> our</c><00:04:59.919><c> team</c><00:05:00.080><c> is</c><00:05:00.160><c> going</c>

00:05:00.230 --> 00:05:00.240 align:start position:0%
there um frolic from our team is going
 

00:05:00.240 --> 00:05:01.510 align:start position:0%
there um frolic from our team is going
to<00:05:00.320><c> hold</c><00:05:00.520><c> that</c><00:05:00.680><c> and</c><00:05:00.840><c> he</c><00:05:01.039><c> he's</c><00:05:01.199><c> going</c><00:05:01.280><c> to</c><00:05:01.400><c> go</c>

00:05:01.510 --> 00:05:01.520 align:start position:0%
to hold that and he he's going to go
 

00:05:01.520 --> 00:05:05.189 align:start position:0%
to hold that and he he's going to go
into<00:05:01.759><c> much</c><00:05:01.880><c> more</c><00:05:02.199><c> detail</c><00:05:03.199><c> um</c><00:05:03.919><c> and</c><00:05:04.039><c> with</c><00:05:04.199><c> that</c>

00:05:05.189 --> 00:05:05.199 align:start position:0%
into much more detail um and with that
 

00:05:05.199 --> 00:05:08.610 align:start position:0%
into much more detail um and with that
we're

00:05:08.610 --> 00:05:08.620 align:start position:0%
 
 

00:05:08.620 --> 00:05:13.029 align:start position:0%
 
[Applause]

00:05:13.029 --> 00:05:13.039 align:start position:0%
[Applause]
 

00:05:13.039 --> 00:05:15.670 align:start position:0%
[Applause]
done<00:05:14.039><c> all</c><00:05:14.199><c> right</c><00:05:14.440><c> thank</c><00:05:14.600><c> you</c><00:05:14.840><c> let's</c><00:05:15.120><c> take</c><00:05:15.320><c> some</c>

00:05:15.670 --> 00:05:15.680 align:start position:0%
done all right thank you let's take some
 

00:05:15.680 --> 00:05:18.430 align:start position:0%
done all right thank you let's take some
live<00:05:16.080><c> questions</c><00:05:17.080><c> uh</c><00:05:17.240><c> what</c><00:05:17.400><c> is</c><00:05:17.520><c> the</c><00:05:17.720><c> tech</c><00:05:18.080><c> stack</c>

00:05:18.430 --> 00:05:18.440 align:start position:0%
live questions uh what is the tech stack
 

00:05:18.440 --> 00:05:22.469 align:start position:0%
live questions uh what is the tech stack
you're<00:05:18.680><c> building</c><00:05:19.280><c> on</c><00:05:20.280><c> so</c><00:05:20.840><c> um</c><00:05:21.080><c> this</c><00:05:21.160><c> is</c><00:05:21.759><c> mud</c><00:05:22.240><c> so</c>

00:05:22.469 --> 00:05:22.479 align:start position:0%
you're building on so um this is mud so
 

00:05:22.479 --> 00:05:24.710 align:start position:0%
you're building on so um this is mud so
mud<00:05:22.720><c> is</c><00:05:22.800><c> the</c><00:05:22.919><c> framework</c><00:05:23.400><c> the</c><00:05:23.560><c> the</c><00:05:23.720><c> main</c><00:05:23.919><c> piece</c>

00:05:24.710 --> 00:05:24.720 align:start position:0%
mud is the framework the the main piece
 

00:05:24.720 --> 00:05:27.029 align:start position:0%
mud is the framework the the main piece
um<00:05:24.880><c> and</c><00:05:25.039><c> then</c><00:05:25.520><c> m</c><00:05:25.759><c> is</c><00:05:25.880><c> evm</c><00:05:26.280><c> compatible</c><00:05:26.800><c> so</c><00:05:26.960><c> you</c>

00:05:27.029 --> 00:05:27.039 align:start position:0%
um and then m is evm compatible so you
 

00:05:27.039 --> 00:05:28.990 align:start position:0%
um and then m is evm compatible so you
can<00:05:27.280><c> literally</c><00:05:27.639><c> deploy</c><00:05:27.960><c> to</c><00:05:28.120><c> any</c><00:05:28.280><c> evm</c><00:05:28.680><c> chain</c>

00:05:28.990 --> 00:05:29.000 align:start position:0%
can literally deploy to any evm chain
 

00:05:29.000 --> 00:05:30.150 align:start position:0%
can literally deploy to any evm chain
there's<00:05:29.240><c> no</c>

00:05:30.150 --> 00:05:30.160 align:start position:0%
there's no
 

00:05:30.160 --> 00:05:32.390 align:start position:0%
there's no
um<00:05:30.639><c> yeah</c><00:05:30.880><c> any</c><00:05:31.080><c> any</c><00:05:31.240><c> chain</c><00:05:31.520><c> that</c><00:05:31.639><c> can</c><00:05:31.759><c> run</c><00:05:32.000><c> evm</c>

00:05:32.390 --> 00:05:32.400 align:start position:0%
um yeah any any chain that can run evm
 

00:05:32.400 --> 00:05:36.550 align:start position:0%
um yeah any any chain that can run evm
bite<00:05:32.680><c> code</c><00:05:33.520><c> is</c><00:05:33.720><c> is</c><00:05:33.840><c> basically</c><00:05:34.280><c> that</c><00:05:35.440><c> and</c><00:05:36.440><c> yeah</c>

00:05:36.550 --> 00:05:36.560 align:start position:0%
bite code is is basically that and yeah
 

00:05:36.560 --> 00:05:37.909 align:start position:0%
bite code is is basically that and yeah
we're<00:05:36.720><c> using</c><00:05:36.960><c> a</c><00:05:37.080><c> bunch</c><00:05:37.280><c> of</c><00:05:37.440><c> like</c><00:05:37.560><c> I</c><00:05:37.639><c> mean</c><00:05:37.800><c> we're</c>

00:05:37.909 --> 00:05:37.919 align:start position:0%
we're using a bunch of like I mean we're
 

00:05:37.919 --> 00:05:39.749 align:start position:0%
we're using a bunch of like I mean we're
using<00:05:38.280><c> all</c><00:05:38.479><c> the</c><00:05:38.919><c> all</c><00:05:39.039><c> the</c><00:05:39.240><c> libraries</c><00:05:39.639><c> that</c>

00:05:39.749 --> 00:05:39.759 align:start position:0%
using all the all the libraries that
 

00:05:39.759 --> 00:05:42.790 align:start position:0%
using all the all the libraries that
everybody<00:05:40.039><c> is</c><00:05:40.280><c> using</c><00:05:41.240><c> um</c><00:05:41.440><c> VM</c><00:05:41.880><c> permissionless</c>

00:05:42.790 --> 00:05:42.800 align:start position:0%
everybody is using um VM permissionless
 

00:05:42.800 --> 00:05:46.070 align:start position:0%
everybody is using um VM permissionless
and<00:05:42.960><c> so</c><00:05:43.120><c> on</c><00:05:43.840><c> so</c><00:05:44.840><c> perfect</c><00:05:45.280><c> so</c><00:05:45.479><c> I'm</c><00:05:45.680><c> going</c><00:05:45.880><c> to</c>

00:05:46.070 --> 00:05:46.080 align:start position:0%
and so on so perfect so I'm going to
 

00:05:46.080 --> 00:05:48.790 align:start position:0%
and so on so perfect so I'm going to
mark<00:05:46.520><c> that</c><00:05:46.880><c> as</c><00:05:47.199><c> answered</c><00:05:48.080><c> do</c><00:05:48.240><c> you</c><00:05:48.479><c> have</c>

00:05:48.790 --> 00:05:48.800 align:start position:0%
mark that as answered do you have
 

00:05:48.800 --> 00:05:51.309 align:start position:0%
mark that as answered do you have
differentiators<00:05:49.800><c> from</c><00:05:50.039><c> either</c><00:05:50.360><c> scan</c><00:05:50.880><c> SL</c>

00:05:51.309 --> 00:05:51.319 align:start position:0%
differentiators from either scan SL
 

00:05:51.319 --> 00:05:53.189 align:start position:0%
differentiators from either scan SL
block<00:05:52.080><c> that's</c><00:05:52.319><c> probably</c><00:05:52.520><c> a</c><00:05:52.680><c> question</c><00:05:52.880><c> for</c><00:05:53.080><c> the</c>

00:05:53.189 --> 00:05:53.199 align:start position:0%
block that's probably a question for the
 

00:05:53.199 --> 00:05:56.590 align:start position:0%
block that's probably a question for the
previous<00:05:53.479><c> stock</c><00:05:54.400><c> so</c><00:05:54.800><c> what's</c><00:05:55.120><c> Roto</c><00:05:55.680><c> light</c><00:05:56.479><c> uh</c>

00:05:56.590 --> 00:05:56.600 align:start position:0%
previous stock so what's Roto light uh
 

00:05:56.600 --> 00:05:59.029 align:start position:0%
previous stock so what's Roto light uh
Roto<00:05:57.000><c> light</c><00:05:57.199><c> is</c><00:05:57.440><c> just</c><00:05:57.639><c> our</c><00:05:58.039><c> our</c><00:05:58.400><c> test</c><00:05:58.680><c> net</c><00:05:58.960><c> that</c>

00:05:59.029 --> 00:05:59.039 align:start position:0%
Roto light is just our our test net that
 

00:05:59.039 --> 00:06:02.029 align:start position:0%
Roto light is just our our test net that
we're<00:05:59.199><c> running</c><00:06:00.080><c> um</c><00:06:00.319><c> it's</c><00:06:00.639><c> the</c><00:06:01.160><c> the</c><00:06:01.360><c> test</c><00:06:01.639><c> net</c>

00:06:02.029 --> 00:06:02.039 align:start position:0%
we're running um it's the the test net
 

00:06:02.039 --> 00:06:04.710 align:start position:0%
we're running um it's the the test net
that<00:06:02.199><c> belongs</c><00:06:02.520><c> to</c><00:06:02.720><c> Redstone</c><00:06:03.680><c> um</c><00:06:03.800><c> rolite</c><00:06:04.400><c> is</c><00:06:04.479><c> a</c>

00:06:04.710 --> 00:06:04.720 align:start position:0%
that belongs to Redstone um rolite is a
 

00:06:04.720 --> 00:06:07.309 align:start position:0%
that belongs to Redstone um rolite is a
type<00:06:05.039><c> of</c><00:06:05.280><c> redstone</c><00:06:06.080><c> if</c><00:06:06.199><c> you're</c><00:06:06.360><c> curious</c><00:06:07.199><c> um</c>

00:06:07.309 --> 00:06:07.319 align:start position:0%
type of redstone if you're curious um
 

00:06:07.319 --> 00:06:09.029 align:start position:0%
type of redstone if you're curious um
that's<00:06:07.479><c> why</c><00:06:07.639><c> it's</c><00:06:07.759><c> called</c><00:06:08.000><c> like</c><00:06:08.160><c> that</c><00:06:08.880><c> but</c>

00:06:09.029 --> 00:06:09.039 align:start position:0%
that's why it's called like that but
 

00:06:09.039 --> 00:06:11.629 align:start position:0%
that's why it's called like that but
yeah<00:06:09.160><c> it's</c><00:06:09.280><c> just</c><00:06:09.400><c> a</c><00:06:09.520><c> test</c><00:06:09.759><c> net</c><00:06:10.520><c> perfect</c><00:06:11.199><c> um</c><00:06:11.360><c> so</c>

00:06:11.629 --> 00:06:11.639 align:start position:0%
yeah it's just a test net perfect um so
 

00:06:11.639 --> 00:06:14.670 align:start position:0%
yeah it's just a test net perfect um so
we<00:06:11.880><c> actually</c><00:06:12.199><c> do</c><00:06:12.479><c> have</c><00:06:12.680><c> a</c><00:06:13.520><c> one</c><00:06:13.759><c> minute</c><00:06:14.199><c> for</c><00:06:14.440><c> any</c>

00:06:14.670 --> 00:06:14.680 align:start position:0%
we actually do have a one minute for any
 

00:06:14.680 --> 00:06:16.189 align:start position:0%
we actually do have a one minute for any
questions<00:06:15.039><c> from</c><00:06:15.240><c> the</c>

00:06:16.189 --> 00:06:16.199 align:start position:0%
questions from the
 

00:06:16.199 --> 00:06:19.990 align:start position:0%
questions from the
audience<00:06:17.639><c> no</c><00:06:18.639><c> all</c><00:06:18.800><c> right</c><00:06:19.039><c> cool</c><00:06:19.319><c> oh</c><00:06:19.520><c> we</c><00:06:19.599><c> do</c><00:06:19.840><c> have</c>

00:06:19.990 --> 00:06:20.000 align:start position:0%
audience no all right cool oh we do have
 

00:06:20.000 --> 00:06:23.230 align:start position:0%
audience no all right cool oh we do have
one<00:06:20.360><c> over</c>

00:06:23.230 --> 00:06:23.240 align:start position:0%
 
 

00:06:23.240 --> 00:06:24.790 align:start position:0%
 
there

00:06:24.790 --> 00:06:24.800 align:start position:0%
there
 

00:06:24.800 --> 00:06:28.909 align:start position:0%
there
let's<00:06:25.800><c> that's</c><00:06:25.919><c> a</c><00:06:26.120><c> great</c><00:06:26.360><c> question</c><00:06:26.880><c> um</c><00:06:27.919><c> it's</c>

00:06:28.909 --> 00:06:28.919 align:start position:0%
let's that's a great question um it's
 

00:06:28.919 --> 00:06:30.189 align:start position:0%
let's that's a great question um it's
you<00:06:29.160><c> could</c><00:06:29.280><c> you</c><00:06:29.400><c> could</c><00:06:29.759><c> technically</c>

00:06:30.189 --> 00:06:30.199 align:start position:0%
you could you could technically
 

00:06:30.199 --> 00:06:31.950 align:start position:0%
you could you could technically
represent<00:06:30.560><c> them</c><00:06:30.800><c> as</c><00:06:30.960><c> mappings</c><00:06:31.599><c> it's</c><00:06:31.840><c> it's</c>

00:06:31.950 --> 00:06:31.960 align:start position:0%
represent them as mappings it's it's
 

00:06:31.960 --> 00:06:33.550 align:start position:0%
represent them as mappings it's it's
very<00:06:32.160><c> similar</c><00:06:32.479><c> to</c><00:06:32.639><c> mappings</c><00:06:33.080><c> like</c><00:06:33.199><c> you</c><00:06:33.400><c> just</c>

00:06:33.550 --> 00:06:33.560 align:start position:0%
very similar to mappings like you just
 

00:06:33.560 --> 00:06:35.430 align:start position:0%
very similar to mappings like you just
have<00:06:33.759><c> the</c><00:06:33.880><c> keys</c><00:06:34.680><c> um</c><00:06:34.800><c> that</c><00:06:34.919><c> are</c><00:06:35.080><c> the</c><00:06:35.199><c> keys</c><00:06:35.360><c> in</c>

00:06:35.430 --> 00:06:35.440 align:start position:0%
have the keys um that are the keys in
 

00:06:35.440 --> 00:06:36.710 align:start position:0%
have the keys um that are the keys in
the<00:06:35.560><c> mapping</c><00:06:35.880><c> and</c><00:06:35.960><c> then</c><00:06:36.080><c> you</c><00:06:36.160><c> have</c><00:06:36.280><c> the</c><00:06:36.400><c> data</c>

00:06:36.710 --> 00:06:36.720 align:start position:0%
the mapping and then you have the data
 

00:06:36.720 --> 00:06:38.830 align:start position:0%
the mapping and then you have the data
that's<00:06:36.919><c> the</c><00:06:37.039><c> value</c><00:06:37.280><c> in</c><00:06:37.360><c> the</c><00:06:37.440><c> mapping</c><00:06:38.280><c> um</c><00:06:38.639><c> we're</c>

00:06:38.830 --> 00:06:38.840 align:start position:0%
that's the value in the mapping um we're
 

00:06:38.840 --> 00:06:40.350 align:start position:0%
that's the value in the mapping um we're
not<00:06:39.039><c> actually</c><00:06:39.280><c> doing</c><00:06:39.520><c> it</c><00:06:39.720><c> as</c><00:06:39.840><c> mappings</c>

00:06:40.350 --> 00:06:40.360 align:start position:0%
not actually doing it as mappings
 

00:06:40.360 --> 00:06:42.070 align:start position:0%
not actually doing it as mappings
because<00:06:40.639><c> we</c><00:06:41.000><c> we</c><00:06:41.120><c> do</c><00:06:41.280><c> some</c><00:06:41.440><c> custom</c><00:06:41.800><c> stuff</c><00:06:42.000><c> to</c>

00:06:42.070 --> 00:06:42.080 align:start position:0%
because we we do some custom stuff to
 

00:06:42.080 --> 00:06:43.589 align:start position:0%
because we we do some custom stuff to
make<00:06:42.199><c> it</c><00:06:42.319><c> more</c><00:06:42.479><c> efficiently</c><00:06:43.240><c> uh</c><00:06:43.400><c> more</c>

00:06:43.589 --> 00:06:43.599 align:start position:0%
make it more efficiently uh more
 

00:06:43.599 --> 00:06:45.309 align:start position:0%
make it more efficiently uh more
efficient<00:06:44.000><c> but</c><00:06:44.560><c> you</c><00:06:44.680><c> could</c><00:06:44.880><c> Implement</c><00:06:45.199><c> them</c>

00:06:45.309 --> 00:06:45.319 align:start position:0%
efficient but you could Implement them
 

00:06:45.319 --> 00:06:47.950 align:start position:0%
efficient but you could Implement them
as<00:06:45.440><c> mappings</c>

00:06:47.950 --> 00:06:47.960 align:start position:0%
 
 

00:06:47.960 --> 00:06:50.870 align:start position:0%
 
yeah<00:06:48.960><c> like</c><00:06:49.360><c> I</c><00:06:49.440><c> mean</c><00:06:49.880><c> I</c><00:06:50.039><c> I</c><00:06:50.120><c> have</c><00:06:50.319><c> 10</c><00:06:50.520><c> seconds</c>

00:06:50.870 --> 00:06:50.880 align:start position:0%
yeah like I mean I I have 10 seconds
 

00:06:50.880 --> 00:06:52.830 align:start position:0%
yeah like I mean I I have 10 seconds
left<00:06:51.080><c> so</c><00:06:51.360><c> I</c><00:06:51.479><c> I</c><00:06:51.759><c> I</c><00:06:51.840><c> can't</c><00:06:52.000><c> go</c><00:06:52.120><c> into</c><00:06:52.319><c> detail</c><00:06:52.720><c> but</c>

00:06:52.830 --> 00:06:52.840 align:start position:0%
left so I I I can't go into detail but
 

00:06:52.840 --> 00:06:54.150 align:start position:0%
left so I I I can't go into detail but
you<00:06:52.919><c> can</c><00:06:53.120><c> check</c><00:06:53.280><c> out</c><00:06:53.440><c> the</c><00:06:53.560><c> code</c><00:06:53.759><c> it's</c><00:06:53.919><c> open</c>

00:06:54.150 --> 00:06:54.160 align:start position:0%
you can check out the code it's open
 

00:06:54.160 --> 00:06:56.670 align:start position:0%
you can check out the code it's open
source<00:06:55.080><c> um</c><00:06:55.599><c> but</c><00:06:55.800><c> yeah</c><00:06:56.039><c> it's</c><00:06:56.240><c> it's</c><00:06:56.360><c> like</c><00:06:56.479><c> we're</c>

00:06:56.670 --> 00:06:56.680 align:start position:0%
source um but yeah it's it's like we're
 

00:06:56.680 --> 00:06:58.510 align:start position:0%
source um but yeah it's it's like we're
just<00:06:56.800><c> using</c><00:06:57.319><c> like</c><00:06:57.520><c> assembly</c><00:06:57.960><c> to</c><00:06:58.120><c> basically</c>

00:06:58.510 --> 00:06:58.520 align:start position:0%
just using like assembly to basically
 

00:06:58.520 --> 00:07:01.360 align:start position:0%
just using like assembly to basically
pack<00:06:58.720><c> the</c><00:06:58.840><c> data</c><00:06:59.039><c> as</c><00:06:59.160><c> a</c>

