maxrobinsonthegreat / lifeengine Goto Github PK
View Code? Open in Web Editor NEWThe Life Engine
Home Page: https://thelifeengine.net
License: GNU General Public License v3.0
The Life Engine
Home Page: https://thelifeengine.net
License: GNU General Public License v3.0
Add hotkeys for button controls.
Discussed in #17. Originally posted by Ketok4321
Maybe this is intentional, but I don't think that organisms are supposed to be disconnected.
It also makes it very confusing because it looks like two organisms when it is really one.
In the organism editor, you have the ability to create organisms that have disconnected cells. Also, sometimes organisms mutate and become disconnected.
To reproduce the bug, go to the editing menu and add a cell that is not adjacent to the initial mouth cell. Then spawn in the organism and it moves around as normal.
I expected it to give an error message saying you cannot make a disconnected organism, and I also expected it not to mutate into disconnected organisms.
Environment: Desktop
I have to kill it and then use the food icon to clean up the food. Either
Describe the bug
When I try to build it with npm run build-watch
it shows this error message
To Reproduce
Expected behavior
The project get built and can be run.
StackTrace
npm run build
> [email protected] build E:\Projekte\Privat\LifeEngine
> webpack --mode=production
Hash: 5cae29e5d63478b8e3a1
Version: webpack 4.43.0
Time: 885ms
Built at: 07.06.2022 21:20:21
1 asset
Entrypoint main = bundle.js
[0] ./src/Organism/Cell/CellStates.js 2.46 KiB {0} [built]
[1] ./src/Hyperparameters.js 966 bytes {0} [built]
[2] ./src/Stats/FossilRecord.js 5.14 KiB {0} [built]
[5] ./src/Organism/Organism.js 11.4 KiB {0} [built]
[6] ./src/Utils/SerializeHelper.js 589 bytes {0} [built]
[7] ./src/Stats/Species.js 1.44 KiB {0} [built]
[10] ./src/Controllers/ControlModes.js 173 bytes {0} [built]
[11] ./src/WorldConfig.js 160 bytes {0} [built]
[12] ./src/Environments/Environment.js 372 bytes {0} [built]
[17] ./src/Engine.js 2.85 KiB {0} [built]
[18] ./src/index.js 2.46 KiB {0} [built]
[19] ./src/Environments/WorldEnvironment.js 8.34 KiB {0} [built]
[32] ./src/Controllers/ControlPanel.js 19.1 KiB {0} [built]
[38] ./src/Environments/OrganismEditor.js 4.24 KiB {0} [built]
[41] ./src/Rendering/ColorScheme.js 1.19 KiB {0} [built]
+ 27 hidden modules
ERROR in ./src/index.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src'
@ ./src/index.js 1:0-17
ERROR in ./src/Controllers/ControlPanel.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Controllers'
@ ./src/Controllers/ControlPanel.js 1:0-17
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Controllers/EnvironmentController.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Controllers'
@ ./src/Controllers/EnvironmentController.js 1:0-17
@ ./src/Environments/WorldEnvironment.js
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Controllers/EditorController.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Controllers'
@ ./src/Controllers/EditorController.js 1:0-17
@ ./src/Environments/OrganismEditor.js
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Environments/WorldEnvironment.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Environments'
@ ./src/Environments/WorldEnvironment.js 1:0-17
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Environments/OrganismEditor.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Environments'
@ ./src/Environments/OrganismEditor.js 1:0-17
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Rendering/ColorScheme.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Rendering'
@ ./src/Rendering/ColorScheme.js 1:0-17
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Rendering/Renderer.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Rendering'
@ ./src/Rendering/Renderer.js 1:0-17
@ ./src/Environments/WorldEnvironment.js
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Stats/StatsPanel.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Stats'
@ ./src/Stats/StatsPanel.js 1:0-17
@ ./src/Controllers/ControlPanel.js
@ ./src/Engine.js
@ ./src/index.js
ERROR in ./src/Stats/Charts/ChartController.js
Module not found: Error: Can't resolve 'jquery' in 'E:\Projekte\Privat\LifeEngine\src\Stats\Charts'
@ ./src/Stats/Charts/ChartController.js 1:0-17
@ ./src/Stats/Charts/PopulationChart.js
@ ./src/Stats/StatsPanel.js
@ ./src/Controllers/ControlPanel.js
@ ./src/Engine.js
@ ./src/index.js
Environment:
Reproduction is currently very "all or nothing", which greatly favors small, space filling organisms. It's a good evolutionary strategy for organisms in the sim to be small, as this blocks the reproduction of larger organisms and simultaneously lowers it's own reproductive cost. 100% of the food an organism collects to reproduce is lost if it fails.
Instead I'd like to suggest a way to make the amount lost configurable. Either a set %, a proportion to size, or an inverse proportion. An inverse proportion in particular would favor smaller organisms, while a proportion to cell count would favor larger ones, especially larger movers.
Describe the bug
actual FPS value is higher than target and sometimes infinite when target fps is set low, though simulation speed seems correct.
To Reproduce
Set fps to low value <60
Expected behavior
Should roughly be the same as target fps or lower
What a heal cell would do is when you got hit by a kill cell or you are dying from age , it heals a bit , for the cost of some of the food you collected
I'm not skilled enough in codding to make that lamo
Describe the bug
Organisms can evolve to see and recognize walls, but cannot be taught them manually in the editor, making reproducing certain behaviors difficult or impossible
To Reproduce
Line an environment with walls and promote mover development until they have eyes and can recognize the boundaries of their environment.
Expected behavior
Walls should be selectable when constructing an organism
There's no way to create a static food source currently.
Describe the bug
When you try to adjust the 3 mutation type probabilities independently, when you edit one of the inputs the other adjust to the left value so you always have one distinct value, and the rest is divided by the other two (so they are equal).
To Reproduce
Expected behavior
The first value is left as it is and only the third value is adjusted.
Environment:
Describe the bug
In firefox, the simulation speed does not work properly, neither slowing down or speeding up.
To Reproduce
Open in firefox, adjust simulation speed.
Expected behavior
Should work exactly as it does in chrome and edge
Environment:
Describe the bug
When both Add Cell and Remove Cell are set to 0, both of these types of mutation still seem to occur.
When only Add Cell is set to 0, organisms with added cells do appear.
I did not experience organisms with clearly removed cells if only Remove Cells is set to 0.
I was not able to test if there is a similar bug for Change Cell, as the effect of every change-mutation could be achieved with removing and adding one cell.
Using Global mutation rate set to 0 does not result in a similar bug.
To Reproduce
Before Mutation could occour, under Mutation Type Probabilities, set Add Cell or Remove Cell to 0.
I restarted the enviroment after, to make sure all life would be affected the same.
I did not take these results from the Organism Structure statistic, as it seemed to be flawed.
I instead looked at organisms by selecting them into the Editor window.
Expected behavior
Mutations should not be able to add or remove cells.
Environment:
The only options we have to control food is producers, randomized spawning and the option "food blocks reproduction"
Unblocking reproduction inevitably results in a highly optimized space filling sedentary producer evolving. With only one or two killer cells they can stop predetation by movers and shape their environment. I call these 'thorns'. They no longer need movers to clear out dead thorns, and can block the reproduction of movers by either killing them or just taking up as much space as possible.
The other binary alternative is to have food block reproduction. This tends to lead to die-outs of vegetive producers. Movers either evolve into omnivores that can prey on both vegetive and mover life, or evolve into "fructivores" that only take excess food produced by plants. Fructivores are exceedingly rare however, as they're only distinguished from omnivores by the presence of a single cell which greatly increases their individual fitness. You can shorten the lifespan of organisms to prevent excessive predetation by movers, but that significantly limits how big organisms can get and consequently works against the rise of fructivores that require complexity.
There's also the rare but possible extinction scenario with 'movers can produce food' of a highly optimized space filling mover gradually covers the map in corpses, running out of space.
I think the solution is a food decay mechanic. Food decay in seconds would allow some predetation by movers without the plants needing them to survive, as they can continuously repopulate decayed regions if movers don't clear it out in time.
Describe the bug
After saving a world with "Use evolved mutation rate = off" the value of "Global mutation rate" is not restored from the save file even when "Override Evolution Controls = on".
To Reproduce
Expected behavior
The value "Global mutation rate = 10"
Environment:
Additional context
All other evolution settings seem to be restored properly from world file.
Performance decreases and memory use increases over time even though population does not. I assume that the plotting or something else just keeps accumulating data.
I hope this counts as an issue
When pressing the Reset Environment button, all walls get removed. Sometimes I forget this will happen and will have to redraw everything.
Why I think this is a bug:
There is a whole button to remove walls (the "Clear all walls" buton) and that asks the user to confirm they are really sure they want to delete the walls. This makes it seem important and that we don't want to accidently remove walls. We could use this button to remove the walls even after a reset. Or if the rest button is pressed while walls are drawn, the same alert could be triggered
To reproduce:
Expected option 1:
Expected option 2:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.