Академический Документы
Профессиональный Документы
Культура Документы
INTRODUCTION
1.1 About the System
2048 is a single-player puzzle game. 2048 is played on a gray 44 grid, with numbered tiles
that slide smoothly when a player moves them using the four arrow keys. Every turn, a new
tile will randomly appear in an empty spot on the board with a value of either 2 or 4. Tiles
slide as far as possible in the chosen direction until they are stopped by either another tile or
the edge of the grid. If two tiles of the same number collide while moving, they will merge
into a tile with the total value of the two tiles that collided. The resulting tile cannot merge
with another tile again in the same move. Higher-scoring tiles emit a soft glow. The game is
won when a tile with a value of 2048 appears on the board, hence the name of the game.
After reaching the 2048 tile, players can continue to play (beyond the 2048 tile) to reach
higher scores. The maximum possible tile is 131,072 (or 217); the maximum possible score is
3,866,976; the maximum number of moves is 131,038. When the player has no legal moves
(there are no empty spaces and no adjacent tiles with the same value), the game ends.
2.2Proposed System
2048 is a brain teasing puzzle game that is fun and easy to learn! If you are into brain-stimulating
games that really test your skills in both puzzle and math, then you're going to really love 2048!,
2048 is not only one of the most challenging games out there, but one of the first in its category!
There is really no other game like 2048! Move your numbers around a square to get higher than
2048. Try different moves and positions to get all the blocks to equal to 2048. It's not as easy as
you think. Each time you think you've got it, you're barely even close to reaching 2048--let alone
surpassing that number! If you find yourself having trouble reaching the top score, 2048
Strategy has you covered with all the answers, cheats, tips, hints, and strategies you need to get
2048 and higher!
2.4System Description
The system is is used to improve presents of mind of a person. And the above drawback are
modified and corrected for the further use of the game. This system is a mobile application one,
where all the limitations of manual system are compensated. This game provides the User to
increase the thinking capability. It has a best UI design for users. It have help menu for the users
sometimes the users can know how to use this application.
RAM
2 GB DDR
Memory
320 GB HDD
MONITOR
17inch Color
KEYBOARD :
108 keys
MOUSE
Device
Smart phone.
Operating System
Windows 7 Ultimate
Developing tools
Java eclipse(juno)
Software Requirements
Interpreted
Multithreaded
Robust
Dynamic
With most programming languages, you either compile or interpret a program so that you can
run it on your computer. The Java programming languages unusual in that a program is both
compiled and interpreted. With the compiler, first you translate a program into an intermediate
language called java bites code the platform-independent codes interpreted by the interpreter on
the Java platform. The interpreter parses and runs each Java byte code instruction on the
computer.
The Java Platform
A platform is the hardware or software environment in which a program runs. Weve already
mentioned some of the most popular platforms like Windows2000, Linux, Solaris, and Mac OS.
Most platforms can be described as a combination of the operating system and hardware. The
Java platform differs from most other platforms in that its a software-only platform that runs on
top of other hardware-based platforms.
The Java Platform Has Two Components:
The Java API is a large collection of ready-made software components that provide many useful
capabilities, such as graphical user interface (GUI) widgets.
My Program.java
Java API
Java Virtual Machine
Hard ware-based platform
Unlike AWT components, Swing components are not implemented by platform-specific code.
Instead, they are written entirely in Java and therefore are platform-independent. The term
"lightweight" is used to describe such an element.
Application Specification
ECLIPSE is an IDE (Integrated Development Environment) that is used to develop the android
application. Eclipse is a multi-language software development environment comprising a
workspace and an extensible plug-in system. It is written mostly in Java. It can be used to
develop applications in Java and, by means of various plug-ins, other programming languages
including Ada, C, C++, COBOL, Fortran, Haskell, Perl, PHP.It can also be used to develop
packages for the software Mathematical. Development environments include the Eclipse Java
development tools (JDT) for Java, Eclipse CDT for C/C++ and Eclipse PDT for PHP, among
others.
Responds to user
Players
Level 1DFD
User
Select
Selection
Process
Movement of tiles
2+2=4
Start B
4%2==0
No
Yes
Start A
Value==
Tile value
No
Default color
yes
Color
If tile ==2048
Yes
Display
2or4 as a input which starts the game. After that player is going to play the game using the arrow
key
3.7.2 Help
Help is provide the instruction for the users how to use this application and how
to play the game.
3.7.3 High score
Here the high score of the current game is displayed later is updated when another
games score exceeds the current high score
3.8 Development
After the successful completion of the design phase, the next important step, which comes into
account, is the development of the system according to the specified design. The main procedure
of this phase is the coding of the designed system, in order to satisfy the requirements. The
detailed input/output, text manipulation, logic comparison during system analysis stage provides
the input for program preparation. Coding was carried out in a step-by-step manner. One or more
programmers convert these operations into a program of instructions return a language and form
acceptable to the computer hardware. Proper validations are done for every user-defined
function.
Integration Testing
User Acceptance Testing
successfully for this sample. The need for integration testing is to find an overall system
performance. The entire system is tested as a whole and the errors are corrected.
4.5 Implementation
Implementation is the process of converting a new or revised system design into an
operational one. Thus it can be considered to be the stage in achieving a successful new system
and its vital to assure the user confidence that the proposed new system will never cause impairs
and it will be effective. The implementation is not carefully planned and controlled, it can cause
chaos.
A software application in general is implemented after navigating the complete life cycle
method of a project. Various life cycle processes such as requirement analysis, design phase,
verification, testing and finally followed by the implementation phase results in a successful
project management. The software application which is basically a web based application has
been successfully implemented after passing various life cycle processes mentioned above.
The approaches of implementation are direct, parallel. In the first approach, the existing
system is rejected and the new system is completely implemented.
5. COMPARITIVE STUDY
A lot of games are there in completion with 2048 game. One of which is threes. It is also a
number based game. But it includes numbering of 1 and 3 only. Which when compared to 2048
is quite complicated and reduces the interest of the user. Where as in 2048 as only 2s and its
multiple is used the game is quite exiting and one is able to do mind calculations, which increase
the speed of game play. As the game is faster than Threes the interest of the user to gain higher
score is developed. Thereby increasing competitive mind.
As the 2048 is a matrix format game, applying square of the value is quite easier than applying
complex for odd numbers.
6. CONCLUSION
Todays Modern world Peoples are interested to play computer games, especially puzzles which
enhances their knowledge and their capability of solving the puzzles.
As far as the work done so far much care was given about the user friendliness and a very good
interaction with the end users. The interfaces are designed in such a way that users can never
make any mistake while using the application.
The system is highly user friendly and any one can execute if and get the required results. This
project will certainly fulfill the requirements of the end user without any stress and strain. Hope
this game will be very useful for the people to play games. In addition after completing the game
it will display a motivational message to the user to play the game once again.
nature. Changing the existing modules or adding new modules can append improvements.
Further enhancements can be made to the application. In future the game enhanced
from single player game to multiplayer game. In future we can provide a chance of
challenging another player for another game to increase the chance of winning the game.
The project will be more users friendly with the future enhancement of having the
players to give the feedback facility, which will intimate the player has selecting the grade
of the game to the next level. Further, this project can be proposed to use this facility to
make the game a complete one.
8. BIBLIOGRAPHY
Reference Books
.P,Farr.G
Website
www.java2s.com
www.sampleprogramz.com/jpanel
www.tutorialspoints/jpanel.com
www.jpanelmenu.com
www.stackoverflow.com
9. APPENDIXE
a. Sample screenshot
Start game:
Tile movement:
b. Sample code
public class Game_Panel extends JPanel implements KeyListener
{
//instance variables
public TILE panel[][];
public byte current_tiles;
public boolean achieved_goal;
public Game_Panel()
{
setBackground(BACKGROUND);
setPreferredSize(new Dimension(HW,HW));
setFocusable(true);
requestFocusInWindow();
addKeyListener(this);
rh.put(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY);
panel = new TILE[ROWS_COLS][ROWS_COLS];
achieved_goal = false;
if (two_four % 2 == 0)
{
panel[row][col] = new TILE(default_start_A);
}
else
{
panel[row][col] = new TILE(default_start_B);
}
current_tiles++;
}
if (panel[row][col] == null)
{
g.setColor(DEFAULT_TILE);
if (value == 2)
{
g.setColor(TWO);
temp.setLocation(X_jump+block_center-18, Y_jump+block_center-20);
}
else if (value == 4)
{
g.setColor(FOUR);
temp.setLocation(X_jump+block_center-18, Y_jump+block_center-20);
}
else if (value == 8)
{
g.setColor(EIGHT);
temp.setLocation(X_jump+block_center-18, Y_jump+block_center-20);
}
else if (value == 16)
{
temp.setLocation(X_jump+block_center-28, Y_jump+block_center-23);
}
else if (value == 32)
{
g.setColor(THIRTYTWO);
temp.setLocation(X_jump+block_center-28, Y_jump+block_center-23);
}
else if (value == 64)
{
g.setColor(SIXTYFOUR);
temp.setLocation(X_jump+block_center-30, Y_jump+block_center-23);
}
else if (value < 1024)
{
g.setColor(REMAINING);
temp.setLocation(X_jump+block_center-45, Y_jump+block_center-20);
}
else
{
g.setColor(REMAINING);
temp.setFont(panel[row][col].big_number);
temp.setLocation(X_jump+block_center-45, Y_jump+block_center-15);
}
g.fillRoundRect(X_jump, Y_jump, block_width, block_width, 80, ;
}
add(temp);