Difference between revisions of "Tetris Zone"

From TetrisWiki
Jump to navigation Jump to search
Line 127: Line 127:
 
{{Blue Planet Software games}}
 
{{Blue Planet Software games}}
  
[[Category:Games List]]
+
[[Category:Official Tetris games]]
 
[[Category:Windows games]]
 
[[Category:Windows games]]
 
[[Category:macOS games]]
 
[[Category:macOS games]]

Revision as of 07:03, 8 September 2019

Tetris Zone
Tetris Zone icon.png
Tetris Zone icon
Developer(s)Blue Planet Software
Publisher(s)Blue Planet Software
Platform(s)Windows, Mac OS X
Release
  • WW: February 22, 2007
Gameplay info
Next pieces3
Playfield size10 × 20
Hold pieceYes, with IHS
Hard dropYes
Rotation systemSRS
Tetris Zone title.jpg
Tetris Zone ingame.jpg

Tetris Zone was an official Tetris game for Mac OS X and was released as an Universal Binary (for Intel- and PPC-Macs). A Windows version is also available.

It was one of the first games that attempted to limit the effects of T-spins on the game, by eliminating the recognition of T-spins triples. However, singles and doubles that use the TST twist are still recognised.

In 2014 the game was taken down. The website now links to Tetris (tetris.com).

Gameplay Details

  • Playfield width: 10
  • Playfield height: 20 visible + 3 hidden (There may be more, but this game has no VS mode so there is no way to verify it)
  • ARE
    • Sprint: No
    • Master: Yes, but the duration decreases as the level increases. Ultimately it drops to zero.
    • Marathon, Challenge: Yes (0.2sec)
  • Initial actions (IRS,IHS): Yes
  • T-Spin detection: 3-corner T (However, points for TST is same as normal triple, and it breaks back-to-back chains)
  • Combo bonus: Yes

Game modes

  • Marathon: Standard marathon mode with 15 level limit. The leveling system is mostly same as Tetris Splash and Tetris Friends, so the optimal way to achieve a high score is using the Single-single combo strategy.
  • Challenge: Score as many points as possible within 10 minutes. This is a somewhat complex, longer variant of Ultra mode. Unlike Ultra mode, there is a level counter, a goal counter, and a 2-minutes level timer. When the goal drops down to zero, the level increases. When the level timer runs out, the goal counter resets. The game ends after playing 10 minutes, or when the player reaches level 31 (impossible without hacking).
  • Sprint: Clear 40 lines as fast as possible. Level is not selectable and fixed to 1.
  • Master: 20G marathon mode with 20 level limit. Level advances by clearing every 10 lines. ARE, lock delay, and line-clear delay will decrease as the level increases.

"bpr" File Hacking

In PC version, inside the "rsrc/GFX" and "rsrc/TPF" directory, you'll see many "bpr" files. These files are encrypted in very simple format. The following simple C source code encrypts/decrypts these files.

/* A simple C source code that encrypts and decrypts bpr file */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
    
/* Globals */
unsigned char *fileBuf; // File buffer
unsigned long fileSize; // File size
    
/* Prototypes */
int main(int argc, char *argv[]);
int loadFile(char *filename);
    
/* Main function */
int main(int argc, char *argv[]) {
    int i;
    FILE *fp;
    
    // Show usage
    if(argc < 3) {
        printf("Usage: %s [In] [Out]\n", argv[0]);
        return 1;
    }
    
    // Load a file
    if(!loadFile(argv[1])) {
        printf("Couldn't load from %s\n", argv[1]);
        return 2;
    }
    
    // Encrypt/Decrypt
    for(i = 0; i < fileSize; i++) {
        fileBuf[i] = 0xFF - fileBuf[i];
    }
    
    // Write
    fp = fopen(argv[2], "wb");
    if(!fp) {
        printf("Couldn't write to %s\n", argv[2]);
        return 3;
    }
    fwrite(fileBuf, fileSize, 1, fp);
    fclose(fp);
    
    // Done
    printf("Done\n");
    
    return 0;
}
    
/* Load a file */
int loadFile(char *filename) {
    FILE *fp;
    
    // Open
    fp = fopen(filename, "rb");
    if(!fp) return 0; // Fail
    
    // Get size
    fseek(fp, 0, SEEK_END);
    fileSize = ftell(fp);
    fseek(fp, 0, SEEK_SET);
    
    // Allocate
    fileBuf = (unsigned char *)malloc(fileSize);
    
    // Read
    fread(fileBuf, fileSize, 1, fp);
    
    // Close
    fclose(fp);
    
    // Done
    return 1;
}

GFX subdirectory contains all graphics, and they are stored in BMP format.

TPF subdirectory contains "TPF" files for all four modes. This game uses TPF file to define some game mechanisms. TPF resembles to "TWS" (Tetris Worlds Script) file, but it comes in almost already-compiled format so only runtime-scripts are in raw text.

External links