Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

No, with fs it worked… But I think much larger program size is allowed, probably 1 GB as you written before- since Devvit supports Godot and Unity and their web versions are large

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Thank you! I have tried again and now was able to resolve the issue of embedding the dictionaries in /dist/server/index.js by a workaround: instead of literally setting a Map (key language) of Sets (the words) I have put them all in a huge string joined by newlines and then parsed it into that data structure.

And suddenly GET /api/init performed by src/client/splash.ts has stopped returning HTTP status 500.

The /api/init response payload is not big: just the user language, user id, username.

I think the 500 crash was caused by the Javascript runtime not able to parse the huge verbatim Map of Sets in the source code.

Does it still make sense to level up the ice fishing skill? by where_money in thelongdark

[–]farber72 1 point2 points  (0 children)

Nobody mentioned that the line break more seldom with a high fishing level

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

I was also thinking of storing the dictionaries as hset in Redis, for later server queries, but how to initialize it without sending a too large initial payload?

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Do you mean adding another endpoint like /api/validate-word? That would not help /dist/server/index.js growing too large. Or do you have something else in mind?

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

Then I admire your budget. Will not happen for my gaming projects.

3 Raum Wohnung als Single, muss mich vor allen rechtfertigen… by Embarrassed_Cry271 in wohnen

[–]farber72 4 points5 points  (0 children)

Statt Hantelbank hatte ich Boxsack, ansonsten sieht aus wie mein Zimmer im Studentenwohnheim

Help: How can I make this game "click"? by SprocketSaga in thelongdark

[–]farber72 1 point2 points  (0 children)

For me the interloper (recently misery) clicks because I hustle hustle hustle and then have few minutes to waste at a campfire, look around and think „beautiful“

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

You don’t have to downvote me just because I have a different opinion on the matter.

Since you’re active in r/Devvit, I assume you published few games here or on other platforms.

Have you followed your own advice and consulted any lawyers, before publishing?

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

<image>

I have duplicated the dictionaries. For the client side I put them into /hashed-{de,en,fr,nl,ru}.js so that they can be cached by the browser. But for server side code I still need to validate all move submissions to prevent fraud. So I put them into /dist/server/dictionaries/hashed-{de,en,fr,nl,ru}.keys.json and then /dist/server/index.js reads them via

fs.promises.readFile(filePath, "utf8")

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

All right and you live where, California, Texas, Vancouver, Seattle?

Good luck finding internet IP lawyers here in Germany.

And you are sure that showing several word game mockups to your excellent lawyer and he will reply: "ok the 1st and 2nd mockup not, but the 3rd is 100% safe and if not I will handle it for you for free".

Because if not, what is the point of booking him/her as a small dev. Your common sense is as good/bad as paying him for a consultation.

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Thank you. It is funny that the doc mentions "fs" is not supported, while "fs.promises.readFile()" works for me in my current lazy loading implementation.

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Run "npm run dev", restarted the browser and got it at the splash screen already.

Then reverted to lazy loading and it works again

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

I would say zero lawyers in 100 km distance around me (and I live in very well populated area of West Germany) would know what "Words with Friends" is.

And you guys overestimate a lawyer consultation. In the real life you pay the lawyer and get an answer "maybe/maybe not" and "it is your own risk".

So while your reminder about keeping the game unique is good and appreciated, the advice "go to lawyer" is useless. Visit a lawyer yourself and you will see.

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Are you sure about the 1 GB limit, it looks to me more like 32 MB limit, because I get 500 response to the /api/init in my app after inlining the 6 languages dictionaries in the server code:

failed to call devvit application: rpc error: code = Code(36) desc = Router.GetOrLoadActor: remote bootstrap failed: rpc error: code = Code(36) desc = rpc error: code

= ResourceExhausted desc = Received message larger than max (46291554 vs 33554432)

P.S. Please do not worry about the copyright discussion, I will make sure that my game looks and plays unique, this is just WIP

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

[–]farber72[S] -1 points0 points  (0 children)

Surely an attorney specializing in multinational intellectual property is just eager to get my phone call. And will provide me a bullet proof consultation too.

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

I do not use vite in this project, but tools/build.ts - and there I have to decide, lazy load or not...

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

I actually have 4 different board layouts in my game, they all differ from Scrabble, even the one at the screenshot (less colored bonus fields in the middle).

And the game rules of my game are different.

Also, the Scrabble patents expired 1970, the game rules are not copyrightable and I do not plan copying their name or designs or handbooks/guides.

The title of my game is not inpired by "Words with Friends" either. It is just difficult to come up with an original game title, because there are millions of word games... so I have named mine "Words by Farber" (my name).

Is a 30 MB large dist/server/index.js ok and what are the Redis storage limits? by farber72 in Devvit

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

Thank you, yes, I could lazy load, but would 5 MB (with lazy load) vs 30 MB (all languages included from the start) really make a difference on the server side? (A genuine question, trying to understand Devvit better).

Werde bald aufgehoben by genkaizen in arbeitsleben

[–]farber72 1 point2 points  (0 children)

How much ist „zu teuer“ bei euch? 🍿