Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: Zera on March 21, 2010, 05:49:25 pm

Title: Trominoes
Post by: Zera on March 21, 2010, 05:49:25 pm
(http://img138.imageshack.us/img138/5865/trominoes.png)

"Trominoes" is an idea I had for a drop-and-arrange puzzle game based around the principle of three-squared polyominoes. This is not quite a Tetris clone, but it's vaguely similar. Tetris is based around the same principle using tetrominoes, which are four-squared pieces. The objective of this game is to align three colored squares vertically, horizontally or diagonally. Unlike Tetris, you cannot clear lines. There are three different colored-squares, each appearing randomly in three-square formations:

(http://img215.imageshack.us/img215/9475/image2df.png)

The gray square has the most common appearance, while the white square has the second most common, and the darker square has the rarest appearance.

Play takes place on a 9x11 grid. Formations can be freely rotated in any direction. When the grid fills and obstructs the appearance of any additional formations, the player loses.

"Free" squares (in formations U and L) will break away from the rest of the formation when placed, allowing them to be arranged independently. There is also a gravity algorithm which allows orphaned squares to fall into niches when surrounding squares are cleared from the board.

If the player clears 5 squares of the same color simultaneously, (for example: in X or + patterns) then all squares of that color will be removed from the board. (mechanic borrowed from Tetris Flash) Squares that are cleared as the result of gravity-chaining will provide an accumulating score bonus.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 21, 2010, 06:37:27 pm
Mhmm interesting, it looks like it could be quite fun for puzzle game fans ^^
Title: Re: Trominoes
Post by: ztrumpet on March 21, 2010, 06:38:28 pm
Wow, that's a cool idea!  I just have one question: Is it two players on one calc, or does the screenshot show it when it's linked?

Excellent idea as always, Zera! ;D
Title: Re: Trominoes
Post by: Builderboy on March 21, 2010, 06:48:37 pm
First off, looks very very awesome and has looks to be very addicting when it is released! ;D

Second off, what is this being made in?  I Assume asm because it has 2 player?

Third off, to ztrumpet quigibo is working on axe right now ;-)
Title: Re: Trominoes
Post by: DJ Omnimaga on March 21, 2010, 06:49:08 pm
Ztrumpet you mean Zera, right?
Title: Re: Trominoes
Post by: ztrumpet on March 21, 2010, 06:52:18 pm
Wow, I was still "on a high" from the new version of Axe. :)

Sorry about that Zera!  It still looks awesome and is an excellent idea! ;D
Title: Re: Trominoes
Post by: Zera on March 21, 2010, 06:55:32 pm
I suppose it would be a 2-player linked game. I can imagine the difficulty of trying to manuever with a single calculator...

No idea about the coding language. It's just a concept. If someone *wants* to code it, they're welcome to do so in whatever language they think is suitable.
Title: Re: Trominoes
Post by: Gale on March 21, 2010, 07:01:21 pm
excellent idea!! i can't wait to play it!
Title: Re: Trominoes
Post by: DJ Omnimaga on March 21, 2010, 07:11:15 pm
I suppose it would be a 2-player linked game. I can imagine the difficulty of trying to manuever with a single calculator...

Yeah x.x, I did such game once and it was hectic cuz the keypad is so small x.x. Just computer games where two people use the keyboard at once are hectic to play.

Language-wise, since it looks like 4 level grayscale support in Axe is too slow (having to cycle through tilesets and refresh the tilemap every frame) and that in xLIB/Celtic, only the static stuff can be grayscale, the rest monochrome, I would say z80 assembly for now.
Title: Re: Trominoes
Post by: Zera on March 21, 2010, 07:28:49 pm
Well, the current assets aren't set in stone. If it can be pulled off with fewer grays, then whatever works is fine. My only concern would be representing each of the three color types.

Here is a mock-up only using one gray:

(http://img263.imageshack.us/img263/5865/trominoes.png)
Title: Re: Trominoes
Post by: DJ Omnimaga on March 21, 2010, 09:15:33 pm
mhmm, at 3 level, it could maybe be feasible, not sure, but I think it could. Once the blocks are stuck on the floor, though, there might be a flash occuring when storing them in the screen. Same would probably go for the score. Basically, the game would have to render only two gray things at once. First, the

Btw for some reasons I kinda like the 2nd mockup better, I guess it could be because of the details, though. There would probably need to be some major thinking before attempting to pull this off using Axe. In BASIC, grayscale will be impossible with linking ability, because sending a variable will freeze the grayscale for about half a second everytime, due to the slow Asm( command. If Celtic III had linking capabilities like ZCOM, it could probably be fast enough, though. I think such project might be best in ASM or to a lesser extent, Axe x.x
Title: Re: Trominoes
Post by: Juju on March 21, 2010, 11:23:21 pm
That thing looks cool, I think that game obviously need Z80 ASM because, by definition, it's the fastest. Can't wait to see it in action.
Title: Re: Trominoes
Post by: Builderboy on March 21, 2010, 11:34:16 pm
I could see this being possible in axe.  The power of the greyscale will have to be proven first though.  I think the speed of asm is mostly needed when doing things like multiple objects and crazy stuff like greyscale :P
Title: Re: Trominoes
Post by: trevmeister66 on March 21, 2010, 11:38:09 pm
I think if you limited the greyscale to only the little blocks, and have the rest of the screen B/W, then I feel like there's a better chance it could be done in Axe. Otherwise, I think itll need to be ASM
Title: Re: Trominoes
Post by: DJ Omnimaga on March 21, 2010, 11:38:58 pm
After thinking, In TI-BASIC+xLIB/Celtic, the game design would most likely have to look like this:
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 12:00:51 am
After thinking, In TI-BASIC+xLIB/Celtic, the game design would most likely have to look like this:

That's one way to make all the blocks uniquely identifiable. The black and semi-black blocks are still a bit too ambiguous, though.

I remember Tetris Flash had a similar problem when ported to the GB. The developers decided to instead draw patterns in the blocks, as opposed to using colors. Since the blocks are 4x4, that wouldn't really be feasible.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 12:03:54 am
Yeah, that's the issue I had. The gray block equivalent would have to be redone in a different way x.x
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 12:05:29 am
Those could, instead, be represented as circles. It might look kind of silly, but it would definitely disambiguate them. That's just one idea off the top of my head, though.
Title: Re: Trominoes
Post by: Builderboy on March 22, 2010, 12:09:48 am
I actualy like that idea, you could even do different shapes for all of them if you wanted, like circle plus and square
Title: Re: Trominoes
Post by: Juju on March 22, 2010, 12:10:50 am
Good idea, Zera. Thought of a half-black square. That could be triangles, also. With that we could create up to 6 types of blocks: black/white squares/circles/triangles?

EDIT: Plusses, half-squares, etc., name them. And I got ninja'd. :(
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 12:15:04 am
I might try to check if there couldn't be possible sprite designs that would fit for the gray blocks
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 12:17:57 am
I didn't want to have more than three types of blocks, though. Since the game is based on trominoes, 3 is an important number: three squares per block, three types of blocks... If you add more to it, it kind of loses its theme. (that, and the difficulty would substantially increase with each new type of block that's introduced)

This is what I was thinking with DJ's idea:

(http://img204.imageshack.us/img204/8954/image1wm.png)

Replacing the solid-black blocks with circles also disambiguates areas that would otherwise have a ton of black pixels. Since he added a white dot to the other black squares, that also helps out.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 12:50:58 am
that actually looks pretty good ^^

Basically, every loop, you would just need to display 3 8x8 sprites (each containing one of the 3 squares composing the block), and quickly update the grayscale. Because the grayscale might flicker while the 3 sprites are displayed, we may be forced to update the grayscale after displaying each squares, though, meaning when they are moving around, it's inevitable that they will flash (especially the last one to be displayed)

Once they reached the ground, they would be stored in the screen content and in a matrix depending of what type of square they are. At this point, the game score would also be updated (sprites if custom fonts and text if default fonts).

The major issue still remains link-play, though. Unless CelticIII adds linking routines, just that part kills any hopes for this project to be feasible in BASIC.
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 02:35:03 pm
I should probably elaborate on a few more details about gameplay...

Unlike Tetris, there is no speed level. Blocks will always drop at the same speed. The only challenge against the player is the accumulation of squares in patterns that are difficult to clear. The actual "quest" mode would consist of a series of levels with predefined squares on the board. Generally, the more difficult the level, the more squares would be stacked on the board from the start. At certain heights, it would be difficult to manuever new formations as they drop.

Versus mode would allow the player to define the starting conditions, in this sense. There wouldn't be multiple levels, but a single round of play with a user-specified amount of pre-existing squares. (if any) The objective during versus mode is to survive. In this mode, scoring 5-square matches will incur a penalty against the opposing player: A solid line will appear at the bottom of their board, slightly raising their elevation.  (up to 4 lines total may be incurred per player) For every gravity-chain a player scores, the opposing player receives a solid I block. This block cannot be removed from the board under any conditions, and an infinite number of them can be incurred.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 02:38:06 pm
Aaah I see.  What should be the main speed, approximately?
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 02:42:57 pm
Probably something like: Lower block 4px / second

I'm only estimating this in my head. Not sure how quickly that might actually play out.

You know, if we're only going to use one gray, and it essentially can't appear in the actual playing board anyway, then why not just go monochromatic?

(http://img87.imageshack.us/img87/5865/trominoes.png)
Title: Re: Trominoes
Post by: Gale on March 22, 2010, 05:16:16 pm
monochromatic looks good to me :D

i have to admit the circles look kinda out of place through. rather than circles, what about checkered (alternating pixels) squares? wouldn't be grayscale, but wouldn't be black either
Title: Re: Trominoes
Post by: Zera on March 22, 2010, 05:35:00 pm
monochromatic looks good to me :D

i have to admit the circles look kinda out of place through. rather than circles, what about checkered (alternating pixels) squares? wouldn't be grayscale, but wouldn't be black either

Wouldn't fit. The tiles are only 4x4px. The checker pattern would literally only consist of two black pixels in a / shape. Triangles can't be drawn in a 4x4px space for that matter, either. There is a very finite number of possible designs with such small blocks. I think I just used about half of them. :P
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 11:23:26 pm
I kinda like the circles, actually
Title: Re: Trominoes
Post by: Builderboy on March 22, 2010, 11:32:00 pm
I think i would go with circles, filled circles, and squares.  The biggest issure you would have is making sure they don't blur together, and this way they all have some white in them :)
Title: Re: Trominoes
Post by: DJ Omnimaga on March 22, 2010, 11:38:03 pm
I think we need to not drift away from the original game too much either, though. I think it's supposed to be some port/clone of the original, after all.
Title: Re: Trominoes
Post by: Builderboy on March 22, 2010, 11:44:37 pm
Mmm is this a port?  I can't find any references to it on the web, and i was under the impression that it was an original idea (if inspired by Tetris a bit)  What say you Zera?
Title: Re: Trominoes
Post by: Zera on March 23, 2010, 01:35:08 am
Oh, no. It's not a port of anything. It's based on some ideas from Tetris Flash, (in fact, some mechanics are also borrowed from Columns) but is otherwise an unrelated game. I can understand the confusion, since I compared it to Tetris about a hundred times. It's just easier to reference existing games as examples of specific gameplay mechanics, as opposed to explaining them in unique details.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 23, 2010, 01:37:06 am
really? I must have misread one of Zera post x.x
 I was sure this game was made for another console/platform or something x.x, my bad. I guess that allows more freedom, though ^^
Title: Re: Trominoes
Post by: Zera on March 23, 2010, 01:38:19 am
Well, it *does* look strikingly similar to Tetris. I guess I was a little too close to Tetris with the graphic design.
Title: Re: Trominoes
Post by: DJ Omnimaga on March 23, 2010, 01:39:44 am
Oh I meant I was sure "Trominoes" itself was made for another console before.
Title: Re: Trominoes
Post by: Zera on March 23, 2010, 01:53:58 am
Could be because it sounds similar to "dominoes" - which, incidentally, are also polyominoes.

Kind of funny that I mentioned that, since I was recently learning how to play dominoes. ("All Fives") For some reason, that game seemed really complicated. Took me 40 minutes just to understand the mathematical parts. :-[

(then again, anything involving math tends to be my bane)
Title: Re: Trominoes
Post by: ztrumpet on March 26, 2010, 07:54:37 am
I like the filled circle, circle, and box idea.  I think that would look the best. :)

I like how this sounds!  Hopefully someone will make this sometime. ;D
Title: Re: Trominoes
Post by: DJ Omnimaga on March 26, 2010, 09:34:06 am
Oh welcome back Ztrumpet ^^