 Hello, everybody. That's the name of my talk. That's not a zen thing. It's actually a physics thing. So we're just going to dive right into it. So who here, show of hands, is familiar with the video game Eve Online? All right, yeah, about half the audience. That's cool. So Eve Online is a massively multiplayer video game set in space where you fly around in a spaceship, you mine resources, you trade, and you get into these really big space battles. And these space battles can get really, really big. The biggest one was the bloodbath of BR5RB, lasted like 21 hours and involved about 7,500 players, which is a lot of players. So to deal with that, they have to handle all that traffic and they do an interesting thing. They actually slow down time in the game. So here's how that works. In Eve Online, all of space is segmented into discrete regions. And you can't just fly from one region to another. You actually have to teleport. Now when a lot of players get into one of those regions, you start to have a load problem. So what they'll do is they'll take that region and they'll give it its own server. And that way, that server can dedicate all of its resources to helping out those players. But sometimes not even that's enough, like in the bloodbath. So to deal with that, they start to slow down time just in that region. And this is something that the players themselves can experience. It's capped at about 10% and your ship will just move more slowly and your rockets get at their destination a little bit later. But it's only in that region. Nobody else can feel that. Kind of a crazy idea, but it works. Now the way that happens is that they have a clock inside the game that's distinct from the CPU clock. It's attached to each region. And any time they wanna dilate time, they simply advance that clock at a slower rate. Pretty simple. So about two years ago, a friend of mine showed me a paper and this paper was saying, okay, that's really cool that Yvonne Line does this. What if we could do this in lots of games? What if we made it so that any time you had a network game and you needed to deal with a lot of players playing, you just slowed down time? Why not, right? But instead of separating all of space into these different regions, what if instead we just did it in one continuous region? And instead of slowing down time for everybody, what if you did it where just in the cluster where all those players were, that's where you slowed down time? So the closer you got to that region, the more slowly time would move for you. But if you're far away, things are normal. So that's pretty weird. Just think of it, you're a player, you're flying through space, and somebody fires a rocket at you. And the rule we're gonna go with is, if you're close to something, time slows down. So now you're coming close and time is starting to kind of slow down. That's what that red is. And now the rocket's getting really close and you're kind of slowing down a little bit. And now the rocket's really close and you're just creeping along. But then the rocket misses and time speeds back up and you know, back to normal. Your speed never changed, but time slowed down. And so from the outside it would look like both of you slowed down to kind of decide what happened. But it was actually, it was the time that did it, not your actual velocity. So the first thought I had was I would never play that game. But the second thought I had was, this is gonna mess with your physics engine, right? Because like, video games all have a simulation of physics inside of them. That's how to decide like how a car drives around or how somebody gets shot with a rocket. And for instance, one very common thing that they use is called a ragdoll. That's how they do these dead bodies that flail around. And a ragdoll, it's basically a bunch of point masses connected by springs. So what this paper was talking about was, hey, what if we made a situation where it was possible? The time would move more slowly at the feet of a ragdoll than at the head. That's gonna do something weird, right? I couldn't think of what, you know? Is your leg gonna suddenly fly off into the distance or something? Like what happens? So I thought about it, thought about it, thought about it. And eventually came up with a little simulation and I'm gonna show the simulation. We're gonna live demo this. And the weird thing is that if you had a ragdoll or some other kinds of forces like a ragdoll, you actually start to see a force of attraction caused by modulating these forces through time. So to explain that, let's first step through our little simulation. We're gonna have one kind of force in our simulation. It's a spring force. Spring force has really simple rules. It has a length that the spring wants to be at. And if you compress the spring at all, it's gonna push outward in both directions to try to restore that initial length. Likewise, if you extend the string, if you pull it outward, it's going to try to contract at both ends to return to its ideal length. So we have a two-dimensional space. And in the center, we're gonna put a time dilation point. So the closer you are to that center point, the more slowly time is going to move for you. We have two point masses. We're gonna connect them by spring. Whichever one is closer to the time dilation point will move more slowly than the outer mass. And we give them an initial y velocity that is equal. Okay? So that's the entirety of our simulation. Two point masses connected by spring force with an initial y velocity and that time dilation point. So what is going to happen when we run this simulation? So you can see our two point masses moving and the one on the outside is moving through space faster. But look at this, it's starting to curve around. And now they're starting to kind of spin around each other. That inner mass is becoming the outer mass. But look at this, it's slowing down. And now at reverse direction. Crazy, right? And now they're gonna slow down. Both of them are slowing down because they're closest to the time dilation point. But give it a second and they're gonna speed back up. And what do we think is gonna happen? Are they gonna escape the time dilation? There they go, speeding back up, spinning around each other and nope. Okay, so what do we just see? What is this? Let's step through the exact pieces because what we just saw is an orbit without directly modeling gravity. So here we are at the beginning of our simulation. Here are two point masses connected by a spring. Now the first thing that happens is this is our innermost mass right here. It's moving through time more slowly. But they're moving through space at the same rate. But because of the time dilation, the outermost mass is going to pass by the innermost mass. Well, that's gonna cause our spring force to kick in. But again, time is dilated. So the force is not being applied at an even rate. And so there's a greater force on the outer mass than the inner mass. This basically causes them to both spin around each other and have a net drag towards the point of time dilation. And so they continuously spin around each other like that and have a net effect that attracts towards the center point. So let's watch this one more time. So what we're seeing is that inner spring force is being modulated so that even though they're applying the exact same amount of force on each other, the amount of time that the effect can be more or less felt is diminished for the innermost mass. And that causes a net attraction towards the center. There you have it. Something that seems like gravity. The source code to this is on my GitHub. Oh, why don't I give a little summary first? So what we've done, we have modeled gravity as the modulation of an internal force using only the dilation of time, which produces a net attraction towards the point of dilation. So there's that GitHub URL. It's about 300 lines of JavaScript. It's incredibly simple. So you can check it out and see if I'm lying. And that's about it. Thank you all very much. That's my Twitter there.