Coding Adventure: Simulating an Ecosystem

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ก.ย. 2024

ความคิดเห็น • 2.7K

  • @unity
    @unity 5 ปีที่แล้ว +4844

    Great video Sebastian! Super interesting use of Unity! - Matt

  • @sykoo
    @sykoo 5 ปีที่แล้ว +237

    These Coding Adventures are fantastic! 😁
    Also that reproduction animation though... thought TH-cam would take this down for a moment 😂

    • @SebastianLague
      @SebastianLague  5 ปีที่แล้ว +27

      Thanks Sam!

    • @jtiumproductions7629
      @jtiumproductions7629 3 ปีที่แล้ว

      lmao

    • @ebrahimmomin7518
      @ebrahimmomin7518 3 ปีที่แล้ว +2

      @@SebastianLague how do u know everyones name? u also knew the unity guys name

    • @absolutewisp
      @absolutewisp 3 ปีที่แล้ว +3

      @@ebrahimmomin7518 The Unity guy signed their comment he left with his name

    • @ebrahimmomin7518
      @ebrahimmomin7518 3 ปีที่แล้ว +1

      @@absolutewisp oh

  • @MrJimbo925
    @MrJimbo925 ปีที่แล้ว +99

    I know this is 3 years old now, but I really want a part 2 please.

    • @ziphy_6471
      @ziphy_6471 4 หลายเดือนก่อน

      a

    • @MrJimbo925
      @MrJimbo925 4 หลายเดือนก่อน

      @@ziphy_6471 b

  • @samllyn
    @samllyn 4 ปีที่แล้ว +471

    "if she rejects him he'll add her to his mental list of unimpressed females and wont approach her again"
    good guy rabbit
    "until he's forgotten about it a little while later"
    typical guy rabbit

    • @andrew-paulclements1502
      @andrew-paulclements1502 4 ปีที่แล้ว +38

      Good Guy Rabbit with bad memory.

    • @kristimeacham6987
      @kristimeacham6987 3 ปีที่แล้ว +32

      Lolol *codes in "ForgetRejection"*

    • @baronvonbeandip
      @baronvonbeandip 3 ปีที่แล้ว +12

      Also called persistence.

    • @lelrond
      @lelrond 2 ปีที่แล้ว +25

      @@baronvonbeandip nooo what. If you've been overtly rejected, never ever pressure the person you're interested in. It's nearly always highly uncomfortable for them and your chances of success are low anyway. Just stop. :(

    • @inanitas
      @inanitas 2 ปีที่แล้ว

      @@lelrond hiGhLy uNcomPfoRtAbLE. Yeah right mate, that is life. If you're uncompfortable with being asked again way later you should just stay inside, because that is what babies are supposed to do. A generation of wimps man, I hate them.

  • @sujalx86
    @sujalx86 4 ปีที่แล้ว +1

    Would love to see another episode with more things added like natural death and also hunger levels for the fox.
    As always the video was 💯% perfect

  • @DaRat100
    @DaRat100 3 ปีที่แล้ว +1

    Thank you for the knowledge, love you!

  • @MultiFreaky123
    @MultiFreaky123 3 ปีที่แล้ว

    I would love to see you explore this a lot more. There are so many things to add and interesting discoveries to make! Really enjoying your adventures :)

  • @Songfugel
    @Songfugel 4 ปีที่แล้ว

    Wow, this is pretty awesome in its simplicity

  • @matterhorn731
    @matterhorn731 3 ปีที่แล้ว

    The difficulty in getting the species to coexist and the scenario where the rabbits managed to survive actually has an ecological basis. An experiment involving herbivorous and predatory mites on various landscapes of orange slices found that the populations could coexist for longer when the layout was more varied and "patchy" (Huffaker's mite experiment, 1958). Basically, there needed to be isolated refuges where the prey population could rebound and spread out from when the predator population was low.
    It looks like the simulation where the rabbits survived _had_ a refuge like that. The problem may have been that there was only _one_ refuge, and that it was _very_ isolated (with only that narrow strip connecting it to the rest of the landscape). Because of this, the rabbits didn't spread out from the refuge until after the foxes had already gone extinct. If you the simulation was larger, with more refuges and a somewhat lower difficulty in moving between them, maybe it would have worked, with oscillations similar to the Lotka-Volterra equations?

  • @MiquelCanal
    @MiquelCanal 2 ปีที่แล้ว

    I'm enjoying your channel a lot, impressive work Sebastian!

  • @Tanukieats
    @Tanukieats 5 ปีที่แล้ว

    I don't code so... will there be a .exe of this?
    Just happened to stumble in on your videos and I am very happy I did. GOOD JOB and keep on doing what you do!

  • @Cenoion
    @Cenoion 2 ปีที่แล้ว

    Would have been nice to meet Lotka Volterra assumptions to model certain population dynamics. Anyway, great video for illustrating simple ecological models!

  • @TF8ase
    @TF8ase 3 ปีที่แล้ว

    Wow. Really fascinating. Helps me appreciate our own ecosystem. Beauitully done as always.

  • @DreadKyller
    @DreadKyller 4 ปีที่แล้ว +1

    The foxes should have had a hunger and thirst as well if they didn't, because it seems like they didn't, they don't normally just eat 24/7. Bunnies need to eat a lot because they're small and move around a lot, foxes store more food and so don't need to eat all the time.

  • @oatcube3961
    @oatcube3961 3 ปีที่แล้ว

    Awesome stuff. I've been building a colony simulator where the people are a small group in a huge space ship stranded on a long interstellar travel. It's fun to tweak numbers and see how they cope. I have hunger, reproduction, happiness as the main values. Also lack of logistics or security and a death of other people around lower their happiness. It was very fun to see them "live the first time". With enough intertwining systems, even the designer/coder might not know what the end result is.

  • @Luxius1000
    @Luxius1000 3 ปีที่แล้ว +1

    this is actually nuts

  • @raphaelhenker8771
    @raphaelhenker8771 2 ปีที่แล้ว

    Maybe if you gave the foxes an timer of when they die of old age it could create an balance between rabbids and the foxes:
    The rabbids have three ways to die, Hunger, thirst, Fox.
    The foxes only two, being Hunger and thirst.
    If the rabbid population rises the foxes basically loose death through starvation, and having more time to find water as they keep finding prey faster removes thirst as well.
    This leaves no cause of death to keep the fox Population in check.
    Having then die of old age faster than the rabbids do, making them more thirsty than hungry can make sure that a balance is found and both species Population can rise without fear of extinction

  • @da_meowlord6669
    @da_meowlord6669 3 ปีที่แล้ว

    This is awesome, I wish I could know how to do stuff like this

  • @evelynjung6801
    @evelynjung6801 4 ปีที่แล้ว +1

    me: wait, its all minecraft?
    Sebastian: always has been

  • @maelfesh4408
    @maelfesh4408 4 ปีที่แล้ว

    That was incredibly interesting

  • @Psycham0
    @Psycham0 4 ปีที่แล้ว

    Please make a part 2, i Loved this!. just add something that can eat the foxes? and that it can be circle of life or something :)

  • @minerkey682
    @minerkey682 4 ปีที่แล้ว

    Hey guys, god here - and welcome to another video in my devlog series tracking the development of "life", a small indie sandbox game I'm making

  • @pianovio1546
    @pianovio1546 4 ปีที่แล้ว

    This is really interesting. I think the way you can maintain an ecosystem with both foxes and rabbits is to give the rabbits a place to hide.

  • @jamesgabor9284
    @jamesgabor9284 4 ปีที่แล้ว

    Add more variables especially to foxes...
    Interesting idea: add size as a variable to bunny’s, the bigger the bunny, the more a fox’s hunger is quenched, but, there are killer bunnies, which will act normal, be a bit large, but eat foxes if they get attacked. Foxes will have a variable about their preference of rabbit size

  • @JM-Games
    @JM-Games 4 ปีที่แล้ว

    It would have made it more interesting if the rabbits could use rabbit holes and hide, that way they would only get caught when they come out for food or water, they could re-produce underground for safety and bring food to there little ones so they don't have to risk the babys lives with them being weaker, they should only come out when hunger and thirst is too much and the parent hasn't found anything or has been eaten, I think making it more accurate to how they co-exist in nature would have shown better results in your simulation.
    The second thing would have been sleep and mating seasons, foxes are known to breed more during the day seasonally where as rabbits breed all year around at any time they are awake, this would mean that rabbits would reproduce a tonne more than any fox would.
    The rabbits just had too many limitations when the risk was so high, they had no escape but was being picky on the color of fur when mating.

  • @rilke1791
    @rilke1791 4 ปีที่แล้ว

    This is incredibly simple and I do not think it represents an ecosystem at all. Water should be more dispersed, possibly allowing for rabbits to leave safe spots they have possibly found (high elevation, crevices, island) but once they visit that place once, possibly through parents or personal experience, they will travel to it again from their safe spot, risking getting eaten.
    Second, the foxes, they just go killing sprees, adding thirst, energy, and eagerness it kill could help the foxes be stable. Thirst is obvious, but energy, is used for everything, drinking, and walking, on top of that they should have run and walk, run using more energy. Adding more reason for speed variation. And eagerness to kill. Would be a genetic trait, and the higher it is, the more likely it is to kill at random. This could be improved in so many ways and love to see an update where the systems are fleshed out more.

  • @marianpazdzioch6632
    @marianpazdzioch6632 5 ปีที่แล้ว +4

    What kid of framework did you use for visualisation ?

  • @ttpechon2535
    @ttpechon2535 3 ปีที่แล้ว

    I died laughing in the first clip with the fox

  • @sanderdrack
    @sanderdrack 3 ปีที่แล้ว

    Showing code: NO
    Showing game scene: sure!

  • @marckart66
    @marckart66 3 ปีที่แล้ว

    I bet if you coded the foxes to fight each other when rabbit population was down, it would balance itself out!

  • @arthurn986
    @arthurn986 5 ปีที่แล้ว

    Pls do more like this

  • @tarena397
    @tarena397 3 ปีที่แล้ว

    I think you should have added hunger and thirst to foxes, say 3 rabbits per day is enought

  • @KreVagyok
    @KreVagyok 4 ปีที่แล้ว +1

    This is a pretty nice project! Thanks for sharing the code. I'm just deep into that, and soo curious: why did you use this kind of noise? Is it better / faster / nicer for this project than the mathf.perlinNoise?

  • @volkmardeadguy1557
    @volkmardeadguy1557 3 ปีที่แล้ว

    i just noticed the captions keep calling the genes jeans

  • @JakeyCroft
    @JakeyCroft 5 ปีที่แล้ว +4

    Is there going to more neural network videos?

  • @jasondeng7677
    @jasondeng7677 4 ปีที่แล้ว +1

    Rabbit with full reproduction urge: *starving, searching for a mate

  • @ajinkyasanas2256
    @ajinkyasanas2256 3 ปีที่แล้ว +1

    Game like equilinox by thin matrix

  • @Fennnnn
    @Fennnnn 4 ปีที่แล้ว

    He's like internet Bob Ross

  • @jacobdavidcunningham1440
    @jacobdavidcunningham1440 2 ปีที่แล้ว

    1:10 oof feels

  • @rebel6301
    @rebel6301 4 ปีที่แล้ว

    i clicked because
    heehoo its fox
    yes thats right i cannot resist this video because it involves foxes

  • @lowkeylowkey1000
    @lowkeylowkey1000 4 ปีที่แล้ว

    People often think of a females nipples as being a benign attracter. But this is a interesting example in this simulation. Attraction is multi-level function, baked into human instinct. When women ask a male "why do men like breasts so much?". Becuase we have evolved a program that makes us seek them out for food. Imagine starving or to a lesser degree, hunger. Now with that in mind, a male must seek a femalewith the best ones. Best, shape, size, color, etc..
    At these bunnies don't have to worry about elaborate instinctual schemes lol

  • @jar5498
    @jar5498 2 ปีที่แล้ว

    "If she rejects him, he'll add her to his list of unimpressed females and won't approach her again until he's forgotten about it a little while later" so basically humans?

  • @Sulfrix_
    @Sulfrix_ 4 ปีที่แล้ว +3456

    4:14 "So i made something that hopefully looks at least a little bit like a fox"
    *shows a beautiful low poly fox model*

    • @icegod4849
      @icegod4849 4 ปีที่แล้ว +107

      IKR I wish I had that level of awesome rendering skills

    • @disrespecc9678
      @disrespecc9678 4 ปีที่แล้ว +152

      The rabbit model: **jealous**

    • @luxraider5384
      @luxraider5384 4 ปีที่แล้ว +11

      @@icegod4849 he may have just picked an opensource fox model

    • @olfmombach260
      @olfmombach260 4 ปีที่แล้ว +52

      @@luxraider5384 no, Sebastian Lague ain't no liar

    • @jarblewarble
      @jarblewarble 3 ปีที่แล้ว +8

      These low-poly models would look even better if they were rendered using subdivision surfaces.

  • @Vohasiiv
    @Vohasiiv 5 ปีที่แล้ว +7948

    Shouldn't the foxes also have thirst and only eat if they need to? It might be more stable if they have other things to think about than to kill everything in sight

    • @nalissolus9213
      @nalissolus9213 5 ปีที่แล้ว +1201

      Same exact thoughts. Running (or moving in general) after rabbits should cost calories and thirst.

    • @sal_strazzullo
      @sal_strazzullo 5 ปีที่แล้ว +887

      And they should be full after a certain amount of rabbits eaten

    • @icecoldnut5152
      @icecoldnut5152 5 ปีที่แล้ว +423

      @@nalissolus9213 or make them not eat if they arent hungry enough

    • @OfficalCali
      @OfficalCali 5 ปีที่แล้ว +201

      Vohasiiv predators don’t just prey, they eat drink and ante as well. And most predators eat and don’t eat for a long time after a meal

    • @man.horror
      @man.horror 5 ปีที่แล้ว +192

      Exactly, big reason for failed hunts is a predator runs out of energy and prey gets away.

  • @thel0n3lytramp63
    @thel0n3lytramp63 4 ปีที่แล้ว +1041

    The foxes should hunt only when they are hungry, the foxes should also need to drink water as well.

    • @T1Oracle
      @T1Oracle 4 ปีที่แล้ว +112

      They should also get more hungry and thirsty the longer they hunt and die if they don't eat or drink enough.

    • @lennonjesus3673
      @lennonjesus3673 4 ปีที่แล้ว +96

      And they should take a little more time to eat the bunnies instead of instant.

    • @JDKDKDLDKDKDKDKKKDERYY
      @JDKDKDLDKDKDKDKKKDERYY 3 ปีที่แล้ว +1

      do it

    • @talonstride
      @talonstride 3 ปีที่แล้ว +2

      Are foxes omnivores or carnivores?

    • @hugo57k91
      @hugo57k91 2 ปีที่แล้ว +1

      @@T1Oracle Isn't that a self feeding cycle

  • @mustafazemin7101
    @mustafazemin7101 3 ปีที่แล้ว +466

    The worst part of this video is that it ends

  • @leeroyjenkns5182
    @leeroyjenkns5182 5 ปีที่แล้ว +5790

    Foxes: **Eat rabbits**
    Rabbits: **Die**
    Foxes: (・□ ・)

    • @___xyz___
      @___xyz___ 5 ปีที่แล้ว +18

      ??? That made absolutely no sense.

    • @carteradams43
      @carteradams43 5 ปีที่แล้ว +48

      @@___xyz___ no

    • @ratboychase
      @ratboychase 5 ปีที่แล้ว +152

      @@___xyz___ the foxes eat all the rabbits, the rabbits die, fox regret

    • @skylarkenneth3784
      @skylarkenneth3784 5 ปีที่แล้ว +40

      @@___xyz___ I think "All Rabbits: Die" would've made it clearer

    • @Phychologik
      @Phychologik 5 ปีที่แล้ว +68

      Guys it's a surprised pikachu face

  • @mikaxms
    @mikaxms 5 ปีที่แล้ว +3158

    I think the foxes kill all of the rabbits, because of balancing issues. The foxes should reproduce slower and take longer before they are hungry, resulting in more rabbits per fox. The foxes also don't have any preditors, so the growth is only controlled by the survival meters. Also can the animals die of old age?

    • @Jonestr1986
      @Jonestr1986 5 ปีที่แล้ว +369

      I was thinking a long the same lines. A fox would only eat one-ish rabbit per day, breed slower and, have other things to occupy their time when they aren't hungry. Rabbits would also be more defensive, like those hiding rabbits via burrows.

    • @milanstevic8424
      @milanstevic8424 5 ปีที่แล้ว +135

      That's only to show that playing God ain't easy.
      Nature certainly has some self-balancing parameters at play, though it provably provides catastrophes and extinction events in case something overly disruptive happens, so these self-balancing parameters appear to be part of the gradual evolution of the species across the board, and not a part of some general design. In other words, Seb's approach to modelling this is fairly accurate, it's just that balancing it is HARD. It has to work by iteration and you simply cannot expect it to be absolutely perfect ever (unless an AI was implemented to address this self-correcting behaviour on its own, which would be interesting to watch; and since the AI would also have to learn the rules on the fly, it wouldn't do things any better than a human would, it would only learn more reliably and apply changes faster; by this argument, God is imperfect by definition lol, hence any theological God cannot possibly exist, because the omnipotence there is assumed).
      All being said, this is definitely not a simulation, but a playful exploration of how to implement a basic living ecosystem in Unity.

    • @iago1840
      @iago1840 5 ปีที่แล้ว +32

      @@milanstevic8424 lol, the omnipotence paradox is solved if the omnipotent being created a rock he cannot lift in superposition with one he can: That's exactly us, human beings, both under his will and with free-will at the same time. We are the rock God cannot lift, so yes, a omnipotent being is not impossible to exist (neither he needs to create something stronger than him to be omnipotent, he could do that with himself, being infinitely omnipotent)

    • @milanstevic8424
      @milanstevic8424 5 ปีที่แล้ว +9

      @@iago1840 absolutely true, but that argument presupposes free will, while mine is completely mechanical, or at least I tried to make it as such.
      from that point on, of course strictly theologically speaking, God could exist, but he would have to abandon the notion of omnipotence. therefore things could happen without his own volition (in other words, he's ought to make a mistake), and this is basically what Devil is -- clearly a religious notion of free will/err as you described it. but still no omnipotence anywhere to be seen. I guess it would violate all laws of thermodynamics anyway :)
      anyhow, all of this is practically a nod in the direction of simulation hypothesis imho. not that I'm prescribing it as a solution per se, but it's definitely a strong suggestion.
      not to mention that here we are, in a cascade down the ladder, commenting a simulated ecosystem as if we're Gods, yet we can all agree that we're not omnipotent.

    • @iago1840
      @iago1840 5 ปีที่แล้ว +7

      @@milanstevic8424 well, there's still omnipotence there, an omnipotent being should just be able to do something, not forced to do it to prove he's omnipotent, and teologically speaking, he would not even be part of reality, violate thermodynamics is as easy as stopping imagining the world (because this is kinda what it means teologically: God don't create things and let them alone as we humans "do", he keeps "thinking" or "recreating" everything to these things exist on our reality, just as how we imagine things: if we stop imagining, it simple vanishes from the "imagination reality" - that kinda creates other paradox, as he's not omnipotent if he needs to be imagining all things, but he's omnipotent, omniscient and omnipresent, related to what WE call reality, just as we're omnipotent, omniscient and omnipresent related to our imagination)

  • @bira3232
    @bira3232 5 ปีที่แล้ว +2833

    god: But unfortunately i wasn't gonna let him have such an easy life.

    • @leaderofcommunistchina1427
      @leaderofcommunistchina1427 5 ปีที่แล้ว +26

      Underrated comment

    • @metooo668
      @metooo668 4 ปีที่แล้ว +22

      Why God WHY!?!

    • @vladimirpokras9600
      @vladimirpokras9600 4 ปีที่แล้ว +28

      World History in a nutshell

    • @torneydou
      @torneydou 4 ปีที่แล้ว +8

      I looked at this comment just when he said that lol

    • @Stefankr.23
      @Stefankr.23 4 ปีที่แล้ว +2

      I read this comment as i heard him say it?!

  • @sheditz4962
    @sheditz4962 4 ปีที่แล้ว +1097

    bunnies: jump up and down
    youtube: DEMONETIZED FOR SEXUAL CONTENT

    • @sethdesilva
      @sethdesilva 4 ปีที่แล้ว +12

      69 likes so cant add one more

    • @sheditz4962
      @sheditz4962 4 ปีที่แล้ว +19

      @@sethdesilva You are doing a good deed my sir.

    • @sheditz4962
      @sheditz4962 4 ปีที่แล้ว +34

      @@whenyournameisduoduos1282 Sorry but I'm currently doing homework :/. It's on who asked. The equation is x = 1 - (24/24). X stands for who asked. Could you help?

    • @okyes3995
      @okyes3995 4 ปีที่แล้ว +5

      your brain is the equation

    • @slevinchannel7589
      @slevinchannel7589 4 ปีที่แล้ว +6

      TH-cam cares Shit for that, they just sometimes pretend so people think they're doing their job.
      But actually, you can find anything on TH-cam. ANYTHING. It's disgusting sometimes.

  • @preddy09
    @preddy09 5 ปีที่แล้ว +851

    In the quest for a perfect simulation the more variables you add, the more you realize there are more variables to add.

    • @ETXAlienRobot201
      @ETXAlienRobot201 5 ปีที่แล้ว +10

      yep...
      also
      CLICK HERE AND GET A PRIZE...OR SOMETHING...

    • @TheRainHarvester
      @TheRainHarvester 5 ปีที่แล้ว +5

      Lol, yes. I took a different approach: bio-digital life that emerges from simple rules.. Search my channel for "Heartbeats and blood flow".

    • @peeblekitty5780
      @peeblekitty5780 5 ปีที่แล้ว +4

      Yep. This is why I would have the worst time making a survival simulation game, though it is cool to see when survival game devs put in that extra touch of realism over just "hunger bar thirst bar" without diminishing gameplay, like Saurian's minor digestion delay/fullness bar thing over the normal hunger bar.

    • @d-o-n-u-t
      @d-o-n-u-t 4 ปีที่แล้ว

      More subjects = more variables, but more variables = less subjects because they die off due to having more things to worry about.

    • @ghosthitt849
      @ghosthitt849 4 ปีที่แล้ว +2

      Haha yeah. Every time something is added it becomes more interesting though. If I had more time to learn to create this stuff I would want to mess around with this 24/7

  • @Zholat
    @Zholat 5 ปีที่แล้ว +2498

    So uh.. could you reduce my List of unimpressedFemales? My ForgetRejection Timer seems to have stopped working...

    • @senismarsenis9678
      @senismarsenis9678 5 ปีที่แล้ว +11

      kekkeke

    • @anthonyconde7604
      @anthonyconde7604 5 ปีที่แล้ว +231

      Grow red fur, incel

    • @RoxOn413
      @RoxOn413 5 ปีที่แล้ว +94

      *hands you a can of red paint* there you go m8, now good luck

    • @blackturbine
      @blackturbine 5 ปีที่แล้ว +5

      My ForgetRejection timer overflown functions as My Happens

    • @MouseGoat
      @MouseGoat 5 ปีที่แล้ว +3

      @@anthonyconde7604 woa, brutal

  • @sausytime
    @sausytime 5 ปีที่แล้ว +1134

    Reminds me of Thin Matrix's project Equilinox.

    • @danielridge6000
      @danielridge6000 5 ปีที่แล้ว +44

      I was just thinking the same thing. It's a fun little game to play.

    • @aloufin
      @aloufin 5 ปีที่แล้ว +15

      that video where he gets throat cancer hits hard! like he is trying to live so healthily by eating right and escaping the city to the parks, then bam!

    • @kevnar
      @kevnar 5 ปีที่แล้ว +1

      It also reminds me of Maxis's Sim Life from back in the 90s. You can play it free online, I believe. Worth checking out.
      classicreload.com/res/simlife.html

    • @redfireflames441
      @redfireflames441 5 ปีที่แล้ว +1

      same

    • @ordenhartley1309
      @ordenhartley1309 5 ปีที่แล้ว +4

      Same actually thought that’s what I was clicking on. 😂

  • @stealthy1223
    @stealthy1223 5 ปีที่แล้ว +2564

    *Deploys foxed that can instantly kill a rabbit and never stop eating until everything is dead*
    Ecosystem!

    • @Erebus2075
      @Erebus2075 5 ปีที่แล้ว +86

      that's sound like the first capitalist ;P

    • @ThatOneDudeWhoPostsStuff
      @ThatOneDudeWhoPostsStuff 4 ปีที่แล้ว +4

      Sounds like Epic Games Store. *Capitalism!*

    • @OriginalCatfish42
      @OriginalCatfish42 4 ปีที่แล้ว +11

      Thats not a fox thats a human!

    • @weasle2904
      @weasle2904 4 ปีที่แล้ว +38

      @@dawgie1253 AH yes, we should be employing communism instead. Cuz that always worked out /s

    • @utryping
      @utryping 4 ปีที่แล้ว +24

      Weasle bit defensive are we

  • @SebastianLague
    @SebastianLague  5 ปีที่แล้ว +354

    Hello everyone! Thanks for all the great suggestions so far on how to balance the system, and where to take it in the future. Will definitely work on an updated version sometime!
    Just want to clear up something I inexplicably failed to mention in the video, which is that foxes do have their own hunger/thirst/etc properties, so they’re not just constantly hunting as it appears from the little clip I showed. They do also have longer reproductive cycles, get hungry less quickly than rabbits, and die from old age.
    The code for this project is a total mess, so I don't really want to release it. However, I'm currently reimplementing and expanding on it for a second part, and you can find the work-in-progress code for that here: github.com/SebLague/Ecosystem-2/tree/master
    If you'd like to support the creation of more programming videos like this, please consider becoming a patron of the channel here: www.patreon.com/SebastianLague.

    • @mikaxms
      @mikaxms 5 ปีที่แล้ว +2

      Yeah Primer's videos are great, I discovered him a couple of weeks ago. Your simulation is also more detailed than the Equilinox game from ThinMatrix.

    • @l.t.cgaming2157
      @l.t.cgaming2157 5 ปีที่แล้ว +1

      remake the planet generation series its outdated please

    • @user-xh4vy3ro6y
      @user-xh4vy3ro6y 5 ปีที่แล้ว +1

      Really cool! I bet if you put more species in and alternative food sources for the foxes, the rabbits and foxes could reach an equilibrium. Now I really want to try this for myself!

    • @DeMoZyou
      @DeMoZyou 5 ปีที่แล้ว +6

      Can you show the code?)

    • @muevecubos
      @muevecubos 5 ปีที่แล้ว

      Incredible video! Like many others said any change to get the code of this Code Adventure?? Thanks and awesome job as always!

  • @RobertMilesAI
    @RobertMilesAI 5 ปีที่แล้ว +509

    You and SethBling both doing this kind of thing!
    And yeah, getting predator/prey simulations to be stable usually needs much larger populations

    • @SebastianLague
      @SebastianLague  5 ปีที่แล้ว +89

      Woah, I thought I recognized your name... Love your videos, I always drop whatever I'm doing when I see a new one is out :)
      I'll have to try it with larger populations in the future, thanks!

    • @user-xh4vy3ro6y
      @user-xh4vy3ro6y 5 ปีที่แล้ว +4

      I'm guessing the diversity of species would make a bigger difference compared to raw population size.

    • @DmitryRomanov
      @DmitryRomanov 5 ปีที่แล้ว

      It looks like bigger domain will do. If new bunnies may grow during L/Vfox, the fox may feed itself forever, IMHO. And new seed bunnies may survive because of they are just far enough 🤞🏻

    • @RobertMilesAI
      @RobertMilesAI 5 ปีที่แล้ว +11

      @@SebastianLague Haha, same to you :)

    • @Michal235
      @Michal235 5 ปีที่แล้ว +6

      @@DmitryRomanov I was also thinking about a new attribute of rabbits that would decrease distance from which a predator can sense the rabbit. It would be like:
      > predator sense distance: 1000
      > rabbit hide attribute: 100
      > outcoming predator sense distance for this perticular rabbit: 900
      Young rabbits may have this attribute multiplied (so if a rabbit borns with this attribute equal to 120, when he's young it should be multiplied by ~3, decreasing over time to the value of 120 as he grows).

  • @rendeer8822
    @rendeer8822 4 ปีที่แล้ว +532

    Instructions unclear, am covered red paint and still don't have a girlfriend

    • @Hambo144
      @Hambo144 4 ปีที่แล้ว +33

      You didn't use enough

    • @melody3741
      @melody3741 4 ปีที่แล้ว +31

      You have to hop around randomly then when you see them hop up and down in place!

    • @curiously-cinnamon
      @curiously-cinnamon 3 ปีที่แล้ว +14

      Your first mistake was using paint. A false red coating such as this couldn't possibly attract a female which evolved to have superior eyesight. You must tan your skin red naturally. Secondly, you must reduce your memory capacity so that rejections won't weigh you down for long and you'll get back in the game looking for a GF. Implement these and your chances should increase by 63% by my estimations. Good luck, and do your best!

  • @jcfiggy
    @jcfiggy 4 ปีที่แล้ว +361

    1:15
    Rabbit: “searching for mate”
    Later: “mating”
    Later: “SeArChInG fOr MaTe”

  • @QuestionMark43
    @QuestionMark43 5 ปีที่แล้ว +875

    "Which I hope looks a little bit like a fox." Dude your modeling skills are pretty good no need to flex on us like that...😂

  • @pectoralismajor1097
    @pectoralismajor1097 5 ปีที่แล้ว +515

    The true goal of every Programmer: Becoming a GOD

    • @icegod4849
      @icegod4849 4 ปีที่แล้ว +12

      LMAO so true

    • @benevolentmadman5225
      @benevolentmadman5225 4 ปีที่แล้ว +9

      If you're trying to create something , that's usually the highest skill ceiling you would ever reach in any profession provided they are getting better with practice.

    • @user-me7hx8zf9y
      @user-me7hx8zf9y 4 ปีที่แล้ว +22

      @@benevolentmadman5225
      The words every programmer dreads:
      finally, it works, but is it efficient?

    • @MaiMaiStrawberrylovely7750
      @MaiMaiStrawberrylovely7750 4 ปีที่แล้ว +2

      Yes!!

    • @falconeer4382
      @falconeer4382 4 ปีที่แล้ว +11

      i mean technically if you think about it, if God exists, he literally is a programmer xD

  • @RenbeOfficial
    @RenbeOfficial 5 ปีที่แล้ว +392

    one reason why the foxes dominate is that there's no rest mechanic. in real life apex predators have to expand markedly more energy to acquire their food and generally run their bodies. this is why lions, for example, spend most of their time resting. they preserve their energy so they can hunt successfully.
    if the foxes need to rest for a time after a certain amount of kills then the rabbit population would have time to recover. one way to do this organically would be to give the foxes an exhaustion meter and allow them to hunt until said meter has run out, then have them rest for a while to get it back up to a certain point before being able to hunt again.
    you can create more genes around this mechanic. so some generations of foxes would be able to expend energy more efficiently, lower the threshold required for hunting, or speed up their energy recovery!

    • @57thorns
      @57thorns 5 ปีที่แล้ว +11

      One way to simulate this would be to allow energy expenditure depend on current speed, and not always moving at top speed. But there are tons of way to simulate populations, and this one shows (more or less) when it does not pay to be a predator.

    • @ranjithrans
      @ranjithrans 5 ปีที่แล้ว +2

      Interesting. May I ask if the resting duration of rabbits (also herbivores, prey) in general are lower than their predators? What is your opinion?

    • @57thorns
      @57thorns 5 ปีที่แล้ว +7

      @@ranjithrans In general yes. Cats (of all sizes) sleep most of the day, while gracing animals tend to eat most of the day.
      But the largest herbivores really have no other safe spot that herds. Smaller animals like deer can hide in tall grass or bushes, rabbit in burrows. They would really gain from an efficient food source.

    • @ranjithrans
      @ranjithrans 5 ปีที่แล้ว +1

      @@57thorns hmm... I had this idea (without any research) that herbivore food takes more time to digest and get transferred into energy than carnivorous (maybe watching cows etc gave me the idea).
      Anyway, adding nutritional values to food leads to more complex code with little gain in the outcome for a simplified simulation. Reducing energy with respect to speed looks like a good approximation.

    • @martinmikkelsen8183
      @martinmikkelsen8183 5 ปีที่แล้ว

      bullshit...

  • @juicemister
    @juicemister 3 ปีที่แล้ว +165

    The concept you touch on at 6:16 is interesting, and there’s actually a similar situation in real-world ecology! In the wild, it’s common for prey animals to re-establish from areas called “refuges,”which predators can’t access easily. This usually occurs after predator populations decrease and is partly responsible for boom and bust reproductive cycles like the ones you saw in your simulation. If you want to play with this model more, you might wall off a couple of areas to foxes and see what that does.

    • @UndoneOne
      @UndoneOne 2 ปีที่แล้ว +6

      Some foxy cannibalism would emerge, surely.

    • @AlexDC93
      @AlexDC93 10 หลายเดือนก่อน

      Thats a very interesting point.
      Also it may benefit to have some sort of aggression between foxes to emulate territories as that appears to be how modern large predators protect their food sources from over predation.
      Also fitness may also have an important role.
      ie healthy rabbits should always escape. Only old, sick or young rabbits should be easily caught which means their should always be a stable adult population.

    • @arjandikhoff5201
      @arjandikhoff5201 7 หลายเดือนก่อน +1

      I coded a simulation like this when I was a biology major, using fish and sharks. Adding something we called an 'atol' will indeed stabilize the predator/prey cycle. The atol was a sectioned off space that predators could not enter (due to being too big to fit through the barrier for example). This will create a safe space where the fish can procreate without the chance of being eaten, ensuring there is always a small population of prey that can repopulate the rest of the area once the predators start dying off.

  • @yugen7147
    @yugen7147 4 ปีที่แล้ว +47

    The bunnies should have had a certain % chance to escape the fox; I think in the wild, most of the time a predator doesn't make the kill. The fox should also have a certain amount of energy - enough energy to only make like 5 attempts at killing a bunny. If it fails to do so in those many attempts, it should die off.

  • @MatthewBishop64
    @MatthewBishop64 5 ปีที่แล้ว +67

    Wow that was some pretty disturbing and graphic bunny porn.

  • @Kanerade
    @Kanerade 5 ปีที่แล้ว +55

    You seriously need to make another one of these videos.

  • @PunnamarajVinayakTejas
    @PunnamarajVinayakTejas 4 ปีที่แล้ว +47

    "H's not likely to have much luck though, on account of being the only rabbit in existence" LMAO

  • @andreibalasa745
    @andreibalasa745 4 ปีที่แล้ว +112

    All I want for Christmas is this man's knownledge in programming

    • @christianeriksson4733
      @christianeriksson4733 2 ปีที่แล้ว +13

      All the knowledge is out there, the question is if you´re motivated enough to gather it and develop it.

    • @InvasionAnimation
      @InvasionAnimation ปีที่แล้ว +2

      Me too! I'm trying to learn to code and I am simply not smart enough to get it. I managed to copy a few lines like hello world.

    • @azeTrom17
      @azeTrom17 ปีที่แล้ว

      The basics of coding are pretty easy, actually, and from there you can learn whatever you're interested in. If you really wanna learn, give it a shot!

    • @tristanmoller9498
      @tristanmoller9498 9 หลายเดือนก่อน

      The TH-cam channel CodeWithMosh created a huge leap in knowledge for me. The guy has an online school, where you can pay for courses but depending on the programming language, he has full TH-cam videos online.

  • @hedonyable
    @hedonyable 5 ปีที่แล้ว +305

    I feel like you will end up simulating a whole planet. And I love that idea.

    • @y.z.6517
      @y.z.6517 5 ปีที่แล้ว +12

      He needs GPUs the size of a planet.

    • @borjanpeovski7615
      @borjanpeovski7615 5 ปีที่แล้ว +3

      He could do make this on a sphere instead of a plane so it would resemble a planet. Similar to how he did in one of his ludum dare games. Would be cool to see that.

    • @jona7164
      @jona7164 5 ปีที่แล้ว

      He could also just code a little planet.

  • @TheZeclus
    @TheZeclus 5 ปีที่แล้ว +656

    No one :
    Sebastian : ok guys ive added humans and now theyre trying to see if theyre simulated, no biggie !

    • @betin731
      @betin731 5 ปีที่แล้ว +14

      dead meme

    • @thecuriousgorilla6005
      @thecuriousgorilla6005 5 ปีที่แล้ว +27

      @@betin731 AI takeover isn't a killable meme by merit of being possible

    • @jensb3946
      @jensb3946 4 ปีที่แล้ว +11

      @@thecuriousgorilla6005 Not what he's talking about you fucking idiot

    • @benlyman115
      @benlyman115 4 ปีที่แล้ว +7

      @@jensb3946 mean

    • @ljhoser5842
      @ljhoser5842 4 ปีที่แล้ว +9

      @@thecuriousgorilla6005 he is talking about the no one:
      someone:
      format

  • @Nyck0s
    @Nyck0s 5 ปีที่แล้ว +276

    Hey Sebastian, amazing video! Would love to see more videos like this one

  • @lyes6033
    @lyes6033 4 ปีที่แล้ว +15

    how life sadly is :
    foreach(female f in females )
    {
    unimressedfemales.Add(f);
    }

    • @139-x9h
      @139-x9h 4 ปีที่แล้ว +2

      sure for everyone?

  • @shimakeemakenza4469
    @shimakeemakenza4469 5 ปีที่แล้ว +134

    Wow, amazing...
    Having a safe place for the bunny like a burrow would be good... that way they only take risk when certain need arise... not always being exposed to be hunted...

    • @diepssuarez2676
      @diepssuarez2676 5 ปีที่แล้ว +15

      Shimakee Makenza in addition you could add a “Fear Gene” with lower fear the bunnies don’t care about the foxes, getting more food but having a higher chance of getting eaten. Higher fear means the rabbits constantly stay in holes even if they are starving and they have a higher risk of death for that! Great idea

    • @imveryangryitsnotbutter
      @imveryangryitsnotbutter 5 ปีที่แล้ว +1

      @@diepssuarez2676 And at 0 Fear you get Okunoshima.

    • @peeblekitty5780
      @peeblekitty5780 5 ปีที่แล้ว +2

      Yeah, my guess is the bunnies all died because they could hardly take a step without entering a fox's detection range. Running would work fine if there weren't threats everywhere you go...

  • @CosmicCleric
    @CosmicCleric 5 ปีที่แล้ว +253

    "Source code: Coming soon.."
    Any ETA on this? I'd love to learn how you handle the programming for this! Thanks.

  • @Fire321Star
    @Fire321Star 5 ปีที่แล้ว +70

    I don't care how long it takes you to post it, but thank you thank you thank you so much for announcing that you will be posting source code for this eventually. You have no idea how excited I am to add on to this. Thank you again so much. keep making videos like these, the coding adventures. I really like them and this one in particular.

  • @eL3ctric
    @eL3ctric 5 ปีที่แล้ว +120

    This is so interesting!!! What Library did you use for the graphics?

    • @SebastianLague
      @SebastianLague  5 ปีที่แล้ว +72

      Thanks! Models were created in Blender, and everything put together in the Unity game engine.

    • @j_respect5948
      @j_respect5948 3 ปีที่แล้ว +2

      @@SebastianLague hey sir, can I ask if how I can animate an obj or .stl file or maybe if those can't be animated,what the best file format for animating 3d models in games

    • @asadityas67
      @asadityas67 3 ปีที่แล้ว +3

      @@j_respect5948 you can import obj or stl file in blender and "rig" them, then you can animate the object and export as fbx, or you can use the blender format if you use unity

  • @boxicknowsbest9100
    @boxicknowsbest9100 5 ปีที่แล้ว +95

    I've been waiting for this! Can't wait to see more stuff on terrain generation, keep up the awesome work (your graphics are always amazing!)

  • @olebatting
    @olebatting 5 ปีที่แล้ว +32

    Try adding field of vision; ie predators with narrow field of vision (maybe with depth perception), and prey with large field of vision

  • @sirdurtle9519
    @sirdurtle9519 3 ปีที่แล้ว +16

    Most likely the foxes and rabbits can’t coexist for two reasons: 1, the foxes aren’t thirsty and 2: the rabbits can’t burrow

  • @ShankarSivarajan
    @ShankarSivarajan 4 ปีที่แล้ว +154

    "The rabbit runs faster than the fox, because the rabbit is running for his life while the fox is only running for his dinner." You clearly didn't implement this in your ecosystem.

    • @BertyLohani
      @BertyLohani 4 ปีที่แล้ว +33

      Ew why would you quote Dawkins.
      It isn't really relevant either. The fox is running for its life because if it doesn't eat it will die. They're both running with equal importance.

    • @SirBenjiful
      @SirBenjiful 4 ปีที่แล้ว +29

      @@BertyLohani yeah but if the fox doesn't catch the rabbit one time, it's not the end of the world. if the rabbit gets caught even once, it's lights out forever.

    • @purplefire2834
      @purplefire2834 4 ปีที่แล้ว +5

      @@SirBenjiful unless the fox is just about to starve to death

    • @SirBenjiful
      @SirBenjiful 4 ปีที่แล้ว +20

      @@purplefire2834 yeah, but the fox is only sometimes about to starve to death, most of the time it isn't that desperate. so the fox will only very occasionally die if it misses its meal. the rabbit, on the other hand, will die every time if it gets caught. so on balance the situation is worse for the rabbits.

    • @Pac0Master
      @Pac0Master 4 ปีที่แล้ว +6

      @@BertyLohani
      What's wrong with Dawkins?

  • @StephenOwen
    @StephenOwen 5 ปีที่แล้ว +94

    You know what would be cool? An instructional series like : here's how to go from a default new project to an overhead view with some terrain.
    Then something like ' Here's how to add characters and here is how to setup one basic behavior', and then build in complexity from there. I know, it sounds like a lot of work but I know I would be interested in seeing ho you do it!

    • @funkyflames7430
      @funkyflames7430 4 ปีที่แล้ว

      Stephen Owen Livestream??

    • @saito853
      @saito853 4 ปีที่แล้ว +1

      He published the code on Github, just take a look at it.

    • @KenikoB
      @KenikoB 4 ปีที่แล้ว +6

      @@saito853 code and step by step aren’t the same thing

    • @argmentum22
      @argmentum22 4 ปีที่แล้ว +2

      think this would be a great idea, from implementing basic terrain to basic entities to behaviour.

  • @braxtonsdev9564
    @braxtonsdev9564 5 ปีที่แล้ว +55

    Could you put a link to the source code or the project because this looks so fun to mess around with ourselves.

    • @ThatGuy-qv1uu
      @ThatGuy-qv1uu 5 ปีที่แล้ว +6

      Yeah I'd love that too. Or a tutorial series.

    • @h.celine9303
      @h.celine9303 5 ปีที่แล้ว +5

      Definitely a tutorial series :D

    • @braxtonsdev9564
      @braxtonsdev9564 5 ปีที่แล้ว

      ThatGuy that would be great

    • @ndrcreates_per
      @ndrcreates_per 5 ปีที่แล้ว

      @@ThatGuy-qv1uu Sebastian Hear us, we want a tutorial series ...

  • @frostden
    @frostden 5 ปีที่แล้ว +4

    To fix the extinction problem, you could try making the foxes territorial, so they fight each other, becoming more likely to fight each other as the population density increases. That would put negative pressure on large populations.
    Something like parasites could model the same effect.
    Or allow rabbits to hide? Hiding rabbits can't be eaten by foxes, but their hunger+thirst meters continue to rise. The most successful rabbits will find the right balance between cowardice and bravery. Hiding rabbits could give a 'backup' population of rabbits to survive explosions in fox populations.
    Also, you could try a larger map, so that oscillations in either population are statistically less likely to hit 0.

    • @markoap91
      @markoap91 5 ปีที่แล้ว +1

      Agreed. I recommended similar things. I think it's a right direction to move in and see what happens.

  • @meh-pc2tw
    @meh-pc2tw 4 ปีที่แล้ว +11

    You could add some code for day and night so that all foxes fall asleep at night allowing the bunny's to regain a bit of their population

  • @schirmcharmemelone
    @schirmcharmemelone 5 ปีที่แล้ว +13

    Hello Sebastian.
    You made a pretty Hunt and Prey simulation. I am working on something similiar and would like to give you more detailed feedback on this video and your potential following videos. I have done quite some hunt and prey simulations in my coding career and am happy to put in the time to share what i have learned in exchange for quality videos and content from you.
    The hardest part of a hunt and prey simulation is the balance as you have already realized in the end of this video. Why do foxes in the simulation cause the extinction of all prey but in the real world adding wolves to forests improves the general health of a forest? Aren't wolves optimal hunters and would cause the death of all prey in any environment? Wouldn't evolution just optimize them to do that even better in every enviroment? What is different?
    I am guessing that you are starting to hand tune genetic traits and values right now to create something more stable for your next video. But you will run into a problem. As soon as you hand tune variables you will start to maybe introduce other changes that will destroy that balance and you will see yourself restricting the possible power of evolutionary changes to stay in your balanced state.
    What you want to discover is how to create symbiosis between species that are in a competitive relationship with each other. In your simulation there currently is no balance and one species wins over the other. That makes sense since Evolution will drive both species towards maximized existence by optimized replication. Until one can't keep up and dies out and the whole environment goes stagnant. I will list how you can achieve that.
    1. You need to punish species whenever they reach the burnout point. Generate smaller areas that are closed off from each other. In your simulation you could add temporary land bridges between land to achieve that. Something like high and low tide. Each island with over achieving foxes will be closed off long enough to weed them out without giving them the chance to spread to the neighbor island. As soon as the low tide rolls in only the foxes that managed to balance themselves with the bunnies will be able to repopulate the other islands. The over achieving foxes will burn themselves out during a high tide. In real life nature this is done mainly by the day/night cycle and the seasons.
    2. Dampen the relationship between bunny and fox populations by increasing the bearing time of foxes. I guess you are planning to do that with the next video anyway since you already introduced this feature with the bunnies. Foxes that take the same or less time to bore offspring will follow the bunny population very rapidly and easily follow their volatile numbers. Similar to feedback noise of a guitar and a sound speaker. Foxes with a longer bearing time will not follow the bunny population so rapidly and will literally dampen out their volatility. In the guitar example this would be the same as cutting off the high frequencies with an audio mixer and only amplifying the low frequencies. If you manage to introduce number 1. (the tides) correctly the foxes should be able to optimize for this themselves. They will time the bearing time to bore offspring with the period of the tidal waves.
    3. The success of hunting. Foxes that miss bunnies with a probability can live next to bunnies without killing them. In your implementation the bunnies will always be turned into foxes because foxes are perfect hunters. You can further reinforce it by adding a hunting punishment: Hunting could also stun the foxes to take them out from the hunting pool for a while. The hunting probability with the hunting punishment will make it possible for foxes to leave exactly as many bunnies to sustain the next generation of both of them. A good example for this is the squirrel-tree relationship. If the squirrel would be able to remember every nut it buried it would kill the complete tree population by eating all its offspring. If it forgets a few each year it helps sustain its own environment by basically planting trees. This way the squirrel has a symbiotic relationship with its own food source. Note that remembering more nuts is a short term advantage for the squirrel but forgetting them is a long term advantage for all squirrel offspring (the squirrels competition).
    3. The plant relationship with the bunnies is not correct. If i understand it correctly in your model the plants just gain MASS with every tick instead of ENERGY. This is different from the plant - herbivore relationship you find in nature. The overall biomass is a constant in our world (until we stared to unbalance it up by bringing all the oil back in and now we grow exponentially and will die like your foxes). That means that the [plant -> bunny -> fox] is not a pyramid going all the way up to the apex predator but it is actually a circle. Since bunnies and foxes poop, they fertilize plants again and we get the following two overlapping circles of life: [plant -> bunny -> fertilizer ->plant] and [plant -> bunny -> foxes -> fertilizer -> plant]. ENERGY is the rate at which fertilizer is turned into plants. If you have an unbalanced system as in your simulation that circle breaks apart and the bio sphere stagnates (= dead). If we barely make it through one circle, the circle will have big waves of: plants than bunnies than wolves than plants again. We get something like a mexican wave seen in a stadium. A real life example of this can be found in Australia, where big waves of bunnies eat everything there is, then starve. Next spring the plants regrow from the dead bunny corpses that act as a fertilizer. It is the same biomass just differently arranged. One day as a bunny and the next as a plant. The biomass is doing a mexican wave through forms of existence. Instead of people having their hands raised or lowered we have biomass being a bunny or a plant. This waves of bunnies will lead to a competition under the foxes. They will lower the bearing time to reproduce faster than the other foxes. Everyone tries to find a shortcut in the circle of life trying to increase its own metabolism. Such an environment is super competitive for the foxes as having an edge in the beginning of a fox wave gives them a very high probabilty to win the whole next generation by out reproducing the competition and turning a big chunk of the bunny mass into children. This competition is called evolutionary pressure. A fox that gains an advantage with a mutation will flourish and the fox population will see rapid changes. If the fox population is big enough many mutations can occur at the same time and this might lead to the inability of the foxes to reproduce with each other. They start to drift apart and we now have a second fox species. If they start to directly compete which each other one the of species will die out (as the neanderthal). But if they keep drifting they might dominate the other species in specific parts of the environment. For example longer legs + thinner body make them hunt bunnies in the open better but stronger shorter legs might help them hunting them in the forest. Now we have two distinct species that stop competing. Both fox species will start to drift more and more over time. We have now added a new Circle to our Circle of life: [plant -> bunny -> mutated_foxes -> fertilizer -> plant]. Since different foxes will behave differently, the biomass stays longer in one of the fox species and dampen the death wave behavior. You can image this as the mexican wave participants being slower or faster from their neighbors. Now the wave breaks up. The biosphere has stabilized by itself by creating a new species.

    • @xxcfbb
      @xxcfbb 5 ปีที่แล้ว +3

      This is better than most research papers I have read.

  • @LucidTactics
    @LucidTactics 5 ปีที่แล้ว +12

    The main mechanic that you are missing is a defense mechanism for the prey. There needs to be a cost to engaging the mechanic (so they don't just engage it all the time) and it needs to offer pretty good protection. Here are some examples from the natural world:
    Ponds/Aquariums: Dense cover/vegitation allows spaces where larger fish can't get in to find smaller fish; but since only a small portion of the biom has dense cover; to increase population density small fish need to venture out to feed.
    Rabits & Holes: Rabits can hide in holes with multiple entrances & exits to evade predators that they cant outrun over long distances. The cost is pretty obvious; you cant feed or anything while in a hole, nor can you see much.
    Buffalo & Protective circles: Water buffalo will often form walls of flesh and horn when repelling a predator. This works for a while but eventually they need to spread out to feed.
    Honestly there are as many of these as there are predator prey relationships. That is because whenever a hunter has an extreme advantage over its prey, they basically hunt them to extinction as their own population explodes.

    • @benlyman115
      @benlyman115 4 ปีที่แล้ว

      @dolofonos huh?

    • @Kugelschrei
      @Kugelschrei 4 ปีที่แล้ว

      100% agree, to get a balanced ecosystem the environment can't favor one over the other - or to put it in other words, both species have to be able to coexist without a crushing advantage for one species.

    • @seraphina985
      @seraphina985 3 ปีที่แล้ว

      I also think the simulation could benefit from some additional work which puts the populations under stress if they overproduce. Changing the breeding desire mechanic could help here have both populations have needs like Rest, Hunger, Thirst etc that they will prefer to satisfy first before looking to breed. Thus simulating the reality that when merely surviving gets hard for the adults birth rates tend to fall. This in combination with having an effective floor on the per capita death rate by adding a limited lifespan for the animals would perhaps help to curb excessive population spikes. The closer the population got to outgrowing it's food supply the more time animals would spend trying to find food only to come home exhausted and hungry. Make it so they have a reduced desire to mate when that happens to simulate the natural tendency for the growth curve to flatten out and fall into decline when members of the population have to invest pretty much all their time just to try and support themselves and their existing offspring to have time for breeding so much.

  • @smileyp4535
    @smileyp4535 4 ปีที่แล้ว +63

    "of course I wasn't going to give him such an easy life so I gave him hunger and thirst" my god, that litteraly sounds like a quote from some creation myth for some religion, that's almost eerie lol

  • @AethernaLuxen
    @AethernaLuxen 4 ปีที่แล้ว +38

    "Alright, it's safe to look again"
    _oh thank god lmao_

  • @jfr9964
    @jfr9964 5 ปีที่แล้ว +7

    I think I just found the source code for my existence
    foreach (female in world) {
    unimpressedFemales.Add(female);
    }

  • @SorchaSublime
    @SorchaSublime 3 ปีที่แล้ว +5

    i think a way to balance things a bit would be tohave the foxes work more like the bunnies, where they only eat if they are hungry, need to drink and reproduce. Also you can make their gestation and development period much higher. you could also make the growing of plants dynamic so that they actively spread and can be eaten to extinction. tbh this system could be expanded upon endlessly, it's pretty neat

  • @MathematicsOptimization
    @MathematicsOptimization 5 ปีที่แล้ว +17

    Heavily related to the Lotka-Voltera-Equations

  • @Celastrous
    @Celastrous 5 ปีที่แล้ว +12

    Would you ever consider releasing your source code for these projects? How about as a Patreon reward tier?

    • @earth4180
      @earth4180 5 ปีที่แล้ว +1

      He does for a lot of them I'm pretty sure (he did for the erosion thing)

  • @lucystarlight8887
    @lucystarlight8887 2 ปีที่แล้ว +17

    The relationship between fox and rabbit populations, with one rising and the other falling, is generally what happens with predators and prey in real life, like wolves and deer. This is a pretty good sign that your simulation is at least somewhat realistic. Awesome video!

    • @mauer1
      @mauer1 ปีที่แล้ว +1

      well its a good sign that the simulation does exactly what it should do.
      realisticly the foxes wouldnt need to hunt that eagerly

  • @anthonytonev1357
    @anthonytonev1357 5 ปีที่แล้ว +59

    I don't think that most people understand just how gifted you are.

  • @josephrogers1282
    @josephrogers1282 5 ปีที่แล้ว +8

    I've been fascinated by the idea of creating a simulation like this for ages but never quite got around to doing it, so thank you. I look forward to having a peek at the source code when you're ready to release it.

  • @GEONEgaming
    @GEONEgaming 4 ปีที่แล้ว +8

    Sebastian: "Simulating an Ecosystem in 6 minutes"
    ThinMatrix: Guess I'll die

  • @binxuwang4960
    @binxuwang4960 5 ปีที่แล้ว +6

    It looks amazing! And I m also thinking of doing similar things!
    Which 3d engine/environment are you using for visualization? Thx!

    • @rene9386
      @rene9386 5 ปีที่แล้ว +1

      I am 100% sure that this is Unity

  • @Sawta
    @Sawta 3 ปีที่แล้ว +4

    If you do an update to this simulation, it would be interesting to see you include other variables, like how each animal acts during day/night, temperature, weather, diseases, greater variety of plants, issues with plants (not fully developed, rot, undersized, oversized, etc.), and communal/social aspects (burrows, dens, etc.)
    If you would like some inspiration that isn't from a research paper, I'd recommend reading Watership Down. I'm reading through it now, and it's really great!

  • @AcrossTheDreams
    @AcrossTheDreams 4 ปีที่แล้ว +10

    This would be such a cute game tho

    • @FeniksGaming
      @FeniksGaming 4 ปีที่แล้ว +7

      equilinox is a game you are looking for then

    • @ahniandfriends123
      @ahniandfriends123 3 ปีที่แล้ว +1

      There is a game made in 1992 called SimLife. It's by the same people who did SimCity and SimEarth.

  • @tithonusandfriends8519
    @tithonusandfriends8519 4 ปีที่แล้ว +3

    Could you try making a rabbit easier to detect if they have redder fur? That way it isn't just this amazing trait they all should get.

  • @beskamir5977
    @beskamir5977 5 ปีที่แล้ว +5

    Perhaps giving them homes/burrows would have helped them coexist?