E
E
evgeniy_svetopalov852021-03-21 03:14:36
Game development
evgeniy_svetopalov85, 2021-03-21 03:14:36

How to create a text-based online RPG/ZPG?

You may be familiar with the ZPG game Godville. I would like to try to do something similar for myself / friends. Interested in the following:
1. What language is this game written in? And in what language should it be written?
2. Can you suggest any courses on this topic?
3. Question for connoisseurs. How to make the game character himself (as in Godville) move around the map and at the same time sometimes meet various monsters and interesting events?
4. Even if all this is written, how to make the server part so that the whole process goes on the server side, and the player can just log in and check the progress of his hero from time to time?
In fact, there are more questions, but I would like people who understand this topic to answer in order to get an answer on the merits. A general answer would be fine too.
I myself am far from programming, my knowledge is superficial. So I apologize for such childish questions.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
D
dollar, 2021-03-21
@evgeniy_svetopalov85

If you have an interest in mathematics and you like to think logically , then the basics of programming will be easy for you. In any imperative programming language, the "if-then-else" and "repeat-until-then" constructs are used, that is, conditions are used that can be "true" or "false". It remains only to study the syntax of the language itself: somewhere they write if условие then действие end, and somewhere if (условие) { действие }the like. That is, the differences are only in spelling. Here's the basics of programming in a nutshell.
As for the development of the game itself, there is the concept of the main game cycle. From a programming point of view, it's a regular "repeat-until-then" loop, it just doesn't end until the very end of the game session. This loop divides the game into so-called "frames" or "ticks" that make up the game. Each frame is a separate game state that corresponds to a separate iteration of the main loop. You need to figure out how one state replaces another, how the transition is carried out, what calculations are performed in this case. Such a "frame" usually does not correspond to the frame on the screen (in other words, the course of the game does not depend on FPS), although this is a separate complex topic.
1. Choose the language depending on which engineOr platform you will use. Don't look back at other games. For example, Unity and C# respectively.
2. Courses, textbooks, YouTube channels - it doesn't matter. In any case, you will spend some time, and it will not be possible to reduce it much. That is, it is a direct conversion of time into knowledge and skills without strong fluctuations in the exchange rate of this conversion. In general, the time will depend on your initial background (i.e. what you already know and can do).
3. In programming (and in other areas as well), it is customary to break a complex task into parts (decomposition). First you need to study the concept of the game cycle, and how time will flow in the game (or how the time in the game corresponds to the real one, taking into account pauses and saves). Then decide in what order and what will be done there in more detail. However, any small game system will still be quite complex, and it again needs to be broken down into very simple ones. And simple ones - again divided into elementary ones. Therefore, the ability to break depends on whether you finish the program (game) or not.
4. The network part is usually the most difficult (and the most buggy), because each has its own optimization. In a nutshell, devices exchange messages over the network, and these messages can be sent at different speeds, and sometimes they can be lost altogether. The client-server model assumes that there is a certain main device (for example, you rented a server in a data center), to which all the others (so-called clients) are connected. But here's how the interaction will be implemented, error control, so as not to be buggy, this already depends on the game itself.

I
Ivan Shumov, 2021-03-21
@inoise

1. I don’t know, you can google it, but it doesn’t really matter
2. There are no such courses. Learn web development simply
3. Write an algorithm. Come up with the logic of it yourself - here you can simply do and swing with neurons and text generators. It’s worth starting with a simple
4. The only coo we can advise is with pens. Web development often involves writing a server. Read about api

V
Vasily Bannikov, 2021-03-21
@vabka

1. Xs on which it is written. You can write in any.
2. Start with the basics of programming
3. Well, just take it and do it.
You start moving from one location to another and once every N time you throw a "dice" on some event.
4. You implement it all on the server and make some kind of api for the client.
The answer is essentially - go learn the basics, because you don’t even have them in your head right now.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question