Actually not much fun.

Single-player and LAN modes are looking pretty good, so I’ve started work on Internet play. As I’ve mentioned before, this will use Valve’s Steamworks networking protocol because it provides some nice features to let people easily host games and connect to others. Otherwise you’d have to do all that old-school port forwarding and so on to try and get your game to show up publicly.

Things didn’t start off well. This post I made on Monday has everything you’d want to know about that. I actually got everything working really fast, and I had two machines connected over the Internet through Steam and playing almost right away. Then I discovered that most of the time it didn’t work, and that everything was sort of half-broken.

Eventually it turned out that it was largely a bug with the creation of my App ID on Steam. Valve recreated me to a new App ID which unfortunately meant I had to re-enter a bunch of stuff, but fortunately meant that just about all of my problems were fixed.

I still have a remaining issue with the case where a user wants to host an Internet server and play in the game on the same machine, but a couple of potential solutions have presented themselves there. That one’s not a bug, it’s more of an implementation issue (that’s probably not worth going into details about).

In other news, I sent out a build with single-player and LAN play to a wider group yesterday. Looking for bug reports and gameplay feedback from that.

Someone on the forum pointed out that force from explosions pushes everything in the same direction, so I fixed that (internally – it’s not in the builder demo now):

Vehicle shoots, projectile hits on the far side of the cubes. Previously that shot would have pushed all the cubes away from the vehicle. Now, an object hit directly will still get pushed in the opposite direction to the projectile, but objects caught in the explosion will be pushed away from the central hit point instead (with less force for objects farther away of course!).

I also gave a reply on Reddit about the genesis of Scraps which might be worth reposting here: