Picross Lite

9 01 2008
Picross Lite - Title screen

I’m not sure for how long I completed this FlashLite game. But I’m sure it’s pretty much longer than it should for a simple game like Picross (ehm.. like ~2.5 weeks?). The main problem I had for developing this game was that I felt sorta reluctant to go back to previous versions of ActionScript. As you might know, FlashLite only supports at the most AS2 with Flashlite 2.x and Flashlite 3. While Flashlite 1.1 uses AS1.

I was sure I won’t touch AS1 so Flashlite 1.1 was not my venue. But coding in AS2, from having the pleasure of AS3, was also a setback for me. Mentally, I guess. I’m such a stupid idealistic perfectionist, so I had to take the time to chew AS2 and familiarize with the API.

Since I’m relearning something, I thought I’d pick a game that won’t need too many effort for programming, but know that it’s fun to play and also unique. Well, at least unique in Playyoo.com as this is an attempt to enter their FlashLite gamedev competition. Deadline is Feb 15th 2008, and they’ll be judging by how many downloads your game is going to make. Quite frankly, having a game submitted earlier makes it have the advantage of having more downloads. Being optimistic, I hope my game could be in the top 20. I’m sure it won’t beat the #1 game which is a simple block-matching game (ala tetris, but with 2 blocks only) as it has more than 100 downloads already.

List of puzzles

Basically the game is a simple picross game, with a total of 30 puzzles in it. The board is static with 8 columns and 9 rows. I kinda realized I could make it start with something like 5 x 5 for the easy ones, and 6 x 7 for medium and then 8 x 9 for hard, but it was too late. I’ll have to modify the editor (later on that ;) ) and modify a lot of things, so I’ll just save it for a ‘deluxe’ release. Clues are also ’static’ with a maximum of 3 layers deep per side (3 for the rows and 3 for the columns). Which means, they’ll be only a maximum of 3 and a minimum of 0 group dots. So the level distribution is, “easy” with 1 layer of clues, “medium” with 2 layers, and “hard” with 3 layers.

In-game

Each puzzle you start with will be timed, and each puzzle has an ideal time hidden that’s used to calculate the time bonus score. Basic scores are static where 100 is for the easy puzzles, 200 for medium and 300 for hard. Total score is basic score + time bonus score. If you can solve a puzzle sooner than ideal time, you get big bonus of score, or else you get a minimum of 10 for time bonus score. Score submitting is done when you decide to quit a game session. And you can quit anytime, no pressure involved. Although not having all puzzles solved means small scores :) .

Solved pop-up
How it looks like after solved

Since playyoo provides a template FLA file to use for submission, I was definite to not use haXe this time :) . But it turns out not all that bad, especially I eventually implemented the ‘framework’ I had built for myself for SoM to PicrossLite in AS2. Not exactly the same, but had reminiscence of it. I also had it all in classes so FLA file for the game frame was completely clean with a single line (not including #import ;) ). I’m pretty satisfied with the process.

Dialog before quitting
On submitting scores

The editor, on the other hand, was coded in haXe as I wanted to use ScreenweaverHX for load and save feature. It was a simple editor, merely as long as it functions by the visuals but not too degrading :) . Luckily I had made several UI classes for BarnyardTactics (this frozen multiplayer tactics game project in haXe pre-SoM) so no problem with UI. Save and load was also simple, I just wanted the editor to be able to parse and ’serialize’ the level pattern which then is placed in a file. Once there, I could just copy and paste in to the AS2 code, with little modifications (added an expression to insert the pattern to an array). I know, needs a LOT of improvements, but at least making the levels was really fun :) .

EditorLoading dialogOn editing

All in all, I came to discover it wasn’t that bad coding in AS2. It had OOP already so I wasn’t feeling to much alienated, plus there are several advantages (although it could be also disadvantages by code-aspect) where you can setup the UI and place MCs or TextFields with instance names and just access it directly from code, compared to building everything by code. It does somewhat speed up things. Well if we’re talking about speed in development, you can actually speed code in Flash if you want to. Emanuele Feronato has several tutorials on it. But me, again, I’m a stupid idealistic perfectionist and I can’t let my code be so ‘hacky’ like that :) .. Not that having ‘hacky’ code is bad.. it depends on yourself, I’m sure :) (the ability to decipher your own code when a bug is detected).

I hope I get good response for this, and I’m sure I’ll be looking closely on this (mobile) market. I’m planning to do a sponsorship game this month and after that, hopefully work on several flashlite games and monetize them as well. Mobile market looks stabil and closures are emerging (this years IGF includes mobile categories). Plus, it’s challenging developing for a gadget, the constraints of screen dimension and user inputs. It has a tingling feeling :D .

Preview the game from playyoo.com, or from this direct link.
If you have a flashlite 2.x enabled phone, I’ll be very thankful for downloading my game. Please give any comments if you also will :) . Oh, and try shooting for the highest score ;) .


Actions

Information

Leave a comment

You must be logged in to post a comment.