1 00:00:05,162 --> 00:00:16,028 Hello, my friends, and welcome back to 3DS Cast, the podcast about the Nintendo 3DS handheld line of gaming machines. 2 00:00:16,028 --> 00:00:21,241 And now I'm gonna probably gotta start talking about DS because I just got a DSI Excel, y'all. 3 00:00:21,451 --> 00:00:22,763 my god, it's so exciting. 4 00:00:22,763 --> 00:00:23,243 I love it. 5 00:00:23,243 --> 00:00:23,773 Did you hear that? 6 00:00:23,773 --> 00:00:24,424 Did you hear that click? 7 00:00:24,424 --> 00:00:25,304 Did you hear it? 8 00:00:25,304 --> 00:00:26,324 Right there. 9 00:00:28,266 --> 00:00:29,767 we're not here to talk about that. 10 00:00:29,767 --> 00:00:30,847 I'm just excited about it. 11 00:00:30,847 --> 00:00:32,266 We're not here to talk about that. 12 00:00:32,266 --> 00:00:33,047 We have a guest again. 13 00:00:33,047 --> 00:00:34,478 My God, we're getting guests, y'all. 14 00:00:34,478 --> 00:00:35,278 This is exciting. 15 00:00:35,278 --> 00:00:37,660 ~ joining us from you're the UK, right? 16 00:00:37,660 --> 00:00:38,958 You're in the UK if am I remembering 17 00:00:38,958 --> 00:00:39,472 that correctly? 18 00:00:39,472 --> 00:00:40,222 All right. 19 00:00:40,222 --> 00:00:45,526 Joining us in the UK is D Walker109, the developer of CloudPoint. 20 00:00:45,527 --> 00:00:50,310 Now, if you're not sure what CloudPoint is, do you want to explain it, D Walker, or do you want me to? 21 00:00:50,591 --> 00:00:51,632 Fine, either way. 22 00:00:51,632 --> 00:00:52,157 Go for it. 23 00:00:52,157 --> 00:00:53,357 I will do that. 24 00:00:53,427 --> 00:00:54,217 hello everyone. 25 00:00:54,217 --> 00:00:55,928 ~ thanks for having me, Brian. 26 00:00:55,928 --> 00:00:56,698 Appreciate it. 27 00:00:56,698 --> 00:00:59,359 ~ it's exciting to be here talking to you. 28 00:00:59,359 --> 00:01:00,699 Yeah, so CloudPoint 29 00:01:00,699 --> 00:01:07,921 CloudPoint is homebrew for the three DS line of consoles, so three DS, two DS, etcetera, etcetera. 30 00:01:07,921 --> 00:01:18,066 ~ and it's a cloud sync tool for your for your save games and your ext data, which is ~ a sort of 31 00:01:18,066 --> 00:01:22,267 a a a specific ish ~ a specific facet of how save games work on the 3ds. 32 00:01:22,267 --> 00:01:24,798 But yeah, it's a set it's a cloud sync tool for those things. 33 00:01:24,798 --> 00:01:29,599 So if you've got a switch or something like that, you'll probably know that you can save your game. 34 00:01:29,599 --> 00:01:36,021 And if you've got switch online, it will be there on your other console when you go to use it, if you use more than one system. 35 00:01:36,021 --> 00:01:39,722 ~ And that's what CloudPoint enables, essentially. 36 00:01:39,722 --> 00:01:46,494 It's not quite as slick as as an as a a built in system like that, but fundamentally it lets you 37 00:01:46,698 --> 00:01:58,255 have a number of different consoles and use all of them to play all of your games without losing progress, which ~ which is something I certainly needed and now now have and so do 38 00:01:58,255 --> 00:01:58,675 you. 39 00:01:58,675 --> 00:02:00,506 So yeah, that's CloudPoint. 40 00:02:01,909 --> 00:02:09,332 And folks, I gotta tell you, I I discovered this late later in my 3DS homebrew journey. 41 00:02:09,332 --> 00:02:12,273 And once I discovered it, I was elated. 42 00:02:12,754 --> 00:02:16,464 Because, you know, I mean, I'm gonna bring up checkpoint. 43 00:02:16,996 --> 00:02:18,737 I'm sure that was an inspiration. 44 00:02:18,737 --> 00:02:20,077 We'll talk about that. 45 00:02:20,077 --> 00:02:20,327 We'll 46 00:02:20,327 --> 00:02:21,518 talk about that. 47 00:02:21,678 --> 00:02:26,650 and checkpoint, if you're unaware, saves your saves to your SD card. 48 00:02:26,686 --> 00:02:32,798 And then it's up to you to get them off your SD card and upload them to wherever, Dropbox, Mega, whatever you use. 49 00:02:32,798 --> 00:02:38,749 ~ so checkpoint is wonderful, but it's a little more involved if you want to do that. 50 00:02:38,749 --> 00:02:47,372 ~ but you should do that, by the way, if you have a mod in three DS, get checkpoint, back up your saves, seriously, because these things fail, these things break, and you never 51 00:02:47,372 --> 00:02:47,862 know. 52 00:02:47,862 --> 00:02:49,162 You never know what's gonna happen. 53 00:02:49,162 --> 00:02:55,594 So I implore you, get checkpoint, get cloud point, regularly back up your saves, a little bit of effort. 54 00:02:55,594 --> 00:02:59,927 But it's so, so worth it because I'll just tell you a story. 55 00:02:59,927 --> 00:03:12,343 When I transferred my system from my ~ original 3D SXL to the new one, I thought all the saves would come over when they were built into the the game and everything and the on the 56 00:03:12,343 --> 00:03:14,075 SD card and blah, blah, blah. 57 00:03:14,075 --> 00:03:15,665 So I thought they would all come over. 58 00:03:15,665 --> 00:03:16,146 They don't. 59 00:03:16,146 --> 00:03:18,044 They don't. 60 00:03:18,044 --> 00:03:24,200 So I lost like I I was playing like a Yokai game and I lost like five hours. 61 00:03:24,734 --> 00:03:26,905 Because I hadn't backed it up in about a week. 62 00:03:27,325 --> 00:03:30,047 So back up your saves regularly, folks. 63 00:03:30,067 --> 00:03:31,588 If not daily, weekly. 64 00:03:31,588 --> 00:03:34,149 At the very least, back them up weekly. 65 00:03:34,149 --> 00:03:35,110 ~ 66 00:03:35,110 --> 00:03:38,071 check, checkpoint, cloud point, do them both. 67 00:03:38,171 --> 00:03:41,703 Because, you know, what you you got, what what do they say? 68 00:03:41,703 --> 00:03:43,574 Two is one and one is none. 69 00:03:43,574 --> 00:03:44,554 You know, 70 00:03:44,615 --> 00:03:52,899 seriously, that's that's the rule that you should do with your saves because you don't want to play Pokemon Black for 800 hours and then go, no, I lost everything. 71 00:03:52,899 --> 00:03:54,410 Yeah, back up everything. 72 00:03:54,410 --> 00:03:59,382 The nice thing about DS games is, you know, those are those are unencrypted, so you can just copy them. 73 00:03:59,382 --> 00:04:00,746 You don't need a special thing for that. 74 00:04:00,746 --> 00:04:02,988 ~ that's nice. 75 00:04:04,149 --> 00:04:10,555 So anyway, so CloudPoint is just a wonderful service, especially when I got a 2DS as well. 76 00:04:10,555 --> 00:04:12,817 So now I can sync them between the two. 77 00:04:13,118 --> 00:04:20,324 So how did because we talked about this a little bit before, but I'm dying to know, how did your journey with the 3DS get started? 78 00:04:21,122 --> 00:04:24,295 with a 3DS specifically, I came to it really late. 79 00:04:24,295 --> 00:04:28,899 So I've been playing games since the nineteen eighties. 80 00:04:28,899 --> 00:04:30,940 ~ been playing for a long time. 81 00:04:30,940 --> 00:04:40,028 And I've I've I've had pretty much every Nintendo and most like Sony systems and most Sega systems ~ since that time. 82 00:04:40,028 --> 00:04:49,176 ~ you know, Super Nintendo, N sixty four, GameCube, Wii, Wii U, all of that and switch now and I use all of those and I love them. 83 00:04:49,176 --> 00:04:49,936 But 84 00:04:50,314 --> 00:04:55,045 For for whatever reason, and I don't fully understand why, I just never had a three DS. 85 00:04:55,045 --> 00:04:58,326 I had a DS, ~ I had Game Boys, but I never had a three D S. 86 00:04:58,326 --> 00:04:59,727 I just kind of skipped it. 87 00:04:59,727 --> 00:05:00,684 I don't know why. 88 00:05:00,684 --> 00:05:10,289 I think a part of it might have been related to how how how kind of oppressive Nintendo's online stance was at the time. 89 00:05:10,289 --> 00:05:11,420 They they tied 90 00:05:11,420 --> 00:05:14,604 your your purchases to a single console, which I knew from having a Wii. 91 00:05:14,604 --> 00:05:20,282 And I always found that extremely frustrating and and and difficult to to to accept, I guess. 92 00:05:20,282 --> 00:05:20,572 ~ 93 00:05:20,572 --> 00:05:20,932 ~ 94 00:05:20,932 --> 00:05:22,543 it's it's it's so frustrating. 95 00:05:22,543 --> 00:05:23,794 Let me just jump in for a second. 96 00:05:23,794 --> 00:05:23,994 yeah. 97 00:05:23,994 --> 00:05:30,387 Nintendo does like so many really wonderful things and so many frustrating things, like what you just said. 98 00:05:30,387 --> 00:05:32,248 It's like, what are you doing? 99 00:05:32,248 --> 00:05:35,580 I love you, but I can't fully love you because I hate some of the things you do. 100 00:05:35,580 --> 00:05:36,712 Anyway, go on. 101 00:05:36,714 --> 00:05:38,706 Well yeah, they they they've got a lot better now. 102 00:05:38,706 --> 00:05:41,969 The the switch I would say has a pretty good online setup. 103 00:05:41,969 --> 00:05:47,235 you can have many switches and you can sync sync saves and play your games on them and share them. 104 00:05:47,235 --> 00:05:48,542 You do have to pay for it. 105 00:05:48,542 --> 00:05:50,604 was about to ask, you have to pay for that though, which is 106 00:05:50,604 --> 00:05:50,824 yeah. 107 00:05:50,824 --> 00:05:52,945 it's not a ton of money if you're really invested. 108 00:05:52,945 --> 00:05:55,887 It's like sixty bucks a year or six 109 00:05:56,148 --> 00:05:58,329 if you're really invested, that's worth it. 110 00:05:58,329 --> 00:06:01,041 But the fact that you have to pay for it is a little bit annoying. 111 00:06:01,041 --> 00:06:02,029 ~ 112 00:06:02,029 --> 00:06:05,354 mean they see they could certainly they certainly could afford to do it for free. 113 00:06:05,354 --> 00:06:08,530 ~ but but they don't and they 114 00:06:08,848 --> 00:06:09,429 I get it. 115 00:06:09,429 --> 00:06:11,274 They're they're they're a capitalist company. 116 00:06:11,274 --> 00:06:13,478 Anyway, so yeah, go ahead. 117 00:06:13,478 --> 00:06:14,339 Go ahead. 118 00:06:14,465 --> 00:06:17,096 I they came I came to it late, I didn't have one. 119 00:06:17,967 --> 00:06:25,870 and then last year, sort of last summer, I I think I'd been I'd seen one of the sort of many Chinese emulation consoles appear. 120 00:06:25,870 --> 00:06:31,272 Not not the AYN Thor, which is kind of the big the big one that people are ~ aware of now. 121 00:06:31,272 --> 00:06:37,515 But there was another one that came out a little bit before that and it just kind of piqued my interest in D S and three D S really. 122 00:06:37,515 --> 00:06:40,536 ~ and pretty quickly I'd bought myself 123 00:06:41,128 --> 00:06:50,214 a a DS I think I bought a DSI XL bought one of those and I bought a imported a a a new three D S XL from Japan. 124 00:06:50,214 --> 00:06:55,892 ~ and I just got I just got completely obsessed with them. 125 00:06:55,892 --> 00:07:00,110 I mean I think you can probably relate Brian but I just I just it just got it just got its 126 00:07:00,110 --> 00:07:01,180 hooks into me. 127 00:07:01,887 --> 00:07:07,890 I I I've been a PC gamer for decades, since the 80s, like you said. 128 00:07:08,111 --> 00:07:14,155 And I don't think PC gaming has ever gotten its hooks into me like ES gaming has. 129 00:07:14,155 --> 00:07:16,877 I joined Instagram for this, y'all. 130 00:07:16,897 --> 00:07:19,409 And I I I I would never done that before. 131 00:07:19,409 --> 00:07:20,479 I never, never. 132 00:07:20,479 --> 00:07:24,222 But I for I joined Instagram to find more 3DS content. 133 00:07:24,222 --> 00:07:25,543 I've never done that before. 134 00:07:25,543 --> 00:07:27,534 Like, what am I doing? 135 00:07:27,562 --> 00:07:30,313 So yep, there's a there's something, 136 00:07:30,313 --> 00:07:38,336 there's something, if I may interject, there's just something that's so easily to love about these little machines. 137 00:07:38,517 --> 00:07:41,077 It's so easy to fall in love with them. 138 00:07:41,212 --> 00:07:45,840 Like Nintendo did something so right with the DS and the 3DS line. 139 00:07:47,080 --> 00:07:56,244 ~ that I don't fully understand, but they just like the I think the it's because I I my guess is that these machines have more soul. 140 00:07:56,818 --> 00:08:01,091 And personality than something more modern. 141 00:08:01,091 --> 00:08:06,434 And maybe even things before it, like the GBA had personality and and and so did the Game Boy and all them. 142 00:08:06,434 --> 00:08:14,609 But I think I think because they were able to mix online and offline and and whatnot, they really just peaked with these in 143 00:08:14,609 --> 00:08:15,319 a lot of ways. 144 00:08:15,319 --> 00:08:21,308 ~ that's why it's so easy to f get obsessed with them, like like you said you have. 145 00:08:21,308 --> 00:08:22,253 ~ anyway, 146 00:08:22,253 --> 00:08:23,174 could please continue. 147 00:08:23,174 --> 00:08:34,462 They're they're they're certainly a little more ~ fully featured than than the earlier systems and ~ and for me that that helps me to kind of you know, it's it's a it's a system 148 00:08:34,462 --> 00:08:37,123 that actually doesn't feel retro to me, three DS. 149 00:08:37,123 --> 00:08:43,157 It's obviously a bit older, ~ and you know, graphically it doesn't compete with modern systems, but ~ it doesn't bother me. 150 00:08:43,157 --> 00:08:50,078 Like I I like the charm, I like the low power of them, I like the the the economy that it that it requires to make games for and 151 00:08:50,078 --> 00:08:58,189 And so, you know, you get everything you want, like you can have all your games ~ dumped onto the onto the system, you can carry them with you, you can now sync saves, you know, 152 00:08:58,189 --> 00:08:59,221 you you can do all that stuff. 153 00:08:59,221 --> 00:09:01,339 So they're a they're a very usable system. 154 00:09:01,339 --> 00:09:05,833 I c I carry a 3DS around with me all the time because it's extremely usable. 155 00:09:05,833 --> 00:09:08,683 I don't carry a DS around all the time because 156 00:09:08,683 --> 00:09:11,744 I have to carry cartridges and I don't want to lose them and all that kind of stuff. 157 00:09:11,744 --> 00:09:13,735 So it's just v eminently usable. 158 00:09:13,735 --> 00:09:18,012 And I think for me, that's one of the reasons that it just just really hooked me. 159 00:09:18,012 --> 00:09:30,160 And ~ and yeah, I I started with one last year and I'm I am I am I'm somewhat embarrassed to say I probably now own something like twenty or thirty three D S, which is I know, it's 160 00:09:30,160 --> 00:09:31,052 insane. 161 00:09:31,052 --> 00:09:35,132 ~ I I know, I know, I know. 162 00:09:35,132 --> 00:09:37,755 I I I'm somewhat reticent 163 00:09:37,755 --> 00:09:44,010 to admit it 'cause I think that that, you know, people people definitely do see see my sort of buying behaviour as hoarding. 164 00:09:44,010 --> 00:09:47,604 ~ but I you know, I I c I consider it to be 165 00:09:47,604 --> 00:09:49,266 preservation and collection. 166 00:09:49,266 --> 00:09:51,027 Plus I make a sync 167 00:09:51,027 --> 00:09:53,430 home brew, so I need tons of them for testing. 168 00:09:53,430 --> 00:09:56,492 And that's how I that's how I sleep at night. 169 00:09:56,672 --> 00:09:58,153 giving something back. 170 00:09:58,464 --> 00:10:00,536 which requires yeah. 171 00:10:00,536 --> 00:10:01,777 Do I need thirty 172 00:10:01,777 --> 00:10:02,508 to test this? 173 00:10:02,508 --> 00:10:03,309 Absolutely not. 174 00:10:03,309 --> 00:10:07,342 But you know, I have so so sue me, I guess. 175 00:10:07,342 --> 00:10:09,076 ~ yeah. 176 00:10:09,076 --> 00:10:17,950 to interject and say that you can mod a D S I, which I have done, and you could dump your games onto that too on the SD card, so you don't need to carry all the cartridges. 177 00:10:17,950 --> 00:10:18,861 Yes, that's very true. 178 00:10:18,861 --> 00:10:19,761 That's very true. 179 00:10:19,761 --> 00:10:26,126 I think the part of it that for me makes it less livable is that you can't really sync your saves with them. 180 00:10:26,126 --> 00:10:27,787 Now I I I I have looked 181 00:10:27,787 --> 00:10:29,167 at this myself. 182 00:10:29,208 --> 00:10:33,250 Actually writing homebrew for a D S I is really hard. 183 00:10:33,250 --> 00:10:35,052 They're really, really low powered. 184 00:10:35,052 --> 00:10:43,547 They don't really have an operating system and there just isn't the ecosystem that makes it for us for a software engineer it it's not that hard to make three DS homebrew, but for 185 00:10:43,547 --> 00:10:45,699 ~ for DS it's absolutely is. 186 00:10:45,699 --> 00:10:47,160 So ~ 187 00:10:47,160 --> 00:10:47,764 so yeah. 188 00:10:47,764 --> 00:10:53,791 That's one of the reasons it's slightly less livable for me, but I do have a few I've I have quite a few DSIs as well. 189 00:10:53,791 --> 00:10:55,633 And and I play lots of games on those too. 190 00:10:55,633 --> 00:10:56,859 But they're cartridges, you know. 191 00:10:56,859 --> 00:11:00,058 Plug a cartridge in, take a cartridge out, which isn't 192 00:11:00,058 --> 00:11:01,180 always the case with these. 193 00:11:01,180 --> 00:11:02,361 So so yeah, here we are. 194 00:11:02,361 --> 00:11:07,697 I I bought one last year, now I unloaded them and ~ and I'm I'm I s I still use it every day. 195 00:11:07,697 --> 00:11:08,686 I think they're great. 196 00:11:09,011 --> 00:11:12,854 That's an th I gotta say that's an amazing journey within one year. 197 00:11:13,051 --> 00:11:15,598 ~ I I gotta 198 00:11:15,598 --> 00:11:18,400 ask a a slightly personal question because you said you had a family. 199 00:11:18,400 --> 00:11:22,204 How do they feel about you having thirty D ~ three DS? 200 00:11:22,538 --> 00:11:23,929 They're they're they're cool with it. 201 00:11:23,929 --> 00:11:25,820 Like my my son my s 202 00:11:25,820 --> 00:11:27,611 I mean my son has has a DS. 203 00:11:27,611 --> 00:11:33,055 He has like a Pokeball two D S XL which which ~ is, you know, a pretty nice system and he's lucky to have it. 204 00:11:33,055 --> 00:11:37,178 ~ he sometimes bemoans it and he says, you've got so many of these. 205 00:11:37,178 --> 00:11:38,179 Can I have that one? 206 00:11:38,179 --> 00:11:41,301 Can I have your your pink new three D S XL from Japan? 207 00:11:41,301 --> 00:11:43,422 Can I have your can I have your 208 00:11:43,422 --> 00:11:45,333 Super Nintendo new three D S like? 209 00:11:45,333 --> 00:11:46,554 No, no, you can't have those. 210 00:11:46,554 --> 00:11:48,165 They are they are locked in 211 00:11:48,165 --> 00:11:50,127 a they're a museum pieces pretty much. 212 00:11:50,127 --> 00:11:51,868 I mean a lot of this is collection stuff. 213 00:11:51,868 --> 00:11:52,350 I 214 00:11:52,350 --> 00:11:53,820 I don't play in all these systems. 215 00:11:53,820 --> 00:11:56,401 ~ many of the many do get played, but not all of them. 216 00:11:56,401 --> 00:12:04,043 And my wife is very supportive, you know, she ~ she understands and you know, it's th they're as you know, they're not cheap systems. 217 00:12:04,043 --> 00:12:14,236 But in the grand scheme of things, ~ for somebody like me in my sort of ~ I'm middle aged and gainfully employed and and ~ and everything's looked after and and and you know, it's 218 00:12:14,236 --> 00:12:20,352 it's it's not the most expensive hobby I could have, you know, if I if I was into football, like soccer, if you will, ~ 219 00:12:20,352 --> 00:12:21,840 you've been god, yeah. 220 00:12:21,840 --> 00:12:23,201 season tickets and things like that. 221 00:12:23,201 --> 00:12:28,223 So compared to that, it's pretty pretty minimal and I often buy systems and fix them. 222 00:12:28,223 --> 00:12:29,894 I I get a lot of my systems by buying 223 00:12:29,894 --> 00:12:31,520 broken ones and fixing them and stuff like that. 224 00:12:31,520 --> 00:12:32,885 It's another thing I've got into this 225 00:12:32,885 --> 00:12:33,335 last year. 226 00:12:33,335 --> 00:12:44,380 I I just kind of took an interest in it 'cause I think if you if you play these old systems, they do need maintenance and with a few exceptions you won't get any support from 227 00:12:44,380 --> 00:12:45,200 Nintendo on that. 228 00:12:45,200 --> 00:12:49,684 So ~ so you really need to kind of figure out how to fix them and 229 00:12:49,684 --> 00:12:52,797 Yeah, I've I've taken them apart and cleaned them and replaced 230 00:12:52,797 --> 00:12:54,889 screens and stuff and it's it's good fun. 231 00:12:55,010 --> 00:12:57,281 ~ it's it's frustrating, but it's good fun. 232 00:12:57,281 --> 00:12:58,330 would not be fun for me. 233 00:12:58,330 --> 00:13:00,602 I don't have the I don't have the patience. 234 00:13:00,602 --> 00:13:02,023 I know myself. 235 00:13:02,023 --> 00:13:03,683 I know I don't have the patience for it. 236 00:13:03,683 --> 00:13:08,025 Like I won't even build my own PCs anymore because I don't have the patience for it. 237 00:13:08,025 --> 00:13:11,357 So I don't have it. 238 00:13:11,357 --> 00:13:12,447 but patience, absolutely. 239 00:13:12,447 --> 00:13:13,157 I don't have it. 240 00:13:13,157 --> 00:13:14,468 I d I know I don't have it. 241 00:13:14,468 --> 00:13:18,409 So I've seen people videos of people taking the 3DS apart. 242 00:13:18,409 --> 00:13:20,930 It looks like a gosh darn nightmare in there. 243 00:13:20,930 --> 00:13:23,291 So I'm like, no, thank you. 244 00:13:23,291 --> 00:13:24,042 I don't like taking 245 00:13:24,042 --> 00:13:24,712 the back. 246 00:13:24,712 --> 00:13:25,224 I don't 247 00:13:25,224 --> 00:13:27,577 I don't like taking the back plate off to change the battery. 248 00:13:27,577 --> 00:13:29,029 I don't like doing that. 249 00:13:30,472 --> 00:13:31,693 So opening 250 00:13:31,693 --> 00:13:37,361 it up further, like if if my joy if my joystick broke, I'd be like, okay, who do I find to repair this? 251 00:13:37,361 --> 00:13:38,052 Who do I pay? 252 00:13:38,052 --> 00:13:40,776 We'll pay someone to do it so I don't have to. 253 00:13:40,776 --> 00:13:41,637 You know, that's 254 00:13:41,637 --> 00:13:42,588 where I'm at. 255 00:13:42,588 --> 00:13:43,048 Yeah. 256 00:13:43,048 --> 00:13:48,732 Well if you ever get a broken s a broken joystick, you know, hit me up and you know, we'll see what we can do. 257 00:13:48,732 --> 00:13:54,415 Although we probably do live about, you know, eight thousand miles apart, so that might be challenging, but you know. 258 00:13:55,256 --> 00:13:56,156 Yeah. 259 00:13:57,117 --> 00:13:58,017 wow. 260 00:13:58,638 --> 00:13:59,838 That's a long way. 261 00:13:59,838 --> 00:14:01,399 That's a long way. 262 00:14:02,300 --> 00:14:03,110 Yeah. 263 00:14:03,955 --> 00:14:09,129 so that that's a I got I just want to interject that that is a lovely journey that you're on. 264 00:14:09,129 --> 00:14:11,682 I'm so happy that your family is supportive of it. 265 00:14:11,682 --> 00:14:12,282 Like 266 00:14:12,282 --> 00:14:18,804 I'm just gonna be honest, I love my wife, but she ~ she she's not unsupportive. 267 00:14:18,804 --> 00:14:23,346 But if I was starting to buy that many three DS, we would have a serious talk. 268 00:14:24,146 --> 00:14:24,997 We would have a very 269 00:14:24,997 --> 00:14:25,507 serious talk. 270 00:14:25,507 --> 00:14:30,129 Because we're trying to save to buy a house, which in California is outrageously expensive. 271 00:14:30,129 --> 00:14:33,804 And so she'd be like, Look, do you want a house or do you want 30 three DS? 272 00:14:33,804 --> 00:14:35,070 And I'd be like, 273 00:14:36,171 --> 00:14:37,992 Can I think about it? 274 00:14:38,624 --> 00:14:40,299 It's not it's not a snap decision, is it? 275 00:14:40,299 --> 00:14:41,688 You have to give it some thought. 276 00:14:41,688 --> 00:14:43,769 I I it's a toughie. 277 00:14:43,769 --> 00:14:45,119 And she'd be like, Why is it tough? 278 00:14:45,119 --> 00:14:47,270 I'm like, I let me get back to you. 279 00:14:47,270 --> 00:14:57,552 I I So I'm not saying my I love my wife, she's not unsupportive, but at the same time, she would not have the level of patience that yours does. 280 00:14:57,552 --> 00:14:59,873 So good on you. 281 00:15:00,513 --> 00:15:04,454 But yeah, and yeah. 282 00:15:05,664 --> 00:15:05,917 yeah. 283 00:15:05,917 --> 00:15:06,334 sure. 284 00:15:06,334 --> 00:15:06,584 yeah. 285 00:15:06,584 --> 00:15:07,095 Same here. 286 00:15:07,095 --> 00:15:07,541 Same here. 287 00:15:07,541 --> 00:15:09,162 I mean, she tolerated and bought. 288 00:15:09,162 --> 00:15:12,153 But me buying a th a DSI XL because it was very affordable. 289 00:15:12,153 --> 00:15:14,014 I found one for a very good price. 290 00:15:14,014 --> 00:15:18,616 So so she's supportive of the hobby, especially now that I'm making a podcast about it. 291 00:15:18,616 --> 00:15:20,647 So I'm doing something with it, you know. 292 00:15:20,647 --> 00:15:21,127 So she's 293 00:15:21,127 --> 00:15:22,188 even more supportive now. 294 00:15:22,188 --> 00:15:24,709 But at the same time, I could not buy 30 of them. 295 00:15:24,709 --> 00:15:26,699 So I'm jealous. 296 00:15:26,699 --> 00:15:28,180 I'm gonna admit, I'm a bit jealous. 297 00:15:28,180 --> 00:15:29,400 That's amazing. 298 00:15:29,771 --> 00:15:32,722 I kinda I I I that's astounding. 299 00:15:32,722 --> 00:15:33,662 ~ good on you. 300 00:15:33,662 --> 00:15:36,874 ~ and I'm not serious that you're part of the problem. 301 00:15:36,874 --> 00:15:37,764 I mean 302 00:15:37,812 --> 00:15:44,689 I'd rather these be in homes where people are gonna take care of them and preserve them rather than being beaten up by a child or something. 303 00:15:44,689 --> 00:15:45,340 You know what I mean? 304 00:15:45,340 --> 00:15:48,823 So I'd rather them find a good home than not. 305 00:15:48,823 --> 00:15:50,375 So it sounds like they're in a good home. 306 00:15:50,375 --> 00:15:54,990 So I'd much rather prefer that where you're taking care of them and like you said, you're cleaning them and maintaining them. 307 00:15:54,990 --> 00:15:56,711 I'd much rather have that. 308 00:15:56,952 --> 00:15:57,500 Yeah. 309 00:15:57,500 --> 00:16:08,496 it's worth remembering that, you know, we we we and this is a bit of an aside, but there's definitely a a a feeling sometimes that these things are like ~ extremely rare and 310 00:16:08,496 --> 00:16:09,596 extremely hard to find. 311 00:16:09,596 --> 00:16:10,457 In fact they're not. 312 00:16:10,457 --> 00:16:15,219 You know, Nintendo made tens of millions of these things and they're not that old. 313 00:16:15,219 --> 00:16:20,062 They're, you know, at their oldest they're fifteen years old and at their newest they're five years old. 314 00:16:20,062 --> 00:16:21,443 So well almost five years old. 315 00:16:21,443 --> 00:16:24,124 So there are many millions of them out there. 316 00:16:24,138 --> 00:16:26,870 J in Japan there are huge numbers of them. 317 00:16:26,870 --> 00:16:35,939 ~ now, you know, supply and demand means that they're certainly not always available for the price that people would want and the price they think they should be because they're 318 00:16:35,939 --> 00:16:36,950 not the latest and greatest. 319 00:16:36,950 --> 00:16:39,662 But ultimately there are plenty out there. 320 00:16:39,662 --> 00:16:45,707 ~ and and so if you want more people, you know, just save up, find a deal. 321 00:16:45,707 --> 00:16:51,310 They're not always as expensive as as they as as as you think and and you can you can you can do it. 322 00:16:51,518 --> 00:16:56,182 And I always tell people, ~ friends, friends, ask friends and family, because 323 00:16:56,182 --> 00:17:03,678 I got both my new 3ds XL and my new and the DSI XL through forums I'm on because I know people. 324 00:17:03,678 --> 00:17:11,165 ~ I got I got the Galaxy three new 3ds XL for 200 bucks, which is in this economy amazing. 325 00:17:11,165 --> 00:17:14,308 I got the DSI for 50, which again, 326 00:17:14,308 --> 00:17:15,178 yeah, exactly. 327 00:17:15,178 --> 00:17:16,249 Because I know people. 328 00:17:16,249 --> 00:17:19,808 So, friends, if you're looking for one of these things and I implore you, 329 00:17:19,808 --> 00:17:23,870 If you're listening this, of course you either are looking for one or you have one or you want another one. 330 00:17:23,870 --> 00:17:24,850 Ask friends and family. 331 00:17:24,850 --> 00:17:25,070 You 332 00:17:25,070 --> 00:17:29,752 never know who might have one in a drawer from their childhood that they're not using anymore. 333 00:17:29,752 --> 00:17:34,394 You know, and they're like, okay, I I could stand to have a couple hundred bucks because I'm not using this anymore. 334 00:17:34,394 --> 00:17:35,344 You know. 335 00:17:35,344 --> 00:17:35,944 you never know. 336 00:17:35,944 --> 00:17:43,718 So it doesn't hurt to ask on your social medias and if you're on forums and other online communities like Discord, definitely ask. 337 00:17:43,718 --> 00:17:49,030 Cause you never know when someone might have one they're just not using and willing to part with, you know. 338 00:17:49,408 --> 00:17:50,549 So it's definitely worth it. 339 00:17:50,549 --> 00:17:59,254 ~ God, I could talk about collecting and I I keep I keep track of prices to help other people find them, like on Discords and whatnot. 340 00:17:59,254 --> 00:18:04,036 And I I I look at I keep track of the Reddit communities if someone's selling one and I post about that. 341 00:18:04,036 --> 00:18:06,468 So like I want people to own these things. 342 00:18:06,468 --> 00:18:09,400 Like I am I feel like I've become an evangelist. 343 00:18:09,400 --> 00:18:13,612 Like my my my son, have you heard the good news about the 3DS? 344 00:18:13,612 --> 00:18:15,645 I'm going door. 345 00:18:15,645 --> 00:18:17,144 I'm going how 346 00:18:17,144 --> 00:18:23,290 I'm going door to door with a with a Pokemon strategy guide in one hand and a three DS in the other. 347 00:18:23,290 --> 00:18:28,495 ~ Madam, have you heard the good word about the 3D? 348 00:18:29,797 --> 00:18:33,490 I'm wearing a I'm wearing a I love my three D S t-shirt. 349 00:18:35,984 --> 00:18:39,805 That would be a fun Instagram thing now that I think of it, the 3DS evangelist. 350 00:18:39,805 --> 00:18:40,684 I should totally 351 00:18:40,684 --> 00:18:42,449 I should figure out how to do that. 352 00:18:42,449 --> 00:18:43,809 Okay. 353 00:18:44,210 --> 00:18:45,210 Anyway. 354 00:18:45,731 --> 00:18:47,442 Yeah, I like I had a friend over. 355 00:18:47,442 --> 00:18:49,814 Just we're I know we're going on tangents, folks. 356 00:18:49,814 --> 00:18:53,357 If you listen to my other podcasts, you know the tangents are a regular thing. 357 00:18:53,357 --> 00:19:00,021 I had a friend over the other day and she's like, I'm so tired of playing games on my on my iPod ~ iPad. 358 00:19:00,021 --> 00:19:01,393 The communities are so toxic. 359 00:19:01,393 --> 00:19:04,254 I'm like, can you afford a two DS? 360 00:19:04,468 --> 00:19:06,070 Let me show you my 2DS. 361 00:19:06,070 --> 00:19:08,953 It's the most affordable way to jump into the ecosystem. 362 00:19:08,953 --> 00:19:11,896 And you can play literally thousands of games. 363 00:19:11,896 --> 00:19:14,578 And the games are mostly good. 364 00:19:15,039 --> 00:19:16,420 Let me show you. 365 00:19:16,781 --> 00:19:24,218 Because I try to explain to people the library of these things are just astounding. 366 00:19:25,898 --> 00:19:26,278 my God. 367 00:19:26,278 --> 00:19:35,401 So again, worth owning, worth modding, worth collecting because it's there's nothing there's really nothing else like these things. 368 00:19:35,401 --> 00:19:36,369 There's really nothing else. 369 00:19:36,369 --> 00:19:41,112 No other I mean, yeah, you can get an A A Y N Thor, but it's not the same. 370 00:19:41,112 --> 00:19:41,893 You don't 371 00:19:41,893 --> 00:19:45,844 you you you don't have the little presents when you open up get a new game. 372 00:19:45,844 --> 00:19:48,674 You you don't have Street Pass, which still works. 373 00:19:48,674 --> 00:19:54,436 ~ you don't have all these lovely little things and and the Mies and everything. 374 00:19:54,590 --> 00:19:55,981 that that these systems have. 375 00:19:55,981 --> 00:19:58,103 So please, please get one. 376 00:19:58,103 --> 00:19:59,805 Anyway, back to CloudPoint. 377 00:19:59,805 --> 00:20:04,128 So what so you've you've only been doing this for a year, this 3DS thing. 378 00:20:04,128 --> 00:20:04,419 What 379 00:20:04,419 --> 00:20:05,279 inspired you? 380 00:20:05,279 --> 00:20:08,752 What how did the journey of CloudPoint begin? 381 00:20:09,130 --> 00:20:10,121 That's a great question. 382 00:20:10,121 --> 00:20:18,938 ~ so as I've already said, I I I got into three DS in a big way and I ended up owning a number of them quite quite quickly. 383 00:20:18,938 --> 00:20:25,343 ~ and I think originally my my plan was, well, I'll just play different games on each of these systems. 384 00:20:25,343 --> 00:20:36,262 But the way that I tend to use these things I found is and and this is true of most systems, I I quite like to have like a really nice one at home, like a really a really 385 00:20:36,262 --> 00:20:39,324 mint new three DS XL that I 386 00:20:39,392 --> 00:20:47,919 play when I'm at home and maybe I want to have like a battered old original three DS that I stick in my pocket and and allow to to to just not baby it. 387 00:20:47,919 --> 00:20:58,698 And and I really I really found it frustrating that I couldn't do that because, you know, I'd be playing, I don't know, Kirby Planet Robot on my on my system and I wanted to play 388 00:20:58,698 --> 00:21:04,033 that when I'm waiting for my son to do his swimming, but I can't because my save's on the other system, etcetera, etcetera. 389 00:21:04,033 --> 00:21:07,936 So I started looking around thinking, well there must be some homebrew for this. 390 00:21:07,936 --> 00:21:08,351 Like 391 00:21:08,351 --> 00:21:12,653 checkpoint exists, there must be something something that does it in a in a cloud fashion. 392 00:21:12,653 --> 00:21:13,453 And there just wasn't. 393 00:21:13,453 --> 00:21:18,105 ~ there are various attempts at it. 394 00:21:18,105 --> 00:21:27,640 Like there are a few of the cloud sync things out there, but all of them are are unfinished or require you to basically sport from checkpoint, which it then syncs 395 00:21:27,640 --> 00:21:29,291 somewhere, which isn't what I wanted. 396 00:21:29,291 --> 00:21:35,143 ~ I just wanted something where I could fire it up, press a button, and it would do it. 397 00:21:35,143 --> 00:21:36,916 And it would figure out, you know 398 00:21:36,916 --> 00:21:38,066 Do I need to upload a save? 399 00:21:38,066 --> 00:21:39,597 Do I need download a save? 400 00:21:39,597 --> 00:21:40,598 All of that kind of stuff. 401 00:21:40,598 --> 00:21:42,458 ~ nothing existed. 402 00:21:42,458 --> 00:21:55,514 So I I I reasoned from Checkpoint that it's doable, because fundamentally what Checkpoint is doing is kind of, you know, the the the raw basis of what I need to do. 403 00:21:55,514 --> 00:21:59,305 You need to be able to read saves and write saves to the system. 404 00:21:59,305 --> 00:22:06,138 ~ so I knew it could be done and and so I started looking at at how it was done. 405 00:22:06,362 --> 00:22:21,540 ~ and that led me to things like DevKit Pro, which is the I think Soru mentioned this pre previously on your podcast, but it's ~ like a a a a community maintained framework for for 406 00:22:21,801 --> 00:22:24,562 for for writing and compiling for three D S. 407 00:22:24,562 --> 00:22:32,087 So I started looking at that and that one thing led to another and and I and I figured out all the things I needed to figure out. 408 00:22:32,087 --> 00:22:35,028 ~ it's it's definitely been 409 00:22:35,378 --> 00:22:36,108 a challenge. 410 00:22:36,108 --> 00:22:42,171 ~ developing stuff with for something like a three D S has some very unique challenges. 411 00:22:42,221 --> 00:22:48,834 and it's a bit different to the sorts of software that I write ~ in my my professional career. 412 00:22:48,834 --> 00:22:55,056 I I I write, you know, software to do with the internet, you know, like websites, web servers, things like that. 413 00:22:55,056 --> 00:22:59,758 But ~ three D S is is it's it's different. 414 00:22:59,758 --> 00:23:04,530 So yeah, I I rallished the challenge and got into it and and 415 00:23:05,332 --> 00:23:08,734 fairly quickly, had a system that that could read and write saves. 416 00:23:08,734 --> 00:23:11,796 ~ and then went from there really. 417 00:23:11,877 --> 00:23:16,650 Maybe the user interface and figured out how that should work and all the challenges that come up. 418 00:23:16,650 --> 00:23:22,524 I had to write a server to sit on the other end of it to kind of do the database side of things. 419 00:23:22,985 --> 00:23:27,568 So lots of little challenges but taken one at a time in small pieces. 420 00:23:27,568 --> 00:23:32,632 They're not completely unfamiliar to me, 'cause I've been doing software professionally for a while. 421 00:23:32,632 --> 00:23:33,442 And 422 00:23:33,888 --> 00:23:35,789 Yeah, and I had a version ready to release. 423 00:23:35,789 --> 00:23:40,371 In fact, I think I released the first public version on my birthday. 424 00:23:40,371 --> 00:23:42,292 ~ if I recall. 425 00:23:42,292 --> 00:23:48,574 Yeah, i it was it didn't plan it that way, but ~ I had the afternoon off work and it was ready to go. 426 00:23:48,635 --> 00:23:52,268 So I just released it on my birthday, which which I quite enjoyed. 427 00:23:52,268 --> 00:23:53,207 It it it made 428 00:23:53,207 --> 00:23:54,227 me smile to do that. 429 00:23:54,227 --> 00:24:00,410 So yeah, I went out on my birthday and it's yeah, it's been downloaded thousands of times and we've got 430 00:24:00,766 --> 00:24:07,800 hundreds of monthly user, well thousands of monthly users at this point, ~ fairly quickly, which is which is quite nice to see. 431 00:24:08,120 --> 00:24:09,901 quite encouraging, I guess. 432 00:24:09,901 --> 00:24:12,623 You know, I I I made the software for me. 433 00:24:12,623 --> 00:24:18,545 Like I if only I used it, that would be enough for me 'cause I genuinely find it useful. 434 00:24:18,756 --> 00:24:25,069 but the fact that other people use it and enjoy it and suggest things we might do and also report bugs. 435 00:24:25,069 --> 00:24:29,241 ~ those things are all like super important. 436 00:24:29,241 --> 00:24:30,612 In fact that's that's how 437 00:24:30,612 --> 00:24:37,474 Brian and I met, you know, Brian made a bug report on ~ raised an issue on on the GitHub and we went from there really. 438 00:24:37,474 --> 00:24:38,514 So yeah, ~ having 439 00:24:38,514 --> 00:24:45,066 people actually use the software and say, hey, this thing didn't work has allowed me to make some some pretty major improvements actually. 440 00:24:45,066 --> 00:24:49,537 It ~ you know, there were th there are thousands of three DS games. 441 00:24:49,537 --> 00:24:51,358 I mean, you know, we've this has been touched on already. 442 00:24:51,358 --> 00:25:00,240 There are so many games that in some cases some of those games do things with saves that that are surprising and 443 00:25:01,310 --> 00:25:04,222 And I and I certainly haven't tested all the games, far from it. 444 00:25:04,222 --> 00:25:12,806 So, you know, people try a game, they Hey, this doesn't work and I can look at it and it usually leads to a systemic improvement that I can make, ~ which makes everything so much 445 00:25:12,806 --> 00:25:13,426 better. 446 00:25:13,426 --> 00:25:17,138 So yeah, that's that's how it came to be. 447 00:25:17,396 --> 00:25:18,936 I wanted to touch on two things. 448 00:25:18,936 --> 00:25:25,648 The first, the most recent one you said is some games save ~ have some weird ways of saving things, I believe. 449 00:25:25,648 --> 00:25:26,429 ~ 450 00:25:26,429 --> 00:25:27,939 do you have an example of that? 451 00:25:27,939 --> 00:25:29,360 I'm I'm very curious. 452 00:25:29,360 --> 00:25:30,780 So 453 00:25:30,780 --> 00:25:32,180 X data, yeah. 454 00:25:32,180 --> 00:25:38,302 so so what's like an example of a game that uses a quirky, let's say quirky save system. 455 00:25:38,302 --> 00:25:44,984 ~ 456 00:25:45,342 --> 00:25:49,014 Yeah, there's there's a number of of of different quirks with the saves, really. 457 00:25:49,014 --> 00:26:01,882 ~ Broadly speaking, most games are are straightforward in that they they have a kind of a save system which I mean on a technical level, 3DS games were distributed on cartridges 458 00:26:01,882 --> 00:26:06,864 and if run from a cartridge, the game would save your progress to the cartridge. 459 00:26:06,864 --> 00:26:10,446 ~ if run from an S D card, i.e. 460 00:26:10,446 --> 00:26:13,556 if they were actually downloaded from the eShop and run on the system, 461 00:26:13,556 --> 00:26:19,599 they would save the data to the SD card, but the game doesn't doesn't actually know that. 462 00:26:19,599 --> 00:26:21,539 The game just saves its data. 463 00:26:21,539 --> 00:26:28,744 So the whole kind of container format for saving data is is not just files on a disk like like you you might find on a PC game. 464 00:26:28,744 --> 00:26:31,096 It's it's a bit more complicated than that. 465 00:26:31,096 --> 00:26:36,048 But if everything's simple, they work like that and you can just export the save and it's fine. 466 00:26:36,048 --> 00:26:42,964 And some games use ext data, X data, which is like an extra bit of save space that a game can use. 467 00:26:42,964 --> 00:26:45,385 And that always lives on the SD card. 468 00:26:45,385 --> 00:26:52,068 ~ whether you're playing a cartridge game or a download game, ~ the X data is always on the SD card. 469 00:26:52,068 --> 00:27:03,343 And that's used for often for extra stuff which is big, like maybe downloading like some games might down like download movies and stuff, or some games might save your your replay 470 00:27:03,343 --> 00:27:08,975 data to X data, or ~ it might use X data to share save state between games. 471 00:27:08,975 --> 00:27:12,006 Like the Pokemon games, there's of often two versions of them. 472 00:27:12,010 --> 00:27:18,565 they will create some X data which is which is used by both like Ultrasun and Ultra Moon, they share it. 473 00:27:18,565 --> 00:27:21,728 So that's kind of the the the lay of the land broadly speaking. 474 00:27:21,728 --> 00:27:24,931 But some games just do things differently. 475 00:27:24,931 --> 00:27:37,931 Like for example Super Mario Maker ~ that one creates save data and X data but if you use your cartridge in a different console, it wipes your save data, even though it's on the 476 00:27:37,931 --> 00:27:38,842 cartridge. 477 00:27:38,842 --> 00:27:41,832 Now this is a an anti like an anti cheating 478 00:27:41,832 --> 00:27:44,213 mechanism that they had when the game first came out. 479 00:27:44,213 --> 00:27:50,497 But it essentially like records some some sort of checksum data, we call it, about the system it's been used on. 480 00:27:50,497 --> 00:27:53,398 And if you use it elsewhere, it's not going to work. 481 00:27:53,508 --> 00:27:58,541 and that also means that if you sync your save with a tool like CloudPoint, it's not going to work on another system. 482 00:27:58,541 --> 00:27:59,982 Now I haven't solved that one. 483 00:27:59,982 --> 00:28:06,075 I I will actually need to write some code which which is game specific, which will essentially when you're 484 00:28:06,075 --> 00:28:11,018 syncing that game, figure out that it's come from a dis different system and 485 00:28:11,018 --> 00:28:14,129 kind of rewrite the checksum stuff so that it works. 486 00:28:14,129 --> 00:28:18,960 I know it's possible because there are tools that will rewrite the checksums for you to allow you to modify save. 487 00:28:18,960 --> 00:28:20,191 So I know it can be done. 488 00:28:20,191 --> 00:28:21,421 I just haven't got around to it. 489 00:28:21,421 --> 00:28:24,392 So that's an example of a game with a weird save format. 490 00:28:24,392 --> 00:28:30,794 ~ there are other games like ~ Terraria, which you may be familiar with. 491 00:28:30,794 --> 00:28:33,414 It's like a side scrolling Minecraft type game. 492 00:28:33,414 --> 00:28:39,850 ~ that that creates like huge 32 megabyte X 493 00:28:39,850 --> 00:28:41,721 data when you run the game. 494 00:28:41,721 --> 00:28:51,548 And trying to sync thirty two megabytes on a three D S is quite hard because they're very, very, very slow network devices. 495 00:28:51,548 --> 00:28:52,819 ~ you'd be amazed 496 00:28:52,819 --> 00:29:00,214 how I mean you you probably you may you may have already seen how slow it is if you're trying to do an update or something, but th they're very slow by modern standards. 497 00:29:00,214 --> 00:29:04,152 So actually kind of making things yeah. 498 00:29:04,152 --> 00:29:05,819 Fi chip is still very slow. 499 00:29:05,819 --> 00:29:06,939 It's still very slow. 500 00:29:06,939 --> 00:29:08,062 It's a lot faster. 501 00:29:08,062 --> 00:29:14,918 Like it's about three times as quick for network calls than the originals, but it's still like dog slow, to be honest. 502 00:29:14,918 --> 00:29:16,479 So so you you yeah, 503 00:29:16,479 --> 00:29:25,067 you you can't just brute force this and like you know, just tell the system to whack 32 megabytes over the network, which you could do that on a PC, you wouldn't you wouldn't 504 00:29:25,067 --> 00:29:25,597 notice it. 505 00:29:25,597 --> 00:29:27,569 Thirty two megs would go in a in a heartbeat. 506 00:29:27,569 --> 00:29:30,811 But on a three DS that would take that would take minutes to do. 507 00:29:30,811 --> 00:29:36,486 So, you know, you have to do some some reasonably clever stuff about 508 00:29:36,564 --> 00:29:41,005 deduplicating it and and only uploading stuff that's changed and things like that. 509 00:29:41,005 --> 00:29:46,427 ~ so yeah they're there are examples of saves that are quirky and weird. 510 00:29:46,427 --> 00:29:56,429 and then another final example I'll give is the game Puzzle and Dragons, which ~ the the Super Mario edition of that is essentially two games in one. 511 00:29:56,429 --> 00:30:01,971 So the game like loads to a launcher and then you pick which which game you want to play. 512 00:30:01,971 --> 00:30:03,411 And when you pick a game, 513 00:30:03,411 --> 00:30:05,612 it it sets up the save data at that point. 514 00:30:05,612 --> 00:30:06,280 And 515 00:30:06,280 --> 00:30:10,523 If you've only played one of them, the save data is kinda broken. 516 00:30:10,523 --> 00:30:13,464 So if you try and sync it, it doesn't work. 517 00:30:13,464 --> 00:30:18,557 So again, you have to try and detect that and deal with it and yeah. 518 00:30:18,557 --> 00:30:27,633 It's it's it's a really quite a challenging ecosystem to work in because it doesn't really work it doesn't work that well. 519 00:30:27,633 --> 00:30:32,380 You know, a lot of the APIs that you use to to query stuff, you have to work around weirdness. 520 00:30:32,380 --> 00:30:33,384 ~ 521 00:30:33,384 --> 00:30:34,565 and and solve problems. 522 00:30:34,565 --> 00:30:36,045 And these are things that other tools have done. 523 00:30:36,045 --> 00:30:44,659 Like, you know, I I certainly have have looked with great interest at the source code of Checkpoint to figure out, you know, how things could be done and things they've done to 524 00:30:44,659 --> 00:30:45,529 work around issues. 525 00:30:45,529 --> 00:30:50,332 And I mean a lot of their code even goes back to the PKSM save s save manager. 526 00:30:50,332 --> 00:30:52,662 So you know open source has 527 00:30:52,662 --> 00:30:54,073 has made made this easier. 528 00:30:54,073 --> 00:31:00,788 But fundamentally I've had to reimplement all of this because these these tools are written in C, which is 529 00:31:00,788 --> 00:31:04,651 the language of the 3DS really and the language of most game game development. 530 00:31:04,651 --> 00:31:14,069 Whereas CloudPoint is written in Rust, which is a a more modern systems programming language, which ~ which has really good support in 3DS. 531 00:31:14,069 --> 00:31:15,420 That's a brilliant project. 532 00:31:15,420 --> 00:31:23,807 ~ you know I I I sh I should I sh I should find the link to the project to make sure that I reference it properly. 533 00:31:23,807 --> 00:31:28,828 But there are th there is a brilliant project which gives you the ability to write Rust code. 534 00:31:28,828 --> 00:31:29,780 ~ 535 00:31:29,780 --> 00:31:31,481 And have it compiled for a three DS. 536 00:31:31,481 --> 00:31:39,103 And although you sometimes have to learn some C to figure stuff out because it's all you know, you're calling C libraries under the hood and sometimes you do need to interface 537 00:31:39,103 --> 00:31:39,863 with them. 538 00:31:39,863 --> 00:31:43,604 ~ it's a great project and and and I gotta give them a shout out. 539 00:31:43,604 --> 00:31:49,035 The the the Rust three D S project, they they made all this possible because without them, you know, I know Rust. 540 00:31:49,035 --> 00:31:51,726 Rust is a language that I know pretty well and and love. 541 00:31:51,726 --> 00:31:54,317 but I don't know C and I couldn't have written the software in C. 542 00:31:54,317 --> 00:31:57,268 It's just way too complex for for me to do. 543 00:31:57,268 --> 00:31:59,058 ~ so yeah. 544 00:31:59,200 --> 00:31:59,724 Props to them. 545 00:31:59,724 --> 00:32:00,432 They're great. 546 00:32:00,432 --> 00:32:01,445 Really great. 547 00:32:02,592 --> 00:32:03,986 Is it okay? 548 00:32:03,986 --> 00:32:08,769 I'm looking at Rust Learning Language, the Rust the Rust C book. 549 00:32:08,769 --> 00:32:09,331 ~ I'm 550 00:32:09,331 --> 00:32:11,395 just looking Rust 3DS. 551 00:32:11,646 --> 00:32:13,416 Yes, Rust three DS. 552 00:32:16,584 --> 00:32:17,704 I'll have to 553 00:32:19,069 --> 00:32:22,036 wow, it's a GitHub organization with the ~ wow. 554 00:32:22,036 --> 00:32:22,418 It 555 00:32:22,418 --> 00:32:30,132 they have a few libraries under there and anyone who who is interested in making 3ds home proof and has used Rust, I would certainly encourage you to look into it. 556 00:32:30,132 --> 00:32:33,590 It it depending on what you're trying to do, it can be a really great way of doing it. 557 00:32:33,590 --> 00:32:42,787 If you want to make a game, maybe not, because a lot of the the the graphics primitives are not really ported across in the same way as they are available for people in in C 558 00:32:42,787 --> 00:32:46,468 land, but for what I wanted to do, everything I needed was there. 559 00:32:46,468 --> 00:32:51,120 I just had to figure out how to call it and ~ yeah, it's great. 560 00:32:51,146 --> 00:32:56,479 That just makes me do another aside to just the community surrounding the 3DS and the DS. 561 00:32:56,479 --> 00:32:59,269 It's just the homebrew community, especially. 562 00:32:59,269 --> 00:33:02,402 It's just I've never seen anything like it. 563 00:33:02,502 --> 00:33:04,753 I've never in all my years. 564 00:33:04,753 --> 00:33:16,029 I mean, there are some great communities around PC games and things like that, but something about the 3DS homebrew community, I've never, ever seen anything like it. 565 00:33:16,029 --> 00:33:18,231 It's I've talked about this on another show. 566 00:33:18,231 --> 00:33:19,932 It's just amazing, y'all. 567 00:33:19,932 --> 00:33:21,202 It's it's just. 568 00:33:21,386 --> 00:33:32,281 The the level of passion and the level of expertise and the level of patience in this community is I've never again unfounded. 569 00:33:32,281 --> 00:33:34,702 I've never seen anything like it. 570 00:33:34,702 --> 00:33:46,907 ~ and it's just just to know that something like I to hear that this Rust thing exists, I'm honestly not surprised, but I'm delighted because it's like it just 571 00:33:46,907 --> 00:33:49,788 it just ~ it just furthers my 572 00:33:49,788 --> 00:33:58,050 notion that this community can do just about anything it wants to do once they put their mind to it because my lord they've they've already done so much. 573 00:33:58,050 --> 00:34:00,202 Excuse me. 574 00:34:00,643 --> 00:34:01,434 That's amazing. 575 00:34:01,434 --> 00:34:03,527 I I've heard of the Rust language. 576 00:34:03,527 --> 00:34:04,498 Is it its own thing? 577 00:34:04,498 --> 00:34:06,281 Is it an offshoot of something like C? 578 00:34:06,281 --> 00:34:07,188 I don't really know. 579 00:34:07,188 --> 00:34:09,009 Rust Rust is is its own language. 580 00:34:09,009 --> 00:34:13,071 It it came out of Mozilla, which is the the the people who make Firefox. 581 00:34:13,071 --> 00:34:13,571 It was kind 582 00:34:13,571 --> 00:34:15,462 of it was kind of made there originally. 583 00:34:15,462 --> 00:34:26,017 ~ it's a kind of a it's kind of a a a a a more modern, safer alternative to to C and C. 584 00:34:26,017 --> 00:34:33,408 ~ Safe as in it's very easy when writing C to do things which lead to problems. 585 00:34:33,408 --> 00:34:35,459 You know, not to not to denigrate C at all. 586 00:34:35,459 --> 00:34:36,721 C is an amazing thing. 587 00:34:36,721 --> 00:34:38,372 It's it's fifty years old. 588 00:34:38,372 --> 00:34:44,188 ~ it was, you know, developed in in the in Bell Labs over in the USA fifty years ago. 589 00:34:44,188 --> 00:34:45,958 ~ and it's lived on all this time. 590 00:34:45,958 --> 00:34:54,725 And it's still like the language that you use for for for low level game development, you know, other than assembler, which is very rare these days. 591 00:34:54,725 --> 00:34:56,667 But it's it's an amazing thing, see. 592 00:34:56,667 --> 00:34:58,348 No no no shade to throw on it. 593 00:34:58,348 --> 00:35:00,000 But it you know, it's fifty years old. 594 00:35:00,000 --> 00:35:02,996 We've we've got much more complex systems these days and 595 00:35:02,996 --> 00:35:10,188 very easy to write C code which you know doesn't free some memory or or tries to free memory twice. 596 00:35:10,188 --> 00:35:13,569 And these are both things in computer science that are actually really bad. 597 00:35:13,569 --> 00:35:26,492 ~ and and and Rust has has a mission which is to to allow you to do all those things you could do in C but to wrap them up in a much more stringent container that that forces you 598 00:35:26,492 --> 00:35:33,108 to observe certain practices and forces you to do certain things to to keep the program safer ~ and and 599 00:35:33,108 --> 00:35:42,532 without losing performance because, you know, you can get safer code using JavaScript or something like that, but JavaScript is it's fundamentally gonna be very slow in many cases 600 00:35:42,532 --> 00:35:44,052 to compare to something like C. 601 00:35:44,052 --> 00:35:47,664 So yeah, Rust is is a a now a very popular language. 602 00:35:47,664 --> 00:35:53,236 It's becoming very widely used and it's it's it's it's a lot of stuff is getting written in Rust now. 603 00:35:53,236 --> 00:35:56,678 Has a reputation for being difficult to use, but I don't think that's true. 604 00:35:56,678 --> 00:35:57,898 I just think it has a learning curve. 605 00:35:57,898 --> 00:36:03,040 ~ and yeah, it's it's it's it's been 606 00:36:03,166 --> 00:36:07,630 has good compatibility with C, and that's what the Rust 3ds project give you really. 607 00:36:07,630 --> 00:36:17,589 They give you a compatibility layer with C that allows Rust developers to to hook into all the C the C stuff which is available by from people like DevKit Pro. 608 00:36:17,589 --> 00:36:21,112 ~ because without that you'd you'd you'd have to basically figure out how to do it yourself. 609 00:36:21,112 --> 00:36:22,653 And that's that's really hard. 610 00:36:22,653 --> 00:36:30,900 So so in most cases I could just use the primit the the wrappers that Rust 3ds had provided to do things like, you know 611 00:36:30,900 --> 00:36:34,081 look at the network or or read files or things like that. 612 00:36:34,081 --> 00:36:43,245 There are cases where I did have to basically just dig into the the C layer, which is kind of exposed through R Rust three DS in a way. 613 00:36:43,245 --> 00:36:46,046 ~ but you know, I didn't have to do that too much. 614 00:36:46,046 --> 00:36:55,000 And where I don't have to do that, it's better because, you know, you you you you can write code which is much more easy to read and understand for a Rust developer and is 615 00:36:55,000 --> 00:36:57,071 usually going to be safer to use. 616 00:36:57,071 --> 00:36:58,271 So yeah, that's Rust. 617 00:36:58,271 --> 00:37:00,372 I'm probably talking about Rust too much, but I 618 00:37:00,372 --> 00:37:02,207 That's a that's something I also evangelise. 619 00:37:02,207 --> 00:37:03,668 I I think Rust is a wonderful thing. 620 00:37:03,668 --> 00:37:04,339 No, no, no, no, no. 621 00:37:04,339 --> 00:37:06,390 These are the kind of weeds we want to get lost in. 622 00:37:06,390 --> 00:37:15,578 This is this is the kind of nuts and bolts I want to hear about, and I I hope our listeners want to hear about too, because I I find, I mean, I I can't program to save my 623 00:37:15,578 --> 00:37:15,848 life. 624 00:37:15,848 --> 00:37:21,704 I have tried, and my brain just can't make the connections necessary to do programming. 625 00:37:21,704 --> 00:37:30,588 I've tried multiple times and I just but I'm also fascinated by one, the languages themselves and people who can do it, you know? 626 00:37:30,588 --> 00:37:31,528 So 627 00:37:32,192 --> 00:37:42,515 Excuse me, it's great that you can do it and you found a language that seems to have, I guess I would call them guardrails, safeguards to make raking more difficult, which 628 00:37:42,515 --> 00:37:44,876 is wonderful in this modern era. 629 00:37:46,097 --> 00:37:57,560 and and the fact that a community has come together to help port this burgeoning, growing language that more and more people are using to a ~ 630 00:37:57,972 --> 00:37:59,393 Someone called dead console. 631 00:37:59,393 --> 00:38:02,594 I don't think it's dead, but some I mean they're not making any more of these things. 632 00:38:02,594 --> 00:38:10,977 And yet the community that makes these like Rust and CloudPoint and Checkpoint are thriving because of things like this. 633 00:38:10,977 --> 00:38:12,878 So that's what I want to celebrate. 634 00:38:12,878 --> 00:38:16,759 That's one of the things I want to celebrate is the people doing all this. 635 00:38:16,820 --> 00:38:19,141 You know, the people bringing all this together. 636 00:38:19,141 --> 00:38:21,802 It's just marvelous, magical. 637 00:38:21,802 --> 00:38:24,053 So I love that this exists. 638 00:38:24,053 --> 00:38:27,784 And I love hearing you talk about it because you can hear your passion. 639 00:38:27,784 --> 00:38:28,144 About it. 640 00:38:28,144 --> 00:38:31,026 And that's another thing I want to share is people's passion. 641 00:38:31,027 --> 00:38:35,350 This community, the 3DS, brings out so many passionate people. 642 00:38:35,350 --> 00:38:40,234 It brings out so many talented people to bring what they have to the party. 643 00:38:40,474 --> 00:38:48,591 And it's just lovely to see all that coalesce into supporting this not ancient, but older machine that can do so much. 644 00:38:48,591 --> 00:38:51,673 It's I just learned through another interview, it's got three CPUs. 645 00:38:51,673 --> 00:38:52,584 I didn't know that. 646 00:38:52,584 --> 00:38:53,514 You know, 647 00:38:53,514 --> 00:38:54,005 Yeah. 648 00:38:54,005 --> 00:38:57,866 it's it's just, and I want to talk to you something about that because you said. 649 00:38:57,866 --> 00:39:00,377 programming for this is ch can be challenging. 650 00:39:01,138 --> 00:39:09,384 In your view, what are the challenges in regards to making programs, homebrew programs for the three DS? 651 00:39:09,680 --> 00:39:10,680 That's a great question. 652 00:39:10,680 --> 00:39:21,866 ~ I mean fundamentally it's anything that any homebrew that you do is always gonna be running on undocumented hardware. 653 00:39:21,866 --> 00:39:27,399 You know, there are certainly gonna be Nintendo ~ manuals and and documentation 654 00:39:27,399 --> 00:39:28,870 on this, but none of that's available to us. 655 00:39:28,870 --> 00:39:30,350 We we don't have that. 656 00:39:30,580 --> 00:39:31,245 that's all hidden. 657 00:39:31,245 --> 00:39:34,172 You know, the the dev kits that they provided to people 658 00:39:34,528 --> 00:39:37,099 You know, they're certainly under NDA and you will never find one of those. 659 00:39:37,099 --> 00:39:43,308 ~ and certainly you would never use it if you did, because you'd be definitely be in very sticky legal territory if you did that. 660 00:39:43,308 --> 00:39:43,470 So, 661 00:39:43,470 --> 00:39:53,363 you know, everything that we do is based on people reverse engineering the stuff and providing a a a like a clean room implementation of of the same thing, which is a clean 662 00:39:53,363 --> 00:40:00,615 room implementation is kinda like a version that's been made just based on reverse engineering, no no no access to proprietary or copyrighted information. 663 00:40:00,615 --> 00:40:03,826 So we're we're using all of that stuff and 664 00:40:04,168 --> 00:40:06,229 A lot of this stuff is just really esoteric. 665 00:40:06,229 --> 00:40:09,491 ~ it's it's hard to understand. 666 00:40:09,491 --> 00:40:14,424 It it does things that appear to be weird and you don't really know 667 00:40:14,424 --> 00:40:16,555 why because all the context is gone. 668 00:40:16,555 --> 00:40:30,012 Like, you know, there might be a there might be a a like a well, like when you write a 3DS save, there's there's a sort of anti copying mechanism ~ built into the saves and and you 669 00:40:30,012 --> 00:40:32,143 you you have to basically clear it. 670 00:40:32,143 --> 00:40:33,984 And I don't know why. 671 00:40:34,012 --> 00:40:38,373 you you you do it the way you do it, but you do, and and somebody had to figure that out. 672 00:40:38,373 --> 00:40:49,456 But fi but but deter but learning those those those quirks is one of the challenges here because something might not work and you don't know why and you you eventually go on this 673 00:40:49,456 --> 00:40:53,757 this bug hunt and happen across something and eventually it starts working. 674 00:40:53,757 --> 00:40:55,318 ~ so all those kind of things. 675 00:40:55,318 --> 00:41:03,420 Even even honestly like learning how to just read a save on the system ~ and and 676 00:41:04,032 --> 00:41:14,910 pull the right information out of the save, ~ in a in a ~ in a way that was reliable and repeatable was was was really challenging. 677 00:41:14,910 --> 00:41:25,547 Like actually doing that was it took me there was sort of a three or four month period at the start of the project where all I did was hack around trying to read a save of whatever 678 00:41:25,547 --> 00:41:30,250 game it was I was experimenting with and and and writing it out again. 679 00:41:30,250 --> 00:41:33,062 And and that took quite a long time. 680 00:41:33,272 --> 00:41:45,789 ~ once I'd done that, the rest of it came much more quickly because I knew I was onto something and I could make it I could kind of put it into I could take my my initial 681 00:41:45,789 --> 00:41:53,544 really hacky code and actually write something which was maintainable and I could you know have some pride in to be honest, because a big part of this is something that I enjoy 682 00:41:53,544 --> 00:41:55,375 doing and and I take a certain pride in it. 683 00:41:55,375 --> 00:41:58,109 So you know you kind of take that code and make it more usable. 684 00:41:58,109 --> 00:42:00,734 ~ but yeah, just that that whole save format. 685 00:42:00,734 --> 00:42:12,552 And learning about the difference between save data and EXT data and and what's a banner and what's an you know w ~ even the even the way the three D S kind of lists what software 686 00:42:12,552 --> 00:42:19,337 is on the system and and getting the name out of it is is much harder than you might expect. 687 00:42:19,337 --> 00:42:21,619 You know, you would think something like that would be dead easy. 688 00:42:21,619 --> 00:42:29,044 You would think, I could just surely I can call a function and it's gonna tell me that's the name of this game but but no, you d you don't do that. 689 00:42:29,044 --> 00:42:29,620 You 690 00:42:29,620 --> 00:42:39,267 have to open a file and you have to do that in a really weird way and pass it some numbers that you don't necessarily understand the significance of, but you do know work because 691 00:42:39,267 --> 00:42:45,411 you found some prior art that does it and put all that together and eventually you have something coherent. 692 00:42:45,411 --> 00:42:48,913 So they're all the they're all the the the really hard things. 693 00:42:48,913 --> 00:42:56,758 Some of the more interesting challenges ~ you know were were I knew would be doable but but I had to figure out how to do them. 694 00:42:56,758 --> 00:42:59,624 Stuff like controlling the wireless 695 00:42:59,624 --> 00:43:07,655 on the system, you know, turning the wireless on when it's not on and turning it off again when you quit if it was off when you when you launched it. 696 00:43:07,655 --> 00:43:09,167 You know, little things like that. 697 00:43:09,167 --> 00:43:10,407 Yeah, it does that. 698 00:43:10,407 --> 00:43:13,148 ~ that's yeah, I I've 699 00:43:13,148 --> 00:43:19,900 I like to I generally like to run my systems with the wireless turned off if I'm sitting at home or something, because the wireless is 700 00:43:19,900 --> 00:43:21,811 actually one of the big power draws on the system. 701 00:43:21,811 --> 00:43:24,471 It'll probably eat twenty, thirty percent of your battery life. 702 00:43:24,471 --> 00:43:26,972 So I like to turn it off, but 703 00:43:27,080 --> 00:43:28,951 I don't want to have to turn it on all the time. 704 00:43:28,951 --> 00:43:31,482 So Cloud Point will turn it on when it launches. 705 00:43:31,482 --> 00:43:33,764 And if it did that, it'll turn it off again when you quit. 706 00:43:33,764 --> 00:43:40,797 ~ which is something other s other software does, but I wanted to do because I think it's a nice little quality of life. 707 00:43:40,797 --> 00:43:43,869 So figuring stuff like that out is is cool. 708 00:43:43,869 --> 00:43:44,569 Yeah. 709 00:43:44,569 --> 00:43:46,110 And there's lots of little things like that. 710 00:43:46,110 --> 00:43:52,404 You know, making sure the system doesn't go to sleep if you're in the middle of a sink and you close the lid or flip the two D S switch. 711 00:43:52,404 --> 00:43:56,556 You know, again I wanted to avoid doing that 'cause that could kind of break things. 712 00:43:56,556 --> 00:43:57,140 So 713 00:43:57,140 --> 00:43:59,221 doesn't go to sleep in the middle of it. 714 00:43:59,641 --> 00:44:08,506 lots of little little things like that which which which make up a small amount of the software in in the grand scheme of things, but but they're really important for delivering 715 00:44:08,506 --> 00:44:21,814 something to people which which they can trust and which works well because software which you release and it it isn't to a basic minimum quality bar, I'm just not I'm just not into 716 00:44:21,814 --> 00:44:22,154 that. 717 00:44:22,154 --> 00:44:26,736 Like I think it's a great way for people to to not use your software. 718 00:44:26,784 --> 00:44:27,648 Yeah. 719 00:44:27,893 --> 00:44:28,454 it we 720 00:44:28,454 --> 00:44:29,625 we see it a lot these days. 721 00:44:29,625 --> 00:44:41,329 There's ~ there's a big there's a big movement of of what we call vibe coding, which is maybe a term you've heard, but this idea that, you know, you can use AI to do stuff for 722 00:44:41,329 --> 00:44:41,479 you. 723 00:44:41,479 --> 00:44:44,252 ~ and that that can be a pain. 724 00:44:44,364 --> 00:44:49,107 on the GDA GBA temp forums, you'll see like, I made this thing. 725 00:44:49,107 --> 00:44:50,938 Come join my Discord server for it. 726 00:44:50,938 --> 00:44:53,209 And everyone's like, No. 727 00:44:53,430 --> 00:44:54,940 No, I'm not joining 728 00:44:54,940 --> 00:44:55,881 your Discord for it. 729 00:44:55,881 --> 00:44:57,392 You probably vibe coded it. 730 00:44:57,392 --> 00:44:59,033 I don't trust you at all. 731 00:44:59,573 --> 00:45:01,260 Put it on GitHub if you really want. 732 00:45:01,260 --> 00:45:04,446 If you really want legitimacy, you know that's 733 00:45:04,928 --> 00:45:05,689 And and that 734 00:45:05,689 --> 00:45:08,411 and that's happening more and more, I'm seeing in these communities. 735 00:45:08,411 --> 00:45:11,573 It's like you see you see people vibe coding things. 736 00:45:12,174 --> 00:45:14,236 It's like I I I'm gonna be honest. 737 00:45:14,236 --> 00:45:17,137 I I I can't stand LLMs. 738 00:45:17,418 --> 00:45:21,301 The whole concept of vibe coding makes me wanna vomit. 739 00:45:21,301 --> 00:45:24,194 ~ to be to be perfectly honest. 740 00:45:24,194 --> 00:45:31,109 I mean, I I get it, ~ but at the same time, like, well, what if people what if someone made a great game that they can't program? 741 00:45:31,109 --> 00:45:33,611 Then they maybe sh it's not gonna be a great game. 742 00:45:33,611 --> 00:45:34,822 It's not a great game. 743 00:45:34,822 --> 00:45:40,215 How how can it be a great game if you can't genuinely make a game yourself? 744 00:45:40,456 --> 00:45:42,037 You know, so 745 00:45:42,317 --> 00:45:46,550 so I'm I'm sorry, I I don't know how other people feel about this, but I can't stand LLMs. 746 00:45:46,550 --> 00:45:47,772 I can't stand them. 747 00:45:47,772 --> 00:45:50,983 I have to use them for work now, and I hate it. 748 00:45:50,983 --> 00:45:56,907 I hate it so much, but I hate I also hate to admit that for some things it does save time. 749 00:45:56,907 --> 00:46:02,791 Like I don't I don't want to write four I don't want to write 40, 900 page descriptions for Google. 750 00:46:02,791 --> 00:46:03,612 I really don't. 751 00:46:03,612 --> 00:46:04,362 So thank you. 752 00:46:04,362 --> 00:46:10,305 For that, I guess, but but people people doing creative things like games and art and things? 753 00:46:10,305 --> 00:46:11,879 No, no, no, stop it. 754 00:46:11,879 --> 00:46:14,925 It it just makes me it 755 00:46:14,925 --> 00:46:16,887 I try and take a balanced view with this. 756 00:46:16,887 --> 00:46:21,807 ~ like I I I also like deep down I don't really like LLMs. 757 00:46:21,807 --> 00:46:24,608 I I have issues with them with the with the ethics of it. 758 00:46:24,608 --> 00:46:26,553 You know, there is these things are fundamentally 759 00:46:26,553 --> 00:46:30,817 trained on on human output being sold back to us, which I find distasteful. 760 00:46:30,817 --> 00:46:32,478 I think there's a massive 761 00:46:32,478 --> 00:46:35,870 a massive issue with with the climate, which these things are not helping. 762 00:46:35,870 --> 00:46:40,483 ~ here in the UK it's we're in it all the grass is brown. 763 00:46:40,483 --> 00:46:41,668 It's it's you know 764 00:46:41,668 --> 00:46:42,184 I 765 00:46:42,184 --> 00:46:42,424 five, 766 00:46:42,424 --> 00:46:43,995 forty degrees, and that's not normal here. 767 00:46:43,995 --> 00:46:54,509 And and you know, I I I will resist the temptation to use this as kind of like a a pedestal to to to kind of push my own my own views on this because it's probably not the 768 00:46:54,509 --> 00:46:55,079 time or place. 769 00:46:55,079 --> 00:47:05,103 But I do think that that we sh you know we we cannot ignore the the you know the output of any power hungry initiative and that includes LLM. 770 00:47:05,103 --> 00:47:06,519 So so I have issues there. 771 00:47:06,519 --> 00:47:08,315 I try and take a balanced view 772 00:47:08,315 --> 00:47:11,784 but but yeah when it comes to software I think 773 00:47:11,784 --> 00:47:12,885 You they they are useful. 774 00:47:12,885 --> 00:47:17,719 And you know, full disclosure here, I I I do use LLM sometimes for software dev. 775 00:47:17,719 --> 00:47:19,551 It's very hard not to these days. 776 00:47:19,551 --> 00:47:22,533 And you know, I I like to keep it minimal. 777 00:47:22,533 --> 00:47:25,366 I I don't run agents on my computer. 778 00:47:25,366 --> 00:47:30,640 I don't, you you there's no code in ClownPoint which is, you know, me writing a prompt and getting it to write the code. 779 00:47:30,640 --> 00:47:32,222 That's that's that's not how it's done. 780 00:47:32,222 --> 00:47:40,030 But I'd certainly do sometimes go to something like Claude and say, Hey, you know, is you know, how secure is a sort of 781 00:47:40,030 --> 00:47:41,291 hundred and twenty eight bit number. 782 00:47:41,291 --> 00:47:44,484 You know, these are the sorts of questions you have to ask yourself sometimes in software. 783 00:47:44,484 --> 00:47:47,807 And and and I will I will use it to help me answer that question. 784 00:47:47,807 --> 00:47:50,369 In the same way I would I would search Google to answer things. 785 00:47:50,369 --> 00:47:53,221 And that's that I'm okay with that, but there's a limit. 786 00:47:53,221 --> 00:47:56,874 using it for mundane information searching like that. 787 00:47:56,874 --> 00:48:02,608 You know, I think that's fine because it's just a different way to parse, it's just a different search engine in that regard. 788 00:48:02,608 --> 00:48:08,022 And it just parses and gives you the information a little differently than the 10 blue links or whatever, you know. 789 00:48:08,022 --> 00:48:15,537 But when you're using it to create art or music or or books, it's like, no, no, that's not. 790 00:48:15,537 --> 00:48:16,228 Stop. 791 00:48:16,228 --> 00:48:16,824 No. 792 00:48:16,824 --> 00:48:17,865 not that's not for me. 793 00:48:17,865 --> 00:48:19,796 I ~ I like I say, 794 00:48:19,796 --> 00:48:32,973 I try and take a balanced view and and I've I've I I will generally resist the urge to to kind of fight a holy war on this because ~ I've found that I guess as I've got older I I I 795 00:48:32,973 --> 00:48:43,099 try and I try and see everybody's viewpoint and I try and take a balanced view and I you know I'm less I'm less vehemently opinionated than I once was perhaps. 796 00:48:43,099 --> 00:48:46,170 But ~ I am also entitled 797 00:48:46,192 --> 00:48:48,175 I'm the opposite. 798 00:48:48,175 --> 00:48:49,116 I can 799 00:48:50,880 --> 00:48:51,951 All right, sorry. 800 00:48:52,359 --> 00:49:01,724 I I I think, you know, I I I guess I'm wary of of like denigrating anybody who does choose to to use these tools in the way they see fit. 801 00:49:01,724 --> 00:49:07,347 I'm also free not to read your AI written book or watch your AI written movie or play your 802 00:49:07,347 --> 00:49:15,604 AI developed game or certainly listen to your AI developed music that ~ to misquote Hayao Miyazaki, the the wonderful 803 00:49:15,604 --> 00:49:21,546 Japanese ~ director and artist AI as an affront to life itself. 804 00:49:21,546 --> 00:49:24,848 And and it's ~ I I kinda believe that. 805 00:49:24,848 --> 00:49:27,009 ~ and try and 806 00:49:27,009 --> 00:49:31,644 remember it while also letting other people do what they want to do and letting the chips fall where they may. 807 00:49:31,644 --> 00:49:35,552 ~ and if other people want to use LLMs to make software, that's fine. 808 00:49:35,552 --> 00:49:45,320 I do think that if you're vibe coding, to bring this full circle, if you're vibe coding your software, I I am doubtful that you are 809 00:49:45,320 --> 00:49:53,627 if you're inexperienced gonna be aware of the sorts of things that you need to do to take the software to kind of like a minimum level of quality. 810 00:49:53,627 --> 00:49:54,227 And and if 811 00:49:54,227 --> 00:50:03,395 you release it in that state, you will you will essentially hurt your chances of of reaching a an audience who might otherwise like your software. 812 00:50:03,395 --> 00:50:12,182 And so that's kind of why it was important for me to make sure that, you know, turning on the Wi Fi at the right time worked and make sure that not sleeping when you shut the lid 813 00:50:12,182 --> 00:50:15,250 worked and making sure that if something goes wrong it can 814 00:50:15,250 --> 00:50:15,970 it can recover. 815 00:50:15,970 --> 00:50:17,932 Like you you know, a backup is taken. 816 00:50:17,932 --> 00:50:20,663 Whenever you download a save, it backs it up first. 817 00:50:20,663 --> 00:50:21,474 You can actually turn 818 00:50:21,474 --> 00:50:24,215 that off if you want to, if you 'cause it takes a while, believe it or not. 819 00:50:24,215 --> 00:50:27,637 It's one of the slowest things in the system is backing up your save before you overwrite it. 820 00:50:27,637 --> 00:50:30,229 But you know, it does those sorts of things. 821 00:50:30,229 --> 00:50:39,254 And these are the things that I think you may lose if you go to Claude and say, Hey Claude, write me a sync tool and make no mistakes. 822 00:50:39,254 --> 00:50:41,035 So there we go. 823 00:50:42,076 --> 00:50:42,522 Yeah. 824 00:50:42,522 --> 00:50:52,589 I I just wanted to say that I I I appreciate that you have I'm not I don't know if mellowed is the right word, but you've become more open to some things. 825 00:50:52,589 --> 00:51:03,286 I am the opposite in some I like I'm I'm I'm very much that I want everyone to have a basic, you know, quality of life and and I want everyone to like have access to healthcare 826 00:51:03,286 --> 00:51:03,667 and everything. 827 00:51:03,667 --> 00:51:08,412 And I think things like LLMs are the complete antithesis of the socialist ~ 828 00:51:08,412 --> 00:51:10,413 Star Trek laden future that I want. 829 00:51:10,413 --> 00:51:22,910 So I'm I'm ~ and and it hell and for me, because I know so many game developers and I know so many people who want to get into voice acting and whatnot, it's just really gotten 830 00:51:22,910 --> 00:51:23,980 personal 831 00:51:24,404 --> 00:51:24,761 Yeah. 832 00:51:24,761 --> 00:51:32,305 be because I I see, you know, people directly affected by by these problems. 833 00:51:32,305 --> 00:51:35,867 And so it's just really, it just very much frustrates me. 834 00:51:35,867 --> 00:51:37,648 ~ I I I 835 00:51:37,648 --> 00:51:38,280 wish that 836 00:51:38,280 --> 00:51:39,581 I wish that. 837 00:51:39,581 --> 00:51:46,326 I guess if you're gonna vibe code something, my what I would say is please just disclose it. 838 00:51:46,326 --> 00:51:48,909 Please just say you vibe coded it. 839 00:51:48,909 --> 00:51:49,900 A lot no one does. 840 00:51:49,900 --> 00:51:50,430 No one does. 841 00:51:50,430 --> 00:51:51,721 No one's like, I made this thing. 842 00:51:51,721 --> 00:51:53,473 No, you you didn't. 843 00:51:53,473 --> 00:51:57,016 But let's be honest, you made nothing. 844 00:51:57,016 --> 00:52:06,974 But but I I think I think if you ~ told people that, hey, I vibe coded this, I think you'd ~ 845 00:52:08,254 --> 00:52:10,387 I honestly think you'd probably get more 846 00:52:12,628 --> 00:52:16,488 More of respect because you admitted it rather than tried to hide it. 847 00:52:16,488 --> 00:52:16,829 do. 848 00:52:16,829 --> 00:52:17,809 You absolutely do. 849 00:52:17,809 --> 00:52:21,342 You know, we see this on on programming on forums like the Rust subreddit. 850 00:52:21,342 --> 00:52:29,818 You know, there many people pop up in there and say, Hey, I mean you can you can detect the the the LLM written posts in a heartbeat because they have a very particular style 851 00:52:29,818 --> 00:52:30,618 that is sort of in 852 00:52:30,618 --> 00:52:33,708 the uncanny valley that I personally find quite quite off putting. 853 00:52:33,708 --> 00:52:34,581 ~ you know, 854 00:52:34,581 --> 00:52:36,983 but people use these tools for writing documentation. 855 00:52:36,983 --> 00:52:40,085 I absolutely don't because, you know, I I like to write myself. 856 00:52:40,085 --> 00:52:41,906 I I I like the humanity of it. 857 00:52:41,906 --> 00:52:44,170 ~ but you can see you can detect the 858 00:52:44,170 --> 00:52:53,034 the LLM written posts immediately and and and people descend on them and can say like you're get in the C like we we don't want to we don't wanna we don't want to hear this. 859 00:52:53,034 --> 00:52:59,646 But if people turn up and say, hey, I vibe coded this, you will at least start from a baseline of common understanding. 860 00:52:59,646 --> 00:53:03,107 ~ And you can go from there and and 861 00:53:03,328 --> 00:53:04,568 find the common ground. 862 00:53:04,798 --> 00:53:09,790 I think if you say that, you're also saying that look, I'm inexperienced, I vibe coded this. 863 00:53:09,790 --> 00:53:13,331 I could use help to make it better. 864 00:53:13,532 --> 00:53:16,303 You know, I could, I could use, you know, some advice. 865 00:53:16,303 --> 00:53:26,897 Like if you come at it from a place of I've instead of I made this thing, like, hey, I asked AI to make this thing because I want to learn, help me learn beyond what AI has told 866 00:53:26,897 --> 00:53:27,107 me. 867 00:53:27,107 --> 00:53:28,718 I think that's fine. 868 00:53:28,858 --> 00:53:30,079 I think that's fine. 869 00:53:30,079 --> 00:53:31,900 But not a lot of people do that. 870 00:53:31,900 --> 00:53:33,494 Not a lot of people do that. 871 00:53:33,830 --> 00:53:34,621 ~ so I do 872 00:53:34,621 --> 00:53:40,504 have a I do have a question about CloudFoint specifically because I have it up and running on my system. 873 00:53:43,474 --> 00:53:44,364 It it crashed. 874 00:53:44,364 --> 00:53:45,485 ~ there it goes. 875 00:53:45,485 --> 00:53:48,262 ~ s so 876 00:53:48,262 --> 00:53:48,933 not. 877 00:53:49,008 --> 00:53:51,330 it it it did, it it just stopped working. 878 00:53:51,330 --> 00:53:51,980 Buddy, how 879 00:53:51,980 --> 00:53:52,604 you doing? 880 00:53:52,604 --> 00:53:53,892 ~ there it goes. 881 00:53:53,892 --> 00:53:54,672 Just took a moment. 882 00:53:54,672 --> 00:53:56,213 ~ 883 00:53:56,213 --> 00:54:00,764 yeah now I mean it I loaded it, it went back to the home screen, I loaded it again. 884 00:54:00,764 --> 00:54:02,198 ~ anyway. 885 00:54:02,198 --> 00:54:05,880 So ~ I have a question about virtual console games. 886 00:54:06,474 --> 00:54:07,253 Yes. 887 00:54:07,870 --> 00:54:08,610 Is that a thing? 888 00:54:08,610 --> 00:54:13,523 Because I I noticed that I think on here there might be some of them that I have on my system. 889 00:54:13,523 --> 00:54:14,683 Like I think, 890 00:54:15,464 --> 00:54:22,398 like I think Pokemon Yellow version, for example, I think is a is a for example, I believe is a virtual console game. 891 00:54:22,398 --> 00:54:24,219 Tetris DX is virtual console game. 892 00:54:24,219 --> 00:54:28,171 So it does see some virtual console games. 893 00:54:28,171 --> 00:54:35,135 But I've got a lot of Pokemon ROM hacks on this thing, and it it doesn't see those. 894 00:54:35,135 --> 00:54:36,455 Whereas checkpoint 895 00:54:36,455 --> 00:54:37,866 it checkpoint does. 896 00:54:37,866 --> 00:54:39,397 So this is not a criticism. 897 00:54:39,397 --> 00:54:40,187 I'm asking. 898 00:54:40,187 --> 00:54:42,288 This 899 00:54:42,288 --> 00:54:42,968 is not a criticism. 900 00:54:42,968 --> 00:54:45,959 I'm bringing it up because I want to ask if that's something you're aware of. 901 00:54:45,959 --> 00:54:47,560 Is that something you're working on? 902 00:54:47,560 --> 00:54:48,560 That sort of thing. 903 00:54:48,560 --> 00:54:49,841 Because I would love to see that. 904 00:54:49,841 --> 00:54:55,043 I would love to be able to sync my Pokemon up unbound save between my machines. 905 00:54:55,043 --> 00:54:56,764 ~ 906 00:54:56,764 --> 00:54:58,264 but I wanted to ask about that. 907 00:54:58,401 --> 00:54:59,491 This is a great question. 908 00:54:59,491 --> 00:55:00,942 I'm glad you've asked this. 909 00:55:01,682 --> 00:55:13,257 so the short well the long and the short of it is that virtual console games in general will show up in CloudPoint just fine because they basically appear to the system as 3DS 910 00:55:13,257 --> 00:55:14,068 games. 911 00:55:14,068 --> 00:55:24,552 They they run in an emulator ~ in within you know the three DS runs in an actual emulator and and it's presented to the system as a game. 912 00:55:24,552 --> 00:55:28,695 It has a title ID, it has a save archive, everything works as it normally does. 913 00:55:28,696 --> 00:55:30,177 You're off to the races, no problem. 914 00:55:30,177 --> 00:55:36,072 So, you know, Super Nintendo games or ~ or original Game Boy games, things like that, they're that they work. 915 00:55:36,072 --> 00:55:36,572 They always have. 916 00:55:36,572 --> 00:55:42,227 ~ The games that you're referring to are ge are Game Boy Advanced games. 917 00:55:42,227 --> 00:55:53,984 So the Game Boy Advanced support on three DS is a bit of an a it's a bit anomalous because the three D S contains the hardware from a DS, because it's it's backwards compatible. 918 00:55:53,984 --> 00:55:56,785 There's no emulation there, it actually contains the hardware. 919 00:55:56,785 --> 00:56:02,767 One of the CPUs of the three or four that you mention is actually the CPU that's in a GBA. 920 00:56:03,368 --> 00:56:09,531 and that means that the system can run those GBA games using that CPU. 921 00:56:09,611 --> 00:56:16,214 But of course, the the the 3DS doesn't have a a a s a cart slot that supports GBA. 922 00:56:16,214 --> 00:56:21,946 So the only way that you ever get GBA games on a 3DS is via virtual console. 923 00:56:21,950 --> 00:56:26,780 And when a virtual console game is a three is a GBA game, they are run in a very different way. 924 00:56:26,780 --> 00:56:29,987 They're not emulated the same way that the other games are. 925 00:56:29,987 --> 00:56:32,571 They are actually running on original hardware. 926 00:56:32,571 --> 00:56:36,675 And the saves are totally different to a normal game as well. 927 00:56:36,675 --> 00:56:39,778 They I don't think they're written to the SD card. 928 00:56:39,778 --> 00:56:44,183 I think they're actually on the on the console's NAND, on the the built-in chip. 929 00:56:44,183 --> 00:56:45,663 ~ 930 00:56:45,663 --> 00:56:51,915 I I to I had because I wanted to get a save from Pokemon Unbound, I had to go into God mode nine. 931 00:56:51,915 --> 00:56:58,118 ~ because the the save from checkpoint didn't work for some reason when I put it on the DSI. 932 00:56:58,118 --> 00:57:02,730 But I went into God mode and dumped the virtual NAND, I think it was called. 933 00:57:02,730 --> 00:57:03,560 ~ 934 00:57:03,560 --> 00:57:05,301 and that save worked. 935 00:57:05,301 --> 00:57:06,692 So that was fascinating. 936 00:57:06,692 --> 00:57:08,182 I'd never done anything like that before. 937 00:57:08,182 --> 00:57:08,903 So yeah, you're right. 938 00:57:08,903 --> 00:57:12,884 It's saved in like a virtual part of the NAND. 939 00:57:12,948 --> 00:57:16,580 Which is NAND is like system memory, ~ if you're unaware. 940 00:57:16,580 --> 00:57:19,132 And it's there's there's very different types. 941 00:57:19,132 --> 00:57:20,353 There's several of them. 942 00:57:20,353 --> 00:57:22,194 And they're all over the place. 943 00:57:22,194 --> 00:57:23,074 Whoo! 944 00:57:24,816 --> 00:57:28,998 it's it's a fascinating machine with all these nooks and crannies. 945 00:57:29,439 --> 00:57:36,638 But yeah, so because it emulates on the hardware and has a different save system, CloudPoint can't see it yet. 946 00:57:36,638 --> 00:57:37,949 It it can't see it yet. 947 00:57:37,949 --> 00:57:39,451 ~ and 948 00:57:39,451 --> 00:57:46,537 Checkpoint recently, and we're talking in the last few weeks at the time of recording, ~ actually brought support. 949 00:57:46,537 --> 00:57:50,681 I think Checkpoint five point naught or four point naught brought support for these games in. 950 00:57:50,681 --> 00:57:53,731 ~ there's actually it was. 951 00:57:53,731 --> 00:57:54,103 to see. 952 00:57:54,103 --> 00:57:54,524 Yeah. 953 00:57:54,524 --> 00:57:55,005 It was. 954 00:57:55,005 --> 00:57:57,006 There was a PR that's been open for literally years. 955 00:57:57,006 --> 00:58:02,039 ~ and there's been a flurry of activity on Checkpoint in the last few weeks. 956 00:58:02,039 --> 00:58:03,392 They've clearly 957 00:58:03,392 --> 00:58:09,695 you know, had a lot of a lot of effort thrown at it and and lots of good support available to them to well I think it I say them. 958 00:58:09,695 --> 00:58:13,377 I think it's one guy who but pretty much does most of the work, like credit to him. 959 00:58:14,298 --> 00:58:15,498 credit to them. 960 00:58:16,119 --> 00:58:26,225 so yeah, they that PR got merged and I and I have looked at that PR and I will certainly be using that to to figure out how to do it myself because it's a really a really useful 961 00:58:26,225 --> 00:58:26,925 PR. 962 00:58:26,925 --> 00:58:32,852 So yes, I will be it's one of my top priority things actually get support for these games into CloudPoint. 963 00:58:32,852 --> 00:58:36,794 And I want them just to show up i yeah on the title list, same as anything else. 964 00:58:36,794 --> 00:58:41,259 And I want the save to get synced automatically on an auto sync like everything else. 965 00:58:41,259 --> 00:58:44,772 ~ but the actual mechanics of doing it are a bit different. 966 00:58:44,772 --> 00:58:53,529 You know, you have to go and grab the save out of the NAND, you have to ~ do the rest of the stuff that CloudPoint already does probably won't be very different. 967 00:58:53,529 --> 00:58:57,932 But then writing it back again, you have to the write is also done in a different way. 968 00:58:57,932 --> 00:59:02,506 ~ and because it's using the NAND, that's a bit more risky. 969 00:59:02,506 --> 00:59:03,237 fundamentally. 970 00:59:03,237 --> 00:59:07,754 ~ so you know, you need to make sure that everything there is is is above board and well tested. 971 00:59:07,754 --> 00:59:13,191 So it's not something that I'm gonna just ~ kind of do without much test. 972 00:59:13,191 --> 00:59:16,816 I mean I don't really do anything without much testing, but some things you can 973 00:59:16,937 --> 00:59:20,115 set aside five of your DSs, three DSs for testing this thing. 974 00:59:20,115 --> 00:59:22,787 I may I may lose one or two to the cause, but it's worth it. 975 00:59:22,787 --> 00:59:23,807 It's fine. 976 00:59:23,907 --> 00:59:24,528 Yeah. 977 00:59:24,528 --> 00:59:26,929 I I no. 978 00:59:27,670 --> 00:59:28,491 No, no. 979 00:59:28,491 --> 00:59:29,101 I I 980 00:59:29,101 --> 00:59:29,611 I haven't. 981 00:59:29,611 --> 00:59:33,094 The sorts of things that I'm doing with Cloudpoint, I mean this is probably a good opportunity to say it. 982 00:59:33,094 --> 00:59:35,884 The sorts of things I'm doing with CloudPoint are are pretty safe. 983 00:59:35,884 --> 00:59:43,581 You know, we're we're we're writing reading and writing to and from the SD card, ~ using APIs that that are available via DevKit pro. 984 00:59:43,581 --> 00:59:46,013 So there's not really any hackery going on there. 985 00:59:46,013 --> 00:59:47,659 It's all pretty straightforward. 986 00:59:47,659 --> 00:59:52,051 There's barely any code that kind of touches the the system outside of that. 987 00:59:52,241 --> 00:59:54,333 I'm always keen to avoid doing that. 988 00:59:54,333 --> 00:59:57,164 ~ so no, it it's it's I've not lost any yet. 989 00:59:57,164 --> 00:59:58,995 And I I don't I don't plan to. 990 00:59:58,995 --> 00:59:59,715 So we'll we'll see. 991 00:59:59,715 --> 01:00:05,678 But you know, if it's gonna happen, it'll happen while I'm testing this feature because this is this is a tricky one. 992 01:00:05,678 --> 01:00:14,733 But I I have a plan and I'm gonna I'm gonna work on it because I f I feel that this is one of the last big core features that that I I'd like to see. 993 01:00:14,733 --> 01:00:16,510 Like if this was there 994 01:00:16,510 --> 01:00:27,448 I would be pretty happy that all you know, ninety-five, ninety six, ninety seven percent of games could be synced by a cloud point as you'd expect them to, without really having 995 01:00:27,448 --> 01:00:29,719 to understand how any of it works. 996 01:00:29,719 --> 01:00:34,272 'Cause although you and I find it interesting, Brian, many people don't, and that's cool. 997 01:00:34,272 --> 01:00:36,060 Like I I understand that completely. 998 01:00:36,060 --> 01:00:44,600 If you just wanna fire it up and not really understand that, you know, Pokemon whatever it is for for G B A, 999 01:00:45,940 --> 01:00:46,871 does things very differently. 1000 01:00:46,871 --> 01:00:49,943 If you don't want to know that, I I totally respect that. 1001 01:00:49,943 --> 01:00:53,126 You know, you you you you have other things you want to do and that's cool. 1002 01:00:53,126 --> 01:00:55,258 So so yeah, I don't want people to think about it. 1003 01:00:55,258 --> 01:01:00,273 And this is for me, this is one of the last big ones that that I don't have in place. 1004 01:01:00,273 --> 01:01:02,184 It's more important to me than almost anything else. 1005 01:01:02,184 --> 01:01:09,330 It's more important to me than supporting syncing of things like DS ~ save files that people might have with emulators. 1006 01:01:09,330 --> 01:01:13,802 You know, that that might be a thing that I add, but I don't know if it's a core feature. 1007 01:01:13,802 --> 01:01:14,504 Whereas I think 1008 01:01:14,504 --> 01:01:16,900 syncing your G B A games is a cool feature. 1009 01:01:17,320 --> 01:01:26,556 That'd be tricky because the saves for DS games are just these just f un unencrypted files in a directory, in a saves directory, usually. 1010 01:01:26,556 --> 01:01:30,819 that that part of it wouldn't wouldn't actually be hard because I mean to to 1011 01:01:30,819 --> 01:01:34,382 to delve into the the internals of this if you'll indulge me. 1012 01:01:34,382 --> 01:01:36,322 ~ 1013 01:01:36,343 --> 01:01:46,450 so the way that the way that CloudPoint works, I mean to to take a step back, the reason I was able to to write all the syncing stuff quite easily, because that that stuff was not 1014 01:01:46,450 --> 01:01:47,470 the hard part. 1015 01:01:47,470 --> 01:01:56,146 ~ the reason I was able to do that is because over the last three years, I guess, I've been sort of writing on and off a Rust library. 1016 01:01:56,176 --> 01:02:03,580 ~ which is is essentially all about synchronizing data across the network. 1017 01:02:03,580 --> 01:02:14,926 So the use case here really is that you have some folder on a computer that you want to be able to synchronize to other computers efficiently. 1018 01:02:14,926 --> 01:02:17,722 ~ There are a number of use cases for this. 1019 01:02:17,722 --> 01:02:26,192 You know, you might you might use something like this for like a a file backup tool ~ or you you might use it to distribute software. 1020 01:02:26,302 --> 01:02:28,444 and update that software across computers. 1021 01:02:28,444 --> 01:02:39,083 So you know you you you keep updating new versions of your of your your application and the users of that application ~ run an updater and that updater is able to kind of look at 1022 01:02:39,083 --> 01:02:46,468 the what you've got on your disk and say, hey these bits of this file have changed, these bits have moved around, these bits have been deleted, whatever it is. 1023 01:02:46,489 --> 01:02:54,575 And and just download the important bits that it needs to over the network and maybe move some stuff around on the disk that it that it already has but is in the wrong place. 1024 01:02:54,575 --> 01:02:56,010 All of that code which 1025 01:02:56,010 --> 01:02:57,561 Which is quite a complex thing. 1026 01:02:57,561 --> 01:03:06,784 ~ and I originally did to support something I became interested in through my through my day job, which I'll probably won't go into too much, but that's what led me on that path. 1027 01:03:06,784 --> 01:03:09,065 ~ I had all of that in that library. 1028 01:03:09,065 --> 01:03:12,287 And that's actually, you know, something I will open source very soon. 1029 01:03:12,287 --> 01:03:14,567 ~ but I had all of that. 1030 01:03:14,848 --> 01:03:23,581 And and that means that that code could could run on like an arbitrary folder on your on a on a 3ds very easily. 1031 01:03:23,581 --> 01:03:26,032 You know you could you could say to it, 1032 01:03:26,346 --> 01:03:32,040 Just look for all the like dot sav files in this directory and sync them. 1033 01:03:32,040 --> 01:03:33,862 And and CloudPoint could do that really easily. 1034 01:03:33,862 --> 01:03:45,230 ~ but the tricky part here, or the at least the part that's not as easily solvable without giving it some serious thought, is how you present that in a user interface coherently. 1035 01:03:45,230 --> 01:03:52,535 Because you've kind of got this folder full of random files which don't present much about themselves other than their names. 1036 01:03:52,696 --> 01:03:53,468 And you 1037 01:03:53,468 --> 01:03:55,479 I would want those to be available as 1038 01:03:55,479 --> 01:04:07,074 titles and I'd want them to be ~ handled sensitively and and I wouldn't necessarily want to just kind of like use the name of the file to to figure out what it is 'cause that's 1039 01:04:07,074 --> 01:04:08,384 fraught with problems itself. 1040 01:04:08,384 --> 01:04:16,057 So there's a lot of stuff which exists just outside of the core the core software which you'd have to solve. 1041 01:04:16,057 --> 01:04:18,238 So that's where things get a little bit tricky there. 1042 01:04:18,238 --> 01:04:22,730 I've thought about doing the same thing for your ~ for your your camera role on your three DS, in fact. 1043 01:04:22,730 --> 01:04:23,220 It's 1044 01:04:23,220 --> 01:04:26,001 This came up in an issue the other day, someone posted about it. 1045 01:04:26,001 --> 01:04:33,643 I kind of thought, well, it might be nice if you could synchronize your photos as well, and then you get all your photos from all your DSs on all your DSs. 1046 01:04:33,643 --> 01:04:41,185 ~ that'd be easy to do from a from a code point of view, because it's just synchronizing some some files in a in a well known directory. 1047 01:04:41,185 --> 01:04:50,898 Cloudpoint ~ could do that with very little work, but then you you have to start to think, well, how do I deal with file sizes and how do I deal with 1048 01:04:51,594 --> 01:05:00,958 people doing stuff they shouldn't be doing and how do I deal with people putting files, you know, massive files in here to max out the you know, the the the network transfer or 1049 01:05:00,958 --> 01:05:03,599 cause me problems like create denial of service vectors. 1050 01:05:03,599 --> 01:05:08,291 So these are the sorts of things that start to make a simple idea complex. 1051 01:05:08,291 --> 01:05:17,495 And and this is why I think one of the one of the most important things that you do in any software development, to be honest, but particularly when it's just one of you writing 1052 01:05:17,495 --> 01:05:20,740 something that you you have a passion for. 1053 01:05:20,740 --> 01:05:27,135 is is only committing to stuff that you really think is core and you really think you can do a good job of. 1054 01:05:27,135 --> 01:05:30,348 Because I don't want to half arse features out the door. 1055 01:05:30,348 --> 01:05:32,390 I want to actually do things right. 1056 01:05:32,390 --> 01:05:33,851 I want to do them by hand. 1057 01:05:33,851 --> 01:05:37,895 You know, I maybe I could get an LLM to do some of this stuff quicker, probably. 1058 01:05:37,895 --> 01:05:42,749 But I'm not doing this for like I'm not optimizing for for speed of delivery, to be honest, Ryan. 1059 01:05:42,749 --> 01:05:48,484 I'm I'm optimizing for for me having fun and me having something that I'm proud of and 1060 01:05:48,484 --> 01:05:49,284 me 1061 01:05:49,290 --> 01:05:51,971 being able to look back at it and say, Yeah, I did that and I'm proud of it. 1062 01:05:51,971 --> 01:05:53,452 And that's that's 1063 01:05:53,452 --> 01:05:56,754 something I can do 'cause 'cause it's mine and and I share it with everyone. 1064 01:05:56,754 --> 01:05:59,626 But I don't have I don't have a board to answer to. 1065 01:05:59,626 --> 01:06:01,847 I don't have shareholder value to maximise. 1066 01:06:01,847 --> 01:06:04,958 I just have my own my own whims to to indulge. 1067 01:06:04,958 --> 01:06:08,110 And, you know, that's the privilege of open source maintainers, I guess. 1068 01:06:08,110 --> 01:06:10,671 You can you can do this stuff if you want to. 1069 01:06:11,012 --> 01:06:11,861 And I do. 1070 01:06:11,861 --> 01:06:15,836 And I do I'm I'm with you on the do it right rather than do it quickly. 1071 01:06:15,836 --> 01:06:17,260 I'm I'm with you on. 1072 01:06:17,260 --> 01:06:19,070 I've I've always believed. 1073 01:06:19,252 --> 01:06:22,756 I d since we're over an hour, I have one more question before we wrap up. 1074 01:06:22,756 --> 01:06:28,314 ~ tell me about ~ self hosting with CloudPoint. 1075 01:06:29,044 --> 01:06:30,786 Yes, that's another great question. 1076 01:06:30,786 --> 01:06:31,907 Thank you for asking. 1077 01:06:31,907 --> 01:06:41,986 So yeah, ~ obviously there's I mean the the by implication there, there is also the kind of public instance of CloudPoint, which which I run. 1078 01:06:41,986 --> 01:06:44,684 Excuse me, may I just need to have a drink. 1079 01:06:44,684 --> 01:06:46,340 I've been talking a lot. 1080 01:06:46,538 --> 01:06:47,365 Yeah. 1081 01:06:48,138 --> 01:06:48,948 Okay. 1082 01:06:49,056 --> 01:06:49,649 No worries. 1083 01:06:49,649 --> 01:06:52,631 So there is a public instance. 1084 01:06:53,392 --> 01:06:59,376 And if you just run ~ CloudPoint excuse me for just one second, I need another drink. 1085 01:06:59,376 --> 01:06:59,840 I have 1086 01:06:59,840 --> 01:07:01,020 No worries, no worries. 1087 01:07:01,020 --> 01:07:01,945 What you gotta do. 1088 01:07:01,945 --> 01:07:04,592 ~ Yeah. 1089 01:07:04,592 --> 01:07:06,606 Staying hydrated is very important. 1090 01:07:07,742 --> 01:07:08,412 It certainly is. 1091 01:07:08,412 --> 01:07:09,852 Okay, I think we're back. 1092 01:07:09,853 --> 01:07:10,413 So yeah, there's 1093 01:07:10,413 --> 01:07:13,593 a there's a there's a public instance which I host. 1094 01:07:13,934 --> 01:07:15,754 Just runs on a fairly basic server. 1095 01:07:15,754 --> 01:07:21,356 ~ it doesn't require much because CloudPoint is a very very low intensity thing. 1096 01:07:21,356 --> 01:07:28,698 But I run that and if you just download CloudPoint from Universal Updater and just and just run it, it will synchronize with the public server. 1097 01:07:28,978 --> 01:07:34,239 And you can share your key with all your other systems and they'll all use the public server and everything's fine. 1098 01:07:34,300 --> 01:07:35,020 and you can do that. 1099 01:07:35,020 --> 01:07:36,340 ~ 1100 01:07:36,884 --> 01:07:41,648 Some people prefer to self-host, ~ and that's something we support as well. 1101 01:07:41,648 --> 01:07:52,737 So you can this is all documented on the on the the the GitHub page, but essentially you can go and and and for more technical people who might have like a home lab at home, you 1102 01:07:52,737 --> 01:08:04,266 can you can run a couple of commands on your on your home lab and it will use a a system called Docker to ~ to kind of run the service that it needs on your home lab. 1103 01:08:04,266 --> 01:08:06,728 And then you just modify a config file on your 1104 01:08:06,728 --> 01:08:08,285 on your cloud point. 1105 01:08:10,504 --> 01:08:17,570 you modify a config file on your three DS or each of your three DS that you want to use, just give it the server address of your self hosted server. 1106 01:08:17,570 --> 01:08:19,951 And then when you run it, it will connect to that. 1107 01:08:20,192 --> 01:08:22,113 And it will sync everything to a server that you own. 1108 01:08:22,113 --> 01:08:26,717 ~ and and it's exactly the same as as what runs in public. 1109 01:08:26,717 --> 01:08:27,758 It's the same software. 1110 01:08:27,758 --> 01:08:28,739 There's nothing special. 1111 01:08:28,739 --> 01:08:31,521 ~ and and some people prefer to do that. 1112 01:08:31,521 --> 01:08:38,187 In fact there's just looking at this now, there's one point two thousand downloads of the self hosted server over its life. 1113 01:08:38,187 --> 01:08:40,060 So you know 1114 01:08:40,060 --> 01:08:41,440 It's it's more than I expected. 1115 01:08:41,440 --> 01:08:44,931 Whether that is a true number, I haven't investigated. 1116 01:08:44,931 --> 01:08:50,573 ~ you know, for all I know, a bot farm is downloading it a thousand times a a day, 1117 01:08:50,573 --> 01:08:51,653 but I doubt it. 1118 01:08:51,653 --> 01:08:53,244 You know, it's probably broadly accurate. 1119 01:08:53,244 --> 01:08:57,195 So I think it's about a thousand people who've self hosted it and ~ not getting 1120 01:08:57,195 --> 01:08:58,946 many bug reports, so that's pretty good. 1121 01:08:58,946 --> 01:09:07,284 ~ and then yeah, you add to that the sort of ~ few thousand people using the public instance and there's there's certainly a few of these out there, but yeah. 1122 01:09:07,284 --> 01:09:09,485 Self hosting is is really easy to do. 1123 01:09:09,485 --> 01:09:11,757 Look on the GitHub, you'll figure out how to do it. 1124 01:09:11,757 --> 01:09:18,791 And if you have any issues with it, just drop a line ~ in the GitHub issues and we can we can sort you out. 1125 01:09:18,791 --> 01:09:23,273 And ~ and yeah, you you then own your own data and you can control it. 1126 01:09:23,273 --> 01:09:25,034 I should be transparent here. 1127 01:09:25,415 --> 01:09:32,989 The data that you will have in your system sitting in a database will not make much sense to you on its own. 1128 01:09:32,989 --> 01:09:35,020 You know, it's not like you get 1129 01:09:35,326 --> 01:09:43,363 It's not like you have all your games sort of visible in a folder that you can go in and kind of access via timestamp and just copy around. 1130 01:09:43,363 --> 01:09:44,974 That isn't how CloudPoint works. 1131 01:09:44,974 --> 01:09:47,967 It it's it's like a deduplicated system. 1132 01:09:47,967 --> 01:09:49,208 I kind of touched on this before. 1133 01:09:49,208 --> 01:09:58,576 So so when you synchronize your games, it will only upload or download parts of saves that have actually changed, which is one of the reasons it's pretty quick. 1134 01:09:58,576 --> 01:10:04,126 I mean you you you I I guess I only notice it because I I work on it, but 1135 01:10:04,126 --> 01:10:10,742 something like Terraria, the first time you upload it, it's it's uploading a thirty-two megabyte save. 1136 01:10:10,742 --> 01:10:16,867 Although it it is actually deduplicating a lot of that because most of that blank that save is just blank space. 1137 01:10:16,867 --> 01:10:19,830 So CloudPoint doesn't really need to upload it in totality. 1138 01:10:19,830 --> 01:10:23,373 It can it can it can it kinda knows that most of it's the same. 1139 01:10:23,373 --> 01:10:27,716 And so it it just references the the bits that are the same each time it needs them. 1140 01:10:27,817 --> 01:10:31,904 But the first time it does that it's it's a bit slower and then 1141 01:10:31,904 --> 01:10:36,685 The second time it does it, it'll be way quicker because it's only really downloading changes. 1142 01:10:36,685 --> 01:10:45,608 ~ but that means that the format that you get on the self-hosted instance is a database full of information that is not very useful to you. 1143 01:10:45,608 --> 01:10:54,841 And while I may add a web interface to this at some point that that would let you go in and look at your versions and download them and modify them and delete them and stuff, I 1144 01:10:54,841 --> 01:10:57,851 haven't got there yet and that's not a priority for me. 1145 01:10:57,851 --> 01:10:59,592 ~ I may do it, 1146 01:10:59,592 --> 01:11:00,286 but 1147 01:11:00,286 --> 01:11:10,236 Right now it's just it you control the data, but you kind of have to accept that it's not actually that usable to you outside of CloudPoint at this point. 1148 01:11:10,236 --> 01:11:12,672 probably good for safety and security also. 1149 01:11:12,672 --> 01:11:13,622 Probably, probably. 1150 01:11:13,622 --> 01:11:24,677 I would say that, you know, if you are interested in long term preservation of your saves on a server, what I would recommend most people do is use Checkpoint. 1151 01:11:24,677 --> 01:11:28,378 You know, I I I've got a great amount of respect for for Checkpoint. 1152 01:11:28,479 --> 01:11:29,639 I think it's great software. 1153 01:11:29,639 --> 01:11:34,841 That's you can tell I I mean I think it's great and I I kind of reference its name in the name of CloudPoint. 1154 01:11:34,841 --> 01:11:37,382 ~ I hope they don't mind. 1155 01:11:37,382 --> 01:11:41,844 I did ask them and I didn't hear back, but you know, I I haven't heard anything to the contrary yet, so 1156 01:11:41,844 --> 01:11:43,365 Hopefully they're fine with that. 1157 01:11:43,365 --> 01:11:45,105 it's just a little a little wink really. 1158 01:11:45,105 --> 01:11:51,588 But they using Checkpoint to actually create long-term archives of saves is absolutely what I would recommend you do. 1159 01:11:51,588 --> 01:11:58,241 In the latest version of Checkpoint, you can actually upload your saves straight to something like Google Cloud or a web dev server that you own. 1160 01:11:58,241 --> 01:12:00,972 They added this recently, they added a scripts feature. 1161 01:12:01,088 --> 01:12:03,673 they've been they've been rolling out tons of features this week. 1162 01:12:03,673 --> 01:12:05,324 ~ and this is one of them. 1163 01:12:05,324 --> 01:12:11,186 So if you want to just dump your stuff on a server, checkpoint will let you do that really easily. 1164 01:12:11,278 --> 01:12:20,031 and although it it's a different use case, Checkpoint will not help you if you want to like get all your saves on all your consoles all the time. 1165 01:12:20,031 --> 01:12:21,711 It's not really built for that. 1166 01:12:22,151 --> 01:12:23,132 CloudPoint is. 1167 01:12:23,132 --> 01:12:26,753 And so I think for that use case, I would personally keep using CloudPoint. 1168 01:12:26,753 --> 01:12:31,734 But if you want to just take a dump of your saves every so often, Checkpoint is great for that. 1169 01:12:31,734 --> 01:12:34,625 And and I wouldn't try and replace that functionality myself. 1170 01:12:34,625 --> 01:12:35,996 I I c I'll keep using it. 1171 01:12:35,996 --> 01:12:37,037 Yeah, do both. 1172 01:12:37,037 --> 01:12:41,759 absolutely do both for like we said, two is one, one is none, that sort of thing. 1173 01:12:41,759 --> 01:12:46,501 Speaking of the GitHub, I wanted to point something out real quick and I I lied, I did have one more question. 1174 01:12:46,501 --> 01:12:50,723 But I just noticed this today on the GitHub under the best practice thing. 1175 01:12:50,723 --> 01:12:57,365 When you use CloudPoint, my friends, there's a user dot key file on your 3ds's SD card. 1176 01:12:57,365 --> 01:12:58,926 Back that up. 1177 01:12:59,046 --> 01:13:04,208 Seriously, back that up on like whatever Dropbox, Mega, whatever you use, back that up. 1178 01:13:04,436 --> 01:13:06,108 That's like that's your key. 1179 01:13:06,108 --> 01:13:08,542 That's your literal key to your CloudPoint 1180 01:13:08,542 --> 01:13:09,183 stuff. 1181 01:13:09,183 --> 01:13:12,808 So be sure to back that up or else if something happens, it's all gone. 1182 01:13:12,808 --> 01:13:14,230 It's just you can't do nothing. 1183 01:13:14,230 --> 01:13:15,932 So be sure to back that up. 1184 01:13:16,049 --> 01:13:18,831 that is a great a great shout out, Brian. 1185 01:13:18,831 --> 01:13:21,893 If you lose that, I cannot help you. 1186 01:13:21,993 --> 01:13:22,884 there is no way. 1187 01:13:22,884 --> 01:13:27,617 I I mean I don't this is a good opportunity for me to say I don't keep any information about you. 1188 01:13:27,617 --> 01:13:33,591 Like on the public instance, even on the private instance, it's the same, but I don't keep I don't keep email addresses. 1189 01:13:33,591 --> 01:13:35,102 I don't ask them, I don't want for them. 1190 01:13:35,102 --> 01:13:37,023 If you if you gave me them I would delete them. 1191 01:13:37,023 --> 01:13:44,072 You know, I don't keep email addresses, I don't log IPs, I don't do any of this stuff because I do not want any personal information. 1192 01:13:44,072 --> 01:13:50,015 'Cause the moment you start dealing with personal information, everything gets so complicated and difficult and painful. 1193 01:13:50,015 --> 01:13:50,946 So I just don't do it. 1194 01:13:50,946 --> 01:13:55,498 Like and I don't know who is is is behind each of these user keys. 1195 01:13:55,498 --> 01:14:02,502 And I have once tried to help somebody who lost their key by sort of saying, Well, which games did you have? 1196 01:14:02,502 --> 01:14:05,224 Let's see if we can work out which key is yours. 1197 01:14:05,224 --> 01:14:08,936 We couldn't do it reliably because they couldn't tell me for sure what they had. 1198 01:14:08,936 --> 01:14:13,758 And so I just I at that point I adopted a policy here that if you lose your key 1199 01:14:13,758 --> 01:14:16,329 I'm really sorry, but I cannot help you. 1200 01:14:16,329 --> 01:14:18,549 So please back it up. 1201 01:14:18,549 --> 01:14:20,690 Like back it at once and it's and it's gone. 1202 01:14:20,690 --> 01:14:22,620 And the same key is on all your 3ds. 1203 01:14:22,620 --> 01:14:28,712 So if you've if you've like got five systems and you've synced your your your s your key with all of them with the with the 1204 01:14:28,712 --> 01:14:33,494 the key the key sharing system, that key is on all of them, so it's the same key. 1205 01:14:33,494 --> 01:14:38,955 But but you know, so you have you have kind of duplication of keys there, so that helps you. 1206 01:14:38,955 --> 01:14:41,476 But yeah, just take a copy of the user.key. 1207 01:14:41,476 --> 01:14:42,896 It's in slash 1208 01:14:43,012 --> 01:14:45,779 ~ 3ds slash cloud point user dot key. 1209 01:14:45,779 --> 01:14:48,025 Just just copy that, put it somewhere. 1210 01:14:48,025 --> 01:14:48,325 And that's 1211 01:14:48,325 --> 01:14:48,886 all you need to do. 1212 01:14:48,886 --> 01:14:49,688 It'll never change. 1213 01:14:49,688 --> 01:14:51,114 Just just copy it, please. 1214 01:14:51,114 --> 01:14:52,464 in bold on your site. 1215 01:14:52,464 --> 01:14:54,955 Like make that whole line, make that whole bullet 1216 01:14:54,955 --> 01:14:56,776 point bold so people don't miss it. 1217 01:14:56,776 --> 01:14:57,926 Cause I missed it. 1218 01:14:57,926 --> 01:14:58,616 I only noticed it 1219 01:14:58,616 --> 01:14:59,466 this morning. 1220 01:14:59,466 --> 01:15:06,008 And so I'd like like I know because I was doing research for this show like an hour or two before. 1221 01:15:06,008 --> 01:15:09,496 And I'm going through the wick I'm going through the GitHub and I saw that. 1222 01:15:09,496 --> 01:15:11,450 I'm like, I haven't done that. 1223 01:15:11,450 --> 01:15:13,130 So I I didn't know they were the same. 1224 01:15:13,130 --> 01:15:15,411 So I backed up the one on my three DS and my two DS. 1225 01:15:15,411 --> 01:15:16,511 I didn't know they were the same. 1226 01:15:16,511 --> 01:15:19,572 But still, two is one and one is none, so that's fine. 1227 01:15:20,192 --> 01:15:22,024 But yeah, back up your user key, folks. 1228 01:15:22,024 --> 01:15:23,036 Very important. 1229 01:15:23,036 --> 01:15:24,948 And my last question, you've touched on this quite a bit. 1230 01:15:24,948 --> 01:15:29,765 You've touched on what you'd like to see ~ come to Cloud Point. 1231 01:15:29,765 --> 01:15:35,492 But is there anything you haven't touched on that you'd like to that you hope is in Cloud Point's future? 1232 01:15:36,864 --> 01:15:37,226 Question. 1233 01:15:37,226 --> 01:15:38,712 ~ 1234 01:15:41,920 --> 01:15:42,701 Because you did talk you did 1235 01:15:42,701 --> 01:15:43,272 cover a lot. 1236 01:15:43,272 --> 01:15:47,169 You covered the website, you covered the DS saves, the GPA saves. 1237 01:15:47,169 --> 01:15:51,817 ~ You covered a bunch, but I just wanted and you have a roadmap here. 1238 01:15:51,817 --> 01:15:56,474 ~ yeah, one of the things you have on your roadmap is time travel. 1239 01:15:56,756 --> 01:15:58,427 Yeah, yeah, that's the point. 1240 01:15:58,427 --> 01:15:59,038 That's the point. 1241 01:15:59,038 --> 01:16:00,539 This is yeah, thank you, Brian. 1242 01:16:00,539 --> 01:16:09,036 So I I by time travel, I'm kinda referring here to a little bit more control over what you what you can do on the device with your save. 1243 01:16:09,036 --> 01:16:17,693 So at the moment, the only thing that is supported is the auto syncing, which ninety nine percent of the time is what you want and works perfectly. 1244 01:16:17,693 --> 01:16:26,076 So that's where you basically say, Sync sync my games and it will figure out, well, have you played it on this console but not elsewhere? 1245 01:16:26,076 --> 01:16:27,257 If so, I'll upload it. 1246 01:16:27,257 --> 01:16:28,739 Have you played it elsewhere but not here? 1247 01:16:28,739 --> 01:16:29,900 If so, I'll download it. 1248 01:16:29,900 --> 01:16:35,586 So it's it's pretty and and if have you if you play it on two different places, it's gonna conflict and tell you to to fix it. 1249 01:16:35,586 --> 01:16:40,191 So it's a pretty a pretty basic thing that normally you don't need to care about. 1250 01:16:40,191 --> 01:16:48,556 But there are occasions where you might want to, you know, say, actually, I would really want to go back to the save that I synced two weeks ago. 1251 01:16:48,556 --> 01:16:49,490 ~ 1252 01:16:49,490 --> 01:16:56,145 Or maybe, you know, I really want to force it to sync the save that I've got on the system now because for whatever reason I don't trust that it's on the server. 1253 01:16:56,145 --> 01:16:58,766 That should never actually happen, but as a contrived example. 1254 01:16:58,766 --> 01:17:09,203 So time travel would be where you can basically go and pick a pick a game and view all of the saves that you have for it on the server and choose to restore a particular one of 1255 01:17:09,203 --> 01:17:10,654 them onto your system. 1256 01:17:10,654 --> 01:17:17,679 ~ I would like to add that feature because I think that it it's useful and it 1257 01:17:17,679 --> 01:17:19,400 it also it 1258 01:17:19,794 --> 01:17:31,061 It allows recovery from situations that bugs could cause without without needing to contact me and get me to sort of do forensics on your saves, which I might not be able to 1259 01:17:31,061 --> 01:17:31,691 do anyway. 1260 01:17:31,691 --> 01:17:32,392 So it allows 1261 01:17:32,392 --> 01:17:33,321 self recovery. 1262 01:17:33,321 --> 01:17:42,068 yeah, a lot of the cloud services like Dropbox, for example, have versioning where like if you have a file and you uploaded it, it's something wrong with it, there's they have like 1263 01:17:42,068 --> 01:17:44,060 the last three versions of it or whatever. 1264 01:17:44,060 --> 01:17:46,731 So that kind of stuff is very important. 1265 01:17:46,771 --> 01:17:49,072 And that would be a lovely thing to have. 1266 01:17:49,833 --> 01:17:58,159 so there's so much coming for CloudPoint, and and so much is being added to Checkpoint that I'm wondering, you know, what what will you add to CloudPoint as a result of that 1267 01:17:58,159 --> 01:17:58,479 too? 1268 01:17:58,479 --> 01:17:59,720 ~ 1269 01:18:00,362 --> 01:18:01,693 So it's wonderful. 1270 01:18:01,693 --> 01:18:03,754 It's just it's just wonderful. 1271 01:18:03,855 --> 01:18:05,176 yeah, we're well over an hour now. 1272 01:18:05,176 --> 01:18:06,437 We should wrap this up. 1273 01:18:06,437 --> 01:18:06,958 my lord. 1274 01:18:06,958 --> 01:18:13,674 ~ D Walker, I wanted to thank you so much for coming on and taking the time and in your evening. 1275 01:18:13,674 --> 01:18:16,445 It is eight it is time is it there now? 1276 01:18:16,445 --> 01:18:20,199 ~ eight thirty, eight six 1277 01:18:20,199 --> 01:18:20,520 thirty. 1278 01:18:20,520 --> 01:18:21,601 Okay, that's not too late. 1279 01:18:21,601 --> 01:18:22,251 Okay, I guess. 1280 01:18:22,251 --> 01:18:24,944 But still, it's still like your evening. 1281 01:18:24,944 --> 01:18:28,016 So I appreciate you taking time out of your evening to talk. 1282 01:18:28,224 --> 01:18:30,769 about all this, because this has been a lovely conversation. 1283 01:18:30,769 --> 01:18:32,483 And I I just find this stuff fascinating. 1284 01:18:32,483 --> 01:18:36,842 Even though I can't do it myself, I love getting in the weeds of stuff like this. 1285 01:18:36,842 --> 01:18:37,403 I love it. 1286 01:18:37,403 --> 01:18:38,945 And you've been great. 1287 01:18:39,147 --> 01:18:39,754 So 1288 01:18:39,754 --> 01:18:41,085 That's that's very kind, Brian. 1289 01:18:41,085 --> 01:18:45,368 I I wanted to thank you for all you've been doing and for inviting me on. 1290 01:18:45,848 --> 01:18:54,194 it's it's it's lovely to be able to talk about this stuff because, you know, this I don't really ~ talk about this stuff very much. 1291 01:18:54,194 --> 01:18:57,536 You know, my my friends, my family aren't really into this stuff. 1292 01:18:57,536 --> 01:19:05,983 ~ so it's nice to be able to wax lyrical for an hour and a half and and kind of geek out on it and and yeah. 1293 01:19:05,983 --> 01:19:08,160 And I and I hope I we are. 1294 01:19:08,160 --> 01:19:09,094 doing, is we're geeking out. 1295 01:19:09,094 --> 01:19:09,802 Yes. 1296 01:19:09,802 --> 01:19:10,533 Well I like to do that. 1297 01:19:10,533 --> 01:19:11,683 So I I wanted to thank you for that. 1298 01:19:11,683 --> 01:19:20,810 I I really appreciate the opportunity and ~ I look forward to to listening to this myself, 'cause I I guarantee you I will and I will make my family listen to it too, although I 1299 01:19:20,810 --> 01:19:26,064 might mute the part where I talk about how many three D S I own just in case my wife has miscounted. 1300 01:19:26,064 --> 01:19:27,014 We'll see. 1301 01:19:27,968 --> 01:19:28,288 All right. 1302 01:19:28,288 --> 01:19:30,409 Well, everyone, thank you so much for listening. 1303 01:19:30,409 --> 01:19:32,200 This doing this is a joy. 1304 01:19:32,200 --> 01:19:33,451 I'm really loving it. 1305 01:19:33,451 --> 01:19:37,533 And I want to thank everyone who's listened, who's commented, and everything. 1306 01:19:37,533 --> 01:19:42,496 ~ and if you have any suggestions, I've gotten many suggestions for other people to interview. 1307 01:19:42,496 --> 01:19:49,120 If you have someone you'd like me to reach out to to interview, please let me know in the comments, either here on the website or on YouTube or whatever. 1308 01:19:49,120 --> 01:19:57,454 ~ I'm trying to this is not just a celebration of the DS and the 3DS, but the people keeping it going, like like D Walker here. 1309 01:19:57,524 --> 01:19:59,806 So I would love to have more people on. 1310 01:19:59,807 --> 01:20:00,949 But thank you for listening. 1311 01:20:00,949 --> 01:20:04,113 Please take care of your systems and happy gaming. 1312 01:20:04,113 --> 01:20:05,494 Take care, everybody.