Food Force/Meeting Logs3: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
Line 545: Line 545:


[[Category:Health]]
[[Category:Health]]
[[Category:Nutrition]]
[[Category:Software]]
[[Category:Games]]

Revision as of 04:35, 24 February 2008

  1. olpc-foodforce

[INFO] Channel view for “#olpc-foodforce” opened.

-->| YOU (deepank) have joined #olpc-foodforce

=-= Mode #olpc-foodforce +ns by niven.freenode.net

-->| Anubhav (n=chatzill@221.134.239.87) has joined #olpc-foodforce

<Anubhav> Hi deepank

<deepank> Hi

<Anubhav> Still no one, this is not good

<deepank> Lets wait for others ....

<deepank> yea ..... do sum other wrk while keeping this window open

<Anubhav> affirmative

-->| MurielGodoi (n=msgodoi@189-68-25-237.dsl.telesp.net.br) has joined #olpc-foodforce

<deepank> Hi Muriel

<MurielGodoi> hi Deepank, hi Anubhav

<Anubhav> Hello sir

<deepank> I will send you the class diagram's scanned pic thru email

<deepank> please tell us if we are going wrong somewhere

<MurielGodoi> ok

<Anubhav> yes sir, we had made the class diagram on paper. Please check it

<deepank> There is one more thing that I would like to discuss about.

<MurielGodoi> sure, what it is about?

<deepank> There is no population parameter in the game

<deepank> So, are we going to assume a constant population for the village or should we take it as a parameter

<Anubhav> yes sir, We beliebe that their should be some population paramter that should be displayed during gameplay.

=== murielgodoi is online.

<Anubhav> A rise in population would then demand for more facilities, thus making the game more of real life simualtion game

<deepank> High growth rates of population in countries like India and Brazil is one reason why there are frequent draughts

<deepank> and famines

<MurielGodoi> At once I also though that... it is important, but I think we can assume a constant population in our first version

<deepank> Ok we can keep it as a feature to be added; but it can be easily added ... and can depend on the level of education and family control measures being taken

<MurielGodoi> it is easily added but not so simple to code the effects.

<Anubhav> yes sir, I was thinking of the same,

<deepank> Actually I did not take a look at the code of the human beings moving around.... am i missing something

<deepank> If a human being is being represented by an object

<Anubhav> because the code needs to be changed a lot when we add that growing population factor , as it will have many dependencies with it

<deepank> the number of instances of human being object can be directly proportional to population

<MurielGodoi> sure it is. In that animation I was just testing the perfomance

<Anubhav> @Deepank: have you mailed the Class Diagram to sir

<deepank> yes

* MurielGodoi is cheking...

<MurielGodoi> The image is not so clear, but from that I can read..

<MurielGodoi> why is indicator just related to facilities?

<MurielGodoi> s/facilities/resources

<deepank> Indicator is related to resources only and not to facilties

<deepank> we thought that facilities will contribute to resources

<deepank> and thus indirectly to indicaors

<MurielGodoi> s/facilities/resources means replace facilities for indicator.. i typed wrong

<MurielGodoi> deepank: so for us desn't matter that we buy or produce a resource

<MurielGodoi> ?

-->| Anubhav_Agarwal (n=chatzill@221.134.239.87) has joined #olpc-foodforce

<deepank> Muriel: buying or selling resources will automatically relate to indicators.

<MurielGodoi> the village stock is different from having infra-structure

<MurielGodoi> mainly to health... we can have medicines and do not have an hospital

<deepank> Right

<MurielGodoi> so hospital should have effects in health indicator

<MurielGodoi> I think indicator should relate both... resource and facilities

<deepank> right

<Anubhav_Agarwal> joinyes

<Anubhav_Agarwal> yes

<MurielGodoi> and facilities are more important (more weigh ) than resources

<deepank> ok

<MurielGodoi> we also need to check the relation type

<MurielGodoi> composition or aggregation

<deepank> Yes that was one thing in which I wanted to take your opinion

<MurielGodoi> I am checking my software engenniring... my last class about that was 6 years ago :)

<deepank> What do you think

<deepank> I was thinking of a main container class containing all these objects and helping integration among all these

<MurielGodoi> maybe just association. with labels and multiplicity?

<deepank> n:1 everywhere

<deepank> as n resources and n indicators affect 1 indicator

<MurielGodoi> maybe not

<MurielGodoi> houses can affect housing and health

<deepank> Right

<deepank> I overlooked that

<deepank> How do we model it in Python

<MurielGodoi> for instance. Health indicator can have an array of (facility, weight) tuples

<MurielGodoi> and another one for resources

<deepank> yes

<MurielGodoi> putting weighs on it we can balance the importance of facilities and resources stock in the indicator

<deepank> yes

<MurielGodoi> Could someone list for me the Resources methods, I can't read it here.

<deepank> Update_Value(string name, int value)

<deepank> void Buy(String name, int value)

<deepank> void Sell(String name, int value)

<deepank> int GetValue()

<deepank> void SetValue()

<MurielGodoi> by value you mean, price or quantity?

<deepank> quantity

<Anubhav> quantity

<MurielGodoi> value is a generic name.. try to make attributes name as clear as possible

<Anubhav> we wont be changing the price I believe

<deepank> ok

<MurielGodoi> Anubhav: What happens to the price when we have low quantity of some product on sale?

<Anubhav> price goes up

<Anubhav> in the market as demand is more , supply is less

<MurielGodoi> perfect, I am trying to make you think about the scenario, not give you just the answers

<MurielGodoi> about the model... think about what you modeled in Resouces class. It is a unique resouce or a entire stock?

<deepank> entire stock of a resource

<Anubhav> each object will be 1 resource

<deepank> i.e. Wood has one object.

<deepank> and it represents entire stock of the village

<MurielGodoi> so why did you add name in all methods?

<MurielGodoi> in Resource there is a mix of Resouce and stock methods

<deepank> Wood is the name of the resource

<deepank> What is the difference between the two?

<MurielGodoi> deepank: but in that object do you have just a string to save that

<deepank> Yes, or we can change it to a global enum for saving memory.

<MurielGodoi> deepank: so how will you handle several resources there

<deepank> Each resource will have one object; with a name associated with it

<MurielGodoi> at first every class name should be in singular otherwise you be modeling a group, not a object

<MurielGodoi> deepank: object or instance?

<deepank> We have a class Resource.

<deepank> Now it has object - Wood with name as wood and value as quantity

<deepank> Another Object Food

<MurielGodoi> so you will create 1 instance for each resource

<deepank> similarly and so on

<deepank> yes

<MurielGodoi> if each resource have you own instance why you need name in all methods

<MurielGodoi> food = Resouce('food', 15)

<MurielGodoi> food.setValue('food', 20)

<deepank> Yes

<deepank> Actually we are introducing redundancy

<deepank> we will remove the name

<MurielGodoi> deepank: you got it

<MurielGodoi> I think a class for stock should be fine

<deepank> I do not understand the difference between resource and stock

<MurielGodoi> stock is a set of resources

<MurielGodoi> not just one

<deepank> Yes, then we can keep name as a parameter

<MurielGodoi> you just need to decide beetwen model a stock or resources

<MurielGodoi> if you are modeling a stock so you should keep the name parameter

<MurielGodoi> that's happened to Anubhav

<MurielGodoi> ?

<MurielGodoi> ok

<deepank> If we keep stock, then we will need to make all the parameters as arrays

<deepank> Anubhav is facing net problems

<MurielGodoi> ok... sometimes I also face it in Brazil

<MurielGodoi> i think you are inclined to model a stock

<MurielGodoi> in that case, you should rename your class as stock

<deepank> No on the contrary, I think I should model as resource only, my habit of C programming is coming in the way :)

<MurielGodoi> and stock should have a list of tuples (resouce, quantity)

<MurielGodoi> so, you should rename you class to Resource (not Resources) and remove name from the methos

<deepank> Yes

<MurielGodoi> you should realize that there is no unique solution when modeling

<deepank> So, the changes are :

<deepank> 1. Association from Facilities to Indicator

<deepank> 2. Remove name as a parameter

<Anubhav> yes

<deepank> 3. Introduce a model to change prices

<Anubhav> ok

<MurielGodoi> we will need to instantiate two list of resouces:

<MurielGodoi> 1 for the village

<MurielGodoi> 1 for the market

<MurielGodoi> each one should have their own quantity and unit price

<deepank> yes

<MurielGodoi> everything okay about resoures?

<deepank> but price will be decided in the market

<deepank> oh sorry got confused

<deepank> yes

<MurielGodoi> deepank: The game enngine will chenge that

<MurielGodoi> about facilities

<deepank> Yes

<MurielGodoi> each facilities have a list of produced and consumed resources on each turn

<MurielGodoi> we should model that

<deepank> void update_level(void)

<deepank> void update_number(int)

<deepank> name should be removed

<MurielGodoi> deepank: perfect.. the same case... are you modeling a Facilitie not the entire city

<MurielGodoi> facility.addProduction('rice', 100)

<MurielGodoi> facility.addProduction('beans', 64)

<MurielGodoi> facility.remProduction('beans')

<MurielGodoi> facility.addConsumption('beans', 20)

<MurielGodoi> and so on

<deepank> We have not added any production methods

<deepank> Will a user be able to define this?

<MurielGodoi> not the user... the game engine

<MurielGodoi> that is your next step after the model

<MurielGodoi> the game engine will perform the changes on each turn.. update resources, prices, facilities and indicators

<deepank> Should a game engine decide that rice is to be grown and that too in a particular quantity? We were taking a single food item :)

<MurielGodoi> the animation and gui elements will read these that and update the screen

<deepank> yes.

<MurielGodoi> the user will invest on rice farm

<MurielGodoi> but the rice production will be calculate by the game engine

<deepank> yes

<deepank> which will depend on the trainig of the villagers

<MurielGodoi> so we can set variables like season, training, weather

<MurielGodoi> perfect

<MurielGodoi> now we are working on the model which will store the game data

<deepank> yes we can introduce weather and seasonal changes in the game

<MurielGodoi> the game engine will contain the definitions to change it

<deepank> So, I think Facility is fine; we need to remove the name.

<MurielGodoi> and add the methods above too

<deepank> Yes

<MurielGodoi> to allow game engine set it

<MurielGodoi> facilities and Indicators should have the method 'turn'

<MurielGodoi> the game engine will can it to all facilities, which will update resouces

<deepank> the update_value function is working as next_turn

<MurielGodoi> nice, so just rename it to next_turn, it is a clear name

<deepank> ok

<MurielGodoi> Missed I something?

<deepank> I do not think so, only Indicator left to discuss

<MurielGodoi> sure....

<MurielGodoi> the same for the name in methods

<deepank> yes

<MurielGodoi> and add methods to set the weights

<MurielGodoi> health_indicator.addWeight('hospital', 50)

<MurielGodoi> health_indicator.addWeight('housing ', 20)

<deepank> Weights are static information

<MurielGodoi> yep

<MurielGodoi> they will allow us better balance the game further

<deepank> ok.

<MurielGodoi> we are done about the diagram?

<MurielGodoi> are we done about the diagram?

<deepank> Yes, we will make a new diagram incorporating changes and also make the code now

<Anubhav___> ok

<MurielGodoi> about the repository

<deepank> did you get any replies

<MurielGodoi> nop

<MurielGodoi> ivan is a security chief and is also handling all repository request

<MurielGodoi> olpc was going to get a guy for that, but I donno how is it now

<deepank> Ok, so please tell us when the repository is setup.

<MurielGodoi> ok

<MurielGodoi> Anything else?

<deepank> Let us decide a meeting day. When will you be free for the next meeting

<MurielGodoi> An note, as you have been already noticed, my English isn't so good, I am trying to improve it, so I apologise if I seen rude in any talk, that wasn't my intention

<MurielGodoi> When you think you can update the diagram model and do the changes in the code?

<deepank> No you haven't been rude. Yes, sometimes, I do misunderstand your comments though :)

<deepank> I can do it till day after tomorrow. I am going for a competition tomorrow; so won't get much time

<MurielGodoi> deepank: ok sorry, i will try to be more clear to minimize it, thanks for the comment

<MurielGodoi> monday?

<deepank> Yes Monday is fine for me, in the meantime, tell me about the game engine, so I can get acquainted with the current code.

<MurielGodoi> ok.. will try to think more about how to do that.

<MurielGodoi> I still don't have that clear in mind

<deepank> Ok. I will think about it too. We will discuss more on Monday

<MurielGodoi> Have you learned Model-View-Control model

<MurielGodoi> ?

<MurielGodoi> View will be the animation and gui

<MurielGodoi> model is that we are doing now

<deepank> No, not in the formal course studies. Can you give me some links for it.

<MurielGodoi> and control will be the game engine

<MurielGodoi> ok... I will find some links and mail you

<deepank> ok.

<deepank> Ok. So, we will meet again on Monday. Till then work for me :

<MurielGodoi> so next meeting monday 11:30est

<deepank> 1. Make code of model

<deepank> 2. Read up on links given by you

<deepank> Your work

<deepank> 1. Repository

<deepank> 2. Thinking about game engine

<MurielGodoi> 2. contact the artwork guys

<deepank> Yes

<MurielGodoi> and send oyu the links

<MurielGodoi> deepank: could you please attach the meetings log to wiki?

<deepank> Yes i will do that

<MurielGodoi> thanks for all your work

<deepank> Thanks

<MurielGodoi> the meeting is over

<MurielGodoi> see you guys

<deepank> Good Night

<MurielGodoi> night