. NET programmer to do hand-tour development Experience (III)

Source: Internet
Author: User

Hello everyone, recently always feel a feeling of exhaustion, can not lift the spirit, so there is no peace of mind to write a summary of the article, so this article than the update time is long, today is to himself to cheer it up, tell themselves because there are many partners in the waiting, there are many problems have not been solved.

This time we will mainly talk about the process of our development.

A time still do not know how to start speaking well, I would like to say a few key words: do planning, painting prototype, planning, grasping implementation, good communication, learning flexibility, quick action.

Planning is a member of our team dedicated to the responsibility, we are a number of ideas. My side of the understanding is that the planning of the first need to do something must have a certain degree of certainty, meaning to think of the scope of the matter as much as possible, similar to the project management in the scope of the determination of the project, know the scope, you can well set the corresponding goals.

Painting the prototype I think it is also necessary, when we do, we do not have a very clear prototype, so that in the development of the time to discuss some of the interface is what it is, how the interaction, affecting the progress of the project.

I set the plan, from development to on-line set is 25 days, including art design, program development, production of audio materials, testing, online, publicity these steps. Although there is a change in the plan at the time of development, the plan is also necessary.

The plan is well established and must be strictly enforced. We have encountered some problems in the implementation, such as art, because our art is not a professional art, or part-time, so the work of fine arts have a great challenge, this is also always actively help the art to find material, discuss the art style, also under a lot of games, do some learning and reference, The mobile phone in 64G space simply fills the application. This period of time I also responsible for the whole project progress control, and some of the technical implementation, indeed the pressure is very big, this is a lot to think about the appearance after the line. Recommend a foreign open source game material Net: http://opengameart.org/, can find some free design material and sound material.

The code management uses the domestic open source Chinese git way to carry on the trusteeship, because two development not together, is very convenient.

The development of the time did encounter a lot of problems, such as the search algorithm is slow, the wizard deleted memory is not released, playing sound memory has been raised resulting in flash, bullet trajectory caused by the inability to select gems and so on. The next step is to talk about how we solve the problem, this may be more concerned about the technology.

1, pathfinding algorithm is slow because of the use of Swift's own array, is directly using the [] generated array, the object placed inside, I think the apple on the swift array query efficiency is not well optimized, in the array of tens of thousands of times, the efficiency of each query dozens of milliseconds, because a * The algorithm of each node of the judgment, all need to query the operation, when the number of nodes to find more than a few times, it may take a few 10 seconds, so certainly can not meet the demand, the occasional attempt to use the Object-c array object Nsmutablearray, found that efficiency significantly improved, It will not be more than a second to find the road. It is convenient for Swift to be able to directly use the objects previously object-c.

2, the Genie Delete memory does not release the problem, is this, the bullet object has an attack target this property, when the attack object of the wizard removed, the corresponding bullet reference to this object of the attack target is not equal to nil, this is because Swift is also based on the reference count to the automatic release of memory, But Swift by default is a strong reference, as long as the reference to the object in front of the weak keyword, it can be said that I do not hold this object, this is also thanks to the Swift official tutorial has written, have the impression that this solution.

3, play the sound memory has been raised to cause the problem of flashback, the first use of this method skaction.playsoundfilenamed (), I think it is spritekit a bug, is to use this method in multi-sound playback, memory will continue to rise, Until the flashback, this problem I also each site to find a solution, to the StackOverflow website and Apple's official forum, but also see the corresponding similar problems, but did not find a good answer, I also posted in both forums, Also on the StackOverflow with foreign friends for the first time to communicate in English. This question also tried some other methods, and finally, the use of the swift bottom play sound library avaudioplayer to achieve multi-sound playback.

4, the bullet trajectory led to the problem of the gem can not be selected, the problem because of the use of particle effect to do bullets, when the bullets cover the corresponding gems, resulting in gems can not be selected, the final solution is to find the selected gems according to the coordinates of the touch, rather than directly with the Nodeatpoint ( Location) This method takes the node directly according to the Click.

In fact, there are other problems in this do not say, I think these are more impressive, remember when the solution, sometimes toss a day, until the wee hours of the night is still very energetic, is that the problem must be solved, this mentality may be with a lot of people do the same technology.

Let's talk about the test, because there is no professional testing, is that we are responsible for testing, testing I feel that the final test of their own program, try to find other people to test, so you can find a number of points of view.

There are many people when the development of what problems, as far as possible timely communication.

The implementation of our project is generally consistent, but in the middle will be based on the actual implementation of some changes, such as the problem of fine arts, change the plan, delayed 2 days, and consider the test finished directly online, but also risky, because after all, we are only a small range of testing, not conducted a wide range of testing, There must be some problems that have not been thought of. So the plan added to the beta link, the launch date and then delay.

We have successfully invited 200 players from various channels, the beta stage did find a lot of problems, players also gave a lot of reasonable advice, game and stability have a great upgrade. In the next period, I will explain in detail how we operate the beta, and also some of the issues posted on the wire.

The development of the matter is written here today, welcome to read.

Recently applied rankings from the pay the total list of more than 200 to the total list of more than 500, indeed a little overwhelmed the feeling.

The last small partner let me build group, convenient for everyone's communication, I built, we can add, in the future we can discuss technology, discuss life. Group number: 372385920

And the last time a lot of small partners want to play the game we do, the first simple introduction, this is a puzzle game, a little bit difficult to get started, but it is really a test of imagination and IQ of a game, need to build a narrow maze and synthetic high-grade special gems, to customs clearance. The iOS platform is now on the shelves: Gem Tower defense, or search gem Tower defense in AppStore, the first one is.

If you like what I write, don't forget to give a little recommendation ha, thank you again for your support.

Please wait until you are done!

  

. NET programmer to do hand-tour development Experience (III)

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.