Home > Article > Backend Development > Android game development and design steps
Nowadays, there are many more mobile phones equipped with Android operating system than iPhone. It is reported that an average of 400,000 Android devices are activated every day. But iOS is still a more profitable and popular platform for developers. The reason: Android doesn't require spending money to buy apps; the multitude of devices and app stores makes the Android market fragmented.
1 Introduction to Mobile Game Development
The essence of the game is to continuously display and update pictures on the screen, but it is not updated randomly, but controlled according to program logic. A complete game requires knowledge in many aspects, such as game creativity, background, storyline, game sound effects, game style, game type, running speed, adapted models, etc. Moreover, game development requires the collaborative work and tacit cooperation of planning, art, programming, and testing.
2 Game Framework Design
First you need a view class to display the game interface, and then you need to build an entire game logic class to control which interface is displayed on the current screen, and even perform some logical processing on the interface. After creating and controlling the view display, to enable the game to move, you need to start a thread to update the view display interface and refresh the view in real time.
3 Map Design
Usually the map in the game is a complete large map composed of multiple small blocks, and the data that makes up these small blocks can generally be stored using a two-dimensional array, and then programmed in the fastest way Map the corresponding small blocks of these map data onto the screen to form a complete map. Of course, we do not input these data one by one from the keyboard. Generally, the programmer first makes a map editor, clicks with the mouse in the map editor and then saves it, or downloads some mature data from the Internet. An editor, such as using a tool like mappy to generate a map, and then using a scripting language to write a program for mappy in what format it should be kept. Usually maps are divided into 45-degree angle, top view and side view.
4 Protagonist Design
The protagonist in the game becomes an "elf" here. Of course, elves include a wide range of things, not just the protagonist, but also NPCs, props, etc. Since it is an elf, there must be a lot of animation. The animation itself is formed by connecting pictures frame by frame and playing each frame in a loop. You can also use your own sprite editor to edit the sprite, split the sprite into many parts, and then combine them again, which can save a lot of space. The characteristic of the sprite class is that it can only use one image at a time instead of multiple images to fill the screen. There can be several frames, but only one is displayed at a time.
5 Layer Manager
You only need to add all layers (including maps and protagonists) to the layer manager, then set the position and size of the view, and call the paint method of the layer manager. Draw out the layer. The order of drawing is in the reverse order of adding, that is, adding first and then drawing, so as to prevent the layer from being displayed after being covered.
6 game sound effects
First of all, we divide the sound effects in the game into the following categories: background music, plot music, sound effects (action sound effects, sound effects using props, auxiliary sound effects), etc. Background music generally needs to be played all the time, while plot music only needs to be played when the plot requires it, and the sound effects are only a short period.
7 Game Archives
Game archives store information such as the progress of the player's current game. When the player enters the game again, he can read the last archive to continue the game from the last progress.
(1). Clarify the data that needs to be stored
First of all, in order to successfully reproduce the last progress of the game again, some attributes of the protagonist (including position, life, attack, defense, etc.) need to be saved, and the current map needs to be saved. Some attributes (such as rows, columns, current layer number), the relevant content of the dialogue also need to be saved, and finally the entire map data of the game (each layer) needs to be saved, as well as the current music status.
(2). Save data
Get the stored data->Package the data into properties->Write the properties to the file.
(3).Load data
Open the file->Load the file stream into properties->Get the data of the specified tag through the properties.get method-》Assign the obtained data to the corresponding variables in the application.
When exiting the game, it will be automatically saved regardless of whether the player saves or not.