Crawling SCHNAIL: Steady progress – with pictures!

The SCHNAIL project have gathered a large amount of interest, which I’m very grateful for. I decided to post frequent, if small updates regarding it. Enjoy the news!

First of all: We have the finalized logo, and a mascot too. It is a larva-snail-zerg-cute-thingy. Which version do you like more?

I made some good progress with the client as well. It is close to it’s intended goal: To be a standalone, fully fledged game client. It is a surprising amount of work, but alas, it is in a somewhat presentable state. Here is a screenshot – as you can see, it is meant to be reminiscent of the Brood War aesthetics. The UI is by no means final – but it has all the necessary components.

So yeah, that was a great exercise in CSS.

Let me talk about the near-term plans about this project. First, we want to enter the alpha testing phase as soon as possible. That means that the whole thing has to be somewhat stable, and have the core functionality worked out. After that, authentication/user management needs to be done. With that, replay and other data collection can begin. Don’t worry – only data relevant to the game. The player profiles are not public by default, I think that should be opt-in – I don’t want to be social media.

An important feature is hotkey support. Many players don’t mind the different graphics than SC: Remastered, but they dearly miss their hotkeys, which I can fully understand. A custom hotkey plugin is possible, and it will be a milestone.

With the authentication, and data storage, I want to provide some way to see your match history, and get your replays. Bot authors, especially.

I have a pretty good idea what features we need to implement to call this project feature-complete. When that is done, the closed beta phase will begin (that will be still invite-only, although I might relax the requirements there).

There are some things that are in a transitional state right now. We want to push bot authors to only use the latest BWAPI version (Currently 4.4), but I realize that cannot be done overnight -therefore, there is a grace period, where we support previous versions. But it is just that, a limited time period.

Our lord and savior, Dan Gant has suggested a UI rework for a more horizontal flow. I evaluated his feedback, and I do think this looks slightly better – what do you think?

Besides getting the CSS working, there were a few tasks, and challenges present – and thankfully, mostly solved. We now have an installer with a bundled JRE, so the client works more or less out of the box. Since we are manipulating memory spaces with plugin injection, we can’t avoid running this in administrator mode.

Feature creep is always an issue with these projects – there a lot of functionality, and ideas that I would like to incorporate. A detailed user management system will be developed, though – you can see statistics, leaderboard, and there is nothing stopping us from gathering in-game data as well. I hope that can serve as an useful training tool. Average APM, idle times, and such things are relatively easily measured. I’m not a pro Starcraft player, but I have a bunch of ideas about that. Feel free to suggest more.

Some more Q&A that got asked in the meantime:

Will it support Linux/MacOS?

No, for the moment, it’s Windows-only. That’s unlikely to change in the near future. Starcraft itself requires windows. I guess we could go with OpenBW, but that would require an order of magnitude more work – and our funding (therefore, the time for this) is still measured in pizzas.

Will players be able to pause / adjust latency?

The game mode is multiplayer, with the same restrictions, it’s just there is a bot on the other end – so that will be familiar

What CPU / GPU / RAM / Persistent Storage resources are available to the bots?

Basically the resources available in the google cloud, which are: 1 server grade CPU core/no GPU /1.5GB shared memory/unlimited storage. GPU support is probably possible, but that needs some research. The end goal is to have it. I want every opportunity provided for bots and testing.

Thanks for reading, and please subscribe to the mailing list for updates! (in the right hand sidebar)

Leave a Reply