So what is the closest to TGM on a portable?

Thread in 'Discussion' started by Ezzelin, 1 Sep 2006.

  1. Well, suffice to say, I, like many others I think, like the TGM style of Tetris play. Namely, its rotations, lack of hold, Sonic Drop, quick left to right movement, etc. I'm fine when I'm at my PC, as I have a number of options for this style of play. But when I use my DS, I'm limited. I'd like a fast, modern Tetris game that doesn't have all the flaws of Tetris DS. I'd love to play Lockjaw: The Overdose / TOD, but the whole drug effect stuff interferes with my enjoyment. My usual games that I currently play are Tetris DX for the GBC, and Tetris 2 + Bombliss on the NES (via emulators). Both of which have good points, but are lacking in others. Note: this can include games which might not have been portable originally, and homebrew. Anyone have any ideas?
     
  2. Apparently there's a good homebrew one for Japanese cellphones called "Arika style" or something, but I haven't actually heard a first hand account. Mostly though we're pretty much out of luck. Though I've considered a laptop just for this purpose....
     
  3. tepples

    tepples Lockjaw developer

    Glad I've convinced you to say no to drugs [​IMG] But seriously, if you have devkitARM, you can go into blo.c and #define USE_EFFECTS_AT_ALL 0 and recompile TOD; what remains is largely a TNT clone.


    What you really want is Lockjaw DS, right?
     
  4. Thanks, I actually downloaded devkitARM last night and did just that. I disabled the effects and changed the background. Very nice, now I'm just going to try to mess around a bit and see if I can disable some of the other features (hold, block breaking/gravity, 3 piece preview, etc). But I'm so happy that I finally have a portable Tetris that I can practice zanga moves on. One thing that I notice is different is the rotation compensation. I can't seem to twist pieces into holes the same way I can in TGM. Are there any plans to add this? I wouldn't want full SRS, but ARS would be great. Oh, and is high score saving working right now? I saw some stuff in the code related to that, but didn't see it in game. Thanks!
     
  5. tepples

    tepples Lockjaw developer

    Hold and next: #if 0 out the /* swap button: L, A+B, or B+A */ section, and stop the loop at 1 instead of 4 in DrawNext().

    Gravity: Change MarkCarbon() to replace flood fills with assigning a constant value to each row found to contain at least one block, and take out the part related to spinMove.

    Compensation aka wallkick is in TryRotate(). Right now it uses SRS orientations with ARS-ish compensation (reverse frankentetris), just like Tetramino for NES. You can set up ARS rotations by editing gXBlocks and gYBlocks to eliminate the 4-position S/Z/I and move the flat-down phase of T/L/J down by 1 space. Then in the code for STATE_GET_NEW_PIECE, set p.curFlip = 2 instead of 0.

    High score saving doesn't work in TOD. I got distracted by school work before I could add it.
     
  6. Thanks for the reply! I'll probably try some of that this weekend. I knew I forgot one though... I also wanted to disable the 4x4 silver/gold blocks. It's probably just a function I need to comment out somewhere.


    One thing that wasn't working right last night was the background .bmps. I tried to replace the default one with a black background, but it showed up as gray with a strange pattern in game. It worked alright, but was not what I was expecting. I used GIMP to edit the .bmp , which I believe kept the indexed nature of the image. The file size of the original .bmp and the new one were the same as well.
     
  7. OK, so I'm stuck... I can't figure out how to disable gravity. I've spent a bunch of time on it, had a programmer friend take a look at it, etc, but we can't figure it out. I have done lots of the other tweaks, though. I've:


    Eliminate effects

    Make only one piece in the next slot

    Got rid of the 4x4 blocks (although I just did this by changing g.tntMode to 0, which seemed to change the color of the pieces, which was strange. Is there a better way? What all does changing tntMode do?)

    Got rid of the hold piece

    Removed the background music (it was nice, but I just concentrate better without music)

    Got rid of T-spin detection

    Changed the breakapart to be the Tengen mode


    I think I've figured out how to change the rotations fine, and will do that soon. And... I figured out that the .bmp was being read fine, but that there was a texture overlayed on it on the playfield. Is there a way to change this texture? The other main thing I'd like to change is to have the game reset the lock timer (which I think is dropTime, or maybe stateTime?) when a piece falls down one space. Currently, it doesn't seem to reset this timer when a piece falls down one space, which makes moving pieces around on the stack a rather tough procedure. I've also noticed that the game is limited currently to moving the pieces one square per frame. I'd like to remove this limitation, but I imagine that this would be a rather major change, perhaps not within the scope of this application. Perhaps Lockjaw DS would be a great idea after all... I'd be willing to help, as much as I can.
     
  8. tepples

    tepples Lockjaw developer

    tntMode enables square mode and sets the piece colors. The pieces and their colors are generated in GetNewPiece(). If it's turned off, you get the piece generation from freepuzzlearena Tetanus, which randomly colors each piece blue or yellow, and a row of all blue or yellow is worth double. You can modify GetNewPiece() to always use the TNT rules.

    initvram.c, by "Set up semitransparent tiles for the playfield backdrop"

    The lock delay amount is dropTime. The timer is stateTime.

    A lot of this lock reset funny business was intended to thwart the technique of ridin' spinnaz, which I first saw when fighting the CPU opponent "Nachanca" on The New Tetris. This game used "move reset", but if you could get a T piece spun 360 degrees within one block fall time plus one lock delay, wall kick would push the piece up by 1 block and then the lock delay would reset. The 5 second limit (as seen in TDS multiplayer) wasn't yet in effect in that product, so Nachanca used the technique to avoid top-out indefinitely.
    Code:
    // Try replacing this:
           p.stateTime += dv(2 * DIFFICULTY,
                    p.lines + p.handiLines + 2 * INITIAL_LEVEL);
    // With this:
           p.stateTime = retrace_count + dv(2 * DIFFICULTY,
                    p.lines + p.handiLines + 2 * INITIAL_LEVEL);
    
    Yes it is. I had not seen any 1G, let alone 20G, in the games that I had played before making Carbon Engine.

    Carbon Engine, the game engine of TOD, was intended to implement what was my vision at the time of what a tetromino game was supposed to be, colored largely by Tetris Blast and The New Tetris. When Tetris Worlds came out, I rejected it as non-canon because it just didn't match with my vision and it didn't match most reviewers' visions either, and also because the game felt laggy even without SRS.

    But when Tetris DS came out and confirmed the rotation system of TW as canon, I began to experience cognitive dissonance. It was resolved when I found TC and Planet GameCube's interview with Henk Rogers:
    This was the seed for Lockjaw Engine.

    Do you have the DS compatible homebrew hardware?
     
  9. Didn't Kitaru make a PSP TGM clone?
     
  10. Ai

    Ai

    No, Kitaru developed a TGM clone for GBA. It's called KGM, and I don't think he has worked on it in a very long time. He can tell you more himself.

    There was this for PSP, unfortunately it was never released. Other members can tell you more about the circumstances since I don't know about the details. On NDS there's also a homebrew clone called NDS TGM which emulates many TGM modes. Last version of the game was from 08/15/2008. It was very popular back then and it's still played by some people since it's good for practice. ^^
     
  11. there are descent gba emulators for psp.
     

Share This Page