For the past two or three weeks, I've been working on a Tetris game for the TI-84 Plus C Silver Edition called Tetric A. Written in assembly and a close port of my
Tetrizm game for the Casio Prizm, Tetric A is a fast, fun take on the classic arcade game. Enjoy five unique modes, from the standard Marathon mode to Cascade, Touchdown, and Sadistic. If you really want a challenge, try High Speed mode. This game is nearly complete at the moment; the screenshot below is a real screenshot taken with jsTIfied. The only missing features before I release a public beta are the following:
- High scores
- Complete Cascade implementation
- Pause
A special thanks to TIFreak8x and Jonimus from trying out an early version of the game and providing their feedback.
Looks really nice—just like Tetrizm, and I liked Tetrizm (except that it was a bit difficult to just move one column without the left/right key repeating). Too bad I don't have a CSE, but I hope to get one soon
What does "Tetric A" mean? It's pretty easy to see where "Tetrizm" comes from but I'm scratching my head here...
Kerm, this is absolutely fantastic, and what apt timing too, given that the back to school period will begin very soon. Very nice graphics too. Is this the first tetris game for the platform?
Deep Thought wrote:
Looks really nice—just like Tetrizm, and I liked Tetrizm (except that it was a bit difficult to just move one column without the left/right key repeating). Too bad I don't have a CSE, but I hope to get one soon
What does "Tetric A" mean? It's pretty easy to see where "Tetrizm" comes from but I'm scratching my head here...
I was originally going to have Tetric A and Tetric B, where B is the BASIC version and A is the ASM version. The BASIC version turned out to be prohibitive, performance-wise, so I decided to solely focus on the ASM version. I eventually released my alpha of Tetric B if anyone else wanted to play with it, but I didn't see a point in continuing to expend effort on it. Tetric is Tetris + C, where C is from TI-84+CSE (and of course stands for color), just as Tetrizm was Tetris + Prizm.
ElectronicsGeek wrote:
Kerm, this is absolutely fantastic, and what apt timing too, given that the back to school period will begin very soon. Very nice graphics too. Is this the first tetris game for the platform?
To my knowledge, it is, and I'd be lying if I said I didn't hope it brought me a fair number of TI-84 Plus C Silver Edition users.
Another milestone for cemetech, in that case! Lets hope we keep innovating as a site with this new calculator.
ElectronicsGeek wrote:
Another milestone for cemetech, in that case! Lets hope we keep innovating as a site with this new calculator.
That's the hope, both in terms of the educational programs we can write for it and the games and utilities we can adapt to the device's unique constraints (dare I say limitations?).
KermMartian wrote:
ElectronicsGeek wrote:
Another milestone for cemetech, in that case! Lets hope we keep innovating as a site with this new calculator.
That's the hope, both in terms of the educational programs we can write for it and the games and utilities we can adapt to the device's unique constraints (dare I say limitations?).
But surely the limitations of these devices are the basis, the foundation, if you will, of our community. Each limitation/constraint brings a new level of challenge to the programmer, and I think it's fair to say, at cemetech, we like a good challenge.
Here's a question for you guys. At present, [2nd] is hard drop, [up] is rotate, and the remaining arrows do what they always do. Does that seem reasonable to you guys? tifreak8x requested a way to rotate in the other direction, like [ALPHA], but I'm not familiar with that control scheme.
Use the ZTris in-game control scheme:
http://www.ticalc.org/cgi-bin/zipview?83plus/asm/games/mirageos/ztris.zip;readme.txt xt0n is hard drop, 2nd and up are CW, and alpha is CCW.
All of the computer versions I've played allow that as well.
I request that both 2nd and up rotate the piece. I like the feel of holding the calc with the thumb on the 2nd key, and find no use for immediate drop. Yet I like the ability to play with one hand that having UP be rotate gives. And yes, Alpha should rotate the other direction.
And, great work! After you ceased Tetric B, I was concerned we might not get a Tetris from you, or something... For the most part, it looks very sleek! (One non-sleek factor being: where it says "Tetric A" on the screen would be better as a sort of logo).
Edit: user-settable keys are great
I have implemented the requested key changes, including two-way rotation with [2nd] and [ALPHA] and normal rotation with [up]. I also implemented high scores, fixed the alignment of stuff on the screen, and shrunk down a few sprites with assorted tricks. Pause is implemented. I need to implement a help message on the main screen, proper cascading, and a flashing High Score message when you get a high score.
My only request is make it ZTris linking compatible. I'm sure CN2 support is planned once you have that ported to the 84+CSE but with how many calcs have ZTris compatible tetris games you have to allow the multiplayer awesomeness continue.
TheStorm wrote:
My only request is make it ZTris linking compatible. I'm sure CN2 support is planned once you have that ported to the 84+CSE but with how many calcs have ZTris compatible tetris games you have to allow the multiplayer awesomeness continue.
Unfortunately, I'm a few bytes short of the ~8200-byte limit for OS ASM programs, so without a Doors CS CSE, it's going to be very hard for me to implement any new features. I could maybe eke out about 1KB by cutting out a set of sprites that are there for looks, but it would still be tough. Is the ZTris board 10 blocks wide, like the Tetrizm/Tetric A board?
Notice the score, it freaked out after the 64k mark.
tifreak8x wrote:
http://tifreakware.net/cemetech/IMG_0192.JPG
Notice the score, it freaked out after the 64k mark.
I knew that would happen; I just hoped no one would reach a score of 64K. It's more than it overwrote the five-digit score with a new 4-digit score (1024, it seems), so it looks corrupted. I might have to reduce the scoring for high levels in addition to making it harder. The current formula is:
Line(s) cleared: score += 3*(1+lastlines)*lines_cleared^2)*(level);
Piece dropped: score += level;
I gave her a good run. :<
Very impressive job! And that's actually 27655+65536, right?
Anyway, I have adjusted the difficulty curve and starting speed, so it starts out slightly harder and ramps up faster too. If you wouldn't mind doing some testing with the new version, I would appreciate it. Also, I seem to have discovered a bug whereby just about anything crashes after Tetric A runs. I'm wondering if I'm failing to clean up my interrupt properly or something. So far, entering the Y= menu and running ZCLT2 after Tetric A causes a crash.
Looks very impressive Kerm! Ill give it a try when i get home.
That looks amazingly beautiful. One change I'd like is for the key repeat rate to be higher. A soft power-off would be nice, too, or a save feature. The save thing might be easier, since the screen power-down and initialization code is relatively large.