V
V
vafegoc8212022-04-20 13:13:55
Game development
vafegoc821, 2022-04-20 13:13:55

What is the best way to make a 2D online rpg?

There is an idea to make a game, 2D with a top view, that is, only the head and shoulders are visible, for example, as in the first GTA:

Tyk
in-game_screenshot.png

Without any mechanics, pure rpg. But, what is important, it must be online so that you can register, choose the color of hair and clothes, see other players (one common card), chat with them. Actually, the question is in what language it will be easiest to implement it. More or less I know JS and Python. Is Canvas still relevant? I heard that WebGL has serious security issues. I don’t know Unity at all, but I found this repository: poke , in this game, it seems, there are all the listed requirements, you can try to remake it for yourself. So, what do you think, or maybe you know where to find useful resources or tutorials, in general, any information will be useful.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
A
Alexander Nesterov, 2022-04-20
@vafegoc821

Provided that we are talking about the browser version.
1. Graphics.
ThreeJS , as already mentioned, is the best option. Canvas, of course, can also be used, but this is an extremely low-level thing and it will take a very long time to write on them.
Unity webplayer . I know there is, but no more.
UPD: From comments:

Does Unity Web Player work now? It seems to use npapi, which is now cut out of all browsers for security reasons.

2.Online.
Sockets. There are no options here, in theory, since real-time is needed to synchronize the Persians and the chat. There are, like, other ways to connect, but I was not interested.
3.Backend.
Compiled languages ​​and others like them (C#, RUST, JAVA) . Since the game is not just "bring text out of the database" but working with dozens or even hundreds (ideally) of players in real time (at the same time, for normal operation, the client-server communication frequency should be at least several (tens) times per second ), which requires significant resources, especially considering that the data will have to be stored in the server's memory.
python. In theory, of course, it is possible on it, but it must be borne in mind that it will most likely require more resources. Moreover, in order.
4.Database.
A lot depends on how you play the game. If it is supposed to have some specific items that will have a large number of different parameters (which may differ from item to item), then it probably makes sense to take nosql databases. (the same applies to other saved aspects_
If this is not required, take any sql database.

L
Levsha1337, 2022-04-20
@Levsha1337

If you need something in JS, then it makes sense to look towards Three.JS.
Backend in theory can be written in python, so your stack turns out.

T
ThunderCat, 2022-04-20
@ThunderCat

The obvious choice is Unity. Everything else is likely to take much longer to deal with. The unit already has networking for multiplayer (I won’t say out of the box or you need to connect something, but 100% is). Unless for greater functionality it will be necessary to learn C#.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question