Menu

Tree [baf1e4] master /
 History

HTTPS access


File Date Author Commit
 bin 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 deps 2014-02-14 Alexandre Dantas Alexandre Dantas [dbdf93] Added very basic commandline argument parser
 doc 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 src 2014-03-21 Alexandre Dantas Alexandre Dantas [cb4eee] Remade Help Windows (had nsnakes helps, oops)
 .gitignore 2014-01-28 Alexandre Dantas Alexandre Dantas [c583f5] Basic Ncurses layout started
 AUTHORS 2013-03-04 Alexandre Dantas Alexandre Dantas [ad8812] Created AUTHORS file and credited karfield
 BUGS 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 COPYING 2013-02-12 Alexandre Dantas Alexandre Dantas [b6c975] Project's very mature now. Licensed to GPLv3, m...
 ChangeLog 2014-03-08 Alexandre Dantas Alexandre Dantas [4e1be2] Fixed tiny bug that made impossible for yetris ...
 Doxyfile 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 INSTALL.md 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 Makefile 2014-03-21 Alexandre Dantas Alexandre Dantas [baf1e4] Bumped 2.1.0
 README.md 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents
 TODO 2014-02-14 Alexandre Dantas Alexandre Dantas [7fe464] Bumped to 2.0.0, updating several documents

Read Me

yetris

Customizable Tetris(tm) with textual interface.

screenshot

Introduction

yetris is a customizable Tetris(tm) clone for the terminal.
It has some features found on modern adaptations and aims
to please both casual players and Tetris(tm) enthusiasts.

It has full textual interface, check out these features:

  • Colors and animated interface;
  • Customizable gameplay, with several game mode
    possibilities: ghost piece, hold piece, slide left/right,
    invisible and custom initial level and noise (like
    the old B-mode).
  • Customizable interface: up to 7 next pieces, toggle
    game borders, center screen, modify game random algorithm...
  • You can change settings on in-game menus and options;
  • Game profiles: settings are automatically saved and
    restored at startup. Multple profiles supported.
  • Game statistics: cleared lines, individual and total pieces...

yetris was originally developed in C, now reprogrammed in C++
with ncurses. It runs on pretty much every terminal around here,
but it's limited to POSIX systems.

Screenshots

main-menu

profile-menu

single-player-menu

options-menu

b-mode

help

pause-menu

game-statistics

Controls

Key Action
Left, Right Controls the piece
Down Soft-drop
Space Hard-drop
c Holds the piece
z, x Rotates piece counter-clockwise/clockwise
p Pauses the game
q Quits the game at any time
r Restart game
h Show help window

Usage

Briefly, the following shell commands should configure,
build and install this package:

$ make
$ [sudo] make install
$ man yetris

By default yetris is installed at /usr/games, with the
settings and scores at ~/.local/share/yetris. To
see how to change those, go to the file INSTALL.md.

If you want to test the game before installing, do:

$ make run

The Makefile has lots of toggles and switches, check out
it's first lines.

Dependencies

To build yetris from source, you need the
ncurses developer library libncurses5-dev (>= 5.7).

Note that this is not the one that comes by default
with your distribution.

To get it, use your favorite package manager.
An example on apt-based systems:

$ apt-get install ncurses-dev

Hacking

There's another README.md on the src/ directory.
In there I try to explain the source and how could you play
with it.

If you want to contribute,
there's a lot we could do together!
Don't hesitate to contact me, any addition is welcome.

The BUGS and TODO files are nice points to check out
what we could do.

Also, if you're like me and love ncurses games, with textual
interface and stuff, the src/Inteface/* files could be of
great use. I tried to make them very flexible so you could
just insert them into a project without too much change.

Contact

Hello there, I'm Alexandre Dantas (kure)!

Thanks for downloading and playing this game.
I'm glad you had interest on this project.

You can send me comments, bugs, ideas or anything else by email.
And if you have time, please visit my blog!

I'd appreciate any commentary - even if it's just
"Hello, I play your game!".

Credits

Huge thanks for all the people that contributed to the project
(in order of appearance):

  • Karfield fixed a great
    mistake regarding typedefs and inclusions.
    Thanks to him, yetris now works on MacOsX!
  • Rodrigo Rebello fixed some
    resource leaks and optimized the game by removing
    unnecessary fflush() calls.
  • Damon McDougall pointed out
    a serious issue
    on the building process. Thanks to him yetris can be installed
    on BSD
    !

Also, some miscellaneous credits:

  • Yetris' logo uses the Crawford2 Figlet Font.
  • Thanks, Nicolas Devillard! Your
    iniParser helped me
    a lot!
  • I'm also using
    clibs/commander,
    simples CLI argument parser I've ever seen.
  • Emacs, Awesome and Arch Linux, the Ultimate Triforce.
  • The OneUps kept me awake
    on several nights. Their music is great, specially Volume 2!

License

yetris - Customizable Tetris(tm) on the console.
Copyright (C) 2013-2014 Alexandre Dantas (kure)

yetris is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see http://www.gnu.org/licenses/.

githalytics.com alpha

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.