|
About Treason
BugsEnhancementsVarious monsters should shoot at player. Pirate should shoot on diagonals as well as cardinals. NotesMonster kill and mover LOS Algorithm Coded for iPhone 3G processor Coded for the web No real magic for player in game Attributes Plot If working with the rebels, at the end there is an epic battle with the king at the portal King missions: 1) Freedom of speech 2) Freedom to bear arms 3) No quartering of troops 4) No unreasonable search or seizure. 5) Due process, double jeopardy, self incrimination, eminent domain 6) Rights of the accused 7) Trial by jury 8) No cruel or unusual punishment 9) Protection of rights 10) Protection of powers of the states and people Rebel missions will essentially try to foil the king's missions Once you have gained the king's confidence, he will take you down to show you the 'magic' device he built and tell you about what his real plans are Doing 3 missions for either King or rebels shakes faith for the other side Doing 7 missions for either King or rebels destroys faith for other side If faith is destroyed then player is not welcome and openly attacked at 'base' of either side King's base is his castle King's castle is in the NW area of the NW continent Rebels' base is a fortress on the SW continent SW continent needs a desert in the SE portion King needs more metal of a specific purity to finish his machine which produces his 'magic' items One of the rumors you hear is 'The king has a secret' and 'The world is bigger than you might believe' and 'do you ever feel like you're always being watched and tours with?' Metal is scarce Ettins mine the metal and use giants to protect them - NE continent The people on the SW continent work the metal - they are the tinkers Need a purpose for the swamp area and the islands and the SE continent Display food HP display doesn't update as you walk unarmed HP display doesn't update when you use a healing potion Can I make a function which senses changes in the HP? I think I can by calculating a difference in HP. I could hold the HP amount in a variable inside the function, setting it only when the amount changes enough to warrant a redraw. And I could only update the HP when needed - break the update function in to separate parts and update only those parts what are needed. That would work. Update HP When adding HP only need to turn on another bar - not black out everything Update attributes Update gold and food How does the scarcity of metal figure in to the plot? There could be sub-missions (missions between each main mission) which would sculpt the plot Need favor with various factions King Rebels Ettins And how does the spell on the people in the SE continent figure in to the game? User Interface Functionality The user interface should provide a dynamic and seamless player interaction with the game. Problem Too many games made for mobile devices (or not) rely on pop-up windows or multiple and complex menus to give the player choices. Unique Solution Dynamic buttons (which change value and function depending on circumstances) many of these complex interactions are eliminated. Monster Creation Functionality Monsters must be created throughout the game world. Problem When a player kills a monster a monster is either created according to a patterned spawn point or at random throughout the world. This can cause a huge imbalance in the monster population. Also, monsters can be initially created at random across different terrains adding to the imbalance of game play. Unique Solution When a monster is killed, a new monster is spawned just outside the player's field of view thereby repopulating the area with a monster. On initial creation, monsters are created according to the terrain type of the selected map square. Monster Culler Functionality Monsters have to occasionally be culled to add to the lifelikeness of the game. Monsters should not grow stale so the player can continually interact with the same ones over and over. Problem Due to the constraints of the processor in mobile game units and because of the slowness of a compiled-on-the-fly language, monsters cannot be culled every turn on a global level. This would cost too many processor cycles. Unique Solution Monsters are culled in an area just outside the player's field of view as the player moves about. They are continuously culled and recreated assuring a fresh batch of monsters wherever the player moves - assuring there are no areas devoid of monsters when there should not be. Monster Mover Functionality Monsters have to move for various reasons. Problem Globally moving all of the monsters (as in Ultima ][) will cause huge buildups of monsters near the player. It becomes overwhelming. Also, when monsters encounter an object around which they cannot move, they become stuck. Finally, when multiple monsters populate the screen, if there is not a good system in place to decide the order in which they should move, the monsters move erratically. Unique Solution Only moving monsters inside the player's field of view and those just outside the player's field of view disallows the chance of a monster buildup on the player. If a monster encounters an object it cannot move around (like a mountain or even another monster) it is given a random opportunity to select another direction in which to move. This can put the monster on a better path to the player and provides a more lifelike experience. Finally, in order to decide the monster move order, the screen (player's view and just outside the player's view) is scanned in a outward spiral pattern. This can be achieved with a relatively low number of code lines (five for/next statements). Monster move order is assigned based on this spiral so that the monsters closest to the player will move first. This allows monsters, which would otherwise be blocked from moving by monsters closer to the player, to move against the player. Party Play Functionality Problem Solution Ranged Attack Functionality Ranged attack is a large piece of adventure gaming. Players must be able to attack monsters with ranged weapons. Problem Games such ad Ultima 3 employed a special battle screen for party play. Unique Solution Allow players to engage monsters on the main game field with ranged weaponry. LOS Algorithm Functionality A line of sight algorithm is necessary to impart a more lifelike and mysterious essence to the game. Problem Typically, LOS algorithms are either costly in terms of processor cycles or they provide a spotty and incomplete LOS experience. Unique Solution Ultima 3 was one of the first games to employ a LOS algorithm. It used a cardinal-then-diagonal analysis of the game screen to determine which squares should be uncovered. Ultima 4 used this system as well as a diagonal then cardinal analysis and allowed for a more lifelike game experience. I chose to employ only the Ultima 3 system as having both systems in place proves too costly in processor cycles for decent game play. This also leaves a slightly greater portion of the game screen covered, providing a more dark and mysterious game play experience. Finally, the Ultima system analyzed the screed from the outside in (starting at the squares at the outermost reaches of the screen) then backtracking to uncover 'visible' squares. I chose to employ this system in a rears fashion, designating 8 slices of the screen and moving in 4 L patterns to analyze the diagonals. This allowed my system to cover squares actively when designated such instead of backtracking to uncover squares thus saving precious processor cycles. Attribute System Functionality Players want to know and see stats on their characters to determine how to build them. Problem In classic RPGs, the four attributes were strength, agility, intelligence and wisdom. These attributes reflected the character's abilities as far as how hard the character could hit, how often they would hit, effectiveness with wizard spells and effectiveness with priest spells. Later the attributes constitution and charisma were added as reflections of how stalwart the character is and how attractive to NPCs. Finally, the attribute of experience was used to determine the increases in the main attributes which were usually randomly assigned when the player hit another level of experience. The problem with this system of attributes and experience is that it is not lifelike enough. Random increases in attributes at a preselected leveling point do not reflect the character's specific actions or equipment. Unique Solution There are four attributes: strength, agility, intelligence and force of will. Strength determines how hard a player can hit and will offer some defense bonus. Agility determines how often a player will hit and also provides a defense bonus. Intelligence is something like a critical strike rating. That is it determines how often a player will do high damage but it will also provide a defense bonus. Force of will determines the tenacity and magic ability of the character. When attacking a bonus to strength and agility will be given in accordance with force of will. This reflects more of a real life experience in accordance with the old saying 'It isn't the size of the dog in the fight which matters, but the size of the fight in the dog'. Inventory System Functionality Problem Unique Solution Map Functionality Problem Unique Solution Food Functionality Problem Unique Solution |