Movement and Search Team


Sam Cordova
Jesse Eyerman
Jon Havstad
Qutaiba Mahmoud

Homework 4

Usecases


 · 9.1    Character Movement on a planet, Without Spaceship
 · 9.1    Military Movement on a Planet
 · 9.1    Character Movement on a Planet Using a Spaceship
 · 9.2    Character Movement Between Planets
 · 9.2    Mobile Military Movement Between Planets
 · 9.2    Mobile Military Movement Between Planets with Stacked Characters
 · 9.5    Stacking/Unstacking Characters with Military Units
 · 9.5    Stacking/Unstacking Characters with a Spaceship
 · 9.6    Enemy Reaction Moves
 · 11.0    Search for Enemy Units

Use Case Descriptions


Character movement on a planet, without spaceship [9.1]
Name: Character movement on a planet, without spaceship [9.1]
Actors: player
Goal: to move a character(s) from one environ to another.
Precondition: The planet upon which the character is located must have more than one environ.
Summary: The player selects the move character icon and selects the environ that the character(s) will be moved to. The system executes the movement.
Related use cases: character movement on a planet using a spaceship, military movement on a planet, movement between planets.
Steps:
1) Player selects move character option 2) System prompts for a number of characters to be moved
3) Player selects number of characters to be moved 4) System prompts for the character name(s) to be moved
5) Player selects character(s) to be moved 6) System prompts for the environ that the characters are being moved to
7) Player selects the destination environ 8) System moves character and displays the updated character info

Alternatives: The player selects cancel in step 3, the character(s) is not moved.
Postconditions: the character(s) have been relocated to another environ on the planet.

Military Movement on a Planet [9.1]
Name: Military Movement on a Planet [9.1]
Actors: player
Goal: to move a military unit(s) from one environ to another.
Precondition: The planet upon which the character is located must have more than one environ. The environmental capacity for military units must not be full.
Summary: The player selects the move military units icon and selects the environ that the unit(s) will be moved to. The system executes the movement.
Related use cases: Character movement on a planet using a spaceship, character movement on a planet without spaceship, movement from planet to planet
Steps:
1) Player selects move military unit option 2) System prompts for a number of units to be moved
3) Player selects number of units to be moved 4) System prompts for the specific unit to be moved
5) Player selects the military unit(s)to be moved 6) System prompts for the environ that the units are being moved to
7) Player selects the destination environ 8) System moves unit(s) and displays the updated unit info

Alternatives: The player selects cancel in step 3, the unit(s) not moved.
The player tries to move to many units to an environ, causing the move to be canceled by the system.
Postconditions: the military units have moved to another environ on a planet

Character Movement on a Planet Using a Spaceship [9.1]
Name: Character Movement on a Planet Using a Spaceship [9.1]
Actors: player
Goal: to move the character(s) from one environ to another
Precondition: The planet upon which the character is located must have more than one environ.
Summary: The player selects the move spaceship icon, and enters the number of characters to be transported. If this is done on an enemy controlled environ, the ship must negotiate the PDB.
Related use cases: character movement on a planet without a spaceship, military movement on a planet, movement from planet to planet.
Steps:
1) Player selects move spaceship icon 2) System prompts for number of characters to be transported
3) Player enters the number of characters to be moved 4) System prompts for the character name(s) to be moved
5) Player selects character(s) to be moved 6) System prompts for the environ that the characters are being moved to
7) Player selects the destination environ 8) System performs PDB detection routine. The result of the detection routine is displayed to the player. Character location information is updated.

Alternatives: In step 8, the PDB detection routine is not activated if the character is not moving to an enemy controlled environ.
The player cancels the move in step 5.
Postconditions: The characters may land in the new environ undetected OR they may lane in the new environ, but have been detected by the PDB OR the PDB may have damaged the ship, leaving the characters unharmed upon landing but resulting in the destruction of the ship OR the ship and the characters are destroyed by the PDB.

Character movement between planets [9.2]
Name: Character movement between planets [9.2]
Actors: player
Goal: to move character(s) from an environ on one planet to an environ on another.
Precondition: Character(s) must be stacked with a spaceship.
Summary: The player selects the move to planet icon, selects the character(s) to be moved, and the destination planet and environ.
Related use cases: character/military movement on a planet
Steps:
1) Player selects move to planet icon. 2) System prompts for unit type (character, mobile military unit, or both(stacked))
3) Player selects unit type to be moved is character 4) System prompts for number of characters to be moved
5) Player enters number of characters 6) System prompts for destination planet and environ
7) Player provides destination information 8) System executes the PDB routine for the planet units are leaving
9) System executes the PDB routine for the destination planet
10) System updates character location info.

Alternatives: The player can choose to cancel the move in step 7.
Postconditions: the player's characters have been relocated to an environ on another planet

Mobile military movement between planets [9.2]
Name: Mobile military movement between planets [9.2]
Actors: player
Goal: to move Mobile military units from an environ on one planet to an environ on another.
Precondition: Destination environ must be able to accommodate new military units. Military units being moved must be considered "mobile".
Summary: The player selects the move to planet icon, selects the military units to be moved, and the destination planet and environ.
Related use cases: character/military movement on a planet, character movement between planets
Steps:
1) Player selects move to planet icon. 2) System prompts for unit type (character, mobile military unit, or both (stacked))
3) Player selects unit type to be moved is mobile military unit 4) System prompts for number of units to be moved
5) Player enters number of mobile military units 6) System prompts for destination planet and environ
7) Player provides destination information 8) System executes the PDB routine for the planet units are leaving (if applicable)
9) System executes the PDB routine for the destination planet (if applicable)
10) System updates mobile military unit location info.

Alternatives: The player can choose to cancel the move in step 7.
Postconditions: the player's mobile military units have been relocated to an environ on another planet

Mobile military movement between planets (with stacked characters) [9.2]
Name: Mobile military movement between planets (with stacked characters) [9.2]
Actors: player
Goal: to move Mobile military units from an environ on one planet to an environ on another.
Precondition: to move Mobile military units from an environ on one planet to an environ on another.
Summary: The player selects the move to planet icon, selects the military units to be moved, and the destination planet and environ.
Related use cases: character/military movement on a planet, character movement between planets
Steps:
1) Player selects move to planet icon. 2) System prompts for unit type (character, mobile military unit, or both (stacked))
3) Player selects unit type to be moved is both 4) System prompts for number of mobile military units to be moved
5) Player enters number of mobile military units 6) System prompts for destination planet and environ
7) Player provides destination information 8) System executes the PDB routine for the planet units are leaving (if applicable)
9) System executes the PDB routine for the destination planet (if applicable)
10) System updates mobile military unit location info.

Alternatives: The player can choose to cancel the move in step 7.
Postconditions: The player's mobile military units have been relocated to an environ on another planet.

Stacking (Unstacking) characters with military units [9.5]
Name: Stacking (Unstacking) characters with military units [9.5]
Actors: player
Goal: to "Stack" characters with military units
Precondition: Characters and military units must be in the same environ. Characters cannot be stacked with another military unit already.
Summary: The player selects the "stack" icon, the characters to military option, and selects which characters are to be moved to a particular military unit.
Related use cases: Mobile military movement between planets
Steps:
1) Player selects "stack" option 2) System prompts for character to be stacked
3) Player selects character 4) System displays valid military units that the character(s) could be stacked with
5) Player selects the appropriate military unit, and checks the "leader of military unit" box if desired 6) System updates the character and military unit info.

Alternatives: The player can choose to cancel the stack. The player can choose the "Unstack" option in step 1.
Postconditions: The character has been "stacked" with a military unit.

Stacking (Unstacking) characters with a spaceship [9.5]
Name: Stacking (Unstacking) characters with a spaceship [9.5]
Actors: player
Goal: to "Stack" characters with a spaceship
Precondition: Characters and spaceship must be in the same environ. Characters cannot be stacked with another spaceship already. Spaceship cannot be at full capacity.
Summary: The player selects the "stack" icon, the characters to spaceship option, and selects which characters are to be moved to a particular spaceship.
Related use cases: Character movement between planets
Steps:
1) Player selects "stack" option 2) System prompts for character to be stacked
3) Player selects character 4) System displays valid spaceships that the character(s) could be stacked with (if any)
5) Player selects the appropriate spaceship 6) System updates the character and spaceship info

Alternatives: The player can choose to cancel the stack. The player can choose the "Unstack" option in step 1.
Postconditions: The character has been "stacked" with a spaceship.

Enemy reaction moves [9.6]
Name: Enemy reaction moves [9.6]
Actors: player
Goal: To move one character or one military unit or one military unit with a leader (stacked).
Precondition: Must occur during the "enemy reaction segment" of the player's turn. The environ the units are being moved to must contain enemy military units or detected enemy characters.
Summary: If the enemy player moves military units (or has a character detected) into an environ controlled by the non-phasing player, the non-phasing player may make a reaction move by placing an additional unit in that environ.
Related use cases: All use cases involving moving from environ to environ on one planet
Steps:
1) The system prompts for a reaction move when appropriate
2) The player accepts (or declines) the move opportunity 3) System prompts for unit type (character, mobile military unit, or both(stacked))
4) Player selects unit type to be moved is character 5) System prompts for character to be moved
6) Player selects character. 7) System updates character location info.

Alternatives: The player may select mobile military unit or both in step 4.
Postconditions: The player has moved one unit from one environ to another.

Search for enemy units [11.0]
Name: Search for enemy units [11.0]
Actors: Player
Goal: To perform a search for enemy units in an environ.
Precondition: The presence of enemy units must have been detected, and friendly units must be located in the environ.
Summary: Player selects the search icon. The system executes the search and displays the result.
Related use cases: environ military combat, character combat
Steps:
1) The player selects the search icon, and selects the environ to be searched. 2) The system determines the search value of the player's units
3) The system determines the hiding value of the phasing player's character(s) being searched for.
4) The system uses a die roll and the Search Table to determine whether the search was successful, and displays the result. If successful, the system displays the strength of the enemy characters.

Postconditions: The search was either successful in revealing the detected enemy units or was unsuccessful.



Use Case Diagram




Search Collaboration Diagram

To search for a character. The class Character must call search() within the
UnitStack to start the search. From UnitStack, we need to find out who controls
the planet. So we call isControl() in the Planet class. The next step would be
to see if the Character being searched is located. We do this with the method
isFound(). If the character is located, then we could possible go into combat
Stage.



Character Movement Collaboration Diagram

To move a character from an environ to a different environ(you could also
be moving to a different planet), you need to add the character to the
Spaceship (this is needed for traveling to a different planet). We do this
with the method addMember() which is in the Stack class. This in turn
stacks you with the spacesship with stackWith() in Spaceship class. The next
step is to tell where to move to (which environ). Once the destination is
located, we remove the character/characters in the spaceship from the old
environ and move them to the new environ. The final set is to check to see
if you are detected when leaving and entering the old and new environ.



Military Movement Collaboration Diagram

This is pretty much done the same as a move with characters. But the
difference is that military units are always detected, thus we never
need to search for them. The process, needless to say, is the same.



Movement & Search Class Diagram




Screen shot of a Province

Clicking a planet on this screen will bring up another screen which will
display the environ info for that planet.


This screenshot provided by Denise Feddersen of the Province and Galactic team


Sample Environ Screen Shots

The following are some screenshots of the main movement and search screen.
This screen pops up when a planet is clicked on the provincial screen (above).

The units are represented by portrait icons on jButtons. Left-clicking on
the button brings up a unit information screen. Right-clicking on a button
displays a drop-down menu of functions that are available for that particular
unit. The information screens and drop-dowm menus are described below.

The first screenshot shows the units present in the various stacks on the
Urban environ on the planet Etrig.





This screenshot shows the effect of moving the character Adam Starlight
out of the character stack. This places him into the "Not Stacked" category.





This screen displays the Wild environ on the same planet. This screen can
be viewed by clicking the "Wild" tab of the tabbed pane.






Character information sample screens

This window pops up when a left click is performed on the portrait of a character
that is in a charStack. The "Unstack" button is a valid option in this screen.
The other buttons are grayed out since they do not retain their functionality when
the character is a member of a stack.






This window pops up when the portrait of a character who is not a member of a
charStack is left-clicked. It is identical to the previous screen except that
button functionality pertaining to a character who is not part of a stack has
been enabled.





Military Unit information sample screens

This window pops up when a left click is performed on a military unit's portrait.
The window displays information pertinent to that particular unit. This window
is displayed when the military unit is a member of a MilitaryStack.






This window is displayed when a military unit that is not a part of a stack is
left-clicked. The appropriate function buttons have been enabled.





Move menu sample screens

These images describe what the drop-down function menu might look like.
The flow charts that follow show a click-by-click sequence of functions
relevant to movement and search.





Flow charts describing drop-down menu functionality

Most of the flow chart diagrams should be self -explanatory. The
circles next to the unit names are intended to represent radio
buttons. The reason for this is so that multiple units can be
selected at once, thus reducing the mouse clicks needed to perform,
for example, the unstack function. (Unstacking characters one at
a time would quickly get tedious.












Credits

  • Use Cases: Jesse
  • Use Case Diagram: Jesse
  • Collaboration Diagrams: everyone
  • Movement & Search Class Diagram: Sam and Jesse
  • Province Screenshot: Denise Feddersen of Province & Galactic Team
  • Environ Screenshots: Jon and Qutaiba (this was a lot of work, great job guys)
  • Character & Military Unit Information Sample Screens: Jesse
  • Move Menu sample screenshot:Sam
  • Flow charts describing drop-down menus: Jesse
  • html stuff: Sam and Jesse