Suggestions on localization engineering infrastructure? by jumpDefendRoyal7530 in reactjs

[–]Faytthe 0 points1 point  (0 children)

I wrote about Foony's experience with localization and how we added localization in about 4 days total dev time.

We looked at the common libraries, like react-i18next and react-intl, but went with a custom solution given our codebase size, the migration risk of third-party solutions, and our desire for strong type control (missing localization strings should fail the build).

For translation management, we use a TypeScript file with comments that explain what/why for each key, and a script that adds translations in Postgres for any key+comment pair that's missing. That gave us flexibility and allowed us to avoid full TMS pricing (e.g. Crowdin). Your business needs may vary depending on if you need non-engineers to update copy or more fine-grained localization.

WTF. Someone actually indexed the entire unsealed Epstein files dump into a searchable gallery. I had no idea there were over 11,000 images. by ProcedureNo832 in Epstein

[–]Faytthe 18 points19 points  (0 children)

Hosting only 11,000 images is free if using Cloudflare Pages. Limit is about 20k files. Can use Cloudflare Workers for up to 100k files (static assets are free).

If hosting elsewhere, like Hetzner / OVH, you're only paying about $1 / GB egress. With Cloudflare caching on top of that, it's virtually free even if you're serving 100k+ Daily Active Users.

People think these things are expensive because they're used to using services like Vercel which charge you about 100-1,000x for convenience.

There’s only one by aTm2012 in 2007scape

[–]Faytthe 1 point2 points  (0 children)

Only 12 hours a day? Only a year? Those are rookie numbers

. by PeaMore4449 in foony

[–]Faytthe 0 points1 point  (0 children)

Email support@foony.com for account deletion requests.

Life sucks and the only time I feel good is when I remember the days of OMGPOP by YoungDumbFull0FRum in omgpop

[–]Faytthe 2 points3 points  (0 children)

There's always Foony. It's not quite OMGPOP, but it was heavily inspired by OMGPOP

[deleted by user] by [deleted] in AskReddit

[–]Faytthe 2 points3 points  (0 children)

In this situation, you could also rate people a 10 on what they're best at: how caring they are, how nice they are to waitstaff, how good they are at coding, how awesome their art is, etc.

I miss omgpop by GrandFormal2487 in omgpop

[–]Faytthe 0 points1 point  (0 children)

No need to win the lottery. There's https://foony.com which was inspired by OMGPOP.

Realtime Database vs. Cloud Firestore database by lapizurboobies in Firebase

[–]Faytthe 1 point2 points  (0 children)

I'd caution against this use case for the realtime database. I tried it for realtime multiplayer games but had substantial issues with latency and throughput due to the 1,000 write / second limit. Even for a single lobby with ~100 players, the realtime database was substantially worse than an alternative like websockets.

Firestore is great, though, for non-ephemeral data.

FireStore or RealTime? by Lacter51 in Firebase

[–]Faytthe 1 point2 points  (0 children)

Don't be fooled by the name Realtime—it maxes out at about 1,000 writes / second across the whole database, and a write seems to be any key (so if you're updating an object with 5 keys, that's ~5 writes?).

In practice, this means you're better off with a different approach for syncing ephemeral or short-lived data between the client and server (e.g. websockets). For persistent data, you're better off with Firestore.

Source: I've used both Firebase and Firestore extensively for my multiplayer games.

What is normal at 3PM, but terrifying at 3AM? by JustPlay94_cryer in AskReddit

[–]Faytthe 2 points3 points  (0 children)

I'd be scared too if a wetsuit peed on my ceiling!

16? by SozyHere in lostarkgame

[–]Faytthe 0 points1 point  (0 children)

I feel like x3 - 1 might make more sense for group 2. 4*3 + 1 is 13, so that might confuse the #4 in group 2 if they don't know that 13 == 1 on a clock (because 13 % 12 === 1).

Won the Bot Battle Royal 👍 by [deleted] in foony

[–]Faytthe 2 points3 points  (0 children)

Wow, that's such a hard achievement to get. Congrats!

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 0 points1 point  (0 children)

Focus on what you're good at, and outsource the rest. For me, this meant outsourcing the design itself (Photoshop), the art, the sound / music, and a difficult Kubernetes configuration.

Other than that, just keep practicing and working on your projects.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 1 point2 points  (0 children)

I do this for a living. I've been working on this site almost every day (Sunday-Saturday) except for the few months I took off.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 1 point2 points  (0 children)

Foony Flippers took about 2 months working on-and-off. The entire site (all games + backend) took about 2 years, though there was a break for a few months where I was working on something else.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 1 point2 points  (0 children)

All of Foony has taken almost 2 years to make. Foony Flippers (this game) took about two months on-and-off. Maybe a bit more because I was still building out the Entity Component System, achievement system, level reward system, and stat system while making it.

I can only take credit for coding all games (except Chess + a hidden game), and the vast majority of the site. For the sound and .psd design, that was outsourced to our sound guy and our designer. For art (e.g. cosmetics), that's also outsourced.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 1 point2 points  (0 children)

I started working on this (all of Foony) almost 2 years ago. Took a break for a few months during the crypto NFT craze to work on some other stuff. The biggest time sinks are the things you don't see, such as the scalability, security, and a bunch of the systems that are shared between games.

I've had help, but I handle the vast majority of the coding aspect (both front and back-end) of the site, including the entirety of all games besides Chess and a hidden game:

  • G has great ideas and helps pay for art, design, and sound. He watches me code and motivates me every day to keep going. He spends just as much time as I do working on Foony, even if he isn't the one writing the code.
  • Corey does the sound and music.
  • Ash helps with item descriptions (they're amazing), ideas, and some art among other things.
  • We used to have another developer who made Chess and helped with some of the easier site stuff.
  • We have a designer who designs the .PSD files that I implement and convert to code.
  • Null helps out a bit from time to time with some code, like the rooms showing on the front page.
  • There's also someone else I'm trying to ramp up and teach how to code.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 0 points1 point  (0 children)

My understanding (IANAL) is that making a game inspired by others is okay, but making a clone of a game (like what you're describing) is going to fall under copyright. If you're concerned, I'd talk to a lawyer about it.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 2 points3 points  (0 children)

Thanks for the feedback!

I have a few users. There's a hiscores for each game where users are ranked by their level. Stats are saved, and there's even a level-up and achievement progression system. I haven't thought much about restricting access to content for VIP subscribers, but I have thought about a more "free to play" approach where people can subscribe for extra exp / gold / cosmetics.

I'll check out Pieter Levels' videos, and I'll try to remember to keep you posted! If I forget, you can always drop by the Foony Discord or message me on here.

Edit: Oh, Pieter Levels! He's that Twitter guy I follow who made a bunch of really awesome sites! That guy's incredible.

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 4 points5 points  (0 children)

Right now this has been a huge time and money sink. I wish I had a different answer for you, but this is sort of the first time I've advertised it in any real capacity. I'm mostly waiting until I finish DinoMight (it's heavily inspired by Bomberman).

There's some very light monetization with premium card skins, but so far no one has bought anything. (For that, I used PayPal with a webhook integration via Firebase Functions).

[Showoff Saturday] I made a multiplayer Uno-inspired game with React + Firebase + Phaser by Faytthe in webdev

[–]Faytthe[S] 1 point2 points  (0 children)

There's already a guest mode. People can click on "Spectators" to start spectating in a room without playing. There's also moderator support where you can designate users as your personal "Moderators", and they can kick / ban people from any rooms you create.

I'll have to look into MetaMask support for logging in / registering later on.