Thrive Game Development

Development of the evolution game Thrive.
 
HomeHome  PortalPortal  CalendarCalendar  FAQFAQ  SearchSearch  MemberlistMemberlist  UsergroupsUsergroups  RegisterRegister  Log inLog in  
Welcome new and returning members!
If you're new, read around a bit before you post: the odds are we've already covered your suggestion.
If you want to join the development team, sign up and tell us why.
ADMIN is pleased to note that this marquee has finally been updated.
ADMIN reminds you that the Devblog is REQUIRED reading.
Currently: The Microbe Stage GUI is under heavy development
Log in
Username:
Password:
Log in automatically: 
:: I forgot my password
Quick Links
Website
/r/thrive
GitHub
FAQs
Wiki
New Posts
Search
 
 

Display results as :
 
Rechercher Advanced Search
Statistics
We have 1675 registered users
The newest registered user is dejo123

Our users have posted a total of 30851 messages in 1411 subjects
Who is online?
In total there are 2 users online :: 0 Registered, 0 Hidden and 2 Guests

None

Most users ever online was 443 on Sun Mar 17, 2013 5:41 pm
Latest topics
» THIS FORUM IS NOW OBSOLETE
by NickTheNick Sat Sep 26, 2015 10:26 pm

» To all the people who come here looking for thrive.
by NickTheNick Sat Sep 26, 2015 10:22 pm

» Build Error Code::Blocks / CMake
by crovea Tue Jul 28, 2015 5:28 pm

» Hello! I can translate in japanese
by tjwhale Thu Jul 02, 2015 7:23 pm

» On Leave (Offline thread)
by NickTheNick Wed Jul 01, 2015 12:20 am

» Devblog #14: A Brave New Forum
by NickTheNick Mon Jun 29, 2015 4:49 am

» Application for Programmer
by crovea Fri Jun 26, 2015 11:14 am

» Re-Reapplication
by The Creator Thu Jun 25, 2015 10:57 pm

» Application (programming)
by crovea Tue Jun 23, 2015 8:00 am

» Achieving Sapience
by MitochondriaBox Sun Jun 21, 2015 7:03 pm

» Microbe Stage GDD
by tjwhale Sat Jun 20, 2015 3:44 pm

» Application for Programmer/ Theorist
by tjwhale Wed Jun 17, 2015 9:56 am

» Application for a 3D Modeler.
by Kaiju4u Wed Jun 10, 2015 11:16 am

» Translator to Serbian here
by Simeartherist Sun Jun 07, 2015 6:36 am

» Presentation
by Othithu Tue Jun 02, 2015 10:38 am

» Application of Sorts
by crovea Sun May 31, 2015 5:06 pm

» want to contribute
by Renzope Sun May 31, 2015 12:58 pm

» Music List Thread (Post New Themes Here)
by Oliveriver Thu May 28, 2015 1:06 pm

» Application: English-Spanish translator
by Renzope Tue May 26, 2015 1:53 pm

» Want to be promoter or project manager
by TheBudderBros Sun May 24, 2015 9:00 pm


Share | 
 

 Compound system

View previous topic View next topic Go down 
Go to page : Previous  1, 2
AuthorMessage
jaws2blood
Newcomer


Posts : 62
Reputation : 3
Join date : 2011-12-18
Location : USA

PostSubject: Re: Compound system   Fri Aug 24, 2012 5:40 pm



can you make and post more of these charts, it may come in handy when the creation of cells and their organelles may come about. With the numbers being there and all.
Back to top Go down
View user profile
Seregon
Regular


Posts : 263
Reputation : 37
Join date : 2011-08-10
Location : UK

PostSubject: Re: Compound system   Fri Aug 24, 2012 5:54 pm

If you don't mind, could I provide them as XML's instead (see above post)? I'm happy to create any more charts like that to make explaining stuff easier, but they're a little too labour intensive to make one for each compound we'll need.
Back to top Go down
View user profile
NickTheNick
Overall Team Co-Lead


Posts : 2312
Reputation : 175
Join date : 2012-07-22
Age : 20
Location : Canada

PostSubject: Re: Compound system   Fri Aug 24, 2012 7:12 pm

Seregon wrote:
If you don't mind, could I provide them as XML's instead (see above post)? I'm happy to create any more charts like that to make explaining stuff easier, but they're a little too labour intensive to make one for each compound we'll need.

Seregon, I would love to help! Do you think you could PM me the numbers for the different compounds and then I just compose them into a chart? Please PM me.

_________________
Look at how far we've come when people thought we'd get nowhere. Imagine how far we can go if we try to get somewhere.
Back to top Go down
View user profile
jaws2blood
Newcomer


Posts : 62
Reputation : 3
Join date : 2011-12-18
Location : USA

PostSubject: Re: Compound system   Fri Aug 24, 2012 7:21 pm

Seregon wrote:
If you don't mind, could I provide them as XML's instead (see above post)? I'm happy to create any more charts like that to make explaining stuff easier, but they're a little too labour intensive to make one for each compound we'll need.

that is fine, xml isn't too hard to read.
Back to top Go down
View user profile
Carnifex
Newcomer


Posts : 37
Reputation : 8
Join date : 2012-08-13

PostSubject: Re: Compound system   Sat Aug 25, 2012 3:59 am

So far these charts look like they're spot on (don't quote me on that).
Great work!

If you prefer XML than I'd suggest doing that because it's a lot quicker and easier indeed.
Back to top Go down
View user profile
ido66667
Regular


Posts : 366
Reputation : 5
Join date : 2011-05-14
Age : 102
Location : Space - Time

PostSubject: Re: Compound system   Sat Aug 25, 2012 9:07 am

I myself don't know how to work with XML, Sorry.
Back to top Go down
View user profile
gdt1320
Newcomer


Posts : 24
Reputation : 3
Join date : 2012-09-23

PostSubject: Re: Compound system   Wed Oct 10, 2012 8:44 pm

Hey this looks great and I really like all the detail that went into it, but I'm a little worried about the amount of calculations it takes, especially if you were going to be doing this for large numbers of cells So I'd like to propose an alternative system that can be used.

Equation: (A modification of the monod equation to account for temperature changes, and cell death)

u_net= (u_m*S/(K_s+S)*e^(-Ea/T)-kd

Variable Descriptions
Spoiler:
 

The doubling rate of the cell is defined as t=ln(2)/u_net (can be how fast the cell grows)
If the u_net is negative, then the cell is dying.

The energy available to the cell can be u_net/u_mm (might need to change this)

where u_mm is the maximum growth for the "best" substrate or food source.

How to account for multiple food sources and substrate selectivity.
Spoiler:
 

Cell death rate , kd
Spoiler:
 

But what about oxygen?
Spoiler:
 

How this equation can be used for auto evo at the cellular level
Spoiler:
 

How to keep calculations simple but realistic
Spoiler:
 

Other issues to look into
Spoiler:
 

Oh definitions: I defined each 'species' as being separate by a single mutation, which isn't realistic, but I wanted to keep the terminology simple.

I realize you guys have probably already put a ton of work into the cell stage, and that this probably doesn't fit, but I'd just like to mention it in case it might be useful.
Back to top Go down
View user profile
~sciocont
Overall Team Lead


Posts : 3406
Reputation : 138
Join date : 2010-07-06

PostSubject: Re: Compound system   Wed Oct 10, 2012 11:54 pm

Nice ideas there. Remember though, that only the cell you control is affected precisely by these variables. All other cells are run as populations through auto evo and a simpler population dynamics system.

_________________
Remember our goals: simplicity, science, and playability. Keep them in mind always.
[OE]|[FAQ]|[Wiki]|[My Blog]
Back to top Go down
View user profile
Seregon
Regular


Posts : 263
Reputation : 37
Join date : 2011-08-10
Location : UK

PostSubject: Re: Compound system   Thu Oct 11, 2012 7:29 am

Your idea (gdt) comes close to my initial thoughts on that problem, something I've now started developing in the population dynamics thread. I'm not actually familiar with the monod equation, but it looks like details from this (and other equations) could be very useful.

As Scio said, for most populations we'll be modelling the population, not the individual cells. The exception to this will be your own cell, and possibly (if computation allows) the other cells visible to you in your immediate surroundings. My approach to this is to represent each species as a collection of all the compounds it requires/uses/produces/etc, as well as the average size/energy/etc of its constituent individuals, we then simulate the interactions of these compounds, and their effect on the individual states, at the species level. In the simplest, crudest possible example, if the species has an excess supply of fat, some of this will be stored in its cells, and some will go towards producing larger cell membranes; if there is a deficit of oxygen, aerobic respiration becomes slow/impossible, anaerobic respiration takes place instead, lactic acid (or ethanol, or similiar) is produced and the cell suddenly requires a lot more sugar (or similair) to do what it was doing before.

The major advantage of this system over yours is this (and I only came to this realisation by first attempting what you just did): by representing a species as a collection of compounds, all those compounds are represented equally, we don't need a special variable for oxygen, or energy (atp), they're all simply compounds. What makes each one different is its interactions with other compounds: 6o2 + c6o6h12 -> 6co2 + 6h2o + 38atp. Simply (and I mean that in the most sarcastic way possible) by determining these interactions between compounds we can control how the system behaves, it will effectively attempt to ballance itself (within the constraints of these interactions, as most aren't reversible), and in the process use the available compounds in the available interactions in order to grow its cell/population. Another advantage (solving the problem I think you ran into when trying to account for substrate consumption) is that the system ballances, there should be no loss of compounds between interactions, in effect the system is closed. This is a very crude explanation, and I'll be posting much more detail in the thread linked above at some point (hopefully in the next week or two).

Where things become a lot more complicated is interactions between species, i.e.: what happens when one species predates another? Assuming that x individuals of species A (with total population X) just consumed y individuals of species B (with total population Y), we could simply say that y/Y of each compound in species B is evenly distributed among x individuals of species A (although, within the limits of our representation, they are effectively distributed among the entirety of species A). More than likely it won't be that simple, some of the compounds will be wasted and leak back into the environment, others won't be digestible by A and will be excreted back into the environment (this is already handled by the above system). This is only part of the system which is far from done, and will need a lot more work.

Hopefully that answers your questions. Your ideas are very much appreciated, but your just a little way behind where we are (which is impressive enough, I've been working on this on and off for about 6 months). Where I think you could really help out is determining all the above interactions, as it seems you may already know of some specific equations which I don't.
Back to top Go down
View user profile
gdt1320
Newcomer


Posts : 24
Reputation : 3
Join date : 2012-09-23

PostSubject: Re: Compound system   Fri Mar 22, 2013 3:52 pm

In the ideal of keeping the simulations as simple as possible (but still keeping to the realistic aspect)
A general form for these reactions is:

Substrates-->(Growth)+Products. This should simplify the need for keeping track of intracellular compounds that wouldn't be seen by the player in the course of normal game-play.

I.E. 36*Food+12*O2-->0.2*X+CO2+[bio-waste].

If we can use this type of reaction for the main simulation and game play it would be great. To get the amount of detail required in the sense you were talking about (I'm not sure where we are exactly on this at the moment) you'd have to have the metabolic flux maps for each species (or simplified versions)

The disadvantage of this method is I can't think of a way at the moment for regulatory constraints (like aerobic vs anaerobic) without writing multiple equations. (unless we relate the coefficients in front of the substrates to the products) (which might work!)

I.E. instead of a*Food+b*O2 --> c*X+d*CO2 it would be a*Food+b*O2-->(b-Z)*X+(RQ)*CO2

where z is the oxygen starvation limit below which the organism X can't survive and starts to die, and RQ is a simply b/N where N is a number to specify the ratio between O2 uptake and CO2 excretion. Obviously we can add more things to the reaction.

I also think these same equations can be used later in the game for cities/planets where X would be population, substrates would be food, material, tech, etc and the products can be things like units, more tech, etc. This could be done in the flux maps simply be adding or removing "reactions" or regulating them.

Additionally, these all turn out to be linear equations. So you can use something like the simplex algorithm (or any linear optimization method) to say hey, "I want to optimize this city for research, growth, product of ___ etc. " and fluxes would be bound by what buildings were in the city/planet. This could also be useful for evolving species by adding/removing reactions, or modifying limits of fluxes.

As I said before, using these simple equations should cut down on the computations the computer needs to run during game play. However for modifying and "evolving" the species having flux maps for them would give you as much detail as you want, help keep everything balanced, and give some insight to the user about how all of this stuff works biologically(I think it would also work nicely later in the game as well for city and planet production)

Where I'm getting this from:
Spoiler:
 







Back to top Go down
View user profile
Koeng
Newcomer


Posts : 8
Reputation : 0
Join date : 2013-02-24

PostSubject: Re: Compound system   Fri Mar 22, 2013 7:35 pm

Hey I kind of lurk here sometimes and I just wanted to give my 2 cents on an actual project to simulate a cell (Since synthetic bio is what I do)
Since it is an actual cell being simulated, it might get toooooooooo complex, but anyway here is the link

http://wholecell.stanford.edu

I can't gather anything from the stuff in the downloads except the virtual machine, but you coders are a lot better then me at that stuff

-Koeng
Back to top Go down
View user profile
gdt1320
Newcomer


Posts : 24
Reputation : 3
Join date : 2012-09-23

PostSubject: Re: Compound system   Fri Mar 22, 2013 8:09 pm

Koeng wrote:
Hey I kind of lurk here sometimes and I just wanted to give my 2 cents on an actual project to simulate a cell (Since synthetic bio is what I do)
Since it is an actual cell being simulated, it might get toooooooooo complex, but anyway here is the link

http://wholecell.stanford.edu

I can't gather anything from the stuff in the downloads except the virtual machine, but you coders are a lot better then me at that stuff

-Koeng

Thanks for the link, it was pretty interesting to watch. I've also found this E-Coli reaction map showing all the reactions and physical locations/groupings in a typical E-Coli cell. We probably won't do an entire cell simulation as that would take up way to many resources for an average person to play.
Back to top Go down
View user profile
~sciocont
Overall Team Lead


Posts : 3406
Reputation : 138
Join date : 2010-07-06

PostSubject: Re: Compound system   Sat Jul 06, 2013 9:55 pm

Seregon had me write a few compound processes. I've now written the pathways for Fatty Acid metabolism and synthesis. Also done (though still up for changes) are Agent and RpAse synthesis pathways.
Here they are, in the .xml format needed.
For reference:
Fat=C12H26
Oxygen=O2
Carbon Dioxide=CO2
Sugar=C6H12O6
Water=H2O
Protein=Amino Acid chain of length n (n=tbd)
Fat Respiration:
 
Fat Synthesis:
 
Agent Synthesis:
 
RpAse Synthesis:
 

[edit by Seregon] minor fixes to xml code

_________________
Remember our goals: simplicity, science, and playability. Keep them in mind always.
[OE]|[FAQ]|[Wiki]|[My Blog]


Last edited by ~sciocont on Sun Jul 07, 2013 9:51 am; edited 1 time in total
Back to top Go down
View user profile
NickTheNick
Overall Team Co-Lead


Posts : 2312
Reputation : 175
Join date : 2012-07-22
Age : 20
Location : Canada

PostSubject: Re: Compound system   Sun Jul 07, 2013 12:11 am

That looks great. What's more, it actually makes a lot of sense. The format it follows is very similar to the forum format, except with the angular brackets instead of the square ones. Also, it seems really easy to just copy and paste each process, and then just alter the names and quantities.

Using this, I could actually probably get started on writing up some of the processes for the Strategy Mode. Is XML just for the prototype? How easily is it translated into C++ or Lua?

_________________
Look at how far we've come when people thought we'd get nowhere. Imagine how far we can go if we try to get somewhere.
Back to top Go down
View user profile
Koeng
Newcomer


Posts : 8
Reputation : 0
Join date : 2013-02-24

PostSubject: Re: Compound system   Sun Jul 07, 2013 1:21 am

I saw "proteins" in the code and wanted to comment on a few things:D 

I know a lot about systems biology, and seeing that you have the proteins for the code would you like me to dig up some files somewhere and give you EXACT amino acid numbers needed to create the biosynthetic pathway, for lets say, a cell wall? Also the the energy needed ect.

(Also, sorry for asking, but do you guys know anywhere I can learn to put it into the format for XML? If I ever get anymore ideas, I would like to put it into code that you guys can easily use)

EDIT: was looking at website (http://thrivegame.wikidot.com/microbe-stage) and saw reproductase. Would this kinda be like a bunch of enzymes necessary for division? To accumulate enough "reproductase" I really thought of this enzyme in real life. http://en.wikipedia.org/wiki/FtsZ

-Koeng
PS: tryna catch up on everything in microbe stage!


Last edited by Koeng on Sun Jul 07, 2013 1:33 am; edited 1 time in total (Reason for editing : Added somethin bout reproductase)
Back to top Go down
View user profile
Daniferrito
Experienced


Posts : 726
Reputation : 70
Join date : 2012-10-10
Age : 22
Location : Spain

PostSubject: Re: Compound system   Sun Jul 07, 2013 5:29 am

@Nick: Actually, that is xml, and it is the format we had planed to store all the processes in. If we keep with that plan, That would be all there is needed to describe a process.
Back to top Go down
View user profile
Seregon
Regular


Posts : 263
Reputation : 37
Join date : 2011-08-10
Location : UK

PostSubject: Re: Compound system   Sun Jul 07, 2013 9:30 am

@Scio - those look great, thank you! The only possible change is that all the syntheses (plural of synthesis?!) should probably require some amount of ATP.

@Koeng - we're simplifying somewhat, and not actually modelling amino acids, as n amino acids are easily interchangable with a protein of length n. That said, if you could get us some accurate numbers for the lengths of some relevant proteins, and better yet, the ATP needed for synthesis, that would be very useful indeed. You should be able to figure out the format by looking at what scio posted, and changing the process name, and the list of input/output compounds and their relative amounts. The organelles needed for most protein syntheses will be the ER, and possibly the golgi.

A quick note on organelles - processes are allowed to require more than one organelle. If they don't require any organelles, then list them as requiring the cytoplasm.
Back to top Go down
View user profile
~sciocont
Overall Team Lead


Posts : 3406
Reputation : 138
Join date : 2010-07-06

PostSubject: Re: Compound system   Sun Jul 07, 2013 9:54 am

@Seregon- That was stupid of me to forget ATP inputs- they've now been added.
@Koeng- Nice link, this could be helpful, and I'll read through it to see if there's anything we can pick up from it.

_________________
Remember our goals: simplicity, science, and playability. Keep them in mind always.
[OE]|[FAQ]|[Wiki]|[My Blog]
Back to top Go down
View user profile
Koeng
Newcomer


Posts : 8
Reputation : 0
Join date : 2013-02-24

PostSubject: Re: Compound system   Sun Jul 07, 2013 11:50 am

Here are a few links I found useful when designing/ thinking about creating a minimal organism

http://subtiwiki.uni-goettingen.de/wiki/index.php/SubtiPathways  
(Probably most helpful, you can find all the cycles and colorful easy to use pathways with ATP and everything)



http://www.genome.jp/kegg-bin/show_organism?menu_type=pathway_maps&org=sce
(This is the model eukaryote, since I think you guys are thinking of them. This one is a little harder to understand)

Also is there going to be a transition from prokaryotic to eukaryotic? That would be fun because you can go along and handpick all your organelles. Such as to increase photosynthetic capacity, you get infected with a virus (very rare) and you get some of these http://en.wikipedia.org/wiki/Carboxysome
Although it only works when you are a prokaryote. Or if you're staying with eukaryotes, you may want to make it so some organelles are better then others.

EDIT: Working on all the ATP stuff for reproduction

-Koeng
Back to top Go down
View user profile
Seregon
Regular


Posts : 263
Reputation : 37
Join date : 2011-08-10
Location : UK

PostSubject: Re: Compound system   Tue Jul 09, 2013 6:58 am

@Scio - I made a few more quick corrections to your xml code, RpAse synthesis now requires an organelle, the ER, and I fixed a quick syntax error - the "<Process ..." line for RpAse synthesis ended in "/>" when it should just be ">". (edited your post).
Back to top Go down
View user profile
~sciocont
Overall Team Lead


Posts : 3406
Reputation : 138
Join date : 2010-07-06

PostSubject: Re: Compound system   Tue Jul 09, 2013 12:25 pm

Seregon wrote:
@Scio - I made a few more quick corrections to your xml code, RpAse synthesis now requires an organelle, the ER, and I fixed a quick syntax error - the "<Process ..." line for RpAse synthesis ended in "/>" when it should just be ">".  (edited your post).
Thanks. Also, it seems forummotion fixed the problem with quotes in the rich editor. /OT

_________________
Remember our goals: simplicity, science, and playability. Keep them in mind always.
[OE]|[FAQ]|[Wiki]|[My Blog]
Back to top Go down
View user profile
Sponsored content




PostSubject: Re: Compound system   Today at 4:05 pm

Back to top Go down
 
Compound system
View previous topic View next topic Back to top 
Page 2 of 2Go to page : Previous  1, 2

Permissions in this forum:You cannot reply to topics in this forum
Thrive Game Development :: Development :: Programming :: Technical Discussion-
Jump to: