” CSCI851程序 辅导、 写作Programming编程CCNU-UOWCSCI851 Advanced ProgrammingDue 11:55pm 23th November 2020.Early diagram submission: 7pm 18th November 2020.OverviewThis assignment is to be implemented using object oriented programming. It involvesimplementing a simulation of a journey of space exploration.In addition to Providing code you need to provide a pdf report explaining:1. You need to submit a UML like class diagram indicating how your classes are related.A draft of this should be submitted by the earlier deadline.2. You need to Explain the ranges of the characteristics for your spaceship builds andofficers.3. You need to explain the alien civilisations that you set up.4. You need to explain how the results of interactions between entities within eventsare determined, including battles. You can use diagrams to help to do this, but youdont have to.General notesThese are some general rules about what you should and shouldnt do.1. Your assignment should be sensibly organised with the same kind of expectationsin this area as Assignment one. No memory leaks etc. too.12. Other than the initial command line input, the program should run withoutuser input. In particular this means there shouldnt be pauses waitingfor the user to press a key.3. There shouldnt be pauses generally, please dont use sleep!4. Your code must compile on Banshee with the compilation instructions you providein Readme.txt. If it doesnt you will likely receive zero for the coding part of theassignment.5. You have to use classes, and Should make use of encapsulation.6. You should make use of inheritance and, if appropriate, polymorphism.7. If you use overloading, it should be sensible and appropriate overloading.8. You can use your own data files for names or similar information.1 A journey of space explorationA crew of space Explorers travel through space exploring planets, trading goods, andbattling spaceships. The general overview is described below, but most of the details areup to you.Your code should compile on Banshee according to instructions you provide in aReadme.txt file.Once your program is compiled into the executable JSE, it must run as follows:./JSE nwhere n is the maximum number of sectors of space the journey will run for. The valueof n should be between 1 and 50 inclusive. For various reasons, death and/or destructionmostly, the journey may not last for the specified number of sectors. There should be afairly high chance of Survival for journeys of up to 20 sectors so you may need to modifyparameters to make this likely.In each sector exactly one of the following will happen, with the chance as listed:1. 35%: Spaceship encounter.2. 25%: Planet encounter.3. 15%: Trading station.24. 15%: Empty sector. This is pretty boring.5. 10%: Some other space thing. This is up to you.Travelling between Sectors costs resources. The primary resources that are used upare fuel, food, and money. You can choose the currency to be used. If the spaceship runsout of food or fuel the journey is over.At the end of journey, a summary should be provided. This should include a statementof how resources have changed, including the final state, and a description of events. Thenumber of crew who have died should be stated and there should be a list of dead officers,along with their former roles, death date/location, and cause of death.2 Simulation componentsThe simulation is from the perspective of a spaceship and the associated crew. You needto give consistent and appropriate definitions for a class hierarchy associated with thepeople in the simulation. You also need to design appropriate classes to represent theplanets, trading stations, and spaceships within the simultation.2.1 The crewThe crew consists of officers and other ranks. Each of the officers influences particularactivities that may be carried out. Captain: Negotiation which includes diplomacy and trading. Pilot: Influence Travel efficiency, combat maneuvers, conflict evasion. Engineering: Influence travel efficiency, combat maneuvers, conflict evasion, defensiveperformance, systems recovery. Mining: Mining ability. Weapons: Offensive performance, defensive performance.The individual abilities of officers should be randomly chosen but initially fairly highacross those areas. If an officer dies a crew member should be promoted to that role.The new officer Should have skills on average lower than the previous officer in thatrole. Officers should have names and ages, crew members dont have to be specificallyidentified and a simple count of them can be kept. Some crew members are likely to dietoo!3Those various activities are loosely described below. You need to think about howyou are going to implement such activities. Diplomacy: Helpful in avoiding conflict. Trading: Selling and buying, including food and fuel. Travel efficiency: Fuel used for various movement activities. Combat maneuvers: Avoid enemy Fire while in combat. Conflict evasion: Running away in your spaceship. Defensive performance: Performance of ship shields and armour. Systems recovery: Ability of parts of the ship to recover from damage/wear. Mining ability: Ability to extract raw materials, and process them into goodsthat may be used or sold, including food, fuel, and tradable goods. Offensive performance: Performance of weapons systems.The total Number of crew should have some influence on some of those activitiesmarked with a . Those properties are also functions of the spaceship being travelled in.2.2 The spaceshipThe spaceship itself should be randomly chosen to be one a of at least five differentspaceship builds that you have defined. They may vary through such abilities as cargocapacity, combat aptitude, mining, travel efficiency or speed. This doesnt mean youneed different classes for the different spaceships, all of them likely have all abilities butto different degrees. Different instances from the same spaceship build should vary withinranges.On initial setup the spaceship build, spaceship name and characterstics should bespecified, as should the names and abilities of all officers. General resource and crewinformation should be provided too.2.3 The eventsSpaceships, planets, and trading stations may bring the explorers into contact with othercivilisations.4You need to have at least five different types of alien species. Those species shouldhave advantages/disadvantages associated with their abilities to perform various actions.For example, you May have a species that cannot trade, and another that cannot fight.Trade is possible with a planet, or spaceship, or trading station. Conflict isnt possiblewith trading stations, but is possible with planets or spaceships. Mining is possible onplanets.Battles only need to be at the level of the spaceship. There should be some senseof time within the simulation of conflict, so the battle should take place instages or rounds rather than the result just being specified.Changes in the state of resources should be reported at the end of event, along withthe values of the Current state. Note that resource usage is dependent on such parametersas the number of crew. The spaceship can be repaired during travel in accordance withthe systems recovery ability of the engineer.Notes on submissionSubmission is via Moodle.Your code must compile on Banshee with the instructions you provide. If it doesntyou will likely be Given zero for the programming part of this assignment.Please submit your source, so .cpp and .h files, Readme.txt file, report,and makefile if you have one, directly to Moodle. There shouldnt be otherfiles or directories and they shouldnt be in a zip file. Make sure your report isin pdf and has your name, student number, and lab class marked clearly on it.A final diagram should be in your final report. Your early diagram submission shouldbe in pdf, and should also have your name, student number, and lab class on it.1. Late submissions Will be marked with a 25% deduction for each day, including daysover the weekend.2. Submissions more than three days late will not be marked, unless an extension hasbeen granted.3. If you need an extension apply through SOLS, if possible before the assignmentdeadline.4. Academic misconduct is treated seriously. Students involved will likely receive zero.c Zhifeng Wang, CCNU-UOW, 2020.如有需要,请加QQ:99515681 或邮箱:99515681@qq.com
“
添加老师微信回复‘’官网 辅导‘’获取专业老师帮助,或点击联系老师1对1在线指导。