a multiplayer game of parenting and civilization building
You are not logged in.
The backbone of a village is its food supply. Without a solid food supply, everyone dies. Why then do villages constantly spring up around carrot patches in the grasslands? Carrot patches need water, and there is no water in grasslands. Water must therefore be shuttled back and forth all day in rabbit skin pouches. Such a waste of time! And if there is ever a break in your water supply chain, perhaps while you are nursing several infants, God help your village.
I can think of three reasons this happens. First, fertile soil is in grasslands, so it's natural to want to just dump the soil near where you found it, then think about building your farm there. Second, farming in grasslands just seems intuitive based on real life, it seems like a fertile place. Third, grasslands are where the berry bushes are, so there is a bit of supplemental food while you are just starting your farm and getting your bearings.
But wild berry bushes in grasslands work best for supporting lone explorers and small expeditions, not village populations! They have huge diminishing returns in a growing village.
The most lively and stable villages and towns I have spawned in have all shared one feature in common: They are in the swampland! There is plenty of water all around, making watering the carrot patches easy, which is the key to producing food constantly in a location that does not move, eg a village!
When I see a small grassland farming village, I tend to try to migrate the dirt patches into the nearest swamp. I know that future Eves that stumble upon my swampland farms have a much better chance of building a stable village there than if they found the grassland farm.
One problem is that it can get cluttered in the swamp with all of the massive and messy-looking trees. If you have access to an axe, chop down all of the swamp trees. There are two types, and they produce absolutely nothing when you click on them, so they are safe to simply chop down with prejudice. (Of course future updates may incorporate something with these trees and make the decision to completely deforest the swamps regrettable, but I must operate within the ruleset I am currently given.) Once all of these trees are cleared, it will feel MUCH more roomy. There will be plenty of space to build a nice village, plus plenty of chopped wood nearby for steady crafting fires, and eventually making boxes/carts and floors.
Plus there is very easy access to reeds for baskets and compost, both extremely useful in a fledgling village!
The easy access to water also helps speed along composting and the domestic berry bushes that support it, making your village quite stable. And of course there is no rule that milkweed must always come from the grasslands, build a big old milkweed patch right in the swamp!
The biggest drawback to this strategy is poor access to grassland trees for starting fires or acquiring important wood. For this reason you still really ought to have a grassland in quick walking distance from your base. But just centering your base in the swamp (near several ponds) instead of the grassland will produce much better results! Try it out!
Yep, these things are way too dangerous. One innocent wrong click and a family member instantly dies.
My uncle gave me the two knives in his pack before he died, the only two knives in our village. He told me to be responsible and keep them safe, so that griefers would not kill our village.
I kept the knives safe in my pack. I spent my days organizing the junk in the village and raising kids. I had children and even grandchildren. I was getting old and it was time to wrap up of my life. So I found one of my daughters, responsibly taking care of a newborn infant. She had a backpack so I thought she could carry the knives and keep them safe just like I had done.
I told her to listen. I praised her dedication to the village and explained the importance of keeping the knives safe. She understood and accepted the responsibility. I took some rubbish out of my pack to find the knives at the bottom and pulled one out, wincing at the deadliness of the thing. Then I right-clicked at my daughter's feet to set down the first knife for her so that she could pick it up. Much to my horror, before I knew what had happened, I had murdered my own daughter in cold blood, and while she was holding and nursing a newborn infant!
As her bloodied skeleton lay on the ground, crumpled up with her wolf skin and rabbit clothes, an utter dread came over me. The crimson bloody knife in my hand didn't seem real.
My family stopped working the farm and gathered around, horrified.
I immediately dropped both knives and pleaded forgiveness. I begged my family to murder me for my sin. But they understood what happened and forgave me. They put the knives in their own packs and kept them safe. But I drifted through the rest of my life listless, my guilty conscience weighing over everything I did.
To whoever I accidentally killed, I am so sorry.
This situation is so much like guns in real life. It seems like the best way to deter griefers and murderers is for the population to be armed so that they can quickly retaliate if a murderer starts a killing spree. But whenever there are deadly knives floating around, there is always that chance for an accident where an innocent person gets killed. A situation that would never had happened if there were no knives in the village at all.
I'm unable to get through a game without crashing.
The crash typically occurs while exploring new areas.
I have followed all steps to capture the crash in the debugger and emailed you the requested files.
Debugger output:
Program received signal SIGSEGV, Segmentation fault.
0x0045892d in addBaseObjectToLiveObjectSet (inID=0) at liveObjectSet.cpp:100
100 liveObjectSet.cpp: No such file or directory.
#0 0x0045892d in addBaseObjectToLiveObjectSet (inID=0) at liveObjectSet.cpp:100
#1 0x00449821 in LivingLifePage::step (this=0xb1579b8) at LivingLifePage.cpp:11694
#2 0x00424d01 in PageComponent::base_step (this=0xb1579b8) at PageComponent.cpp:54
#3 0x00426a3c in GamePage::base_step (this=0xb1579b8) at GamePage.cpp:334
#4 0x004038b3 in drawFrame (inUpdate=1 '\001') at game.cpp:1234
#5 0x004bc327 in GameSceneHandler::drawScene (this=0x86ef48)
at ../../minorGems/game/platforms/SDL/gameSDL.cpp:3044
#6 0x0049242b in callbackDisplay () at ../../minorGems/graphics/openGL/ScreenGL_SDL.cpp:2766
#7 0x00490f32 in ScreenGL::start (this=0x86e2d8)
at ../../minorGems/graphics/openGL/ScreenGL_SDL.cpp:2007
#8 0x004bb287 in mainFunction (inNumArgs=1, inArgs=0x832e80)
at ../../minorGems/game/platforms/SDL/gameSDL.cpp:2472
#9 0x004b6c80 in SDL_main (inArgCount=1, inArgs=0x832e80)
at ../../minorGems/game/platforms/SDL/gameSDL.cpp:23
#10 0x004d11fb in console_main (argc=1, argv=0x832e80) at ./src/main/win32/SDL_win32_main.c:246
#11 0x004d13d9 in WinMain (hInst=0x400000, hPrev=0x0, szCmdLine=0xba3fab "", sw=10)
at ./src/main/win32/SDL_win32_main.c:382
#12 0x005015bb in main ()
Perhaps this is relevant, from the log:
L1 | Mon Mar 12 15:27:03 2018 (87 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y0.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y0_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y0.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y0_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y0.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y0_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y0.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y0_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y1.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y1_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y1.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y1_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y1.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y1_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y1.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y1_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y2.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (88 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y2_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y2.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y2_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y2.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y2_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y2.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y2_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y3.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x0_y3_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y3.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x1_y3_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y3.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x2_y3_square.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y3.tga does not exist
L1 | Mon Mar 12 15:27:03 2018 (89 ms) | general | CRITICAL ERROR: TGA file groundTileCache/biome_99999_x3_y3_square.tga does not exist