Join the Discord! https://discord.gg/NUKWP6UCHF
Play the game! https://goel25.github.io/tritris
Tetris with triangles!
Home Page: https://leognon.com/tritris
License: MIT License
Join the Discord! https://discord.gg/NUKWP6UCHF
Play the game! https://goel25.github.io/tritris
In modern tetris games, the time resets if a piece is modified (spin, laterally moved) while it's touching another piece on the lower bound. Adopting that pattern here would make this game feel less clunky
Sometimes when I try to move a piece to the left or right when it's already touching the ground it doesn't work but instead places itself in the next "tick". This doesn't feel really right. Maybe a timer or something doesn't get reset properly. I could not really isolate the exact thing that feels off yet.
I'm using Firefox.
It should be possible to hard drop tiles like in Tetris 99, for example, by pressing the up-arrow.
I might contribute to that in the future.
The Tritris page seemed to be unresponsive, so I opened the dev tools and found that I was getting this error every time I clicked a button on the page:
p5.min.js:3 Uncaught TypeError: Cannot read properties of undefined (reading '_setProperty')
at a.default.Element.<anonymous> (p5.min.js:3:251658)
(anonymous) @ p5.min.js:3
Maybe you can add multiplayer support. Maybe this should be done once the game is much further in development and once there's an actual community around the entire game.
I imagine the multiplayer mode like in Tetris 99 or Tetris Effect where you can send cleared lines to your opponents. Wonder how you would clear the received lines though. I can imagine this getting really complicated.
It would be much more relaxing to play the game with a controller. Maybe it is possible to add support for controllers.
I've been playing the game for a bit. I still don't understand when a piece is going to phase and when it isn't. I often think it will and it doesn't, or vice versa. I've read the How to Play section on Phasing, but I still don't get it. For example, what does this mean:
Instead, all phases can be performed by holding each key (rotate can now be held to become "charged").
What is "each key"? What is "charged"?
Or this:
A piece will always move to the next location as long as the next location is valid (no intersecting triangles).
It says "no intersecting triangles", but the examples show pieces phasing through intersecting triangles to get to a lower position.
There's also mention of holding the rotate key. But when I press the key down, the rotation happens immediately. It doesn't happen on key up. So do I press the key, get a rotation, and then hold it?
It could be helpful to add touch controls so people can play on mobile.
I'm not sure what a good control scheme would be, or how it could be implemented in a mobile browser (without the user accidentally scrolling and zooming).
If anyone has experience with this type of thing, I would love some help!
There's no license on this project. Could you add a license? A common one is the MIT license.
I'm on a QWERTZ-Keyboard and it's really inconveniant for me to use the X and Z buttons for rotation. On QWERTZ keyboards Y and Z have switched positions. I think you should be able to use Y or Z to rotate in the one direction and X or U, for example, for the other direction.
It would also be nice to be able to use W, A, S and D or the Arrow keys for movement.
I guess you use Z and X as buttons because they are next to each other? Unfortunately that isn't true for all keyboard layouts. In Germany we have Y and X next to each other. In France it is W and X.
https://en.wikipedia.org/wiki/QWERTZ
I would suggest to either move to X and C, or map Y W and Z with the same keybinding.
The three single triangles are effectively one tile because they always come
together, but the lookahead display treats them as three seperate tiles. The
problem with this solution is that you don't know what the actual next tile
is when you have to place the first and second part of the triplet. Also you
might get multiple triplets in succession and lose count after the fourth or
fifth single triangle.
My suggestion is to increase the lookahead to three or four tiles and also
treat the triplet as one tile in the lookahead display.
That means if the triplet is the next tile, show three single triangles in
the first lookahead display. While you place the first part of the triplet,
show two single triangles in the first lookahead display. While you place the
second part of the triplet, show one single triangle in the first lookahead
display.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.