Thrive Game Development
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Thrive Game Development

Development of the evolution game Thrive.
 
HomeHome  PortalPortal  Latest imagesLatest images  SearchSearch  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 3 users online :: 0 Registered, 0 Hidden and 3 Guests

None

Most users ever online was 443 on Sun Mar 17, 2013 5:41 pm
Latest topics
» THIS FORUM IS NOW OBSOLETE
NPC Auto-Evo Thread - Page 5 Emptyby NickTheNick Sat Sep 26, 2015 10:26 pm

» To all the people who come here looking for thrive.
NPC Auto-Evo Thread - Page 5 Emptyby NickTheNick Sat Sep 26, 2015 10:22 pm

» Build Error Code::Blocks / CMake
NPC Auto-Evo Thread - Page 5 Emptyby crovea Tue Jul 28, 2015 5:28 pm

» Hello! I can translate in japanese
NPC Auto-Evo Thread - Page 5 Emptyby tjwhale Thu Jul 02, 2015 7:23 pm

» On Leave (Offline thread)
NPC Auto-Evo Thread - Page 5 Emptyby NickTheNick Wed Jul 01, 2015 12:20 am

» Devblog #14: A Brave New Forum
NPC Auto-Evo Thread - Page 5 Emptyby NickTheNick Mon Jun 29, 2015 4:49 am

» Application for Programmer
NPC Auto-Evo Thread - Page 5 Emptyby crovea Fri Jun 26, 2015 11:14 am

» Re-Reapplication
NPC Auto-Evo Thread - Page 5 Emptyby The Creator Thu Jun 25, 2015 10:57 pm

» Application (programming)
NPC Auto-Evo Thread - Page 5 Emptyby crovea Tue Jun 23, 2015 8:00 am

» Achieving Sapience
NPC Auto-Evo Thread - Page 5 Emptyby MitochondriaBox Sun Jun 21, 2015 7:03 pm

» Microbe Stage GDD
NPC Auto-Evo Thread - Page 5 Emptyby tjwhale Sat Jun 20, 2015 3:44 pm

» Application for Programmer/ Theorist
NPC Auto-Evo Thread - Page 5 Emptyby tjwhale Wed Jun 17, 2015 9:56 am

» Application for a 3D Modeler.
NPC Auto-Evo Thread - Page 5 Emptyby Kaiju4u Wed Jun 10, 2015 11:16 am

» Presentation
NPC Auto-Evo Thread - Page 5 Emptyby Othithu Tue Jun 02, 2015 10:38 am

» Application of Sorts
NPC Auto-Evo Thread - Page 5 Emptyby crovea Sun May 31, 2015 5:06 pm

» want to contribute
NPC Auto-Evo Thread - Page 5 Emptyby Renzope Sun May 31, 2015 12:58 pm

» Music List Thread (Post New Themes Here)
NPC Auto-Evo Thread - Page 5 Emptyby Oliveriver Thu May 28, 2015 1:06 pm

» Application: English-Spanish translator
NPC Auto-Evo Thread - Page 5 Emptyby Renzope Tue May 26, 2015 1:53 pm

» Want to be promoter or project manager
NPC Auto-Evo Thread - Page 5 Emptyby TheBudderBros Sun May 24, 2015 9:00 pm

» A new round of Forum Revamps!
NPC Auto-Evo Thread - Page 5 Emptyby Oliveriver Wed May 20, 2015 11:32 am


 

 NPC Auto-Evo Thread

Go down 
+20
NickTheNick
Zetal
GamerXA
tklarenb
Dr_Chillgood
GhengopelALPHA
Redstar
guitar999111
Seregon
Tenebrarum
Commander Keen
ADMIN
GalvinNerth
US_of_Alaska
roadkillguy
Mysterious_Calligrapher
AIs-null
The Uteen
Pezzalis
~sciocont
24 posters
Go to page : Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
AuthorMessage
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 6:21 am

I like the systems suggested here a lot. Using niches to test a species fitness is a good way to avoid the complexity of defining actual fitness, and not an unreasonable simplification either.

There are a few questions/issues I came up with though:
- I can't find a good definition of how long a generation is? Some old threads I've looked at mention 'skipping forward in time a few million years', suggesting that the player plays for a session (10-15 mins?) and then skips forwards to speed up evolution. Other posts seem to suggest that this would happen automatically every few minutes (5-10). If the first suggestion (skipping time) is what's proposed, allowing only a single creature to evolve each time would be severely limiting (I know this has been discussed before, I'll expand on this in a second). Alternatively is the idea to skip time, but every time this happens run multiple generations? In the second suggestion (a generation every few minutes) this would be more reasonable, but considering the miniscule changes we're making this would need to happen fairly often (perhaps several times a minute).

As a coder this should be relatively simple (nothing truely is, but there's nothing here which I'd be overly worried about) to implement, and in addition should run very quickly. My suggestion then is instead of evolving just one or two species, give all of them a chance of evolving every evo-step (the probabilities could be the same as they are now). This would mean the evolution progresses more quickly, allows every species a chance to adapt to a new threat, and has the added advantage of reducing the impact of arms races on other species (if two species concentrate all their evo oppertunites on beating eachother, sooner or later something else is going to come along and wipe them out). If your worried about things changing too quickly, simply reduce how much an organism can change each time.

Also, it's fairly simple to preserve the 'reactionary' evo system, by having each organism take note of what changes made last evo-step affect them (this could be done largely during auto-evo, the only things to notice during the next simulation period are disasters and other major events). These changes could be adaptations by a predator/prey, invasion of their niche, reduction of one or more food sources, changes to their biomes environment etc.

In terms of the chess analogy, you could imagine every species playing their own private game of chess, with moves by other species affecting both the position of pieces on their board, and the layout of the board. Rather than potentially having to wait a few dozen turns to be able to react to another pieces move, it gets that oppertunity every turn, and can either react, dawdle, or not move at all. Note that species can only react to moves made the evo-step before, they are not aware of changes made this step until next step.

Finally, while I like the way your using niches, I think we could improve the way their defined, allowing them to be more dynamic, and not requiring us to predefine each niche in every biome. I'll think about this some more today and try and post in the relevant thread tonight.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 9:19 am

Seregon wrote:
I like the systems suggested here a lot. Using niches to test a species fitness is a good way to avoid the complexity of defining actual fitness, and not an unreasonable simplification either.

There are a few questions/issues I came up with though:
Thank you very much for the review of the system. Since I created the system, I do have the answers you seek.
-Generations happen after a preset amount of time, say 5-10 minutes in real time. It goes this slowly so that the player can figure out what's going on.
-It's for this same reason (player recognition of species) and the goal of simplicity that I wanted only one organism to evolve at once. In an added bonus, this simulates punctuated equilibrium.

However, if you think more mutations per generation are necessary, I might have a good idea of how to simplify it. Instead of selecting one species in the selection step, the computer selects a number of species that corresponds with a certain percentage of the total number of species. So, say, it gives a mutation to 20% of the organisms in a biome every generation.

I'm still not sure how more mutations affect the complexity of the evolution system, which makes me a bit more apprehensive.

If you want to check out the Food web Creation thread we're discussing there how to make dynamic niches, defined by properties required by the environment and lower trophic levels.
Back to top Go down
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 9:32 am

What do you mean when you say complexity? Are you worried about the players ability to interact with the result, the computational load, or the task of actually coding auto-evo?

I understand your points too, and so long as such a generation happens often enough I think it could work. I hadn't thought about punctuated equilibrium, and thats a good argument for only allowing one organism to evolve, however it's also a good argument for allowing multiple organisms to evolve, when they have good reason to do so (after a disaster or other event). What I'm suggesting isn't that every species evolves, rather that every species has a chance to evolve, that chance normally being around 1%, unless some event raises it (very similair to the probabilities described in this thread).

Whichever we decide, it should be fairly simple to code a system which is capable of both (limiting it to one species per evo-step is a special case of allowing multiple species to evolve per step), so we could test both when needed.

Did you mean this thread? I'll have a look through it this afternoon.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 9:47 am

Seregon wrote:
What do you mean when you say complexity? Are you worried about the players ability to interact with the result, the computational load, or the task of actually coding auto-evo?

I understand your points too, and so long as such a generation happens often enough I think it could work. I hadn't thought about punctuated equilibrium, and thats a good argument for only allowing one organism to evolve, however it's also a good argument for allowing multiple organisms to evolve, when they have good reason to do so (after a disaster or other event). What I'm suggesting isn't that every species evolves, rather that every species has a chance to evolve, that chance normally being around 1%, unless some event raises it (very similair to the probabilities described in this thread).

Whichever we decide, it should be fairly simple to code a system which is capable of both (limiting it to one species per evo-step is a special case of allowing multiple species to evolve per step), so we could test both when needed.

Did you mean this thread? I'll have a look through it this afternoon.
Yep, that's the thread I was referring to. With complexity i'm talking about the computational load. I also think there is a chance to create paradoxes with many organisms evolving at once, although I haven't thought of any specific cases in which this might happen.

I'm not sure I understand what you mean here- in the current model, every species does have a chance to evolve in each generation, some just have a higher chance than others, based on their populations and reaction chances. Do you mean that even if the evolution program does not pick a creature, it still has a dice-roll chance at evolving? That sounds like a pretty good Idea to me, actually.

Back to top Go down
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 9:58 am

Thats pretty much exactly what I mean. In your model a single die is rolled to decide on a species to evolve, and a second die is rolled to chose a mutation. What I suggest is that a die is rolled for every creature, deciding whether it will evolve, regardless of what happens to other creatures this step (what happened last step may change probabilities this time round).

A simple example:
Code:
3 species, A-C, with populations 100, 200, 300.

Base probabilities:
A = 100 / 600 = 17%
B = 200 / 600 = 33%
C = 300 / 600 = 50%

In your model a single die is rolled: p = [0 1]
if 0    < p < 0.17    -> A evolves
if 0.17  < p < 0.5      -> B evolves
if 0.5  < p < 1.0      -> C evolves
only one of the three can evolve

in my model, three dice are rolled: p1, p2, p3 = [0 1]
if  p1 < 0.17 -> A evolves
if  p2 < 0.33 -> B evolves
if  p3 < 0.5  -> C evolves
all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028)

If a species is chosen to evolve, auto-evo handles mutations for each one exactly how you've described before.

In reality all these probabilities should probably be much lower, and would be with more species and a bit of tweaking, but hopefully this makes everything a little clearer?
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 10:04 am

Seregon wrote:
Thats pretty much exactly what I mean. In your model a single die is rolled to decide on a species to evolve, and a second die is rolled to chose a mutation. What I suggest is that a die is rolled for every creature, deciding whether it will evolve, regardless of what happens to other creatures this step (what happened last step may change probabilities this time round).

A simple example:
Code:
3 species, A-C, with populations 100, 200, 300.

Base probabilities:
A = 100 / 600 = 17%
B = 200 / 600 = 33%
C = 300 / 600 = 50%

In your model a single die is rolled: p = [0 1]
if 0      < p < 0.17    -> A evolves
if 0.17 < p < 0.5      -> B evolves
if 0.5  < p < 1.0      -> C evolves
only one of the three can evolve

in my model, three dice are rolled: p1, p2, p3 = [0 1]
if  p1 < 0.17 -> A evolves
if  p2 < 0.33 -> B evolves
if  p3 < 0.5  -> C evolves
all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028)

If a species is chosen to evolve, auto-evo handles mutations for each one exactly how you've described before.

In reality all these probabilities should probably be much lower, and would be with more species and a bit of tweaking, but hopefully this makes everything a little clearer?
That... that is a great idea. It makes a ton of sense, and doesn't disrupt anything else in the system, except for making the modification of odds step for the next generation a bit more complex (which doesn't really matter, seeing as it is already extremely simple.).
Back to top Go down
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 10:12 am

It would make things slightly more complex, but it should just be a case of doing what we were doing anyway, just with more potential changes. If I've understood whats involved correctly (and chances are I've missed a few things), there's nothing here which should take an unreasonable amount of time to compute.

The only reason an auto-evo step should take anything beyond a second or two, is the need to generate new graphical representations for the evolved creatures (new procedural textures, limb structures, procedural animation?), but I have no way of knowing how long that could take regardless of how many creatures evolved. Keeping in mind that you'll only see those creatures in your biome anyway, it's something we can reasonably tackle once we get there.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 10:19 am

Seregon wrote:
It would make things slightly more complex, but it should just be a case of doing what we were doing anyway, just with more potential changes. If I've understood whats involved correctly (and chances are I've missed a few things), there's nothing here which should take an unreasonable amount of time to compute.

The only reason an auto-evo step should take anything beyond a second or two, is the need to generate new graphical representations for the evolved creatures (new procedural textures, limb structures, procedural animation?), but I have no way of knowing how long that could take regardless of how many creatures evolved. Keeping in mind that you'll only see those creatures in your biome anyway, it's something we can reasonably tackle once we get there.
Yes, it seems like this wouldn't change very much at all, computationally. As long as we limit the total number of species in a biome, the representation shouldn't be much of a problem either. I'd hate to pin people to a loading screen, so I'd suggest that as soon as a generation finishes mutating, the next generation begins to compute, so that all of the /model/texture/behavior changes are done within the time limit of the generation.
Back to top Go down
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 10:25 am

That's another good point, many of these things can be computed in the background. The game would need to know about any disasters which are going to happen beforehand, but that's not unreasonable either. At the very least all biomes besides that of the player can be pre-computed, so that the player can have some influence on the auto-evo process through actions taken during the play session, that leaves just one biome to compute. If there's any need for a loading screen at all, it'll be for graphical changes, not the auto-evo step.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 10:39 am

Seregon wrote:
That's another good point, many of these things can be computed in the background. The game would need to know about any disasters which are going to happen beforehand, but that's not unreasonable either. At the very least all biomes besides that of the player can be pre-computed, so that the player can have some influence on the auto-evo process through actions taken during the play session, that leaves just one biome to compute. If there's any need for a loading screen at all, it'll be for graphical changes, not the auto-evo step.
Exactly, only the biome(s) you live in will be affected.
Back to top Go down
roadkillguy
Experienced
roadkillguy


Posts : 528
Reputation : 17
Join date : 2010-08-25
Age : 30
Location : Rhode Island

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 11:22 am

Code:
in my model, three dice are rolled: p1, p2, p3 = [0 1]
if  p1 < 0.17 -> A evolves
if  p2 < 0.33 -> B evolves
if  p3 < 0.5  -> C evolves
all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028)

I thought that's what we were already doing...

I have another programmatical summary:

-The game enters the preparation phase.
-The game goes through the list of animals, and randomly decides whether to evolve them or not (Based on population/Total population).
-If one is chosen, it is randomly mutated. (We should try to randomly choose them, so it's not order-biased)
-If the random mutation would otherwise fail the next scenario, it's dealt with properly. I.E. it and any other affected organisms are given a reaction mutation. (Would an organism react to it's own stomach malfunction? I think so.)
-The game starts the next scenario.

What about reactions to reaction mutations?
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 12:14 pm

roadkillguy wrote:

What about reactions to reaction mutations?
Reactions to reactions are handled in the same way they always have been. With multiple mutations per generation though, in enough time, all organisms will be getting reaction mutations, so we need to define how different reactions change the odds.
Back to top Go down
guitar999111
Newcomer



Posts : 18
Reputation : 0
Join date : 2011-08-08

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 12:54 pm

Why not just go through the list of animals once per generation? I realize that's a little different than before, but with multiple mutations per generation now, if A mutates, it would affect B's chances if B is threatened by it, which could affect C etc. If the list is unordered, or stepped through randomly, this removes order bias. This should stop runaway mutation arms races, but it seems like I'm always missing something.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 1:05 pm

That's not really how evolution works- the essential randomness of game evolution is a great mimic of life- giving it more structure doesn't really do much, and arms races are not uncommon in nature.
Back to top Go down
Seregon
Regular



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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 1:06 pm

Roadkill - the only real difference between our ideas is when the reaction takes place. In what I suggest, species would only be able to react in the next step, this ensures that each species makes at most one evolution per step. While you could react to each evolution immediately, there's a risk that this could cause more reactions, which in turn could cause even more, causing an evolution 'explosion' (but hey... I guess the cambrian explosion probably went a little like that). Think of it like double-buffered evolution, at each timestep each species has perfect information about what happened last step, but no information at all about this step.

Guitar - we could do that (assuming we're running multiple generations at the same time), but it's slightly better to avoid order advantage completely by only having species 'aware' of what happened the generation before this one (again like double buffering, this way all species always have complete, if slightly old, information).

The only real advantage to not double buffering is saving on computation time, and a little bit of memory, however the computational cost of randomizing the list is probably greater (though neither is significant). I'm not sure whether the memory saving would be significant or not, so long as you work with one species at a time I don't think that'd matter either.

edit:
~scio - I had a look through that thread, and it looks much better than what I'd read so far. I'll see if I can come up with anything to add to it later.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyThu Aug 11, 2011 1:45 pm

Seregon wrote:
Roadkill - the only real difference between our ideas is when the reaction takes place. In what I suggest, species would only be able to react in the next step, this ensures that each species makes at most one evolution per step. While you could react to each evolution immediately, there's a risk that this could cause more reactions, which in turn could cause even more, causing an evolution 'explosion' (but hey... I guess the cambrian explosion probably went a little like that). Think of it like double-buffered evolution, at each timestep each species has perfect information about what happened last step, but no information at all about this step.

Guitar - we could do that (assuming we're running multiple generations at the same time), but it's slightly better to avoid order advantage completely by only having species 'aware' of what happened the generation before this one (again like double buffering, this way all species always have complete, if slightly old, information).

The only real advantage to not double buffering is saving on computation time, and a little bit of memory, however the computational cost of randomizing the list is probably greater (though neither is significant). I'm not sure whether the memory saving would be significant or not, so long as you work with one species at a time I don't think that'd matter either.

edit:
~scio - I had a look through that thread, and it looks much better than what I'd read so far. I'll see if I can come up with anything to add to it later.
Sounds good. I'm brainstorming more autotroph attributes and predatory definitions.

Also, remember that in nature, reactions do happen over time- evolution is a gradual process, so running reactions in the same generation doesn't really make sense, and as Seregon pointed out, it can result in indefinite arms races within the computation of one generation.
Back to top Go down
Redstar
Newcomer
Redstar


Posts : 32
Reputation : 0
Join date : 2010-11-12
Age : 38
Location : Portland, OR, USA (GMT -8)

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptySun Oct 30, 2011 3:58 am

Happy Halloween. I'm haunting you. BOOOOO.

Seriously, can I just say first that this is the best forum I have ever been to, and it's super refreshing to have exclusively awesome, intelligent people on a board.

I have not been able to get the grin off my face since I started reading this thread. Seriously OMG. I have been away from this project years but it still warms my heart to see this problem beaten down to details. I am sorry for gushing, but I am so ridiculously impressed by everyone's ideas that I can't help it.

Of course, I want to contribute to a point I haven't seen discussed (because everything that's been talked about has been addressed thoroughly and incredibly).

Scio said that there's a small chance a species may divide into two species upon evolving. Since we've already determined that what evolution is received is essentially random, we can call it a die roll upon a table - for the example, let's say a d20, though any number would do. In this case, a roll of 20 would result in speciation. But what does that mean? New species don't just arise and replace the old ones.

What if, on a roll of 20 - or whatever integer [die sides=] - the organism is copied, and each copy then rolls again on the table, resulting in two divergent organisms? Seems like this could mix a little added interest into gameplay when speciation occurs.

Also, it might be interesting to make it so that, if an organism 'rolls' a 1 on the table, the organism receives no evolution, but one of its 'affected' orgs still receives a 'reactionary' adaptation to its current state. Doable?

If this is crazy, forget it - I've been DMing D&D games recently, and and I've found that the best way to keep gameplay fresh is to introduce elements of planned-but-unpredictable randomness into it.

Again, I am so impressed by everything I see whenever I come here. It is an honor to attempt to help you at all.
Back to top Go down
The Uteen
Sandbox Team Lead
The Uteen


Posts : 1476
Reputation : 70
Join date : 2010-07-06
Age : 27
Location : England, Virgo Supercluster

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptySun Oct 30, 2011 5:59 am

Welcome back, Redstar!

I was under the impression a mutation could result in a split, so an organism has a mutation as normal but another species arises as it was before the mutation.

However, I do like your idea of a split before the mutation, and then the species reacts to itself. Interesting, but it could make it slightly one-sided to the one that got a mutation.
I think, when they split, if they both experienced a mutation to themselves, neither would have a major disadvantage over the other. Additionally, chances are they will be different types of changes and will diverge the species, so they don't seem so much like the same organism any more.
Back to top Go down
Commander Keen
Industrial Team Lead
Commander Keen


Posts : 1123
Reputation : 36
Join date : 2010-07-23
Location : Czech Republic (not that anyone would know where it is...)

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptySun Oct 30, 2011 10:39 am

Wow, I have never thought I would ever see that avatar again. Welcome back, Redstar!
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptySun Oct 30, 2011 2:17 pm

Thanks a ton for stopping in and all the encouragement.
Originally my idea for divergence was to simply split the species in two one round, and then treat them as separate species the next round. Your way works very well as well. I'll put some thought into it.
Back to top Go down
GhengopelALPHA
Newcomer
GhengopelALPHA


Posts : 18
Reputation : 0
Join date : 2011-11-23

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyWed Nov 23, 2011 7:56 pm

Hi all,
I had an idea for how to drive the NPC auto-evo, via threats. In AIs-null's simulator called ScriptBots, and through changes that I made to that program, I've witnessed that threats to a species are what drive evolution. If we boil down the real world to threats, and species reactions to threats are what we call evolution, then I say we do this:
Let's say we have an island biome of temperate forest, and three species living on the island. All three are competing for the same food source, so they cause a threat to each other that is related to their population. IE Species 1 has 20 members, species 2 has 50, and species 3 has 100, thus species 1 has a threat level of 150, species 2 a threat level of 120, and species 3 is dominating with only 70 threat points (assuming a constant of 1*SUM(other creatures)=threat level). Species 3 is clearly dominant, and is getting a good share of food, space, etc, and species 1 is barely hanging on. However, let's say that species 1 is omnivorous and eats species 2 and 3. That adds threat points back onto those species which species 1 eats, and (assuming a constant of 3*SUM(predator creatures)+=threat level) gets a final count of 150 threat points for species 1, 180 for species 2, and 130 for species 3. Under these rules, species 2 is given a chance to split and mutate, because it is the most threatened species, via Competing for Resources and being Hunted.

There would then be a set of conditions which, if met, put threat points on the species concerned. There could be many (and there could even be some from events) but here are some that I can think of:
-Hunted (if there is a population of carnivores which eat this species)
-Competition (if there is another species which requires the same resources (food, water, materials) as this species)
-Lack of Resources (if there are no available resources which this species requires)
-Inhospitable Biome (if the species has found itself in the incorrect biome)

Finally, if we consider the whole dimension of a planet's ecosystem as a chessboard, and the various species as pieces, then the game is played by pieces which move one at a time, threaten other pieces which have what they want, spread to other squares when threatened, and take other pieces by either direct or indirect action (eating them vs eating their food). This system could then be extended to plants as well, and copies of "pieces" represent the population of the species.

I'm thinking that the best way to drive evolution is through threats, and even if the agent-by-agent mutation method is too long and tedious to use for a game, emulating the causes and the effects with generalized reasons to evolve are probably best.
Back to top Go down
Dr_Chillgood
Newcomer
Dr_Chillgood


Posts : 56
Reputation : 6
Join date : 2011-10-26

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyWed Nov 23, 2011 8:20 pm

^I actually did roughly that for cellular auto evo (link here: https://thrivegame.canadaboard.net/t665-cellular-evolution-concept-questions) where basically the cells should evolve based on what is threatening it.
edit: did you say you program? *drools lightly* so excellent.
Back to top Go down
Pezzalis
Regular
Pezzalis


Posts : 260
Reputation : 6
Join date : 2010-08-07

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyWed Nov 23, 2011 10:46 pm

So wait would that mean that a species is a bigger threat to another competing for the same food source because there are more of them?

Wouldn't that mean locusts are a bigger threat to us than we are to them? I might have read that wrong but population size should not be the key to evolutionary success.
Back to top Go down
~sciocont
Overall Team Lead
~sciocont


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

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyWed Nov 23, 2011 10:54 pm

@GhengopelALPHA
That'a a cool idea, and really well thought out, but I'm not sure how it fits into the current concept. It's a bit more complex and accomplishes essentially the same thing as the CC of NPC evo, except we're going to run more than one mutation per generation now, because the game will move a lot faster that way.

Perhaps you could work threats into determining what makes organisms evolve in different ways?
Back to top Go down
GhengopelALPHA
Newcomer
GhengopelALPHA


Posts : 18
Reputation : 0
Join date : 2011-11-23

NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 EmptyMon Nov 28, 2011 4:09 pm

Dr_Chillgood wrote:
^I actually did roughly that for cellular auto evo (link here: https://thrivegame.canadaboard.net/t665-cellular-evolution-concept-questions) where basically the cells should evolve based on what is threatening it.
edit: did you say you program? *drools lightly* so excellent.

I do see how your system takes threats into account, and my idea is to build a system which recognizes why organisms died, and that would plug into your different reactionary evolution sets. (And I agree that a species successfulness should be gauged by the rate of population change.) Perhaps it would be best if we rank organisms from most successful (positive numbers) to least successful (negative numbers) and take the top 3 or so least successful species and look at what's causing their population to go down (competition, being eaten, fast natural death rate, etc), and evolve something related to the greatest threat.

And not exactly; I can understand how a program works which has already been written. I can look at a program and see what features are missing/not right/too much and change them how I see fit.

Pezzalis wrote:
So wait would that mean that a species is a bigger threat to another competing for the same food source because there are more of them?

Wouldn't that mean locusts are a bigger threat to us than we are to them? I might have read that wrong but population size should not be the key to evolutionary success.

There probably should be modifiers like metabolism, lifespan, and intelligence (technology), which decrease the threats on each individual species (a species which can live longer naturally has an advantage over all threats, I think. Same for intelligence). And not to mention the "population" of the source of shared food also has an effect (large amount of resources mean food can be consumed by both populations without negative effects on each other). So to answer your question about locusts being a big threat to us, they aren't overall, but based on population, yes. It's the effects of our long lifespan and the large variety of food which we humans eat that mostly negate this threat.
Something like this: Total threat level = Competition + Consumption - Average lifespan - Available resources = Locusts population + Humans eaten - Average human lifespan - Plentiful food or resource population(s)
If I could find some numbers on current locusts populations I'd plug all the numbers in and see what we get, but I think the fact that we eat so many other sources of food more than negates the large population of locusts. Also, the equation is quite likely much more complicated, but that's what I came up with in about 30 minutes.

And I do believe that population is key to evolutionary success; it's only by being plentiful that a species can be capable of evolution, and I consider population to be the gauge of success.
Back to top Go down
Sponsored content





NPC Auto-Evo Thread - Page 5 Empty
PostSubject: Re: NPC Auto-Evo Thread   NPC Auto-Evo Thread - Page 5 Empty

Back to top Go down
 
NPC Auto-Evo Thread
Back to top 
Page 4 of 8Go to page : Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
 Similar topics
-
» [ARC] Auto Evo- I think I have a solution
» Why Auto-Evo is Dead
» How Auto-Evo Will Work
» Miscellaneous Bugs And Questions That Don't Deserve Their Own Thread Thread
» Miscellaneous Bugs And Questions That Don't Deserve Their Own Thread Thread

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