Building Satoshis Games #4

Carlos Roldan
Satoshi's Games
Published in
5 min readDec 25, 2018

The fourth article of a monthly development blog series

TL;DR

2 new games 🎮
Lightning auth ⚡️
Store 🛍
Mobile friendly 📱

Previous devblogs

Games

The Lair

A battle game with a retro style made with PICO-8.
A Dark Lord is terrorizing the northern coast since generations. What was once a thriving land full of bustling ports and cities has now gone to ruin, and the people of the Moonlit Empire are frankly fed up with all that.
You drew the shortest straw at the Order of Night’s Vigil, so taking care of the situation is now your task. Punch through to the evil overlord’s inner sanctum in Shearwater Keep and defeat him!

The Lair — Satoshis.Games/lair

Skull Dude

The Lair — Satoshis.Games/skulldude

RPG and Puzzle game with a retro style made with PICO-8. Thirty-two rooms filled with lots of slimes, power-ups and secrets. Four boss fights and lots of bullets.

Skulldude is a deep soul-burning hatred towards the slimes. Help him unleash his wrath as he storms the slimes’ dungeon increasing his fiery power as he goes.

Optimisation

A new button has been added named ‘How to play’. This button displays a modal containing a gif as gameplay and a short description of the game. Controls to play the game and features of the game are below the description. In the footer of the modal, there is a button for playing the game and another button to go to the GitHub repository where more information and the game files are.

How to play — Satoshis.Games

Design

Pixel art

We have updated our platform with the nes.css stylesheet to grant a more arcade user experience. This pixel art library includes new styles for buttons, containers, font and more. We are pleased with the current style of the platform. However, we would like to follow the same style approach for our logo.

Responsiveness

Mobile access has been prioritised. A virtual controller has been added for pico-8 games. The game section has finally been redesigned for mobile access. Modals have also been redesigned for mobile access. There are a few games which are not currently supported by mobile browsers. We will keep working on granting mobile support as a priority.

Bcraft — Satoshis.Games/bcraft

Profile

According to our new pixel design, we have implemented https://avatars.dicebear.com/ API to generate avatars to each user based on their session id. We are overall happy with the avatar performance, and its style highly matches our new design. Bugs have been fixing to load and display user’s data.

Since we are storing sessions as accounts to avoid standard authentication based on mail + passwords, we have set up a model to import/export the account. Import/Export accounts allow users to migrate or import their account from a desktop browser to a mobile browser.

In case a user feels like subscribing to our newsletter, we have alternatively added an input method to allows subscriptions. We do not intend to spam with content to the user by default, so in case of users who would like to subscribe to our newsfeed freely, they can do it from the preferences tab in the profile section.

User Profile — Satoshis.Games/profile

Lightning Authentication

The web browser extension Lightning Joule has successfully been implemented. Now, users can import their node into their profile. Node alias and public key are stored in their profile. Node alias is stored as the user nickname. The public key is stored as a session id, which can be exported in other sessions.

Store

A lightning store has been set up using the point of sale application from btcpay server. The store is currently on testnet for testing purposes. We intend to first add some merchandising from satoshis.games project to users who want to support the project costs economically.

Formerly, when the store section successfully works without technical friction issues, we will be converting the store into a marketplace. The marketplace onboarding for users who intend to sell their in-game products, games or stickers can be done through our btcpay server.

Store — Satoshis.Games/marketplace

Score / Leaderboard

Users can register their scores to some games. We have been running several tests on the leaderboard. Only the ten best players from are displayed in this section.

Alternatively, you can check your score in the leaderboard even if you are not in the top 10. This area is currently under massive development to bring the competition model with lightning as soon as possible.

Leaderboard — Satoshis.Games/leaderboard

Competitions

A new pool for users who are willing to pay for the competition mode has been added. We have tested payments using BTCPay Server and once the payment is successful, the user is redirected to a page where he/she can view other competitors, the competition rules and the score.

The competition mode will be our first lightning case scenario. We will be testing different UX based on user preference. Alternatively, we aim to improve several features within this game mode. Instead of using a server clock to display the server time, we are implementing a progress bar. So users with different time zones have less friction this game mode.

Competition — Satoshis.Games
Competitions — Satoshis.Games

--

--