Thoughts on configuration data in MMORPG Game Development

Source: Internet
Author: User

MMORPG games involve a large amount of configuration data during development. The configuration data has the following features:

1) configuration data is initialized and loaded at server startup;

2) configuration data will change frequently. configuration data of some important modules may be changed in almost every small version, such as skill system and task system;

3) Incorrect configuration data may lead to many unexpected bugs in the program;

4) The configuration data of each module is accumulated and varied, and the configuration data is generally added and modified by planning colleagues, which is often prone to mismatching in actual work;

I think about it like this. In our actual game development, almost every version has bugs caused by configuration errors, in addition, the test colleagues cannot test the functions of related modules due to configuration problems in several versions. How can we eradicate these problems? This is also a question I have been thinking about in each version. Currently, I think of the following points:

1) provide automated configuration tools to configure relevant data as much as possible. You can add necessary verification and Error Correction functions to the configuration tool and manually enter the Excel configuration file, which is neither intuitive nor error-prone;

2) The program provides regression testing functions, such as unit testing, to ensure that new configuration data changes pass in all test cases;

3) For each configuration data change, the relevant officers must be informed, such as related planning, procedures, fine arts personnel, to ensure information synchronization, each modification must be archived in the version control tool for rollback in case of configuration errors;

4) reasonable version construction and effective version control. I feel deeply at this point, because the version management of our current project has a big problem. On the surface, the version is divided into three lines: Resource version (under the responsibility of planning colleagues, to ensure the timely release of planning and art resources) and functional versions (the program colleagues are responsible for ensuring the timely completion of functions of each version) switch to test version (officially submitted to test team colleagues every month). On the surface, there are three versions, each of which has its own purpose and looks good, in actual implementation process, almost every version requires the participation of planning, program, and art colleagues. Therefore, when each version is built, it took a lot of time and effort, and added the random, unordered, and astonishing frequency of version Building Management (server colleagues can check in code to cc at will, A client colleague sometimes sends a patch package when only one bug is modified.) This greatly compromises the quality of each version. Therefore, this enters: when a version is released, a large number of bugs are found-> the bug is immediately merged into the version for release-> the strange circle of a large number of bugs is found.

Version management is very important for each project. It is of no less importance than lack of a function or a function is incorrect, especially for medium and large projects involving hundreds of people, its importance is even more at the top. Because the obvious thing is that chaotic version management not only compromises the quality of each version, but also makes development colleagues exhausted and the project's delay inevitable. It is also easy to affect the morale and working status of the project team's colleagues: because the project delay means working overtime all night long.

Why don't our project managers reflect on this issue? I think our managers have thought about it, but from which perspective do they really realize the importance of this problem, are you sure you want to come up with a practical and reliable solution? I don't know about this. At least, from the current implementation situation, it is not satisfactory!

I want to come up with some ideas, but who will listen to me?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.