Issue 86 in nullpomino: Engine problems with rules of TGM series, and probable reason imo

11 views
Skip to first unread message

nullp...@googlecode.com

unread,
Nov 19, 2012, 10:04:55 PM11/19/12
to nullpomi...@googlegroups.com
Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 86 by farter...@gmail.com: Engine problems with rules of TGM
series, and probable reason imo
http://code.google.com/p/nullpomino/issues/detail?id=86

--- What steps will reproduce the problem?
1.use classic3 / standard-hard
2.play speed mania
3.play~play~play~

--- What is the expected output? What do you see instead?
sometimes IRS doesn't work!
although i'm one always killed by L/J Blocking of ARS..
this heppens to S/Z/T which can't be blocked on initial rotation (no so
easily at least), also all of standard-hard, not restricted to S/Z lower
corner blocking.
but this NEVER happened when i play original TGM series.
if i press a rotation key before the piece spawns, on the frame it spawns,
it hould launch IRS. not on high stack which may block IRS.
else if i press a rotation key after the piece spawns, it should rotate on
the land. not unable-to-kick places, i guarantee.
else if i press it just on the frame it spawns.. shouldn't IRS work for now?

--- What version of the product are you using? On what operating system?
tried on both v750 stable, v760d r905. win7 32bit, java 6u22 (well a bit
old but i don't think related to this problem).

--- Please provide any additional information below.
continuing progress above..
so i checked the code (GameEngine.java:2216~), got:
// rotation
boolean onGroundBeforeRotate = nowPieceObject.checkCollision(nowPieceX,
nowPieceY + 1, field);
int move = 0;
boolean rotated = false;

if(initialRotateDirection != 0) {
move = initialRotateDirection;
initialRotateLastDirection = initialRotateDirection;
initialRotateContinuousUse = true;
playSE("initialrotate");
} else if((statc[0] > 0) || (ruleopt.moveFirstFrame == true)) {
if((itemRollRollEnable) && (replayTimer % itemRollRollInterval == 0))
move = 1; // Roll Roll

// button input
if(ctrl.isPush(Controller.BUTTON_A) ||
ctrl.isPush(Controller.BUTTON_C)) move = -1;
else if(ctrl.isPush(Controller.BUTTON_B)) move = 1;
else if(ctrl.isPush(Controller.BUTTON_E)) move = 2;

if(move != 0) {
initialRotateLastDirection = move;
initialRotateContinuousUse = true;
}
}
//---
moveFirstFrame is false for TGM series. so, it doesn't seem to launch IRS
on this frame.

also, das charge on are last frame & das charge on first frame are both
false. 2 extra frames. might this also cause the DAS feeling too slow?
or when measuring DAS, it included these 2 frames delay, and being added
into DAS again when npm does simulation?

i'm wondering how speed/DAS/etc. tables of TGM series are measured, also
the rules of "allow * on specified one frame".
leaked version of TGM3 has fixed lag. if using high speed camera on real
machine, it's not easy to get game moving status of it.

sorry for bad chinglish, and please correct me if i'm understanding
something wrong.

nullp...@googlecode.com

unread,
Dec 9, 2014, 11:12:39 AM12/9/14
to nullpomi...@googlegroups.com

Comment #1 on issue 86 by farter...@gmail.com: Engine problems with rules
of TGM series, and probable reason imo
https://code.google.com/p/nullpomino/issues/detail?id=86

// 先行rotation
////////////if(versionMajor < 7.5f)
initialRotate(); //XXX: Weird active time IRS
//if( (getARE() != 0) && ((getARELine() != 0) || (version < 6.3f)) )
initialRotate();

ok wrong spot. commenting out the condition, everything (for me) returns
working fine..

(but initial das is still wrong.

--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
Reply all
Reply to author
Forward
0 new messages