johnbrynte / tretris

Tretris is an ordinary Tetris where the blocks are rotated in the 3rd dimension.
Apache License 2.0
0 stars 0 forks source link

Easter egg: piece of abomination #1

Open johnbrynte opened 9 years ago

johnbrynte commented 9 years ago

Testade kort med att slumpa fram bitar inom 5x5x5 block spacet för att få glitchiga block, som dock fortfarande går att rotera som vanligt. Antingen kan de komma med väldigt liten sannolikhet och helt utan förklaring (som om det vore en bug), eller så kan det vara en idé för multiplayer eller ett visst singel player mode.

antonaut commented 9 years ago

Låter askoolt, ska man tvinga blocket att vara sammanhängande också? Eller är det okej att vilka block som helst inom 5^3-blocket är "tända". Spinoff: Om man tänker sig ett JÄTTEBLOCK (får kanske inte plats i spelet, men vore koolt). Kanske man kan göra ngt i stil med detta, fast 3D för att slumpa fram ngt... http://en.wikipedia.org/wiki/Maze_generation_algorithm

johnbrynte commented 9 years ago

Jag provade tidigare med att bara slumpa fram bitar. Det blir iof ganska roligt, speciellt när de blir 5x5x5, men skulle absolut vilja prova med bara block som är sammanhängande. Du får gärna kolla på en sån algoritm! Här är det jag skrev i createNewBlock():

block.matrix = new Array(5);
for (var i = 0; i < 5; i++) {
    block.matrix[i] = new Array(5);
    for (var j = 0; j < 5; j++) {
        block.matrix[i][j] = new Array(5);
        for (var k = 0; k < 5; k++) {
            var dist = Math.sqrt(Math.pow(i - 3, 2) + Math.pow(j - 3, 2) + Math.pow(k - 3, 2)) / 3;
            // ju längre från mitten desto mindre sannolikhet att det blir ett block
            if (Math.random() > 0.9 + 0.08 * dist) {
                block.matrix[i][j][k] = 1;
            } else {
                block.matrix[i][j][k] = 0;
            }
        }
    }
}
// fyll mittenbiten
block.matrix[2][2][2] = 1;
antonaut commented 9 years ago

Hehe, fick en 'rymdskeppsbit'. Startade en ny branch och drog in cytoscape. Tänkte leka vidare där. :+1:

johnbrynte commented 9 years ago

Najs! Spännande! :smiley: