Tree [29fc12] master v2.0.7 /
History



File Date Author Commit
deps 2014-03-14 Alexandre Dantas Alexandre Dantas [32af2b] Removed `iniparser` from `deps`.
doc 2014-07-14 Alexandre Dantas Alexandre Dantas [305957] Updated `Doxyfile` to Doxygen version 1.8.7 and...
misc 2014-07-14 Alexandre Dantas Alexandre Dantas [c3f646] Bumped to v2.0.6
src 2014-07-12 Alexandre Dantas Alexandre Dantas [e22834] Added a (super lame) backwards compatibility ch...
.gitignore 2014-02-18 Alexandre Dantas Alexandre Dantas [84219d] Now we have a nice snake moving around
AUTHORS 2014-07-12 Alexandre Dantas Alexandre Dantas [6af5ee] Updated `AUTHORS` contributions and `ChangeLog`...
BUGS 2014-07-14 Alexandre Dantas Alexandre Dantas [29fc12] Bumped to v2.0.7, updating some project files.
COPYING 2012-08-21 Alexandre Dantas Alexandre Dantas [8744b5] Cleaning update
ChangeLog 2014-07-12 Alexandre Dantas Alexandre Dantas [6af5ee] Updated `AUTHORS` contributions and `ChangeLog`...
Doxyfile 2014-07-14 Alexandre Dantas Alexandre Dantas [305957] Updated `Doxyfile` to Doxygen version 1.8.7 and...
INSTALL.md 2014-02-18 Alexandre Dantas Alexandre Dantas [eaa32e] Added new README.md and INSTALL.md files
Makefile 2014-07-14 Alexandre Dantas Alexandre Dantas [29fc12] Bumped to v2.0.7, updating some project files.
NEWS 2014-07-14 Alexandre Dantas Alexandre Dantas [29fc12] Bumped to v2.0.7, updating some project files.
README.md 2014-07-14 Alexandre Dantas Alexandre Dantas [29fc12] Bumped to v2.0.7, updating some project files.
TODO 2014-07-14 Alexandre Dantas Alexandre Dantas [29fc12] Bumped to v2.0.7, updating some project files.

Read Me

nsnake

Classic snake game on the terminal; made with C++ and ncurses.

menu
menu
menu

nsnake is a clone of the classic snake game that we all used to
play on our cellphones. You play this game on the terminal,
with textual interface.

Here's some features:

  • Customizable gameplay, appearance and keybindings;
  • Neat GUI-like interface with nice animations;
  • Lots of possible game modes, with scores saved for each;

Controls

The keybindings are completely customizable on the in-game menus.
The default ones are:

Keys Actions
Arrow Keys Moves the snake
q Quits the game at any time
p Pauses/Unpauses the game
h Show help during game

All user settings are located at ~/.local/share/nsnake.

Dependencies

nSnake depends on two libraries, ncurses and yaml-cpp.

ncurses

This library shows cute things on the terminal.

For nSnake you need the package ncurses dev. Note that it's not the default
that comes with your distro.

Distro Installation command
Ubuntu/Debian apt-get install libncurses5-dev
Fedora yum install ncurses-devel
Arch Linux comes by default

If you know the means to install on other distros, please tell me.

yaml-cpp

This library is used to parse YAML configuration files.

With it nsnake has a human-readable settings file; you can easily backup
and manually change it, although we the preferred method would be from inside
the game.

Distro Installation command
Ubuntu/Debian apt-get install libyaml-cpp-dev
Fedora yum install yaml-cpp-devel
Arch Linux pacman -S yaml-cpp

If you know the means to install on other distros, please tell me.

Usage

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

$ make
$ [sudo] make install

If you want to test it before installing, do:

$ make run

Then, it's simple:

$ man nsnake
$ nsnake

To change the default installation directories, check file
INSTALL.md.

Contact

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

Thanks for downloading and playing this game, I'm very glad you had
interest on this humble 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!".

Some interesting links if you're interested on nsnake:

Also, it's all over the web!

Credits

Firstly, I'd like to thank you for playing this game.
Hope you liked it!

The game was mainly done by me, but a lot of people helped me in
many ways. There's a list of them on the AUTHORS file, and you
can see people's contributions to the code here.

Throughout the nsnake development, I found very interesting sources
of ideas; small games made in C, textual games with ncurses, and
stuff like that.

I raise my hat to:

  • nInvaders: A space invaders-like game using ncurses.
  • homepage: http://ninvaders.sourceforge.net
  • comments: "Thanks for the inspiration. If I haven't installed
    this in first place, I'd never have the idea
    for nsnake"

  • pacman4console: A console-based pacman game.

  • homepage: http://doctormike.googlepages.com/pacman.html
  • comments: "The way this package was organized
    is incredible. Thanks for the
    general packaging ideas"

  • vadorz: An addicting ncurses space-invaders game.

  • homepage: http://code.google.com/p/vadorz/
  • comments: "This package is awesome, 'cause it uses ncurses
    AND pdcurses to be able to play in Windows and
    GNU/Linux"

  • snake4: Fruit-eating snake game

  • homepage: http://shh.thathost.com/
  • comments: "Thanks for the Makefile ideas. It's
    very well-written."

  • ASCII Generator: A generator of awesome ASCII text arts

  • homepage: http://www.network-science.de/ascii/

  • Text ASCII Art Generator: Another awesome ASCII text generator

  • homepage: http://patorjk.com/software/taag/
  • comments: "I've used the Modular font to display
    the Game Over screen"

License

nsnake - The classic snake game with ncurses.
Copyright (C) 2011,2014 Alexandre Dantas

nsnake 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/.

homepage: http://www.alexdantas.net/projects/nsnake/
mailto: eu@alexdantas.net