Do I need to prevent deadlock for a game like this?

Started by
3 comments, last by WhiskyJoe 11 years, 6 months ago
Hi,

I would like to make a game like this: http://www.funnygame...pet-connect.htm, however I can not seem to wrap my head around if I need to prevent deadlocks and if so how.

Often the player has multiple other blocks to which he can connect a block. How can I guarantee there wont be a situation where no options are left no matter which block the player connects and no matter which sequence?

Also on a small 4x4 grid it is possible to generate a deadlocked seed:

1234
2413
3142
4321
Advertisement
Well it depends on how the game is actually played. Can you describe the rules determining which pairs are allowed to be selected at any time? I think that the example grid is not actually deadlocked, but it depends on the rules.
I don't think you can without making all the solutions very obvious. I don't know japanese/chinese or whatever the language was, so I don't know if any helper functions exist, but also in this game you can get stuck eventually.

If you're only talking about seeds: you're the programmer so you're in control. You can make sure that every once in a while, when constructing your play field, that some pairs match up. You can do this in multiple ways I'd reckon. Perhaps first you add some randomly positioned pairs and fill the rest of the field up with whatever seed you want to use.
Hi,

Sorry I was assuming the workings of this game was clear. With this game you can only connect blocks if they:

A: have the same image

and

B: there is a unobstructed line possible between them with a maximum of 2 turns in it.

I know for a fact this kind of game never gets deadlocked (my fiancee plays it very often and says it never gets stuck, which I believe)
I understood how it was played :)

My point still stands though. It's also kind of up to you what you want to achieve. There are for example plenty of bejeweled like games and mahjong games that simply aren't able to be cleared, but that doesn't mean it ruins the game.

Now with a game like this, the more you clear, the more options you get in terms of space you can traverse. If I, for example, clear 2 blocks that are connected to each other from the side or top, I create a lot more options to connect blocks to and the larger this gap gets, the more options you will get, making it almost impossible to not be able to clear it if you have enough starting options, which is very controllable by you :) Of course situations can arise where you aren't able to finish it. It also depends on how many variations of blocks you are using. The more variations of blocks, the harder it gets to connect them.

I also find it hard to believe, that if a field is truly randomly generated, you will always be able to clear it. Very high chances sure, but not 100% as you can never anticipate the move a player is going to make next, unless the field is made up in such a way that only one way is possible.

I'm not saying this is end all, there might be a way to prevent deadlocks, but I personally think it's just a very high chance of clearing due to how the mechanics work :)

This topic is closed to new replies.

Advertisement