AI Players in Scraps currently use a navmesh to work out a path from where they are to where they want to go. Unity comes with a built-in NavMesh system which is really nice and easy to use, until you want to do anything fancy. I’ve been trying to wrangle some better meshes out of it.
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 got players joining games that are already in progress working last week, then I cleaned up the lobby and the menus so it all works like it’s supposed to, and I’m starting to actually feel like things are really coming together. Stuff is working and hey, it’s fun too.
The biggest single thing left to do before release is Internet play (single-player and LAN are working now), and I’ll be spending some time with Dave (who also did the AI) next weekend to delve into that. Then there’s a bunch of other smaller tasks, bug fixing, finishing up TODOs, and creating a new trailer etc for marketing… but it’ll get there.
The lobby is a bit more functional now. Here’s the single-player lobby:
What’s “AI Infighting” you ask? Well, it determines whether AI players target everyone, or only human players. It’s like extra difficulty, or instant boss battles!
Bonus graphics glitch. Somehow some textures got messed up and sort of created Steampunk Scraps?
I did make my scoreboard system functional after the last update, which was a nice opportunity to make some AI vehicles battle each other and see how their different difficulty levels stacked up.Left column is Randomly selected AI player name + its difficulty setting. Points is “kills” and Lost is “deaths”. Looking OK; Medium needs a bit of a difficulty nerf.
But mostly I’ve been working on players being able to join games that are already in progress.
The last two weeks have had a lot of minor bug fixing and various small stuff that isn’t really worth talking about, so let’s talk about Scraps’ aiming system.