-
-
If you have a fire and meat you can cook it for a hunger and mood bonus.
-
The best way to get meat is to set fish traps.
-
Day 4 -Sample activities
-
Explore will occasionally yield meat which should be cooked same day
-
Found some wood!
-
Simple activity notice from application gets logged in 'Tasks completed Today'
-
Winner! If you finish the challenge, your score is a combination of mood and hunger stats.
Inspiration
So many NFT games are too focused on card collection and not game mechanics. I wanted to change that with a core game logic that allows for many layers of strategy.
What it does
Pick a starting survivalist, a location, and starting set of items. Every day you decide how to spend your time: do you find food first, or build shelter? The characters all have different statistics, while the different locations have varying weather patterns and faunae. Can you make it to the final day without tapping out due to hunger, or discomfort?
How we built it
Ruby on Rails 6.0, with a Postgres database. Deployed on Cloud66. I spent a lot of time on the ERD, which is the heart of the logical flow. The UI is built with Turbolinks, Bootstrap, and a sprinkle of UJS.
Challenges we ran into
I had to spend a minute to get the Ajax working correctly. Also had some issues with my dev box and a bad rvm installation but it all worked out in the end.
Accomplishments that we're proud of
I love building games and this is by far the most complexity I've ever attempted.
What we learned
Rails is a perfect match for this kind of experience that leans heavily on the database. With Turbolinks the pages load really quickly and I love that.
What's next for Survivable App
More locations, more items, more logic. Increasing mood penalties as the days get shorter.
Once I have the game balanced for both fishing and hunting play styles, the next big integration will be to mint NFTs as starting characters. I was putting this off because I want to start with the right blockchain, I know that free ton supports smart contracts so that could be a great synergy. Starting 'survivalists' would pull their stats from the NFT meta data, and then we would put a leaderboard up on Free Ton that matches wins to the NFT, so that player could trade survivalists along with their play stats (a lot like they do with Zed Run).
Also - because I was iterating so quickly with the core logic, it didn't make sense to write tests first. But now that we I have a beta version, the next step is to lock it down with some unit test. Rails works with a huge range of testing frameworks which will make that very easy.
Log in or sign up for Devpost to join the conversation.