Page 1 of 1

New version of Slay with DirectX

Posted: Thu Aug 11, 2011 1:56 pm
by Sean OConnor
I've started work on a new version of Slay which will use DirectX 9 so there's huge potential to improve the graphics now that I can use PNGs image files instead of just BMPs (e.g. the sea laps up on the shoreline of the hexagons!). The game window is stretchable so the game won't look tiny now on modern screens.

I'll also take a look at the AI to make it play a better game in the later stages of a game so it won't always be a walkover once you've got a pretty good territory going.

I'm not planning on changing any of the game's rules and the challenge islands will stay the same. I'll try and keep all the features of the current game in but as I'm starting again from scratch there may well be some bugs that get introduced to begin with.

Give me a few days and I'll post a screenshot of how it's looking!

Posted: Fri Aug 12, 2011 2:35 am
by Fusion_power
Welcome news Sean. Post something when you get a working version going.


Posted: Sat Aug 13, 2011 6:46 pm
by mbouchar
It seems a little bit odd to do a directx version when you could do it in OpenGL and share your code with the iphone version. You could also release it on the Android/Mac/Linux at the same time.

Posted: Sat Aug 13, 2011 11:57 pm
by mitype2
I totally agree with Bouchar. It sounds like that would be the sensible choice but what do I know I'm not a programmer. I haven't programmed anything since the 6th grade when we had Apple 2 C's in school and I had a TRS 80 at home.

Posted: Sun Aug 14, 2011 11:25 am
by Sean OConnor
The drawback of using OpenGL with Windows is very few people probably have it installed. I want to avoid forcing people who've just downloaded my games to have to install something else first before they can get them to run. I'm confident that most people will have DirectX9 installed (everyone who has Vista or Windows 7 and hopefully most people with XP have installed it in the past).

And there really wouldn't be much to gain from using OpenGL just because it's used on Android and iPhone. The drawing part of the game is just a tiny fraction of the actual project - it's mostly the AI routines and the game logic itself (e.g. calculating the territories, what's a legal move, collecting income, what to do on a mouse up/down, going bankrupt etc...) and those are all written in pure C++ on Windows which is very portable to Java (Android) or Objective C (iPhone).

I'm using my Blitz2D code ( for doing the actual drawing and some iPhone simulation code I've recently written so there's not actually any DirectX code in the Slay project itself. In the project I create "UIImageView"s for each of the hexagons, men, background, map etc... and then I just call one function which says "go draw 'em all!" So the project itself doesn't even know it's using DirectX which makes the code very portable.

Hope that makes sense!

Posted: Sun Aug 14, 2011 1:52 pm
by Sean OConnor
BTW a nice improvement I've just added is unlimited Undos, and Redos too now. So you can step backwards and forwards through all the moves you've made, or jump back to the start of the move or jump forwards again to Redo all the Undos.

I've also added red highlighting of hexagons you can attack when you pick up a piece, which is a feature I added in the iPhone version.

Posted: Mon Aug 15, 2011 6:45 am
by Fusion_power
Let me know when you want to work on the AI routines. There are a few glaring problems in the current version.

1. When attacking an enemy, the capital is preferentially attacked even though a live man or a castle would have made a better target. This can also play out backward with a live man attacked when the capital would have been a better target, given that the capital is not directly accessible.

2. The AI does not look at the alternative attack moves to see which results in using the fewest men.

3. The AI does not have much in the way of routines to cut enemy territory.

4. The AI leaves itself unprotected at the worst possible times.


Posted: Wed Aug 17, 2011 4:36 pm
by CoffeeShopFrank
I can't wait for the next version of Slay! :)

Having unlimited undos and redos is a really good idea, and it's time the graphics got an update.

Although you're not going to change any of the game's rules, do you plan on adding any major gameplay features in the future? I can understand that you want to keep the gameplay simple, because sometimes adding new features leads to a game becoming too confusing.

Slay isn't a great game because there's nothing left to add, but because there's nothing left to take away. :D

Posted: Fri Aug 19, 2011 11:52 pm
by jesse
how about you try to get a better connection that doesnt work only once a week

Posted: Sat Aug 20, 2011 4:24 pm
by Sean OConnor
Sorry about that Jesse and I think it's a problem with the BT router I have. It seems to drop my IP number after a few days of being on-line. I'll order a new router and see if that fixes the problem.

Posted: Tue Aug 30, 2011 4:53 pm
by pokeman7452
Awesome, I'm looking forward to it. (more so to the android port though)
Could you add some sort of replay system or way to view past moves for screenshots? I would love to be able to see some of these expert slayers's games and strategies on the forums.