Inspiration
We started this project 3 years ago as an off-chain game based on japanese otome games. We like the general visual novel gameplay a lot but wanted to make it more spicy and inclusive. Inspirations are pirate history, manga/comics designs and Bandersnatch-style branching scenarios. Last year during a gamejam also hosted by NEAR Protocol, we introduced mini-games with a tarot reading mini-game that featured cool homemade art for the tarot cards. The plan was to make those an NFT collection but we waited for a good opportunity for the launch. With this Metabuild hackathon, we decided to get back on the project and make a fully on-chain visual novel. The idea is to track the players' game progression and choices straight into a smart contract.
What it does
You can be your own pirate self and have multiple adventures (you know, pirate adventures and… flirty ones). Your choices have an incidence on the events you will see and you need to use your social skills to manage situations. The game targets mobile devices but for now it is played on web3 enabled web browsers. It interacts with the Aurora layer that lives on the NEAR blockchain.
How we built it
The game front-end is built with TypeScript and VueJS 2. All of the code is meant to become a Web3 enabled Visual Game engine, that's why we separately built the story layer and the instruction parsing layer. Taking inspiration from other Visual Novel engines such as Ren'Py and Monogatari, our instruction parser reads scenario files and computes dialogues, choices, characters, backgrounds, music and more.
It ships with a EthereumProvider making it easy to integrate blockchain interaction within the game seamlessly and without the need for coding. It already supports basic features such as fetching ERC20 token balances and checking for the ownership of an ERC721 token, and for our specific needs to save the player's progress and choices on the blockchain, it calls methods from our custom contract. In the future we have the ambition to make visual novel game progression smart contracts a standard. It could easily become an interface that smart contract developers would implement and make their own on-chain visual novel adventure.
Challenges we ran into
As a fully independent team with our respective day jobs (for now 😄), it's a real struggle to allocate the required time for a project of this scale, during this hackathon we slept very little and pushed ourselves to our limits and we were barely able to finish the project in time (exactly 1h before the deadline).
On the technical side, we thought we would save a lot of time by tweaking an existing game engine to add the web3 interactions but we ended up wasting a tremendous amount of time playing with dirty code before starting again from scratch.
Accomplishments that we're proud of
The first time we ran a test scenario file, launched a playtest and saw our game assets on the screen it felt magic! Up to that point the idea of "Building our own game engine" felt a bit crazy and we were full of doubts at every step thinking it might be a bad idea but that was the moment we thought "Ok we're doing this!"
Another thing, although it might not count as an accomplishment by itself but we stuck to this project for 3 years. Even with very long pauses we always managed to get back on track when we had to. And we're very grateful towards hackathons for the incentive they manage to bring!
What we learned
Partnership, determination and confidence in ourselves! We also made a lot of progress in both technical and artistic skills.
What's next
We have been waiting almost a year to release our Tarot cards NFT collection and now with the fully on-chain playable introduction chapter finished, the opportunity is perfect to start marketing for it. For Rough Waters, the game, our next milestones in sight is to build the whole first playable book (that's 7 more chapters). We also plan on producing some merch and starting a crowd funding campaign to finance the creation of more games and more chapters.
In parallel with the hackathon we have also got in touch with an accountant who is helping us establish a company. Exciting times ahead!
Built With
- aurora
- ethereum
- ethers.js
- javascript
- near
- vue



Log in or sign up for Devpost to join the conversation.