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.

DS Misc > PicrossDS

#53848 - Cidrick - Mon Sep 12, 2005 6:35 pm

Last night I finished the first release for the game I'm working on for the DS, called PicrossDS. I hope at least some people here have played a Picross game before. For those who aren't familiar with how the game works, you can read a quick tutorial here.

Right now it's just ten puzzles, but of course, in the final version I plan to have at least 100, probably 200 if I can find enough puzzles. There's no sound, no score saving, and no stylus support, yet. I plan to add them all as time goes on.

Here's a screenshot

Download here

Let me know what you think. If you find any bugs, or would like to suggest some features, or think the control scheme sucks, I'm open to any suggestions.

#53849 - jumperwillow - Mon Sep 12, 2005 6:43 pm

Picross, my addiction and curse. I've lost many summer nights to that infernal game.

I have been holding out on buying a DS because getting into simple GBA development, but this here is just enough reason for me to consider it.

Just wondering though, how are you planning on implementing the stylus? I mean the only action is ?touch,? so what are your plans for using the ?clear, mark, and scratch? actions for each of the cells?
_________________
-h

#53850 - Cidrick - Mon Sep 12, 2005 6:57 pm

For the stylus, simply touching the screen would mark the tile. Then to put an X down, you would hold the L-trigger and tap the screen. Or the R-trigger, for you left-handed folks. Erasing would be much the same way as using the d-pad. Touching the screen where there was already a box would erase it, and the same for the X.

The biggest challenge of adding the stylus will most likely be dragging the stylus to select an area of boxes, much like how TylerK's Picross works.

#53855 - Sephiroth87 - Mon Sep 12, 2005 7:48 pm

very good work, i like it too much ;)

#53878 - youplaboum - Mon Sep 12, 2005 10:42 pm

I just discovered this game, it's great!
i can't wait for a stylus release ;)

suggestion: a create-puzzle mode, and the possibility to share our creation via a password system (much like polarium in fact)

#53880 - Cidrick - Mon Sep 12, 2005 10:50 pm

youplaboum wrote:
suggestion: a create-puzzle mode, and the possibility to share our creation via a password system (much like polarium in fact)


Hmm, that's a pretty good idea. It''ll probably have to come last in its development, but it shouldn't be all that difficult to implement. There's just a lot more stuff I have to do first.

#53884 - sajiimori - Mon Sep 12, 2005 11:11 pm

Math question related to sharing puzzles:

What binary representation of puzzles would minimize the worst-case data size? What is that size?

#53890 - Abscissa - Tue Sep 13, 2005 2:35 am

Excellent, I love picross :)

Found a bug though:
(tiny minor spoiler)
In puzzle #1 (haven't tried the others yet), the absolute center square in the board is "5 2 2" across and "2 2 5" down. I'm able to clear the board *regardless* of whether I set that square to white or black. I assume it's supposed to be white, since black would mean that the numbers would have to be "5 3 2" and "2 3 5" down. But, again, once I solve the rest of the squares, the game doesn't seem to care which I have that one set to - it'll still say "Victory!".

EDIT: Puzzle #2 does *not* appear to have this problem. At least not on that particular square, anyway.
_________________
Useless Rants a.k.a. My futile attempts at rationalizing my unreasonable reluctance to call my site a 'blog'.

#53893 - tepples - Tue Sep 13, 2005 3:15 am

sajiimori wrote:
What binary representation of puzzles would minimize the worst-case data size? What is that size?

To minimize the worst-case data size, use a bitmap of width*height bits. For a puzzle the size of those in Mario's Picross, that would need 225 bits. Add 15 bits for error detection and you get 48 characters each representing 5 bits.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#53897 - Lynx - Tue Sep 13, 2005 3:26 am

Abscissa wrote:
Excellent, I love picross :)

Found a bug though:
(tiny minor spoiler)
In puzzle #1 (haven't tried the others yet), the absolute center square in the board is "5 2 2" across and "2 2 5" down. I'm able to clear the board *regardless* of whether I set that square to white or black. I assume it's supposed to be white, since black would mean that the numbers would have to be "5 3 2" and "2 3 5" down. But, again, once I solve the rest of the squares, the game doesn't seem to care which I have that one set to - it'll still say "Victory!".


Hmm.. actually, I found the same bug.. cept I don't think I was working on the same row.. but I did notice I should have marked one more box before winning, and I received the Victory! message as well.. Though, I might have been on the same row..

#53899 - Cidrick - Tue Sep 13, 2005 3:58 am

Hmm, you're right about that square. I'll see if I can squash this little bug.

Edit: Bwahah, it seems my check-for-errors routine is pretty crappy. Fill the screen with black boxes. Go on, try it ;)

All my routine did was compare your progress with the puzzle by seeing that all filled-in squares in the puzzle matched up with the filled-in squares on your progress so far, and didn't consider any filled-in squares that should be empty. A logic error on my part.

I'll fix it in the next release.


Last edited by Cidrick on Tue Sep 13, 2005 4:45 am; edited 2 times in total

#53900 - Abscissa - Tue Sep 13, 2005 4:08 am

tepples wrote:
sajiimori wrote:
What binary representation of puzzles would minimize the worst-case data size? What is that size?

To minimize the worst-case data size, use a bitmap of width*height bits. For a puzzle the size of those in Mario's Picross, that would need 225 bits. Add 15 bits for error detection and you get 48 characters each representing 5 bits.

Adding on to that thought:

That's five bits for each character, so it would need 32 characters to choose from for each chracter of the password. So, each letter of the (english) alphabet plus 8 more characters, which could be shapes or digits, etc., so that's doable.

You could also shrink the password to 40 characters, if you wanted by using upper-case *and* lower-case, plus digits 1-9 (omitting zero since there's already 'o' and 'O'), and then 7 extra shapes. Although you might not want to do that just to shave 8 characters off the password.

But what about compression? With a single algorithm, I suppose the worst case would be about the same - store it uncompressed, but with an extra bit to indicate "compressed" or "uncompressed". But, (unless my knowledge of compression theory is lacking, which is entirely possible) I'd think maybe it would be possible to combine two or three algorithms in a way such that any image that ends up bigger than uncompressed by one of the algorithms would always be compressable by one of the others.

Although, now that I think about it, that's probably not possible at all, since it would allow you to take any data and compress it over and over until it's about one byte. Heh, I guess I just tought myself something about compression :)
_________________
Useless Rants a.k.a. My futile attempts at rationalizing my unreasonable reluctance to call my site a 'blog'.

#53901 - Abscissa - Tue Sep 13, 2005 4:13 am

Oh, darnit, you all just had to bring up picross in front of me, didn't you? I was going to get stuff done tonight, but it looks like I'm going to end up glued to PicrossDS and Mario's Picross until some ungodly hour. ;)

*goes back to the arithmeticy-pixelly-goodness...* <grin>
_________________
Useless Rants a.k.a. My futile attempts at rationalizing my unreasonable reluctance to call my site a 'blog'.

#53902 - Cidrick - Tue Sep 13, 2005 4:15 am

I aim to please =D

#53922 - luke314pi - Tue Sep 13, 2005 1:38 pm

Nice work, this game is very addicting!

#53939 - sajiimori - Tue Sep 13, 2005 6:49 pm

Tepples,

That's the first thing that comes to mind of course, but it isn't optimal. There are only 6 spaces for numbers on each row and column, so some bitmaps are not valid.

(Again, being just a mathematical question, it may not have any practical relevance.)

#53952 - tepples - Tue Sep 13, 2005 8:27 pm

It's a heck of a lot closer to optimal than the alternative. If you want to save the values of the numbers, then you need 4 bits per space times 6 spaces times 30 rows = 720 bits. This is even worse.

In theory, a 15-pixel-wide row can have only 8 runs of black. Comparatively few hand-drawn (i.e. not rand() generated) nonogram bitmaps will have 7 or all 8 runs of black in a row or column, right? Can anyone else think of a way to significantly improve on 225 bits? I'm almost thinking that the coding rate vs. complexity between a raw bitmap and any tighter packing will be analogous to the difference between Huffman coding and arithmetic coding.

Apparently this is the most comprehensive nonogram resource on the WWW.

An aside: If Lumines and Minesweeper can be united, can Minesweeper be united with Picross?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#53954 - Abscissa - Tue Sep 13, 2005 9:26 pm

tepples wrote:
An aside: If Lumines and Minesweeper can be united, can Minesweeper be united with Picross?

Sounds interesting, but it looks like it's nothing more than Picross with the Minesweeper graphics. Doesn't look like Minesweeper is influencing the gameplay at all, except that there isn't a coherent picture (which can still be done in normal Picross anyway).
_________________
Useless Rants a.k.a. My futile attempts at rationalizing my unreasonable reluctance to call my site a 'blog'.

#53965 - sajiimori - Wed Sep 14, 2005 1:18 am

The number of possible sequences of numbers for a row or column is much less than 16*6. If the set of possible sequences is sorted, then a set of numbers can be represented as an index into that set. Those indices will be less than log2(16*6) bits.

Also, some rows and columns are mutually incompatible so there must be even more redundancy to exploit.

#53966 - crudhacker - Wed Sep 14, 2005 1:41 am

whats next, Sudoku? http://www.sudoku.com/
_________________
MKDS friend code-
051599-251600
PM me so i can add u

crack this encrypted message-
BNSRIAYTNEDCLTFJQEZGNWDXHO
key- skip first letter then skip 2,3 till 4 then go back down

#53982 - telephasic - Wed Sep 14, 2005 8:17 am

crudhacker wrote:
whats next, Sudoku? http://www.sudoku.com/


EXACTLY what I'm waiting for... anyone? :D

#53996 - Sephiroth87 - Wed Sep 14, 2005 12:49 pm

i was already thinking about it, but i need a few more time, to study :P

#54172 - skabio - Fri Sep 16, 2005 1:58 am

Quite a fun game. I hadn't tried it before. Now I just need some more levels. 9 was kind of hard imo. Great work.

#54239 - Cidrick - Sat Sep 17, 2005 1:11 am

Version 0.2 is done

There are now 50 puzzles to complete. I also added SRAM support so the game will keep track of your best times for puzzles, as well as keeping track of which puzzles you've completed. I also fixed that bug that was pointed out earlier.

For the record, I added a check for a homebrew cartridge in the slot before saving, so if you download this via WMB it shouldn't mess up any saves of a commercial GBA cart inserted in the DS, but I haven't tested this. Please do this at your own risk!

Here's a screenshot of one of the new puzzles being solved.

Download here

As always, feedback and bug reports are welcome.

#54336 - captain_duck - Sun Sep 18, 2005 12:58 pm

oeh awesome, but on maxconsole.net i read you can send it via WMB ?. I tried this with version 1.4, sending picross.nds to it, but after downloading the game i get a garbled nintendo logo, and nothing happens :/

#54337 - Mighty Max - Sun Sep 18, 2005 1:45 pm

Captain Duck,

i guess you did not flash your DS yet? If you don't have it flashed yet, you can only use official demos with WMB, or use WiFiMe to start homebrew from a gba flashcard.
_________________
GBAMP Multiboot

#54340 - brody - Sun Sep 18, 2005 2:31 pm

Cidrick, great game, I hadn't heard of it before you mentioned your version here. I have been playing it on my GBAMP and as it has no sram, the save functions don't work (everything else works fine). Do you think that in the future you would be able to add save support for us GBAMP users?

brody

#54342 - Cidrick - Sun Sep 18, 2005 3:24 pm

I could try. Is there any documentation for how saving works with a GBAMP anywhere?

#54350 - captain_duck - Sun Sep 18, 2005 6:26 pm

Ah yeah i didnt flash my DS offcourse. Not planning to do that either, and to lazy to flash to gba cart atm :)

#54367 - Mighty Max - Sun Sep 18, 2005 8:16 pm

Cidrick wrote:
I could try. Is there any documentation for how saving works with a GBAMP anywhere?


For this see Chishm's thread in the Hardware Forum.

You can simply use his FAT_fopen,FAT_fwrite,FAT_fcread,... functions for this, just as you would write a savefile on the PC.
_________________
GBAMP Multiboot

#54395 - brody - Sun Sep 18, 2005 10:53 pm

Don't know if this is any help, but tepples mentions how to detect if its a flash cart or a gbamp that is inserted in this thread.

brody

#54741 - skabio - Thu Sep 22, 2005 4:00 am

Just finished 48 of the 50 boards. Couldn't figure out 47 & 48. Anyhow a few bugs to report.

When you beat level 49 it says congradulations and restarts the program. Shouldn't this happen after level 50? Also once you beat a level the timer continues to go. I think it would be nice if it stopped as soon as it shows you the complete picture on the top. Lastly it seems that the time shows up kind of messed up after you beat a level if its over 10 minutes. The third number looks distorted.

Of course none of these bugs take away from enjoying or completing the game. Keep up the good work.

#57188 - Cidrick - Fri Oct 14, 2005 4:43 am

Version 0.3 is done.

What's new:
* 100 more puzzles, bringing the grand total to 150
* Music! Now you don't have to play in silence. If it irks you, you can turn the music off in the pause menu by pressing left or right.
* You can now use L and R to scroll through the puzzle menu a bit faster.
* Fixed a bug where saved times would get overwritten on certain puzzles.

Let me know what you guys think by leaving a comment at my site, or by posting replies here on gbadev.

www.cidrick.org/picrossds

Screenshot
Direct download

#57189 - gladius - Fri Oct 14, 2005 5:41 am

Very nice work, had a bunch of fun with this.

#57367 - 0xtob - Sat Oct 15, 2005 10:42 am

Wow, so many puzzles! Great game! And the music is really funky. I would perhaps like sound effects for breaking or marking tiles. And with the added stylus support this will be perfect, so keep it up!

I wonder if Nintendo isn't planning a Picross DS themselves since the platform is optimal for it with two screens and the stylus.

#57390 - Cidrick - Sat Oct 15, 2005 2:33 pm

Thanks for the positive feedback. Yeah, I fully plan to have sound effects for breaking and marking tiles in the next version, and of course, being able to highlight tiles with the stylus for marking.

Maybe Nintendo could send a nice check my way to buy my code or something... :)

(Yeah right)

#59765 - toad - Fri Nov 04, 2005 12:19 am

Can someone please help me?
I want to play Picross v3 but when i run the game the screens turn white and i tried everything: I patched it with ndsloader and with ndsmall , rename ds.gba to .nds , tried to boot it in nds-mode and in gba-mode , tried it just with the gba and the nds file AND --> NOTHING...
Please can someone help me I want to play this so hard!!!!
P.S: I have a Supercard with CF 1gb and firmware 1.52 and flashme

#59820 - skabio - Fri Nov 04, 2005 8:57 am

I found a few bugs which you might want to work out. It seems that in the set of the first 100 boards there are quite a few doubles. The boards say different pictures after you win them but the boards are the exact same. The doubles are:

1&2,11&12,21&22,31&32,41&42,51&52,61&62,71&72,81&82,91&92

The first of each one being the correct picture and name and the second same board but different name. Also board #104 is impossible. I think some of the numbers got mixed up. I've beat all but 15 or so boards so I'll let you know if I find any more.

Can't wait for touch screen implementation and maybe gbamp support.

Thanks again for such an addictive game.

#59858 - alangerow - Fri Nov 04, 2005 6:22 pm

skabio wrote:
Also board #104 is impossible.


No, look carefully ... on Line 11, there's a 1 that went off the left side of the box. :)

#59871 - Cidrick - Fri Nov 04, 2005 9:18 pm

Yeah, thanks for the notes. I actually got a chance to sit down and play my game last weekend, and I'm working through all the puzzles, and I noticed all the double puzzles. It was a stupid mistake on my part when I was reformatting all my puzzles to my new struct I was using, and all the extra 2s became 1s, so every puzzle that ended in a 2 thought it ended in a 1. I'll release a bugfix version for this as soon as I can.

Also, saving doesn't work once you get past a certain number of puzzles. Pretty sure I know what's causing it, and I'll release a bugfix for that in the new version.

And I also noticed the puzzle with the 1 that fell off the left side of the board. I'm trying to figure out the best way to adapt the board for puzzles that will need more than 6 number clues without making the board so small that it'd be practically impossible to use the touchscreen. I suppose I could just move the board down slightly and extend the left side of the clue area left. Of course, I could always make it so you can't have more than 6 number clues per row or column, but I'd hate to limit myself, and especially since I plan to add a way to create your own puzzles, and I'd hate to limit the puzzle maker like that.

I'm open to suggestions.

#59886 - skabio - Sat Nov 05, 2005 12:17 am

Oh I forgot one more suggestion. Could you make it so the part with the numbers is highlighted depending on which square your on. Showing the "cordinates" if you know what I mean. It just that the blocks kind of run together sometimes and it would be much easier to see which set of numbers your working on.

Sorry if none of this makes sense. I wasn't sure how to word it.

#59888 - Cidrick - Sat Nov 05, 2005 1:26 am

Hahah, yes, I know exactly what you're talking about, and I agree. I'll try and add that next release.

#64016 - Cidrick - Sun Dec 18, 2005 3:59 pm

New version is out, though it's mainly just a bugfix release. But there's also 25 new puzzles, for a grand total of 175.

As always, you can grab it here.

And here's a screenshot of one of the new puzzles.

I'll try to have a major new release in January once I iron out all the kinks in my stylus code.

Edit: Oh, and if anyone is a budding modfile musician and would like to make better game music, feel free. I'll even paypal you some money for the effort if I like it and use it in the game. Ideally it'd be music that's a bit more "strategic" sounding. And yes, it has to be a .mod, since .xms and .s3s and .its don't work yet.

#64406 - iganokage - Thu Dec 22, 2005 2:51 am

hi there, love your app, great job.

however, im having some issues with v3a.... v3 worked perfectly for me except didnt have any saving... now with 3a i get saving, but after i complete one puzzle and press start, instead of taking me back to the puzzle list like it used to, it almost 'reboots' the app, showing me the PALib screen again. This would be ok, except once i press start again and select the next puzzle, at the instant all the numbers and the grid is finished rendering onscreen, it fades to black and takes me back out to PALib screen straight away.... when checking the list again the puzzle that exited has the "high score" time of the one actually completed before it.

the only way I have found to solve it is by turning off and on my DS and loading up picrossDS again....

M3 + flashme user btw, tried direct transfer of the .nds and conversion thru the game manager, both with the same problem.

thanks for reading anyways :) any help would be great

#65270 - Cidrick - Sun Jan 01, 2006 8:54 pm

That's strange. The way I fixed saving was to save each time as an individual 8-bit value in SRAM, whereas before I just saved a whole array of 150 times to SRAM. The new way is a bit cleaner since I only have to save one value at a time instead of re-saving all the values at once when you clear a puzzle.

Sadly, I don't have an M3 to test on, but I'll see what I can dig up.

#65352 - arog - Mon Jan 02, 2006 9:54 am

Quote:
after i complete one puzzle and press start, instead of taking me back to the puzzle list like it used to, it almost 'reboots' the app, showing me the PALib screen again


Same issue here but with GBAMP & 512MB Ultra CF card. :)

- Aaron Rogers
http://www.aaronrogers.com/nintendods/

#65367 - Cidrick - Mon Jan 02, 2006 4:46 pm

Damn, that's odd. Maybe I'll have to go back to the old way of saving times.

#67191 - arog - Mon Jan 16, 2006 4:21 am

Oh, it doesn't do this with my MK2, btw.

- Aaron Rogers
http://www.aaronrogers.com/nintendods/

#67200 - MrD - Mon Jan 16, 2006 5:05 am

Woo-hah!

Nicely done! :D

(PS: It's a chisel!)

That's odd... after winning #1, the game restarted. Every time I try to select a puzzle, and then I press start. I get the next picross array up, and then it just fades and restarts.

It also copies the best time I had for #1 onto any puzzle I try to play.

(PS: It's a rocking horse! Crikes that was hard.)

It's done the same thing with the rocking horse puzzle, and the game froze completely when I tried to play #2. :(
_________________
Not active on this forum. For Lemmings DS help see its website.