Tetris Elements INI hacking: Difference between revisions

From TetrisWiki
Jump to navigation Jump to search
*>Mmm10000
No edit summary
No edit summary
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
''[[Tetris Elements]]'' stores much of the game rules, including shapes of seven [[tetromino]]es and five unused pieces and part of the [[wall kick]] tables, in an INI file for each gimmick.
''[[Tetris Elements]]'' stores much of the game rules, including shapes of seven [[tetromino]]es and five unused pieces and part of the [[wall kick]] tables, in an INI file for each gimmick.
[http://www.touch2008.com.cn 工控机]
[http://www.hyhxsm.cn 茅台酒]
[http://www.bjybjy.cn 二锅头]
[http://www.p-pass.com 防伪标签]
[http://www.mmxxy.com 热转印机]
[http://www.mmxxy.com 水晶像]
[http://www.chuxinrui.cn 奖杯]
[http://www.china-union.com.cn 干洗]
[http://www.bjypjy.com 数码快印]
[http://www.bjxzby.cn 硒鼓加粉]
[http://www.jfart.com 塑料颗粒机]
[http://www.p-pass.com 防伪]
[http://www.p-pass.com 防伪技术]
[http://www.zgczj.com.cn 高新技术企业认定]
[http://www.wanli888.com 北京洗衣公司]
[http://www.bjzhjt.com 服务器机柜]
[http://www.sj-air.com 空气净化工程]
[http://www.bjqqt.cn 国际速递]
[http://www.bjqqt.cn 国际快递公司]
[http://www.bjqqt.cn 国际快递]
[http://www.dubaotiju.com 梯具]
[http://www.zkyj.com 节能节电]
[http://www.sijing.com 冬令营]
[http://www.010qj.com.cn 石材翻新]
[http://www.bjzhiyuan.com 电器维修]
[http://www.china6888.com 北京公司注册]
[http://www.shbingluo.com 制冰机]
[http://www.bjyzcx.com 电脑回收]
[http://www.bjyspw.cn 代开发票]
[http://www.bzbql.cn 不干胶]
[http://wanlidabj.com 机打发票]
[http://www.keslon.com 电缆桥架]
[http://www.cnlfyh.com 电缆桥架]
[http://www.huojia699.cn 北京货架]
[http://www.cargoserv.com.cn 航空货运]
[http://www.cnghf.cn 会议服务]
[http://www.wangyangedu.com 小升初]
[http://huikeda.china.mainone.com 梅兰日兰UPS]
[http://www.en400.com 口语]
[http://www.hzst.net.cn Dell服务器]
[http://www.jfart.com 再生塑料颗粒机]
[http://www.cbyxgs.cn 灯光音响]
[http://www.bjyzcx.com 二手电脑回收]
[http://www.bjjds.cn 热水器维修]
[http://www.tdqm.cn 环氧地坪]
[http://www.szjlit.com/IBM.html IBM服务器] 
[http://www.china6888.com 工商注册]
[http://www.bjxrbh.com/page02.htm IBM服务器]
[http://www.bjyuantuo.cn 北京航空货运]
[http://www.bjofficebl.com 北京写字楼]
[http://www.bvu.com.cn 动画制作]
 


Like games that implement [[SRS]] correctly, ''TE'' uses bounding-square rotation, but the bounding boxes normally of size 2 and 3 are extended to 4 and 5.
Like games that implement [[SRS]] correctly, ''TE'' uses bounding-square rotation, but the bounding boxes normally of size 2 and 3 are extended to 4 and 5.
Line 99: Line 47:


This corresponds to a wall kick list of (0, 0), (-1, 0), (-1, 1), (99, 99), (-1, 2). These resemble the wall kicks for T-up to T-right from the diagram of the T tetromino in the Heboris Unofficial Expansion manual.
This corresponds to a wall kick list of (0, 0), (-1, 0), (-1, 1), (99, 99), (-1, 2). These resemble the wall kicks for T-up to T-right from the diagram of the T tetromino in the Heboris Unofficial Expansion manual.
[[Category:General Information]]

Latest revision as of 13:48, 3 January 2019

Tetris Elements stores much of the game rules, including shapes of seven tetrominoes and five unused pieces and part of the wall kick tables, in an INI file for each gimmick.

Like games that implement SRS correctly, TE uses bounding-square rotation, but the bounding boxes normally of size 2 and 3 are extended to 4 and 5.

Tetris_Classic_SINGLE.ini has 12 piece records numbered Piece00 to Piece11. Piece00 through Piece06 represent TIJOLSZ; Piece07 through Piece11 seem unused. Each piece record consists of the integer size of the extended bounding box followed by a 5x5 array describing the shape of the piece; each nonzero makes a block in that space.

This is one of two common methods used in Soviet Mind Game implementations to represent tetrominoes. The other method is to store a list of (x, y) positions of each block in the shape.

Piece00 (T) is expressed in the file as

Piece00=5,0,0,0,0,0,0,0,0,0,0,0,5,5,5,0,0,0,5,0,0,0,0,0,0,0

This might be easier to see as

Piece00=5,
0,0,0,0,0,
0,0,0,0,0,
0,5,5,5,0,
0,0,5,0,0,
0,0,0,0,0

which is

  • Piece00: T rotated 180, color 5, bounding box size 5

Likewise:

  • Piece01: I rotated left, color 1, bounding box size 4
  • Piece02: J rotated left, color 2, bounding box size 5
  • Piece03: O, color 7, bounding box size 4
  • Piece04: L rotated right, color 4, bounding box size 5
  • Piece05: S, color 3, bounding box size 5
  • Piece06: Z, color 6, bounding box size 5
  • Piece07: L trimino, color 6, bounding box size 5
  • Piece08: Solid 3x3 block, color 1, bounding box size 5
  • Piece09: Solid 4x4 block, color 2, bounding box size 4
  • Piece10: P pentomino, color 3, bounding box size 5
  • Piece11: I pentomino, color 4, bounding box size 5

PieceEntry0 through PieceEntry6 describe the spawn positions of each piece. They are interpreted as the (x, y) of top left corner of piece's extended bounding box, where the top left corner of the playfield is (0, 0). All diameter-5 pieces' entry positions are set to (2, -2); diameter-4 pieces are set to (3, -2). This is consistent with SRS spawn positions (centered, rounding to the left).

PieceRot00 through PieceRot04 seem to describe the wallkick entries of SRS (or a defective version thereof).

PieceRot00=0,0
PieceRot01=-1,0
PieceRot02=-1,-1
PieceRot03=-99,-99
PieceRot04=-1,2

This corresponds to a wall kick list of (0, 0), (-1, 0), (-1, 1), (99, 99), (-1, 2). These resemble the wall kicks for T-up to T-right from the diagram of the T tetromino in the Heboris Unofficial Expansion manual.