... | @@ -9,17 +9,17 @@ |
... | @@ -9,17 +9,17 @@ |
|
We thought about 3 possible solutions :
|
|
We thought about 3 possible solutions :
|
|
1. Both the Core Simulation and the IAs has a physical access to the variable x. They can both modify it and get access to it. But IA shall not modify it.
|
|
1. Both the Core Simulation and the IAs has a physical access to the variable x. They can both modify it and get access to it. But IA shall not modify it.
|
|
|
|
|
|
++ : It is really (really) quick at execution, Easiest to implement
|
|
++ : It is really (really) quick at execution, Easiest to implement \\
|
|
-- : Modules have to be compile together. The IA shall not possibly modify this variable.
|
|
-- : Modules have to be compile together. The IA shall not possibly modify this variable.
|
|
|
|
|
|
2. The Data Management discussion came with the following idea : We use a central module which has access to all the datas, gives the data required when asked by a module. Datas are actualized when a variable is modified. (there s a existing module to do that efficiently) This module could be merged with Core Simulation if it decreases a lot the quantity of data exchanged.
|
|
2. The Data Management discussion came with the following idea : We use a central module which has access to all the datas, gives the data required when asked by a module. Datas are actualized when a variable is modified. (there s a existing module to do that efficiently) This module could be merged with Core Simulation if it decreases a lot the quantity of data exchanged.
|
|
|
|
|
|
++ : It permits to have different programmation languages for each module. It is easier in the implementation for modularity.Fast enough if well implement see annexe.
|
|
++ : It permits to have different programmation languages for each module. It is easier in the implementation for modularity.Fast enough if well implement see annexe. \\
|
|
-- : Harder to implement on the data module side.
|
|
-- : Harder to implement on the data module side.
|
|
|
|
|
|
3. Use a class system to allow only a getter to the IAs and the whole class to the Core Simulation.
|
|
3. Use a class system to allow only a getter to the IAs and the whole class to the Core Simulation.
|
|
|
|
|
|
++ : It can't be quicker, it is the same as a physical access but with no possible modification.
|
|
++ : It can't be quicker, it is the same as a physical access but with no possible modification.\\
|
|
-- : It can be harder to implement, it may affect the modularity because it may force both module to be implemented in the same programmation language.
|
|
-- : It can be harder to implement, it may affect the modularity because it may force both module to be implemented in the same programmation language.
|
|
|
|
|
|
## Conclusion :
|
|
## Conclusion :
|
... | @@ -31,13 +31,13 @@ I think that the second option is the most interesting, as it permits any module |
... | @@ -31,13 +31,13 @@ I think that the second option is the most interesting, as it permits any module |
|
### Data Structure:
|
|
### Data Structure:
|
|
We thought about 4 different type of data which will be store differently.
|
|
We thought about 4 different type of data which will be store differently.
|
|
|
|
|
|
1. Persistent Data, (SAVE, LOG, Chat ?, IA(2nd way to play not the real one))
|
|
1. Persistent Data, (SAVE, LOG, Chat ?, IA(2nd way to play not the real one)) \\
|
|
====== Most of this can be stored in a SQL Data base. which will allow fast and easy auto-save. (file might be consider too)
|
|
====== Most of this can be stored in a SQL Data base. which will allow fast and easy auto-save. (file might be consider too)
|
|
2. Semi-Persistent Data (Characters stats, …)
|
|
2. Semi-Persistent Data (Characters stats, …) \\
|
|
======Here we will store those information on SQL too, but the data will stay in cache as long as nobody requested it, as a module will eventually.
|
|
======Here we will store those information on SQL too, but the data will stay in cache as long as nobody requested it, as a module will eventually.
|
|
3. Volatile Data (Character HP, position, speed,acceleration).
|
|
3. Volatile Data (Character HP, position, speed,acceleration). \\
|
|
======Most of this information which need fast access will be in cache.
|
|
======Most of this information which need fast access will be in cache.
|
|
4. Map
|
|
4. Map \\
|
|
======According to us map, is very particular and should be deal with separately, we thought about XML or AXML.
|
|
======According to us map, is very particular and should be deal with separately, we thought about XML or AXML.
|
|
|
|
|
|
### Discusion about solution 2:
|
|
### Discusion about solution 2:
|
... | | ... | |