[ prog / sol / mona ]

prog


Want to make an online forum/RPG

1 2022-06-15 07:28

I want to make an online RPG website which would have 2D maps. People would be able to control their avatars and talk to people on the map. I want to make it as low resource as possible. Simple site which can scale.

2 2022-06-15 08:13

Sorry forgot to ask the question. What should the tech stack be?

3 2022-06-15 08:32

Scheme, ncurses (guile-ncurses), OpenSSH, and FreeBSD (with Jails).

4 2022-06-15 08:40

>>3
I played simple online rpg games when I was young. I want to recreate that experience so wouldn't be making it hard for the players. I presume you're suggesting I make all users connect via ssh.

5 2022-06-15 08:57

>>2
JavaScript, Erlang, Mnesia, Unix/Linux.

6 2022-06-15 10:04

>>5
I've only heard bad things from people who run large Mnesia clusters.

7 2022-06-15 15:11

>>6
Could you provide some links to the horror stories?

8 2022-06-15 18:27

>>7
https://www.youtube.com/watch?v=MgBx1qBLM8U @2:30. Not a horror story, but an overview of extra work needed to use mnesia instead of a SQL DBMS.

9 2022-06-15 19:05

HTML5 and JavaScript.

10 2022-06-16 08:07

Haskell

11 2022-06-16 09:10 *

>>9

HTML5

XHTML5

12 2022-06-17 01:30

Backend:
* Debian 11 bullseye
* Nginx for reverse proxy & static assets
* Game & forum daemon(s) written in [your favorite language]
* MySQL

Frontend:
* XHTML for rigor
* JS using WebSocket

You can also theoretically throw out JS. A meta refresh in the frontend could be used to update the player's view of the game. This method would probably consume unnecessary bandwidth, prohibit most sound effects and animations, and just not work for faster-paced games. However, you'd be able to advertise "potato" as a supported platform.

13 2022-06-17 04:19

>>12
Ooh thanks
I have to figure out what websocket is now.

14 2022-06-17 07:48

>>12
Why MySQL? PostgreSQL is better.

15 2022-06-17 10:59

>>14
Yeah, that's fair. TBH I listed MySQL since it's a bit more popular and common in LEMP stacks.

16


VIP:

do not edit these