Good evening, ladies and gentlemen! Post first, but please do not count as a troll. This question is really very important to me and I will appreciate your answers. The bottom line is that I am a man who grew up on computer games. I started with the ZX-Spectrum, then there was ht86 from Hyundai (yes, yes, such a lol from my childhood) where the Prince ran to save the princess in an hour. Much time has passed, hundreds of games have been completed ... then what is called settled down, started my business and everything would be fine - but the childhood dream remained to make the games myself. But bad luck, I do not quite understand, as they say "from which end to take." From its html, css, seo, ppc, smm skills and swearing skills to cook optics on the roof in a blizzard in December: D First they told about design docks on the site, more or less entered, wrote 3 pieces. Good, in small things - from the scenario to mathematics. The gaming soul tells you that it can go well. But the process got up. Actually the question is - what technologies and languages ​​are used when writing at least an application for VK or Facebook? I understand that there must be a flash, an action-script, the very api of the social network ... but I understand all this so vaguely that I feel I’m not digging there. Accordingly, the same question on the browser.

If you don’t answer in two words, you would be happy to talk to someone with a competent voice, for example, on Skype. Or in a personal, if there is. It is possible to do this as a training or consulting. My ultimate goal is not to become a guru in all possible languages ​​- but firmly understand the necessary technologies and processes for setting specific tasks for specialists.

That's all, with respect to all Dyosha

Added.

Thank you very much for your answers, but I am not more interested in ready-made editors, like WYSYWIG, but an easy excursion into the technology itself. For example, something like this - a VC application requires a flash, mysql, or something else. This implies 2 vacancies on flash graphics, 1 on mysql or some other. The server side of the application is also extremely interesting, what is it built on?

I understand that the question is voluminous, so I will be glad if you cover any of the aspects. As they say with the world on a thread.

Of course, the best way to find out about the kitchen would be to work in some kind of studio, but so far I have other activities.

Thank.

4 answers 4

A browser game for the social network, even though it itself consists of 2 parts:

  1. the client is what is loaded into the browser and what the user interacts with.

  2. server - software components of the common game logic, database, etc., that run on a remote server machine (or servers).

The client is made in Flash using ActionScript. Corresponding to need a programmer for an action script and a designer flasher. Well, special sound, since the game. An alternative may be a client in the form of a Java applet, but there are some difficulties, and I personally don’t really know if it is possible to integrate Java applications into social. network. The second alternative is to use the features of HTML5. But this is already a matter of the future, but for now for real projects it is not relevant. Moreover, the new Flash Player must support hardware-accelerated graphics.

Server Ideally, the server should be written in Java and use a PostgreSQL database . In other matters, the choice of the database is a matter of taste, personally I have not yet seen any sane argument for MySQL , although there may be options related to speed. Any server languages ​​can be an alternative to Java: PHP, Python, Ruby.

The advantages of Java are speed, and dozens of times, according to the most conservative estimates, in some cases more than 100. Alternative options are scripting languages, which means they are executed by the interpreter, therefore it is much slower.

Why many projects are written in PHP - because it is easiest to type a command. The language is very simple, quickly mastered, skilled craftsmen in bulk. If we are talking about really good specs, then there is no difference, they are few on any platform. The second reason why - hosting. PHP hosting is provided by any provider, the other options are more specific. Although if the server and its support - this is not a problem. You can, quite, write in PHP, if the main logic of the game is encoded in the client and the server only registers key gameplay events. If the logic of the game is processed by the server and performance is critical - then only Java. As my gaming practice shows, even a Java server after 1000-1500 users starts to slow down. Especially if it's a multiplayer game.

In any case, you will need an experienced programmer as a system architect (he is the head of the development team), and a team of simpler software developers.

Python , Ruby is a healthier alternative to PHP, from a developer’s point of view, but typing a command for these languages ​​is much harder than PHP. With hosting too difficult.

Architecture Server. The most important thing to know here is that the online project architecture should be easily scalable in terms of the server hardware used. Otherwise, an increase in the number of users will result in a global refactoring of everything and everything, which will take a lot of time, money and create a bad reputation for the project. The latter is due to the obligatory lags and errors in the period of alterations.

The second point is the client architecture. Here the main thing - the possibility of a little blood to make changes and additions. Usually this is implemented by a modular architecture and a fairly high level of abstraction between parts of the application. The server part, of course, also applies.

I hope I clarified the question a little :)

  • I thank Less for the detailed answer! Do you think that to manage a project it is worth going to the courses to learn a bit of everything? For me, the darkness of the above server architecture. - Desha
  • 2
    If we are talking about investing money in a commercial project, then it is more critical to find an experienced developer who will have a productive headache at the expense of architecture. No programming courses are enough for this. But in general, learning how to navigate the question is always useful, it is without question :) Again, there are online articles and smart books in stores about game development and client-server architectures in general. - Less
  • Tell me, why is C ++ not mentioned? Somehow I had to write a server on it, in principle, it was normal. In speed, it should be even faster. The advantage of Java is cross-platform, or are there any other reasons? .. (just think whether it is worth switching to Java or not) - alphard
  • 2
    The question is ambiguous. C ++ is too expensive in terms of development time, ease of support and too demanding on the qualifications of developers. This is by the way the reason that most emulators of popular MMORPGs are written in Java, sometimes Java / Python. Of course, the native code works several times faster than the virtual machine, but there are so many inconveniences that they practically write in C ++. As a rule, only extremely demanding to the speed of the server. For flash games this is not so critical. Against the background of the desire to write everything in PHP / Ruby / Python, Java is a big step towards improving speed and quality. - Less

briefly. browser games are not very different from the site.

the server is usually php + mysql muzzle Flash although it may be HTML + JS

Conclusion. Need a Designer, Flasher, PHPShnik

    As an option, Unity3D http://www.unity3d.com/ Allows you to use several languages ​​in the writing of the game, as well as build the version under the browser. There is a free version.

      Well, there is such an engine Blitz 3d. 5 years ago he wrote games on it. Everything is simple there. For an hour, you can already write some kind of game. Just for beginners.