Author Topic: Axe Minesweeper  (Read 47375 times)

0 Members and 2 Guests are viewing this topic.

Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Axe Minesweeper
« Reply #60 on: September 03, 2010, 08:47:50 pm »
The filling routine is essentially the same, I might have tweaked a few numbers here and there, but the bulk of it is the same. 
Pruning down the amount of DispGraphs made a HUGE difference.

About the undo button: I've decided that if it's used, you can't record your time for that particular minefield. 
So there's a penalty for using the Undo button - you can't really 'win' the game if you use it.
I just added it for those users who are less concerned about earning a high score more concerned about being able to actually finish the game.
(If I ever distribute this to my classmates, there's a high that they don't know how to play minesweeper.  This might soften the learning curve for them.  Maybe.)
Maybe I should add an option to disable showing the location of all the mines when you lose?
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

Offline Happybobjr

  • James Oldiges
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2325
  • Rating: +128/-20
  • Howdy :)
    • View Profile
Re: Axe Minesweeper
« Reply #61 on: September 03, 2010, 08:51:47 pm »
The filling routine is essentially the same, I might have tweaked a few numbers here and there, but the bulk of it is the same. 
Pruning down the amount of DispGraphs made a HUGE difference.

About the undo button: I've decided that if it's used, you can't record your time for that particular minefield. 
So there's a penalty for using the Undo button - you can't really 'win' the game if you use it.
I just added it for those users who are less concerned about earning a high score more concerned about being able to actually finish the game.
(If I ever distribute this to my classmates, there's a high that they don't know how to play minesweeper.  This might soften the learning curve for them.  Maybe.)
Maybe I should add an option to disable showing the location of all the mines when you lose?

glad to hear of the improvements.

* you made me lose the game....
School: East Central High School
 
Axe: 1.0.0
TI-84 +SE  ||| OS: 2.53 MP (patched) ||| Version: "M"
TI-Nspire    |||  Lent out, and never returned
____________________________________________________________

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Axe Minesweeper
« Reply #62 on: September 03, 2010, 08:52:22 pm »
Aah I see, so it was definitively the DispGraph making such a difference. Now you know how slow the TI-82/83/84/+/SE LCD drivers are D: .

As for the Undo, maybe add difficulty modes or bonuses for when someone wants to disable it. Another option to disable showing the location of mines when you lose and a bonus for it seems like another cool idea. :)

Offline willrandship

  • Omnimagus of the Multi-Base.
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2953
  • Rating: +98/-13
  • Insert sugar to begin programming subroutine.
    • View Profile
Re: Axe Minesweeper
« Reply #63 on: September 03, 2010, 08:52:32 pm »
Well, how about having a sort of Undo/give up selection, then showing all the mines?

Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Axe Minesweeper
« Reply #64 on: September 04, 2010, 12:15:37 am »
Aah I see, so it was definitively the DispGraph making such a difference. Now you know how slow the TI-82/83/84/+/SE LCD drivers are D: .

As for the Undo, maybe add difficulty modes or bonuses for when someone wants to disable it. Another option to disable showing the location of mines when you lose and a bonus for it seems like another cool idea. :)

I don't really like the idea of using bonuses to reward the player if they chose to disable the Undo button.  If the player avoids clicking the undo button, there's really no difference between the player who leaves it enabled and the one who disables it.

I think that instead of rewarding the player, I should penalize the player for clicking the undo button - in exchange for having unlimited shots at solving a particular minefield, they can't save their time to the high scores list.

Besides, I can't really think of any kind of bonus I could give.

But I think I will add an option to toggle to show the location of the mines when you lose.
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Axe Minesweeper
« Reply #65 on: September 04, 2010, 01:15:49 am »
Yeah i like the idea of penalizing a player that uses the undo button in their game by removing highscores.  Because what about those times when you just cant seem to find a place to advance?  You just gotta guess and you really dont want to lose :)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Axe Minesweeper
« Reply #66 on: September 04, 2010, 05:52:09 pm »
Ah, right. I guess penalizing might be better.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Axe Minesweeper
« Reply #67 on: September 04, 2010, 10:13:13 pm »
Yeah, not letting the player get into the high scores is a good idea. You can't really reward someone for avoiding a button, and penalizing by adding more time would get complicated :)




Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Axe Minesweeper
« Reply #68 on: September 08, 2010, 01:02:29 am »
Sorry for not posting an update for so long, but I decided to rewrite my code, which took awhile.
Well, the rewriting was easy, but the program was plagued by many inexplicable bugs.  Now, several coding sprees and many blasphemies later, I now have a program that is bug-free (as far as I can tell), and actually includes several new features (pause and a better options menu). 

I've rewrote the code so that it'll be easy to integrate scrolling and high scores, plus the entire code feels much more streamlined and less patchy.
I'll do that later; I'm pretty tired right now.
Meh, I didn't expect to be debugging this long, it's not like the rewrite was drastic, or anything...

I think I'll get scrolling, high scores, and the timer up by Saturday at the very latest.
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Axe Minesweeper
« Reply #69 on: September 08, 2010, 01:07:22 am »
Now, several coding sprees and many blasphemies later,
This is when we want to use a hammer. ;D

I understand debugging can be a pain tho x.x. I love the options added. Do you think scrolling will slow the grayscale down? Looks nice as always :)

Offline meishe91

  • Super Ninja
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2946
  • Rating: +115/-11
    • View Profile
    • DeviantArt
Re: Axe Minesweeper
« Reply #70 on: September 08, 2010, 01:52:38 am »
That looks really cool! Good luck with the rest of it :)
Spoiler For Spoiler:



For the 51st time, that is not my card! (Magic Joke)

Offline Jonius7

  • python! Lua!
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1918
  • Rating: +82/-18
  • Still bringing new dimensions to the TI-nspire...
    • View Profile
    • TI Stadium
Re: Axe Minesweeper
« Reply #71 on: September 08, 2010, 01:53:30 am »
nice screenshot
Programmed some CASIO Basic in the past
DJ Omnimaga Music Discographist ;)
DJ Omnimaga Discography
My Own Music!
My Released Projects (Updated 2015/05/08)
TI-nspire BASIC
TI-nspire Hold 'em
Health Bar
Scissors Paper Rock
TI-nspire Lua
Numstrat
TI-nspire Hold 'em Lua
Transport Chooser
Secret Project (at v0.08.2 - 2015/05/08)
Spoiler For Extra To-Be-Sorted Clutter:

Spoiler For Relegated Projects:
TI-nspire BASIC
Battle of 16s (stalled) | sTIck RPG (stalled) | Monopoly (stalled) | Cosmic Legions (stalled)
Axe Parser
Doodle God (stalled while I go and learn some Axe)

Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Axe Minesweeper
« Reply #72 on: September 08, 2010, 10:56:03 am »
Do you think scrolling will slow the grayscale down?

Nah, probably not.  Or, at least, it won't be too noticeable.  It might be slower when a blank bubble is expanding (but only because there are so many more squares to check).
The way I'm envisioning it, integrating scrolling should only add about 5-10 lines max, as long as they're carefully crafted and written.

Right now, my greatest concern is getting the timer and the getKeys to work together nicely. 
I seem to have an irrational phobia of interrupts - it's probably because my calculator keeps getting RAM clears almost every time I try experimenting with them...

~~~~

Questions:
Is an 18x18 maximum field fine?  I think that if I use appvars instead of L1 to store my map data, I could increase the size dramatically at the cost of taking up RAM.  (A 40x40 field would take up about 3200 bytes, for example.)
When compiled, the program is 7873 bytes.  Is this a reasonable size?
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Axe Minesweeper
« Reply #73 on: September 08, 2010, 01:27:47 pm »
Aw sorry to hear about interrupts. I think one issue is that getkey doesn't work with them, though. I wonder what would be the solution around that. As for timer, you may need to use one without interrupts, but then it may be hard to keep in sync. That said, it is fine if it is not perfect, though. After all, no timer in NES games were.

18x18 seeems fine to me, personally. At 40x40 we might start getting lost cuz of the small screen x.x
« Last Edit: September 08, 2010, 01:28:36 pm by DJ Omnimaga »

Offline meishe91

  • Super Ninja
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2946
  • Rating: +115/-11
    • View Profile
    • DeviantArt
Re: Axe Minesweeper
« Reply #74 on: September 08, 2010, 02:31:46 pm »
I don't know if you have room for this idea, since I don't know how much room your tiles take, but when you add scrolling in if you could have like an arrow pointing in the ways you can move, like a small one, that could be helpful. It could tell you when you hit the end and such. Just a thought :)
Spoiler For Spoiler:



For the 51st time, that is not my card! (Magic Joke)