git repos / blockattack-game

blame: source/manual/block_attack_manual.tex

normal view · raw

e0b04dcb sago007 2009-04-05 19:21 1
\documentclass[11pt,a4paper]{article}
e0b04dcb sago007 2009-04-05 19:21 2
e0b04dcb sago007 2009-04-05 19:21 3
\usepackage[latin1]{inputenc}
e0b04dcb sago007 2009-04-05 19:21 4
%\usepackage[ansinew]{inputenc}  %windows
e0b04dcb sago007 2009-04-05 19:21 5
%\usepackage[T1]{fontenc}
e0b04dcb sago007 2009-04-05 19:21 6
e0b04dcb sago007 2009-04-05 19:21 7
\begin{document}
852e183d sago007 2009-11-16 01:07 8
\title{Block Attack - Rise of the Blocks 1.4.1 - The Manual}
e0b04dcb sago007 2009-04-05 19:21 9
\author{Poul Sander}
e0b04dcb sago007 2009-04-05 19:21 10
\maketitle
e0b04dcb sago007 2009-04-05 19:21 11
\tableofcontents
e0b04dcb sago007 2009-04-05 19:21 12
\section{General}
e0b04dcb sago007 2009-04-05 19:21 13
Block Attack - Rise of the Blocks is inspired by Nintendo's
e0b04dcb sago007 2009-04-05 19:21 14
"Tetris Attack". However it doesn't have much in common with the
e0b04dcb sago007 2009-04-05 19:21 15
original "Tetris". In Block Attack - Rise of the Blocks bricks
e0b04dcb sago007 2009-04-05 19:21 16
come from the bottom of the screen, and you need to clear them. If
e0b04dcb sago007 2009-04-05 19:21 17
the stack reaches the top of the screen the game is over! There
e0b04dcb sago007 2009-04-05 19:21 18
are other features in 2-player mode. The game also supports network play 
e0b04dcb sago007 2009-04-05 19:21 19
if it is compiled with the game.
e0b04dcb sago007 2009-04-05 19:21 20
\subsection{About Block Attack - Rise of the Blocks}
e0b04dcb sago007 2009-04-05 19:21 21
Block Attack - Rise of the Blocks is programmed in C++ by me (Poul
bc9ea011 sago007 2009-04-12 17:43 22
Sander) and it is given under the GPL licens version 2 or later. I have tried to keep
e0b04dcb sago007 2009-04-05 19:21 23
it as portable as possible by using cross-platform libraries. It
e0b04dcb sago007 2009-04-05 19:21 24
uses the following libraries:
e0b04dcb sago007 2009-04-05 19:21 25
\begin{description}
e0b04dcb sago007 2009-04-05 19:21 26
\item[SDL] from: \newline www.libsdl.org \item[SDL\_Mixer] from:
e0b04dcb sago007 2009-04-05 19:21 27
\newline http://www.libsdl.org/projects/SDL\_mixer \item[SFont]
e0b04dcb sago007 2009-04-05 19:21 28
from: \newline http://www.linux-games.com/sfont/ \item[SDL\_image]
e0b04dcb sago007 2009-04-05 19:21 29
from: \newline http://www.libsdl.org/projects/SDL\_image/
e0b04dcb sago007 2009-04-05 19:21 30
\item[enet] from: \newline http://enet.bespin.org
e0b04dcb sago007 2009-04-05 19:21 31
\end{description}
e0b04dcb sago007 2009-04-05 19:21 32
For development have been used Dev-C++, Microsoft Visual Studio
bc9ea011 sago007 2009-04-12 17:43 33
2003, gedit, Kdevelop and NetBeans (changed as time passed). Most of the current graphics are made in Inkscape. The
e0b04dcb sago007 2009-04-05 19:21 34
game has been compiled on both Windows and Linux. \newline The
e0b04dcb sago007 2009-04-05 19:21 35
game's homepage is:
e0b04dcb sago007 2009-04-05 19:21 36
\verb+http://blockattack.sf.net+
e0b04dcb sago007 2009-04-05 19:21 37
\section{Setup}
e0b04dcb sago007 2009-04-05 19:21 38
The game got lots of options, this section will give an overview.
e0b04dcb sago007 2009-04-05 19:21 39
\subsection{Installation}
e0b04dcb sago007 2009-04-05 19:21 40
Installing Block Attack - Rise of the Blocks is easy, in windows
bc9ea011 sago007 2009-04-12 17:43 41
you simply run the installer "BlockAttackWin32-X.X.X.exe" file and
e0b04dcb sago007 2009-04-05 19:21 42
choose a location you want to install to. Under Linux systems you
e0b04dcb sago007 2009-04-05 19:21 43
can get a precompiled package including source. On some systems
bc9ea011 sago007 2009-04-12 17:43 44
you may have to recompile. There are two options for compiling. You can use \verb+make+ on the svn checkout/source package.\newline Or you could use \verb+scons+ by typing \verb+scons+ as a normal user and then \verb+scons install+ as root however it is currently broken for unknown reason. \newline 
e0b04dcb sago007 2009-04-05 19:21 45
e0b04dcb sago007 2009-04-05 19:21 46
%to do this type \verb+make+ while in the source dictory (there the cpp files are). To install the game in Linux type \verb+make install+, you can change the \verb+Makefile+ for dictory placements. \verb+make remove+ removes the game again. Both \verb+make install+ and \verb+make remove+ must be runned as root. \newline
f3b897ca sago007 2012-12-07 18:06 47
Scons should be used for packing there game data and executables should be in different places. 
e0b04dcb sago007 2009-04-05 19:21 48
\subsection{Program Parameters}
e0b04dcb sago007 2009-04-05 19:21 49
There are a small number of parameters you can use, to change some
e0b04dcb sago007 2009-04-05 19:21 50
things in the game. This doesn't work if the game is installed on a Linux system with the standard install command. Many of these options are not really usefull after version 1.1.1
e0b04dcb sago007 2009-04-05 19:21 51
\begin{description}
e0b04dcb sago007 2009-04-05 19:21 52
\item["-help"] Displays a list over all the commands.
e0b04dcb sago007 2009-04-05 19:21 53
\item["-priority"] This will remove a delay in the game loop
e0b04dcb sago007 2009-04-05 19:21 54
causing the game to take 100\% processor power even on strong
e0b04dcb sago007 2009-04-05 19:21 55
systems, but it will also increase the framerate.
e0b04dcb sago007 2009-04-05 19:21 56
\item["-forceredraw"] This will force the game to draw the entire
e0b04dcb sago007 2009-04-05 19:21 57
screen every frame, this might remove garbage in the graphics, but
f3b897ca sago007 2012-12-07 18:06 58
it will also cause the frame rate to drop. \item["-forcepartdraw"]
e0b04dcb sago007 2009-04-05 19:21 59
The game will only update the parts of the screen that has been
f3b897ca sago007 2012-12-07 18:06 60
changed, increasing frame rate by more than 50\% (sometimes 200\%).
e0b04dcb sago007 2009-04-05 19:21 61
This is default in windowed mode.
e0b04dcb sago007 2009-04-05 19:21 62
\item["-nosound"] Disables any sound in the game. On some systems the sound could crash the game.
e0b04dcb sago007 2009-04-05 19:21 63
\end{description}
e0b04dcb sago007 2009-04-05 19:21 64
\subsection{Options}
e0b04dcb sago007 2009-04-05 19:21 65
From version 1.1.1 the Options have been split in three.
e0b04dcb sago007 2009-04-05 19:21 66
\subsubsection{Configure}
e0b04dcb sago007 2009-04-05 19:21 67
This used to be the only options in the game.
e0b04dcb sago007 2009-04-05 19:21 68
By selecting options in the menu in the game, you get to the
e0b04dcb sago007 2009-04-05 19:21 69
options screen. Here you can turn music on/off, sound effects
f3b897ca sago007 2012-12-07 18:06 70
on/off and full screen on/off, but you can't change the
e0b04dcb sago007 2009-04-05 19:21 71
resolution although a button is provided, this functionality has
f3b897ca sago007 2012-12-07 18:06 72
been removed to reduce size, also the frame rate dropped
e0b04dcb sago007 2009-04-05 19:21 73
significantly.
e0b04dcb sago007 2009-04-05 19:21 74
e0b04dcb sago007 2009-04-05 19:21 75
You can also change names and controls. The default controls for
bc9ea011 sago007 2009-04-12 17:43 76
player 1 is: move: the arrow keys, Right shift to push lines and
bc9ea011 sago007 2009-04-12 17:43 77
Right  to switch blocks.
e0b04dcb sago007 2009-04-05 19:21 78
e0b04dcb sago007 2009-04-05 19:21 79
The default controls for player to is: move: WASD, lift shift to
e0b04dcb sago007 2009-04-05 19:21 80
push and left control to switch.
e0b04dcb sago007 2009-04-05 19:21 81
f3b897ca sago007 2012-12-07 18:06 82
Mouse play and Joy pad support can be enabled under "Keys", the game
f3b897ca sago007 2012-12-07 18:06 83
will use the first two joy pads connected to the computer.
e0b04dcb sago007 2009-04-05 19:21 84
e0b04dcb sago007 2009-04-05 19:21 85
The mouse and joypad controls can't be configured. Left click
e0b04dcb sago007 2009-04-05 19:21 86
switch the two blocks there the cursor is placed. Right click
e0b04dcb sago007 2009-04-05 19:21 87
pushes the stack. On the joypads the first 6 buttons is used, half
e0b04dcb sago007 2009-04-05 19:21 88
to switch and half to push.
e0b04dcb sago007 2009-04-05 19:21 89
e0b04dcb sago007 2009-04-05 19:21 90
You can also change the names in options, the names can be a
e0b04dcb sago007 2009-04-05 19:21 91
maximum of 15 characters and will be saved in the options.dat
e0b04dcb sago007 2009-04-05 19:21 92
file. Remember to change names before you start the game, or the
f3b897ca sago007 2012-12-07 18:06 93
wrong names will be entered in the high score list.
e0b04dcb sago007 2009-04-05 19:21 94
\subsubsection{Puzzle File}
e0b04dcb sago007 2009-04-05 19:21 95
All puzzles in the game is loaded from a file in the \verb+res+ folder. The default puzzles are in \verb+puzzle.levels+ but in this menu you can selct any of the files in the \verb+res+ folder.
e0b04dcb sago007 2009-04-05 19:21 96
\subsubsection{Vs. Mode}
e0b04dcb sago007 2009-04-05 19:21 97
Here you can select speed for player 1 and player 2 in a local game, there are 5 levels (default = 1). You can also specify if an AI must play for one or both of the players. It is possible to let an AI play against another AI if you want. On this screen you can also give players handicap in "Time Trial", again there are five levels (0,1000,2000,3000,4000) default is level 1 = 0 point. The handicap is added to the players score, making it easier for that player\footnote{The highscore list shows scores without handicap}. \newline
e0b04dcb sago007 2009-04-05 19:21 98
No options on this page is saved when the game quits and they are only valid for 2 player games on the local machine.
e0b04dcb sago007 2009-04-05 19:21 99
\subsection{Files}
f3b897ca sago007 2012-12-07 18:06 100
The game is saving data into several data files. High scores are
e0b04dcb sago007 2009-04-05 19:21 101
saved in \verb+endless.dat+ and \verb+timetrial.dat+ depending on
f3b897ca sago007 2012-12-07 18:06 102
game type. Options (Player names and keys etc.) are saved in
e0b04dcb sago007 2009-04-05 19:21 103
\verb+options.dat+. Finally information about witch stages has
e0b04dcb sago007 2009-04-05 19:21 104
been cleared in Stage Clear is saved to \verb+stageClear.SCsave+ and
f3b897ca sago007 2012-12-07 18:06 105
default Puzzle Clear in \verb+puzzleClear.save+, other puzzles are stored in \verb+<puzzleName>.save+. Under Windows NT/2k/xp/2k3 the files was saved in \verb+%APPDATA%\.gamesaves\blockattack\+, but since version 1.3.2 it is saved in \verb+My DocumentsMy Games\blockattack+. In Linux the files should
e0b04dcb sago007 2009-04-05 19:21 106
be saved to \verb+~/.gamesaves/blockattack/+. If this folder
e0b04dcb sago007 2009-04-05 19:21 107
doesn't exist it will be created. Then you get a new version you
e0b04dcb sago007 2009-04-05 19:21 108
should delete the old \verb+puzzleClear.save+ file, or  wired
e0b04dcb sago007 2009-04-05 19:21 109
things might happen (but nothing critical). Under Windows screenshots are saved to the game dictory and under Linux to \newline \verb+~/.gamesaves/blockattack/screenshots/+. The replays are saved to either \verb+%APPDATA%\.gamesaves\blockattack\replays+ or \\ \verb+~/.gamesaves/blockattack/replays/+ depending on the OS.
e0b04dcb sago007 2009-04-05 19:21 110
\section{The Game}
e0b04dcb sago007 2009-04-05 19:21 111
Block Attack - Rise of the Blocks has several playing modes, but
e0b04dcb sago007 2009-04-05 19:21 112
some objectives are always present. Blocks keep coming slowly from
e0b04dcb sago007 2009-04-05 19:21 113
the bottom of the screen, and you have to clear them. You clear
e0b04dcb sago007 2009-04-05 19:21 114
blocks by putting 3 or more blocks i line. The more blocks you put
e0b04dcb sago007 2009-04-05 19:21 115
in line the more points you will get, this is called combos. Then
e0b04dcb sago007 2009-04-05 19:21 116
blocks are cleared the blocks above them will fall down, if they
e0b04dcb sago007 2009-04-05 19:21 117
cause more blocks to be cleared, you will perform a chain reaction
e0b04dcb sago007 2009-04-05 19:21 118
and get lots of points. You know that you are making chains then small numbers apper at the blocks you are clearing.
e0b04dcb sago007 2009-04-05 19:21 119
\subsection{How to start}
f3b897ca sago007 2012-12-07 18:06 120
You can select game modes from the menu, by selecting "New Game"
e0b04dcb sago007 2009-04-05 19:21 121
and your choice. You can also press F2 for endless, F3 for Time
e0b04dcb sago007 2009-04-05 19:21 122
Trial, F4 for 2-player Time Trial, F5 for Stage Clear, F6 for two
e0b04dcb sago007 2009-04-05 19:21 123
Player VS. Mode, F7 for Puzzle Mode or F8 for "Highscores".
e0b04dcb sago007 2009-04-05 19:21 124
\subsection{Gamemode: Endless}
e0b04dcb sago007 2009-04-05 19:21 125
In endless you keep clearing until you hit the roof (or you simply
e0b04dcb sago007 2009-04-05 19:21 126
don't have more time) The top ten scores will get there name on
f3b897ca sago007 2012-12-07 18:06 127
the Endless high score list.
e0b04dcb sago007 2009-04-05 19:21 128
\subsection{Gamemode: Time Trial}
e0b04dcb sago007 2009-04-05 19:21 129
Like endless, but this time you have a two minute limit to gain
e0b04dcb sago007 2009-04-05 19:21 130
points. If you hit the roof your game is over, and you won't get
e0b04dcb sago007 2009-04-05 19:21 131
your name on the highscore list. If you survive the two minutes
e0b04dcb sago007 2009-04-05 19:21 132
and you get a top score, your name will be automatically entered
e0b04dcb sago007 2009-04-05 19:21 133
in the Time Trial highscore list. A top ten score in Time Trial is
e0b04dcb sago007 2009-04-05 19:21 134
considered better than a top ten score in Endless, since it's not
e0b04dcb sago007 2009-04-05 19:21 135
just about how long you are willing to play. \newline
e0b04dcb sago007 2009-04-05 19:21 136
\textbf{Tip:} To get many points in two minutes you need to make
e0b04dcb sago007 2009-04-05 19:21 137
combos and chains. Chains are much better than combos... remember
e0b04dcb sago007 2009-04-05 19:21 138
it!
e0b04dcb sago007 2009-04-05 19:21 139
\subsection{Gamemode: Stage Clear}
e0b04dcb sago007 2009-04-05 19:21 140
In stage clear the goal is to clear a number of lines. Then you
e0b04dcb sago007 2009-04-05 19:21 141
select "Stage Clear" you will get a screen where you can choose a
e0b04dcb sago007 2009-04-05 19:21 142
level to play. Speed and number of lines to clear will vary
e0b04dcb sago007 2009-04-05 19:21 143
depending on your level choice. Then you have cleared the number
e0b04dcb sago007 2009-04-05 19:21 144
of lines required, you win and the level is cleared.
e0b04dcb sago007 2009-04-05 19:21 145
\subsection{Gamemode: Puzzle Clear}
e0b04dcb sago007 2009-04-05 19:21 146
In Puzzle Clear you have a limited number of moves to clear the
e0b04dcb sago007 2009-04-05 19:21 147
entire screen. There are no time limit (but the timer graphics
e0b04dcb sago007 2009-04-05 19:21 148
might be corrupted if you take more than 100 minutes). You can
e0b04dcb sago007 2009-04-05 19:21 149
reset the puzzle by pressing the Push Line key. You can't raise
e0b04dcb sago007 2009-04-05 19:21 150
the block stack in this mode.
e0b04dcb sago007 2009-04-05 19:21 151
\subsection{Gamemode: Vs. Mode}
f3b897ca sago007 2012-12-07 18:06 152
This game is unlike the others, since in this game you actually attacks! You can select the AI controlled players difficulty (1..7). You attack by clearing more than 3 blocks at a time or by making chain reactions. The AI doesn't give much challenge yet.
e0b04dcb sago007 2009-04-05 19:21 153
\subsection{Gamemode: Two-player Time Trial}
e0b04dcb sago007 2009-04-05 19:21 154
Like single-player Time Trial, but this time there is two players.
e0b04dcb sago007 2009-04-05 19:21 155
If you hit the roof, the other player is instantly declared as the
e0b04dcb sago007 2009-04-05 19:21 156
winner. If the time runs out the Player whit the highest score
e0b04dcb sago007 2009-04-05 19:21 157
will be the winner. If anyone has got a top ten score, they will
e0b04dcb sago007 2009-04-05 19:21 158
automatically be entered in the Time Trial Highscore list.
e0b04dcb sago007 2009-04-05 19:21 159
\subsection{Gamemode: Two-player Vs. Mode}
e0b04dcb sago007 2009-04-05 19:21 160
This is the real "Block Attack". Then you clear 4 or more blocks
e0b04dcb sago007 2009-04-05 19:21 161
at once or then you make chains you are sending "garbage blocks"
e0b04dcb sago007 2009-04-05 19:21 162
to your opponent. But opponent is also sending "garbage blocks" at
e0b04dcb sago007 2009-04-05 19:21 163
you. You can clear garbage blocks by clearing normal blocks that
e0b04dcb sago007 2009-04-05 19:21 164
are touching the garbage. If a single garbage block takes up more
e0b04dcb sago007 2009-04-05 19:21 165
than one line only the lowest line will be cleared. Keep clearing
e0b04dcb sago007 2009-04-05 19:21 166
garbage and send garbage at your opponent. If you is still alive
e0b04dcb sago007 2009-04-05 19:21 167
then your opponent hits the roof, you win! If you hit the roof you
e0b04dcb sago007 2009-04-05 19:21 168
loose. There is no time limit in this game.
e0b04dcb sago007 2009-04-05 19:21 169
\subsection{Gamemode: Network Vs. Mode}
e0b04dcb sago007 2009-04-05 19:21 170
Identical to the other Vs. modes but this time over a network. Network play might not be supported in all builds.
e0b04dcb sago007 2009-04-05 19:21 171
\newline To host a server select "Host", to connect to a server select "Connect" and enter the name or IP address of the server.
e0b04dcb sago007 2009-04-05 19:21 172
Windows and Linux uses can play against each other but some operating systems might not be able to play together. If you find an OS that can play with Windows or Linux I would like to hear.
e0b04dcb sago007 2009-04-05 19:21 173
e0b04dcb sago007 2009-04-05 19:21 174
\section{Replays}
f3b897ca sago007 2012-12-07 18:06 175
The game supports Replays of matches. After you have played a game you can go to the Replay-menu and select "Save" and then enter a name. You can then at any time select "Load" and see it again. The first version of the replay system does only support up to 5 minutes and can't save both players in network games. \newline
bc9ea011 sago007 2009-04-12 17:43 176
The second version used in 1.3.2 can save the replays so they take up less space. But 1.3.2 and newer can only load player one from old replays. \newline
f3b897ca sago007 2012-12-07 18:06 177
The third version used in 1.4.0 saves additional information in replays. Version 1.4.0 are not able to read replays from old versions.
e0b04dcb sago007 2009-04-05 19:21 178
\end{document}
1970-01-01 00:00 179