Lockjaw: The Tetromino Game

Thread in 'Discussion' started by tepples, 13 Jun 2006.

1. caffeine

how come my active time is different than my real time when i don't have any delays on that i know of? it's usually around five seconds shorter in a game of forty lines.

2. tepplesLockjaw developer

You claim to see 300 frames of delay in the current engine. Here I account for 240 of them:
• To check for line clears after each piece locks: 1 frame
• Entry delay: 1 frame
• Falling after line clear: 1 frame per row

3. caffeine

oh, so it's a necessary evil then. those all can't go into the same frame? or at least the first two?

4. jujubeUnregistered

tepples - if you decide to make a training mode, i think this would be really nice. when a piece spawns, the well would clear and garbage would appear with any random one of the user-defined hole shapes for that piece. the shape could appear at any random place between the left and right walls.

Code:
// I training
{
{1,0,0,0}, //|@@@ @@@@|
{0,0,0,0} //|@@  @@@@|
},

// L training
{
{1,1,0}, //|@@@@@@@ @@|
{0,0,0} //|@@@@@ @@|
},
{
{0,0,1,1}, //| @@@@@@@@|
{0,0,0,1}, //| @@@@@@@|
{0,0,0,1}, //| @@@@@@@|
{1,1,0,0} //|@@ @@@@@@|
},

// S training
{
{0,0,1}, //|@@@@ @@@@|
{0,0,0}, //|@@@@ @@@|
{0,0,1} //|@@@@ @@@@|
},
{
{1,0,0}, //|@@@@@@@@ |
{0,0,1} //|@@@@@@@ @|
}

5. cdsboyUnregistered

That sounds like a really cool idea. I could see that helping with speed training.

6. caffeine

Why do some 40 line records end in 1, 4, 6, and 9? (Take 38.71 for example.) Games that run at 60fps (and record to the hundredths place) skip 40 hundredths of a second out of 100 because of rounding since there's only 60 frames in a second (and those numbers skipped always end in 1, 4, 6, and 9). Does it have to do with how Lockjaw keeps time?

7. jujubeUnregistered

maybe numbers are always rounded down in the Lockjaw options and debrief? 16.7 ms (1 frame) is displayed as 16, but as far as the game timer is concerned it's still 1/60 seconds.

8. tepplesLockjaw developer

jujube is right: debrief.c rounds down when converting frames to centiseconds. This means the last place can take the value 0.00|000, 0.01|666, 0.03|333, 0.05|000, 0.06|666, or 0.08|333.

caffeine: Can you find any that end in 4 or 9?

9. caffeine

nope, guess not. thanks for clearing that up for me.

10. colour_thief

In case you ever notice this sort of thing elsewhere, in general computers tend to truncate decimals by default instead of rounding them.

11. Muf

Actually, as far as I know the default behaviour is ceiling, so 0.0001 becomes 1.

12. herc

no. it depends. the most common case is that you convert a floating point number to an integer, for example

Code:
float a = 4.7;
int b = a;

b will now be 4, i.e. the floor - value of the floating point number.

13. Red_Star

the skins still don't work for me in version 0.44. i have put in the correct directories in the .skin file. just to check this i have lockjaw 0.41 downloaded onto my computer as well. i have used the same directory in both of the lj configurations for 0.41 and 0.44 and the 0.41 works fine but the 0.44 keeps telling me it can't find the .bmp files and other files. it seems to be just me that has this problem. does anyone know what the problem could be?

I'll be sticking with 0.41 for now, it's not a big deal but i would like to get the newer versions to work with the skins for me eventually. So, if anyone has any ideas of what I'm doing wrong please tell me. The directories don't seem to be wrong since they work on 0.41 and i have done it with multiple skins and they all work with 0.41 and not with 0.44.

14. caffeine

when you open .44, select "skin..." and then go to the right folder. does that work?

15. Red_Star

nope. if i do it in .41 it works but not in .44.

this is the error i get when i try to open lockjaw with the skin

16. Rich Nagel

This is just a guess, but maybe the newer version(s) of LockJaw has problems with such long directory paths? Try installing LJ to a temporary directory, something simple like "CLJ", and copy your skins (editing the paths in the ".Skin" file, of course) to a subdirectory of your main LJ directory (again, something simple like "CLJ\Skins").

Dunno, but maybe this will help. If it does, then it would seem that the newer versions of LJ is having a problem with the real long directory paths.

17. Red_Star

it doesn't seem to be the length of the directory that's the problem. it wasn't a bad thought though.

I'll just keep playing 0.41 for now. I'll make sure to keep trying stuff every now and then to get the skins to work.

Thanks for the help everyone, it's greatly appreciated.

18. caffeine

feature request: replays do not post data to lj-scores.txt

19. lee n

Why not separate it? Have a local (for your own scores) and a global (for downloaded replays) ranking table. Then you can easily compare yourself to others, without cluttering your own rankings.

20. DIGITALUnregistered

I think what caffeine meant was that replay gets unnecessarily added onto lj-scores.txt for every viewing. You then end up with many duplicate entries.