fluffrabbit
Guest
|
|
« on: May 18, 2019, 12:38:25 PM » |
|
Cave Confectioner is a back-to-the-land farming and cooking game in development for Windows/Mac/Linux, like Stardew Valley meets The Flinstones. Get to know the savages and sell them every sweet confection you can contrive, and be aware of their individual predilections, like lactose intolerance and love of sugar. So far it features: * 2.5D perspective distortion * Bloom * Dynamic entity collisions * A* pathfinding * Dialogue trees * Fully serializable maps based on the Tiled JSON format 20% complete. TODO: * Farming :: 40% * Confectioning :: 0% * AI :: 10% * Set up promotional site :: 50% * Public demo :: 0%
|
|
« Last Edit: September 07, 2019, 11:20:52 PM by fluffrabbit »
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #1 on: May 25, 2019, 04:31:56 PM » |
|
The game will have dating sim elements. This is the dialogue system. Fun fact: String bikinis were invented before pottery.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #2 on: June 01, 2019, 12:58:38 PM » |
|
You can now select areas and objects to move to and interact with. Left-clicking interacts. Holding the right mouse button moves to the target with A*. Also added a bloom shader and spent the better part of a day tweaking it. Next is the crafting system, and I'd also like to try machine learning for the NPCs.
|
|
« Last Edit: June 02, 2019, 07:22:54 AM by fluffrabbit »
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #3 on: June 08, 2019, 07:20:28 PM » |
|
The Genetic AlgorithmThe Wobbledogs guy did an excellent writeup on it here. I spent the past week creating a (hopefully) robust genetic algorithm library since Cave Confectioner will probably be using it a lot. It's STB-style, complies with clang-tidy, supports arbitrary structs via templates, and is well documented. Internal software for now. That means nothing too visual this Saturday, but here's a screenshot of the start of the inventory.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #4 on: June 15, 2019, 08:12:46 AM » |
|
Fire -- an essential ingredient in any subterranean recipe. NeuroevolutionI have obviously been spending a great deal of time on clever things. The genetic algorithm took a week, and neural networks have taken another week. What follows is an infodump for the technically inclined. My evolution code is currently POD because of the way that C++ handles structs. That means nothing can grow in complexity over successive generations. When I added neural networks to the mix (based on the excellent tutorial here), I was suddenly hit with the problem of the POD approach being way too limiting and inefficient. It took 6 seconds to train 1000 generations to make big numbers smaller, which seemed like a long time to me. I also learned a lot about neural network topology. For instance, a 3-layer feedforward net of size <5,10,4> is more effective overall than a 4-layer feedforward net of size <5,5,5,4>. For some reason. There are alternative approaches. NEAT is a neural network that grows over generations. Novelty search is a novel approach to the NEAT optimization function. Ken Stanley has a lot of insight on this. If I weren't making a game I'd probably spend a lot more time on neural networks. One way of looking at it is that entities in Cave Confectioner are not trying to outsmart the player. The challenge is meant to arise from the inherent difficulties in trying to make cakes and other sweet foods from extremely constrained resources.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #5 on: June 23, 2019, 06:29:31 AM » |
|
STATE-OF-THE-ART WOLF SIMULATION WITH DEEP LEARNING
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #6 on: June 29, 2019, 09:02:54 AM » |
|
After conversing with some highly intelligent people in my circles, I have decided to prioritize the best experience for the users. From here on out, the focus will be on polishing gameplay features and maximizing fun, player choice, and awesome gameplay. Check out the new achievement system!
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #7 on: July 06, 2019, 11:46:16 AM » |
|
All entities now have inventories. And there are grains.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #8 on: July 13, 2019, 03:36:15 AM » |
|
Plant growthStill in its infancy. I know enough about genetic algorithms to add individual traits and mutations, it's just a matter of actually doing the work. Shown below is a generic grain in the wild emmer family. Before agriculture there weren't all the varieties we have today. Some limited form of domestication should be possible in-engine, however. Obviously the plants don't grow Narnia-fast; this is a time lapse.
|
|
« Last Edit: July 13, 2019, 03:41:32 AM by fluffrabbit »
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #9 on: July 20, 2019, 10:52:33 PM » |
|
Website wackinessI had a lot going on this week, so rather than trying to make visual progress on the game, I spent a couple long nights of spilled coffee setting up the website. Digital Ocean is awesome. I have not had any problems with them so far. That said, I will happily switch to any other service if they ever raise the price of their base VPS tier above $5/month. I can't really afford a VPS, but this is close enough to the price of a basic web host to be affordable. DreamHost is less awesome. They're less of a pain-in-the-ass than GoDaddy. They are not geared towards developers, but they are functional, even though you probably want to interact with their website as little as possible. After installing Apache on the server, I decided it would be nice to run daemons as a non-root user which can modify files on the website. This is critical for mixing in Git, custom game servers, and other services. This required moving things around and messing with configuration, as documented on two pages. I plan on switching to nginx, mongoose, node.js, Python, or another web server running in userland in the future, but Apache works for now and comes with plenty of goodies to mess around with, like PHP. If you want to do what I did, follow the instructions below. Hopefully no potential customers or employers are reading this. Install PHP for Apache, restart the server, turn on the PHP module if applicable, copy all of your PHP files into their proper place in your web root, and finally turn off the security like so: chmod -R a+rwx /path/to/your/webroot
Note: This is a bad idea for serious business, but very convenient if the Windows security philosophy is good enough for you.
|
|
« Last Edit: July 21, 2019, 07:06:02 AM by fluffrabbit »
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #10 on: July 27, 2019, 11:12:01 AM » |
|
Still working out some inventory bugs, but you can now do part of what the thread title says you can do. I have also been exploring alternative monetization methods, which is surprisingly time-consuming.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #11 on: September 07, 2019, 11:00:25 PM » |
|
HarvestThe engine is more likely to run into access violations if the plants are growing at turbo speed, and there is no easy way around that as std::vector is doing the heavy lifting. JavaScript arrays are bounds checked, C++ vectors are not. I could make a custom solution in C with a memory block, but this is a C++ engine with a lot of dynamic allocation. Therefore, the solution is to keep the error-prone dynamic allocations and deallocations to a minimum. In the case of plants, that means growing the bulk of them ahead of time. My engine can fully serialize maps in the Tiled JSON format, including plants, so saving a bunch of starting foliage is trivial. The world comes populated with the stuff.
|
|
« Last Edit: September 07, 2019, 11:22:23 PM by fluffrabbit »
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #12 on: October 01, 2019, 03:06:41 AM » |
|
Recently finished a graphical overhaul. I was told the game needed it. Still working on connecting the regions together.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #13 on: October 05, 2019, 05:47:29 AM » |
|
Improved stability and performance. Now the game doesn't crash as a result of questionable memory management. Nothing visual yet. Brainstorming how to transition between areas. Probably going to be fade up/fade out.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #14 on: October 12, 2019, 12:10:30 PM » |
|
Here is one of the transitions. The idea is that it fades to white when exiting a cave and fades to black when entering a cave. Not too exciting, but a lot of my time has been occupied with stability and audio, things which don't translate well to GIFs.
|
|
|
Logged
|
|
|
|
fluffrabbit
Guest
|
|
« Reply #15 on: October 13, 2019, 04:36:38 PM » |
|
I have compiled a short list of somewhat similar games which I will use in marketing efforts. Only posting this here for my own reference, at the risk of appearing a cold and calculating marketing person.
Littlewood (June 2019) (wishlisted) - 4 months ago Farm Together (3D, co-op) (October 2018) - 12 months ago Overcooked 2 (3D) (August 2018) Verdant Skies (February 2018) (wishlisted) Gleaner Heights (February 2018) Harvest Moon: Light of Hope (3D) (2017) Harvest Life (3D) (2017) Stardew Valley (2016) (wishlisted)
|
|
|
Logged
|
|
|
|
Alce
|
|
« Reply #16 on: October 14, 2019, 07:54:15 AM » |
|
Love the setting, the idea sounds like a lot of fun. Looking forward to when we can see cooking in action.
|
|
|
Logged
|
Aspiring chilean game dev. Likes artsy/experimental stuff.
|
|
|
fluffrabbit
Guest
|
|
« Reply #17 on: October 14, 2019, 12:20:41 PM » |
|
Love the setting, the idea sounds like a lot of fun. Looking forward to when we can see cooking in action.
Thanks! Farming and cooking games do a lot better than just cavemen, like night and day. I regret putting off this core feature for so long. It will be done!
|
|
|
Logged
|
|
|
|
|