Project Plan Report - Redouane Zarghoune

Homam Albeiriss. Student number: 201354. Mail: [email protected]. Project Plan Report. Client signature. : Teacher signature. : Expected credits.
486KB taille 5 téléchargements 311 vues
Implementation and proof-of-concept of a musically controlled game

Project Plan Report

Khalid Aallouche Student number: 201353 Mail: [email protected]

Client signature

Redouane Zarghoune Student number: 202701 Mail: [email protected]

:

Teacher signature

:

Expected credits

:

Homam Albeiriss Student number: 201354 Mail: [email protected]

5-8 ECTS

Contents 1. INTRODUCTION

6

1.1 PROJECT BACKGROUND 1.2 STRUCTURE OF THE DOCUMENT

6 7

2. PROJECT ORGANISATION

8

2.1 PROJECT MEMBERS 2.2 CLIENT AND TEACHER 2.3 OTHER INTEREST GROUPS

8 9 9

3. PROJECT OBJECTIVES

10

3.1. D EFINITION AND OBJECTIVES 3.2. D ELIVERABLES

10 10

4. PROJECT RESOURCES

11

4.1 RESOURCES 4.2 SERVICES 4.3 PREMISES

11 11 11

5. IMPLEMENTATION

12

5.1 TASK DEFINITIONS 5.2 SCHEDULE FOR EACH TASK

12 15

6. BUDGET

16

6.1 COST

16

7. PROJECT MANAGEMENT

17

7.1 PROJECT MANAGEMENT OVERVIEW 7.2 PROJECT GROUP MEETING PLAN 7.3 MEETING PLAN WITH THE CLIENT 7.4 RISKS ANALYSIS 7.5 ACCEPTANCE OF RESULTS

17 17 17 17 18

8. INTERACTION BETWEEN MUSIC AND GAME

20

8.1. MUSIC INFORMATION 8.2. THE GAME 8.3. INTERACTION

20 20 20

9. REFERENCES

21

10. APPENDICES

22

10.1 MINUTES OF THE MEETINGS WITH THE CLIENT 10.2 MINUTES OF THE INTERNAL MEETINGS OF THE PROJECT GROUP

22 22

2

VERSION HISTORY Version:

Date:

Authors:

Description (changes, corrections):

0.1

31.10.2006

K.Aallouche

Project Plan draft

0.2

31.10.2006

H.Albeiriss

Implementation

0.3

31.10.2006

R.Zarghoune

Fix

0.4

31.10.2006

A.Mehellou

Project Plan Management

0.5

01.11.2006

Team

Fin ishing

0.6

15.10.2006

K.Aallouche

Fix

1.0

16.11.2006

Team

Fin ishing

1.1

25.11.2006

Team

Game choice

1.2

07.12.2006

Team

Fix

1.3

16.12.2006

R.Zarghoune

Fix

1.4

18.01.2007

Team

Fix

3

ABSTRACT

As we can notice nowadays, games become more and more sophisticated. The problem is that only graphic aspect is taken into account. One way to improve a game is to reconsider the role of the music. Usually, the game controls the music. For instance, when a player reaches the last level of a game, the music becomes louder, more stressful… ” It helps to make a right atmosphere for gaming”[1]. Now, the concept is the opposite: the game is controlled by the music. Many works has been developed. “In authors’ musically controlled games concept, this old causality has been reversed: music is analyzed to produce control parameters for the game engine. The idea leads to a situation where the selection of background music has a great effect on game’s appearance ”[1]. Furthermore, this concept can extend the lifetime of a game, or can introduce a new variety of games. New perspectives can be deduced, imagination is the only limit...

Keywords: game, audio, control, feature, interface, signal, information.

4

ACRONYMS AND ABBREVIATIONS

Acronym MP3 CoMuGames

Explanation MPEG-1 Audio Layer 3 Controlled Music Games (project group name) Table 1 List of definitions and abbreviations

Table summary Table 2: List of definitions and abbreviations Table 2: Su mmary of basic information about the project group Table 3: Su mmary of basic information about the client Table 4: Interaction between song information and game actions

Figure summary Figure 1: Start ing of a musically controlled game Figure 2: Gantt Diagram of the project

5

1. INTRODUCTION This document is a project plan and it is mainly done to help our project group. It is used to support planning and taking care about how the project will be done. It includes general items needed to be covered in project plan. This documentation is given for the project group but also to people who will evaluate the project group's work and especially the client Nokia.

1.1 Project background The product which will be designed is a musically controlled game. The main goals are selecting a game and design how to modify it. The game engine maps the control information to relevant game parameters such as speed of the game, number of enemies, ammo and bonus objects, landscape elements, and so on. These parameters depend naturally on the game type and design. After this, the player starts the game and tries to play through as many files as possible. The diagram below summarizes the mechanism of the game

Select / download music

Send control information to game engine

Analyze music

Figure 1: Starting of a musically controlled game

6

Map control information to game parameters

1.2 Structure of the document 1. The 1st part introduces the document. 2. In chapter 2, the group members and the client are described. 3. The chapter 3 explains what the project objectives are 4. In chapter 4, needed resources are calculated 5. The 5th chapter describes the members, their tasks and responsibility areas. The GANTT diagram is also realised. 6. The chapter 6 gives the estimated budget 7. The last part explains how the project and group will be managed.

7

2. PROJECT ORGANISATION 2.1 Project members

Name

Task/responsibility Mail area

Student number

Mobile phone

Khalid Aallouche

Project manager & Audio processing researcher

[email protected]

201353

05 09 36 11 11

Redouane Zarghoune

Game expert

[email protected]

202701

05 09 36 17 95

Homam Albeiriss

Audio processing researcher

[email protected] 201354

05 09 36 52 49

Table 2: Summary of basic information about the project group

Further information about the project group can be found below:

Khalid Aallouche Khalid is an exchange student from France. He is fourth year student majoring in Telecommunication and Networking in an engineering school (INSA de Lyon). He has some experience in C, Matlab, Java, assembly and PHP. He takes this project work in order to practice his sound processing knowledge and improve his C++ skill. He is the project manager of the group because he has some experience in that domain. Redouane Zarghoune Redouane is fifth year student majoring in computer science in UTC in France. He is in Tampere as an exchange student for the whole academic year and his aim is to learn telecommunication engineering. He has experience on several programming languages such as C, C++, C#, VHDL, assembly 8086/8088 and also web programming (PHP, ASP, .NET, ...). This project is very important for him because he will be able to practice his knowledge in computer science in order to realize a sound processing project. Homam Albeiriss Homam is fifth year French student majoring in Electronic (ENSEA), and specialized in Telecommunication and Networking. This signal processing project work is optional, but he takes it to improve his knowledge in sound processing and C++. He has already studied voice recognition, and he has experience on C, Matlab, VHDL, assembly (Motorola 6800).

8

2.2 Client and teacher The clients are Antti Eronen and Juha Arrasvuori from Nokia Research Center, Tampere. For further information about the client see http://research.nokia.com/locations/tampere/index.html. Contact persons of NOKIA are: Name

Mail

Antti Eronen

[email protected]

Juha Arrasvuori [email protected] Table 3: summary o f basic information about the client

The teacher who supervises our project is Sari Peltonen. Contact: [email protected]

2.3 Other interest groups Project has some outer stakeholders. The two main stakeholder groups are staff of the Signal Processing Project course and project's client. Former group will check and evaluate project group's work. As tools, we will use a Content Management System named Drupal. It will facilitate the communication inside the group and the document sharing. Each group member and the client will have an account on our website. This one is based on the Drupal system ( www.drupal.org). Thus, the client will be able to check the project advancement. We will also give him the following abilities: -

download the different releases read the weekly reports give bugs and feedbacks

9

3. PROJECT OBJECTIVES 3.1. Definition and objectives 3.1.1 Objectives As the subject describes, the objective is to realize a controlled music game. Two Nokia internships have already realized a controlled music game but it was done with MIDI music only. This music format is very basic and will not be used for this project because the client wants an MP3 support. So, the conception will be totally different. The client did not give us any code source because he does not want any influence. Indeed, he will be able to judge us on the ideas we will have along this project. Thus, we have to find as many music properties and game interactions as possible and correlate them. 3.1.2 Technical objectives From an existing game source code (cf 8.2 The Game), we will have to modify it simply by adding new audio and game modules. 3.1.3 Deadlines We are planning to finish the project before the 15th of March 2007. 3.2. Deliverables 3.2.1 Reports The client wants to receive the weekly reports by mail. At the moment, he only wants the project plan in order to know how we are going to do it. The final report will be given on the 15 th of March 2007. 3.2.2 Presentation We have to present the project plan and final work to the teacher. The client will be able to attend to the final presentation. 3.2.3 Source codes We will deliver the final source code and its documentation to the client in two versions: - Version 1.0 : The first functional version. Available before the 24th of February 2007. - Version 2.0 : After gathering feedbacks, we will developed the 2nd version. Available before the 11th of March 2007.

10

4. PROJECT RESOURCES 4.1 Resources The project will need some material such as computers. The group will not need any other people during the project.

4.2 Services The team will need some clear directions from the client. In case of doubt, the team will consult the client for further information.

4.3 Premises The work will be done in group and because all the members of the team are currently students at Tampere University of Technology, the work will be mainly done there. However the work can be done in any other place.

11

5. IMPLEMENTATION

5.1 Task definitions

Task A Objective Details Duration Responsibles Required resources

: : : : :

audio processing research find several methods to extract interesting information from the song 2 weeks Aallouche, Albeiriss Internet and books

Task B Objective Details

: :

Duration Responsibles Required resources

: : :

games sources codes study find interesting games sources codes and filter this list according to some criteria (intuitive, time limited, clear source code) 1 week Zarghoune Internet

Task C Objective Details Duration Responsibles Required resources

: : : : :

choose the most suitable game choose a game which fit the criteria mentioned in the task B 1 day everybody nothing

Task D Objective Details Duration Responsibles Required resources

: : : : :

find all the possible controllable game changes study the source code in order to reach the objective 3 weeks Zarghoune development editor

12

Task E Objective Details Duration Responsibles Required resources

: : : : :

sound processing algorithm implement efficient algorithms thanks to the work done in Task A 1 week Aallouche, Albeiriss Internet and books

Task F Objective

:

Details

:

Duration Responsibles Required resources

: : :

collect ideas for the interaction between sound processing and video game gather extractable music information and different game control. We will choose the effect of music in each game control 1 week Everybody nothing

Task G Objective Details

: :

Duration Responsibles Required resources

: : :

graphic interface update modify the existing game interface where the user will be able to choose the music he wants to plays with 2 weeks Zarghoune computer

Task H Objective Details Duration Responsibles Required resources

: : : : :

sound processing coding implement algorithms in C++ defined in the task E 2 weeks everybody computer

Task I Objective Details

: :

Duration Responsibles Required resources

: : :

graphic interface testing test the interface graphic including all possible scenarii to make it optimal 1 week Zarghoune computer

13

Task J Objective Details Duration Responsibles Required resources

: : : : :

sound processing testing use several MP3 files in order to test the module 1 week everybody computer

Task K Objective Details

: :

Duration Responsibles Required resources

: : :

interface communication module creation creation of a module which links the sound processing and game modules 2 week everybody development editor

Task L Objective Details

: :

Duration Responsibles Required resources

: : :

Task M Objective

:

Details

:

Duration Responsibles Required resources

: : :

tasks collect (source coding, interface communication module, game coding) join all the implemented modules to each other in order to finalize the program 2 weeks everybody nothing.

Task N Objective Details Duration Responsibles Required resources

: : : : :

final test behaviour game test and optimisation 3 weeks everybody computers

interface communication module testing use several MP3 files in order to test the information transmission between the sound processing and the game module 2 week everybody development editor

14

Task O Objective Details

: :

Duration Responsibles Required resources

: : :

testing + delive ring version 1.0 after finalizing the game, we will distribute the game to game testers and sound processing specialists in order to collect mistakes and fix them 2 weeks everybody nothing

Task P Objective Details Duration Responsibles Required resources

: : : : :

final report and presentation + delivering ve rsion 2.0 write the report and prepare the presentation. 2 weeks everybody computers

5.2 Schedule for each task

Figure 2: Gantt Diagram of the project

15

6. BUDGET 6.1 Cost As an exercise, we have to estimate the cost of the project. Each group member needs a laptop (approximately 3*1000€). During the project we will have to print documents. In TUT, 1000 printed copies cost around 50€. As said before, we will use a website which will cost us 35€. Finally the salary of each member for four working months (approximately 3*1000*4€). That is worth approximately 13085€.

16

7. PROJECT MANAGEMENT 7.1 Project management overview As we saw before the group which will do this project is composed of 4 people. The project manager will be Aallouche Khalid. The communication responsible will be Redouane Zarghoune. He will send the weekly reports to the client and take notes during internal and client meeting. The team is divided into 2 sub-teams: -

Sound processing sub-team: Aallouche Khalid and Albeiriss Homam Game coding sub-team: Zarghoune Redouane

7.2 Project group meeting plan Two teams will work separately during the first steps of the project. Some meetings are expected in order to get the job done. The two teams will meet every week and it will take place on Sunday morning.

7.3 Meeting plan with the client The group and the client will work by correspondence especially by email. Some meeting might take place in exceptional cases.

7.4 Risks analysis

a) Strength We are a four hard workers team very motivated and ambitious. The group is composed of 4 French friends so we will be able to meet each other and communicate easily. We are highly interested in the subject because it is really a part of our studies.

b) Opportunities As we said before, this project is a part of our studies and therefore it will contribute to improve our knowledge. Also working with a well known company such as Nokia will be a benefit for our experience.

17

c) Weakness The project is a part of our studies, which include several courses at the same time. The “possible” weakness might be the time. In any case we will work as much time as the project will require. d) Threats Except personal problem (family...) that every group member could sustain during the project, there are not any threats. 7.5 Acceptance of results

7.5.1 When the project will end? According to the plan the project will end on the 23rd of March.

7.5.2 Who will accept the results? The project has to be done for the client. Therefore the acceptance of the client is mandatory. Also the agreement of the teacher responsible of the course Sari Peltonen and the members of the group are required.

7.5.3 Acceptance of changes in project objectives Like in the acceptance of the results, any change in the project should be agreed by the same people.

7.5.4 Acceptance of changes in project group Like in the acceptance of the results, any change in the project group should be agreed by the same people.

7.5.5 Expected credits The final amount of credits (opintopiste) awarded to the group is determined according to following criteria: INTUITIVENESS (25%) -Based on customer assessment on a scale from 0 to 3 (max). Intuitiveness means the clarity of the effects the music has on the game. I.e., to get the maximum score it should become very clear to the player how the different music attributes change the game behaviour. 18

PLAYABILITY (25%) -How playable the game is when music controls the functionality. The variations should not make the game excessively easy or hard, but modify the game functionality on some meaningful range. Customer assessment on a scale from 0 to 3. QUALITY OF IMPLEMENTATION (25%) -No bugs, the game works as expected, does not crash, etc. Customer assessment on a scale from 0 to 3. AMOUNT OF WORK DONE exceeding 5 credits (5*26.66hours=133hours) (25%) -0 points if the amount of work matches 5 credits -1 point is given if the reported hours meet the amount of work corresponding 6 credits (=6*26.66hours) -2 point for reported hours matching the requirements for 7 credits -3 point for reported hours matching the requirements for 8 credits -Note that the required hours are multiplied by the number of persons in the team. The group receives credits as follows: -average score of 0: 5 credits -average score of 1: 6 credits -average score of 2: 7 credits -average score of 3: 8 credits Example of scoring: The scores given by the customer are: Intuitiveness, 2 points Playability, 1 point Quality of implementation, 3 points The group of 4 persons reports having done 900 hours of work. As the group has 4 persons, this corresponds 900/4/26.66 to 8.4 credits. This gives 3 points. The final score is (2 + 1 + 3 + 3) / 4 = 2.25. Normal rounding rules apply, this gives a final score of 2. The group gets 7 credits.

19

8. INTERACTION BETWEEN MUSIC AND GAME

8.1. Music information During the meeting, we discussed long time about extractable information in the audio file. We have presented several features to the client but he has advised us that it is better to start the project with only two simple features, test the main program, and after upgrade it, by adding new sound information, throughout the project. Firstly, we are going to extract the tempo and the energy of the MP3 audio file. The client provided us with a link to a very useful library (MARSYAS). We also discussed the final work, and the client prefers quality of the work than quantity of extractable information. Furthermore, we had the intention to extract the genre of the music (rock, folk…) by implementing quite difficult algorithms. But the client has suggested us a simpler solution. Since the input file will be an MP3 audio file, we just have to get the genre by reading an MP3 tag.

8.2. The game We decided to choose a breakout clone game: briquolo. You will be able to read some additional information on this game on the following website: http://briquolo.free.fr. We studied this game and we found that we are able to change some parameters such as the ball speed, the level (bricks configuration) and the paddle size. Other parameters are also modifiable but we prefer to concentrate on those parameters to begin the game development.

8.3. Interaction Finally, we think so far that we will link the different parameters in the configuration described below: Music information Game parameter Tempo

Ball speed

Energy

Paddle size

Genre

Level configuration

Table 4: Interaction between song information and game actions

Of course, this is an example and the final configuration may not be the same as above.

20

9. REFERENCES

[1] Novel Ways to Use Audio in Games. Jukka Holm, Kai Havukainen, Juha Arrasvuori. Content management system: Drupal system (cf. www.drupal.org) Marsyas toolbox for computing music features: http://opihi.cs.uvic.ca/marsyas/

Game source code http://briquolo.free.fr

21

10. APPENDICES

10.1 Minutes of the meetings with the client In early October, we met the client in order to define the project’s goals. The duration of the meeting was approximately 45 minutes.

10.2 Minutes of the internal meetings of the project group Every Sunday morning, the group organises a 2 hours meeting. It will be easy for the group members to meet during the week-end and share the work, because all of the group members are free during the week-end.

22