gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Game Design > Minesweeper

#57650 - paladine - Mon Oct 17, 2005 4:26 pm

Well I've been playing a lot of minesweeper lately so I've decided to make a complete game of that. I have most of it done already, just need to add some user input routines and high-score saving.

Not the most technically advanced game, but a fun one none the less.

#57704 - tepples - Mon Oct 17, 2005 9:00 pm

paladine wrote:
Well I've been playing a lot of minesweeper lately so I've decided to make a complete game of that.

So have I.

Quote:
I have most of it done already, just need to add some user input routines and high-score saving.

How do you plan to make high-score saving work in your version? Is it just based on shortest time to clear all the squares?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#57711 - paladine - Mon Oct 17, 2005 9:49 pm

I'll have a couple standard difficulty levels - easy, medium, hard etc. The shortest time to completion will be your score. As of now, I have the game hardcoded to the 'hardest' difficulty. I need to create the interface that allows the user to select the type of game.

It would be nice to be able to save custom game scores. I'll look into that and examine how much I could store in the limited save space.

#57713 - Palamon - Mon Oct 17, 2005 10:23 pm

If you were trying to do something new with mindsweeper, you could try putting in a multiplayer version.

(a good, hopefully easy, way to test out the multiplayer stuff)


Just have one player select the area size, and send that over with the random seed so that each player will have the same game board, and have them race to solve the fastest and keep track of who won the most games.

To make things fair (ie make it worth solving the puzzle instead of waiting for your oppenent to fail), you could incorperate a points system based on how many correctly found mines vs the other player's correctly found mines minus a large penalty for blowing up a mine.

#57726 - tepples - Tue Oct 18, 2005 12:39 am

paladine wrote:
I'll have a couple standard difficulty levels - easy, medium, hard etc.

The "standard" difficulty levels for Minesweeper are as follows:
  • Beginner: 9x9, 10 mines
  • Light: 8x8, 10 mines
  • Standard: 16x16, 40 mines
  • Heavy: 30x16, 75 mines
  • Oni: 30x16, 99 mines

Light, Standard, and Heavy have the same mine density. They differ only in size, meaning you have to rely on strategy instead of luck to win. Windows 3.1 through 2000 used Light, Standard, and Oni; Windows XP has Beginner, Standard, and Oni.

We might as well move minesweeper talk into a separate topic.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#58506 - paladine - Mon Oct 24, 2005 3:24 am

Get it at http://voidpointer.org/mine.gba

#58555 - Palamon - Mon Oct 24, 2005 4:28 pm

So far the game part works well,

However, when you win or lose a game, I am having a hard time getting back to the main menu to play again. Maybe add a "press start to continue" thing in there.

Also, it would be nice to see how many mines are actually in the total puzzle, and as you label squares as mines, have that number decrease accordingly.

Plus, having a visable timer clock would be helpful if you are trying to get a high score.

If you really wanted to make it look alittle less drab, try putting in a picture of a minefield or something in the background of the main game, instead of just black. (and have a border around the main game window)

As for the lack of sound, not a bad point at all, since they can become annoying really fast for this type of game.


Other then that, good job.

#58565 - paladine - Mon Oct 24, 2005 5:03 pm

Ah yes, you can hit A/B/L/R at the same time to reset the game. I will include that in the instructions when I wrap it up for submission.

I was toying with the idea of adding some status displays but was unsure of how to proceed given that the text display would corrupt/hide the onscreen display on the largest size grid. I could however create some textual sprites that display this information when the user holds down SELECT or something similar. When the user releases the key, the sprites disappear.

#58607 - Palamon - Mon Oct 24, 2005 9:45 pm

A creative solution to the status display space problem is to have the box float around on one corner of the screen, and when the cursor comes with in, say 3 squares of the edge of the status screen, the status screen moves over to the other corner.

That way, it's not on a section of the screen that is being used for the game right then, and moves when it is.

#58609 - tepples - Mon Oct 24, 2005 9:46 pm

paladine wrote:
I was toying with the idea of adding some status displays but was unsure of how to proceed given that the text display would corrupt/hide the onscreen display on the largest size grid.

The largest standard-size grid used in Minesweeper is 30x16. The GBA display is 30x20 tiles, and the Nintendo DS display is 32x24 tiles. What are you doing with the four rows at the top?

EDIT: I just tried it. I keep failing beginner for two reasons:
  • The B/A are reversed from what I expect on an NES, Game Boy, Game Boy Color, or Game Boy Advance game.
  • You didn't put in the chording (left+right) feature from Minesweeper for Windows.
  • Your map generator code generates maps with a mine under the first click. Most implementations of Minesweeper either modify the map to move the mine away from the first click or generate the map after the first click.

In addition, the win detection has a bug. Your program seems to if all mines are marked. The actual win condition in Minesweeper for Windows is if all non-mine spaces are touched.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.


Last edited by tepples on Mon Oct 24, 2005 9:59 pm; edited 1 time in total

#58612 - paladine - Mon Oct 24, 2005 9:58 pm

While Windows limits you to 30x16 in the hard mode, I figured I'd just go the whole way to 30x20 on the GBA. Limiting to 30x16 would provide me some area to display status however.

A/B are flipped because that's what I'm used to in Windows ;-) The right mouse button flags a bomb while the left clears the area. Perhaps a configuration screen would be appropriate where you can choose your desired button configuration.

And you may be happily surprised that you can use L/R for chording!

#58613 - Palamon - Mon Oct 24, 2005 10:00 pm

What do you mean by Chording?

Anyways, upon further testing of the game, I noticed you check the amount of correctly labeled bombs instead of the number of correctly opened squares.

On the Windows Minesweeper, you just have to click on all the non-mine squares, you don't have to label the mines.

In your's, you can't win unless you label all the mines.

When playing beginner on Windows, you get better times by not having to label each mine in order to win, just remember which squares are obviously a mine.


Edit: Ok I figured out what Chording is, (never used it in windows)
and you all edited your messages while I was typing mine about the end detection :-P

#58615 - tepples - Mon Oct 24, 2005 10:05 pm

Thanks for the clarification on chording.

There's still the win condition issue, which made it into the edit after you posted.

And about the button thing: It's "primary" vs. "secondary". It may be different on other systems, but Nintendo gamers' thumbs are trained to assume that the "secondary" button is to the left of the "primary" button.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#58793 - MrD - Wed Oct 26, 2005 1:58 am

Nintendo's gamers thumbs are also trained to think that the X button is... oh, nuts.
_________________
Not active on this forum. For Lemmings DS help see its website.

#58795 - tepples - Wed Oct 26, 2005 3:03 am

MrD wrote:
Nintendo's gamers thumbs are also trained to think that the X button is... oh, nuts.

Darn right.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.