Design and implement a character generator for dungeons

Assignment Help Basic Computer Science
Reference no: EM13936162

Use tables and formulas also from workshop file to complete assignment. Design and Implement a character generator for Dungeons and Dragons. It is to have the following specifications:

• The program should ask for a Level.

• The program should offer a selection of Races, to choose from and accept a choice o Races should be read in from a file (races.chr) and stored in a linked list.

• The program should offer a selection of Classes to choose from and accept a choice.

o The Classes should be read in from a file (classes.chr) and stored in a linked list.

o New Classes should be able to be added by adding the information to the file only.

o Every Class should have an attribute that is considered Primary

• The program should then offer a variety of methods of generating the attributes

o The attributes should be: Str, Dex, Con, Int, Wis, and Cha

o The program should offer a selection of methods of generation such as:

? Entering the attributes directly

? Roll 4d6 and discard the lowest value.

? Roll 4d6 and discard the lowest value and if the attribute is 16 or higher, add the value of an additional 1d6.

? Roll Method IX:

• Each class should weight each attribute from most to least important. In Method IX, the most important attribute rolls 9d6 and keeps the highest

3. The second most important rolls 8d6, keeping the highest 3. This follows in this pattern of 7d6, then 6d6, then 5d6 and finally 4d6 for the least important.

• This information is part of the Class information and is used to generate the attributes in the Character structure.

• ie: A Fighter would probably rate Str highest, then Con and so on until you get to Chr at the lowest. This would result in something like: Str: 9 Dex: 6 Con: 8 Int: 7 Wis: 5 Chr: 4

• Meaning 9d6 is rolled for Str, 6d6 is rolled for Dex, etc.

• Every attribute is the sum of the highest 3 dice regardless of the number of dice rolled.

• Each attribute confers a bonus or penalty. Through the Workshops you should have deduced that the pattern for the bonuses follows the formula y = (x/2)-5.

• Once the attributes have been rolled, calculate the hitpoints for the character. This should be the total value of 1 hitdice rolled and combined with the Con bonus (either positive or negative) for each level. Your program should ensure that the minimum value for every level is 1 (You cannot have 0 or a negative number for any individual level) as if the Con bonus is negative you could end up with a negative result. hitdice is determined by Class.

• Present the values generated as one set and either allow the user to accept or discard (and regenerate) the attributes. The program should remember the values entered for Level and Class/Profession

• Attack Bonus is something determined by the following: o Melee Weapons: Proficiency_Bonus + Str_Bonus o Missile Weapons: Proficiency_Bonus + Dex_Bonus o Spells: Proficiency_Bonus + Primary_Attribute_Bonus o Spell Strength = 8 + Proficiency_Bonus + Primary_Attribute_Bonus

• Ask for and accept a character name

• Calculate Save Bonuses (Workshop 4)

• Display all the information neatly. The character name and level, all attributes and bonuses, hit-points, base attack bonus, combat and damage bonus and all selected skills (with number of skill points).

• Offer the option of saving the character to a file (and actually save it if requested) before making a new character or quitting. Bonus XP (note: NOT marks): 1)

Add point buy for stats! (may require some Google time).

NOTE: The Workshops have been working up to this point to provide you with a base program of your own work that should give you the best possible opportunity for completing this assignment. You should look to how these Workshops have developed your work for a guide on how to structure your final assessment.

Marking Guide: Design /5 Program meets requirements as stated /5 Appropriate use of functions and abstraction /5 Correct use of data structures (structs, linked lists, etc) /5 Code is written legibly (formatting, comments, etc) /3 Program compiles and runs correctly /5 Output is neat and formatted /2 Total: /30

Reference no: EM13936162

Questions Cloud

What happened to the futures price over the november : What do you think happened to the futures price over the month of November? Why? If you had known that this would occur, would you have purchased or sold a December futures contract in pounds on 1 November? Explain.
The gain or loss for the stock : Write a program to process stock data. The stock data should be read from a text file containing the following data: stock code, stock name, amount invested (XXX.XX), shares held, and current price. Sue the internet or your local paper to gather..
How did managers manage projects before the invention : How did managers manage projects before the invention and application of computers and software? Think of all the great construction projects and inventions that were made without computer scheduling software from the pyramids to ships, castles, and ..
How your organisation uses technology roadmaps : Create an initial post in which you analyse how your company uses technology roadmaps. In your analysis, address how successful or unsuccessful the company has been in implementing that roadmap
Design and implement a character generator for dungeons : Use tables and formulas also from workshop file to complete assignment. Design and Implement a character generator for Dungeons and Dragons. It is to have the following specifications:
Calculate the magnitude of the torque due to the force of : Calculate the magnitude of the torque (due to the force of gravity) around this pivot point when the string makes a 45º angle with the vertical. The acceleration of gravity is 9.81 m/s 2.
What is it about agribusiness managers : What is it about agribusiness managers that make them unique from other types of managers? Describe the special preparation agribusiness managers need in a biologically based business such as the agri-food system.
What is there to lose by waiting three months : How can the team hedge its position? What is there to lose by waiting three months to see if the exhibition game is approved before hedging?
Explain kinsey''s hierarchy of why people buy food : Explain Kinsey's hierarchy of why people buy food and then use it to explain the growth of organic foods

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd