# PSF-LoginServer - master - net.psforever.objects.Player
PSF - LoginServer - master - net.psforever.objects.Player
Keywords: PSF LoginServer master net.psforever.objects.Player

PSF-LoginServer - master < Back


# Packages

-  package root
  Definition Classes
    root
-  package net
  Definition Classes
    root
-  package psforever
  Definition Classes
    net
-  package objects
  Definition Classes
    psforever
-  package avatar
  Definition Classes
    objects
-  package ballistics
  Definition Classes
    objects
-  package ce
  Definition Classes
    objects
-  package definition
  Definition Classes
    objects
-  package entity
  Definition Classes
    objects
-  package equipment
  Definition Classes
    objects
-  package geometry
  Definition Classes
    objects
-  package guid
  Definition Classes
    objects
-  package inventory
  Definition Classes
    objects
-  package loadouts
  Definition Classes
    objects
-  package locker
  Definition Classes
    objects
-  package serverobject
  Definition Classes
    objects
-  package teamwork
  Definition Classes
    objects
-  package vehicles
  Definition Classes
    objects
-  package vital
  Definition Classes
    objects
-  package zones
  Definition Classes
    objects
- Account
- AmmoBox
- BoomerDeployable
- BoomerDeployableControl
- BoomerDeployableDefinition
- BoomerTrigger
- CommonNtuContainer
- ConstructionItem
- Default
- Deployables
- ExplosiveDeployable
- ExplosiveDeployableControl
- ExplosiveDeployableDefinition
- GlobalDefinitions
- Kit
- LivePlayerList
- LocalLockerItem
- LocalProjectile
- MineDeployableControl
- Ntu
- NtuContainer
- NtuContainerDefinition
- NtuStorageBehavior
- ObjectType
- OffhandEquipmentSlot
- OwnableByPlayer
- PlanetSideGameObject
- Player
- Players
- SensorDeployable
- SensorDeployableControl
- SensorDeployableDefinition
- Session
- ShieldGeneratorControl
- ShieldGeneratorDefinition
- ShieldGeneratorDeployable
- SimpleItem
- SpawnPoint
- SpawnPointDefinition
- SpecialEmp
- Telepad
- TelepadControl
- TelepadDeployable
- TelepadDeployableControl
- TelepadDeployableDefinition
- Tool
- Tools
- TrapDeployable
- TrapDeployableControl
- TrapDeployableDefinition
- TurretControl
- TurretDeployable
- TurretDeployableDefinition
- Vehicle
- Vehicles

c

net.psforever.objects

# Player 

###
Companion object Player

#### class Player extends PlanetSideServerObject with BlockMapEntity with InteractsWithZone with FactionAffinity with Vitality with ResistanceProfile with Container with JammableUnit with ZoneAware with AuraContainer

Source
  Player.scala

Linear Supertypes
AuraContainer, JammableUnit, Container, ResistanceProfile, Vitality, VitalsHistory, InteractsWithZone, BlockMapEntity, PlanetSideServerObject, ZoneAware, FactionAffinity, PlanetSideGameObject, WorldEntity, IdentifiableEntity, Identifiable, AnyRef, Any

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Player
2. AuraContainer
3. JammableUnit
4. Container
5. ResistanceProfile
6. Vitality
7. VitalsHistory
8. InteractsWithZone
9. BlockMapEntity
10. PlanetSideServerObject
11. ZoneAware
12. FactionAffinity
13. PlanetSideGameObject
14. WorldEntity
15. IdentifiableEntity
16. Identifiable
17. AnyRef
18. Any

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### Instance Constructors

1.  new Player(avatar: Avatar)

### Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  final def ##: Int
   Definition Classes
     AnyRef → Any
3.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
4.  def AccessingBackpack: Option[PlanetSideGUID]
5.  def AccessingBackpack_=(guid: Option[PlanetSideGUID]): Option[PlanetSideGUID]

   Change which player has access to the backpack of this player.

   Change which player has access to the backpack of this player. A player may only access to the backpack of a dead released player, and only if no one else has access at the moment.

   guid

     the player who wishes to access the backpack

   returns

     the player who is currently allowed to access the backpack

6.  def AccessingBackpack_=(guid: PlanetSideGUID): Option[PlanetSideGUID]
7.  def Actor: ActorRef

   Retrieve a reference to the internal `Actor`.

   Retrieve a reference to the internal `Actor`.

   returns

     the internal `ActorRef`

   Definition Classes
     PlanetSideServerObject
8.  def Actor_=(control: ActorRef): ActorRef

   Assign an `Actor` to act for this server object.

   Assign an `Actor` to act for this server object. This reference is only set once, that is, as long as the internal `ActorRef` directs to `ActorRef.noSender` (`null`).

   control

     the `Actor` whose functionality will govern this server object

   returns

     the current internal `ActorRef`

   Definition Classes
     PlanetSideServerObject
9.  def AddEffectToAura(effect: Aura): Set[Aura]
   Definition Classes
     AuraContainer
10.  def Armor: Int
11.  def Armor_=(assignArmor: Int): Int
12.  def Aura: Set[Aura]
    Definition Classes
      AuraContainer
13.  def AwayFromKeyboard: Boolean
14.  def AwayFromKeyboard_=(away: Boolean): Boolean
15.  def CanAccessBackpack(player: Player): Boolean

    Can the other `player` access the contents of this `Player`'s backpack?

    Can the other `player` access the contents of this `Player`'s backpack?

    player

      a player attempting to access this backpack

    returns

      `true`, if the `player` is permitted access; `false`, otherwise

16.  def CanDamage: Boolean
    Definition Classes
      Vitality
17.  def CanRepair: Boolean
    Definition Classes
      Vitality
18.  def Capacitor: Float
19.  def CapacitorLastChargedMillis: Long
20.  def CapacitorLastUsedMillis: Long
21.  def CapacitorState: types.CapacitorStateType.Value
22.  def CapacitorState_=(value: types.CapacitorStateType.Value): types.CapacitorStateType.Value
23.  def Capacitor_=(value: Float): Float
24.  def Carrying: Option[SpecialCarry]
25.  def Carrying_=(item: Option[SpecialCarry]): Option[SpecialCarry]
26.  def Carrying_=(item: SpecialCarry): Option[SpecialCarry]
27.  def CharId: Long
28.  def ClearHistory(): List[VitalsActivity]
    Definition Classes
      VitalsHistory
29.  def Cloaked: Boolean
30.  def Cloaked_=(isCloaked: Boolean): Boolean
31.  def Collisions(dest: Int, width: Int, height: Int): Try[List[InventoryItem]]

    Given a region of "searchable unit positions" considered as stowable, determine if any previously stowed items are contained within that region.
    Default usage, and recommended the continued inclusion of that use, is defined in terms of `Equipment` being stowed in a `GridInventory`.

    Given a region of "searchable unit positions" considered as stowable, determine if any previously stowed items are contained within that region.
    Default usage, and recommended the continued inclusion of that use, is defined in terms of `Equipment` being stowed in a `GridInventory`. Where the `Equipment` object is defined by the dimensions `width` and `height`, starting a search at `index` will search all positions within a grid-like range of numbers. Under certain searching conditions, this range may be meaningless, such as is the case when searching individual positions that are normal `EquipmentSlot` objects. Regardless, the value collected indicates the potential of multiple objects being discovered and maintains a reference to the object itself and the slot position where the object is located. (As any object can be discovered within the range, that is important.)

    width

      the width of the searchable space

    height

      the height of the serachable space

    returns

      a list of objects that have been encountered within the searchable space

    Definition Classes
      Player → Container
    See also

      `GridInventory.CheckCollisionsVar`

32.  def Continent: String
    Definition Classes
      ZoneAware
33.  def Continent_=(zoneId: String): String

    Give the entity a custom `Zone` identifier.

    Give the entity a custom `Zone` identifier.

    zoneId

      the custom identifier of the `Zone` object

    returns

      the identifier of the `Zone` object

    Definition Classes
      ZoneAware
34.  def Crouching: Boolean
35.  def Crouching_=(crouched: Boolean): Boolean
36.  def DamageModel: DamageResistanceModel
    Definition Classes
      Player → Vitality
37.  def DefaultHealth: Int
    Definition Classes
      Vitality
38.  def Definition: AvatarDefinition
    Definition Classes
      Player → Vitality → PlanetSideGameObject
39.  def Destroyed: Boolean
    Definition Classes
      PlanetSideGameObject
40.  def Destroyed_=(state: Boolean): Boolean
    Definition Classes
      PlanetSideGameObject
41.  def Die: Boolean
42.  def DrawnSlot: Int
43.  def DrawnSlot_=(slot: Int): Int
44.  def Entity: WorldEntity
    Definition Classes
      PlanetSideGameObject
45.  def Entity_=(newEntity: WorldEntity): Unit
    Definition Classes
      PlanetSideGameObject
46.  def ExoSuit: types.ExoSuitType.Value
47.  def ExoSuitDef: ExoSuitDefinition
48.  def ExoSuit_=(suit: types.ExoSuitType.Value): Unit
49.  def FacingYawUpper: Float
50.  def FacingYawUpper_=(facing: Float): Float
51.  def Faction: types.PlanetSideEmpire.Value
    Definition Classes
      Player → FactionAffinity
52.  def Faction_=(fac: types.PlanetSideEmpire.Value): types.PlanetSideEmpire.Value
    Definition Classes
      FactionAffinity
53.  def Find(guid: PlanetSideGUID): Option[Int]

    Given globally unique identifier, if the object using it is stowed, attempt to locate its slot.

    Given globally unique identifier, if the object using it is stowed, attempt to locate its slot. All positions, `VisibleSlot` and `Inventory`, and wherever else, should be searchable.

    guid

      the GUID of the `Equipment`

    returns

      the index of the `EquipmentSlot`, or `None`

    Definition Classes
      Player → Container
54.  def Find(obj: Equipment): Option[Int]

    Given an object, attempt to locate its slot.

    Given an object, attempt to locate its slot. All positions, `VisibleSlot` and `Inventory`, and wherever else, should be searchable.

    obj

      the `Equipment` object

    returns

      the index of the `EquipmentSlot`, or `None`

    Definition Classes
      Container
55.  def Fit(obj: Equipment): Option[Int]
    Definition Classes
      Player → Container
56.  def Fit(tile: InventoryTile): Option[Int]
    Definition Classes
      Container
57.  def FreeHand: EquipmentSlot
58.  def FreeHand_=(item: Option[Equipment]): Option[Equipment]
59.  def GUID: PlanetSideGUID
    Definition Classes
      IdentifiableEntity → Identifiable
60.  def GUID_=(guid: PlanetSideGUID): PlanetSideGUID
    Definition Classes
      IdentifiableEntity → Identifiable
61.  def GUID_=(guid: StalePlanetSideGUID): PlanetSideGUID

    Always intercept `StalePlanetSideGUID` references when attempting to mutate the GUID value.

    Always intercept `StalePlanetSideGUID` references when attempting to mutate the GUID value.

    guid

      the valid GUID to assign

    returns

      never returns

    Definition Classes
      IdentifiableEntity
    Exceptions thrown

      ``AssigningGUIDException`` always

62.  def HasGUID: Boolean

    Flag when the object has no GUID (initial condition) or is considered stale.

    Flag when the object has no GUID (initial condition) or is considered stale.

    returns

      whether the value of the GUID is a valid representation for this object

    Definition Classes
      IdentifiableEntity
63.  def Head: Int
64.  def Health: Int
    Definition Classes
      Vitality
65.  def Health_=(assignHealth: Int): Int
    Definition Classes
      Vitality
66.  def History(result: DamageResult): List[VitalsActivity]

    Very common example of a `VitalsActivity` event involving damage.

    Very common example of a `VitalsActivity` event involving damage.

    result

      the fully-informed entry

    returns

      the list of previous changes to this object's vital statistics

    Definition Classes
      VitalsHistory
67.  def History(action: Option[VitalsActivity]): List[VitalsActivity]

    A `VitalsActivity` event must be recorded.

    A `VitalsActivity` event must be recorded. Add new entry to the front of the list (for recent activity).

    action

      the fully-informed entry

    returns

      the list of previous changes to this object's vital statistics

    Definition Classes
      VitalsHistory
68.  def History(action: VitalsActivity): List[VitalsActivity]

    A `VitalsActivity` event must be recorded.

    A `VitalsActivity` event must be recorded. Add new entry to the front of the list (for recent activity).

    action

      the fully-informed entry

    returns

      the list of previous changes to this object's vital statistics

    Definition Classes
      VitalsHistory
69.  def History: List[VitalsActivity]
    Definition Classes
      VitalsHistory
70.  def HolsterItems(): List[InventoryItem]

    Transform the holster equipment slots into a list of the kind of item wrapper found in an inventory.

    Transform the holster equipment slots into a list of the kind of item wrapper found in an inventory.

    returns

      a list of items that would be found in a proper inventory

    See also

      `GridInventory`

      `InventoryItem`

71.  def Holsters(): Array[EquipmentSlot]
72.  def Invalidate(): Unit

    Indicate that the current GUID is no longer a valid representation of the object.

    Indicate that the current GUID is no longer a valid representation of the object. Transforms whatever the current GUID is into a `StalePlanetSideGUID` entity with the same value. Doing this restores the object to its default mutation option ("the ability to set a new valid GUID"). The current GUID will still be accessed as if it were valid, but it will be wrapped in the new stale object.

    Definition Classes
      IdentifiableEntity
73.  def Inventory: GridInventory

    A(n imperfect) reference to a generalized pool of the contained objects.

    A(n imperfect) reference to a generalized pool of the contained objects. Having access to all of the available positions is not required. The entries in this reference should definitely include all unseen positions. The `GridInventory` returned by this accessor is also an implementation of `Container`.

    Definition Classes
      Player → Container
    See also

      `VisibleSlots`

74.  def Jammed: Boolean
    Definition Classes
      JammableUnit
75.  def Jammed_=(state: Boolean): Boolean
    Definition Classes
      JammableUnit
76.  def Jumping: Boolean
77.  def Jumping_=(jumped: Boolean): Boolean
78.  def LastDamage: Option[DamageResult]
    Definition Classes
      VitalsHistory
79.  def LastDrawnSlot: Int
80.  def LastShot: Option[DamageResult]

    Find, specifically, the last instance of a weapon discharge vital statistics change.

    Find, specifically, the last instance of a weapon discharge vital statistics change.

    returns

      information about the discharge

    Definition Classes
      VitalsHistory
81.  def MaxArmor: Int
82.  def MaxHealth: Int
    Definition Classes
      Vitality
83.  def MaxHealth_=(default: Option[Int]): Int
    Definition Classes
      Vitality
84.  def MaxHealth_=(default: Int): Int
    Definition Classes
      Vitality
85.  def Name: String
86.  def Orientation: Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
87.  def Orientation_=(vec: Vector3): Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
88.  var PlanetsideAttribute: Array[Long]

    From PlanetsideAttributeMessage

89.  def Position: Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
90.  def Position_=(vec: Vector3): Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
91.  def RadiationShielding: Float
    Definition Classes
      Player → ResistanceProfile
92.  def Release: Boolean
93.  def RemoveEffectFromAura(effect: Aura): Set[Aura]
    Definition Classes
      AuraContainer
94.  def ResetControl(): ActorRef
    Definition Classes
      PlanetSideServerObject
95.  def Resist(dtype: vital.base.DamageType.Value): Float
    Definition Classes
      ResistanceProfile
96.  def ResistanceAggravated: Int
    Definition Classes
      Player → ResistanceProfile
97.  def ResistanceDirectHit: Int
    Definition Classes
      Player → ResistanceProfile
98.  def ResistanceSplash: Int
    Definition Classes
      Player → ResistanceProfile
99.  def Revive: Boolean
100.  def Sex: CharacterSex
101.  def Slot(slot: Int): EquipmentSlot

     Access to all stowable positions on this object by index.
     All positions, `VisibleSlot` and `Inventory`, and wherever else, should be reachable.

     Access to all stowable positions on this object by index.
     All positions, `VisibleSlot` and `Inventory`, and wherever else, should be reachable. Regardless of the internal storage medium, the format of return is expected to be the same structure of object as the most basic storage component for `Equipment`, namely, `EquipmentSlot` objects. By default, it is expected to return an `EquipmentSlot` that can not be manipulated because it is `Blocked`.

     returns

       the searchable position identified by that index

     Definition Classes
       Player → Container
     See also

       `OffhandEquipmentSlot`

102.  def Spawn(): Boolean
103.  def Subtract: DamageProfile
     Definition Classes
       Player → ResistanceProfile
104.  def UsingSpecial: definition.SpecialExoSuitDefinition.Mode.Value
105.  def UsingSpecial_=(state: definition.SpecialExoSuitDefinition.Mode.Value): definition.SpecialExoSuitDefinition.Mode.Value
106.  def VehicleSeated: Option[PlanetSideGUID]
107.  def VehicleSeated_=(guid: Option[PlanetSideGUID]): Option[PlanetSideGUID]
108.  def VehicleSeated_=(guid: PlanetSideGUID): Option[PlanetSideGUID]
109.  def Velocity: Option[Vector3]
     Definition Classes
       PlanetSideGameObject → WorldEntity
110.  def Velocity_=(vec: Option[Vector3]): Option[Vector3]
     Definition Classes
       PlanetSideGameObject → WorldEntity
111.  def Velocity_=(vec: Vector3): Option[Vector3]
     Definition Classes
       WorldEntity
112.  def VisibleSlots: Set[Int]

     A(n imperfect) reference to a generalized pool of the contained objects.
     Having access to all of the available positions is not required.

     A(n imperfect) reference to a generalized pool of the contained objects.
     Having access to all of the available positions is not required. Only the positions that can be actively viewed by other clients are listed.

     returns

       all of the affected slot indices

     Definition Classes
       Player → Container
     See also

       `Inventory`

113.  def Voice: types.CharacterVoice.Value
114.  def Zone: Zone
     Definition Classes
       ZoneAware
115.  def Zone_=(zone: Zone): Zone

     When assigning a new `Zone` object for the `Vehicle` object, eliminate

     When assigning a new `Zone` object for the `Vehicle` object, eliminate

     zone

       a reference to the `Zone` object

     returns

       a reference to the `Zone` object

     Definition Classes
       ZoneAware
116.  def ZoningRequest: zones.Zoning.Method.Value
117.  def ZoningRequest_=(request: zones.Zoning.Method.Value): zones.Zoning.Method.Value
118.  def allowInteraction: Boolean

     If the interactive permissions of this entity change.

     If the interactive permissions of this entity change.

     Definition Classes
       InteractsWithZone
119.  def allowInteraction_=(permit: Boolean): Boolean

     If the interactive permissions of this entity change, trigger a formal change to the interaction methodology.

     If the interactive permissions of this entity change, trigger a formal change to the interaction methodology.

     permit

       whether or not interaction is permitted

     returns

       whether or not interaction is permitted

     Definition Classes
       InteractsWithZone
120.  final def asInstanceOf[T0]: T0
     Definition Classes
       Any
121.  var avatar: Avatar
122.  def blockMapEntry: Option[BlockMapEntry]

     internal data regarding an active representation on a blockmap

     internal data regarding an active representation on a blockmap

     Definition Classes
       BlockMapEntity
123.  def blockMapEntry_=(entry: Option[BlockMapEntry]): Option[BlockMapEntry]

     internal data regarding an active representation on a blockmap

     internal data regarding an active representation on a blockmap

     Definition Classes
       BlockMapEntity
124.  def canEqual(other: Any): Boolean
125.  def clone(): AnyRef
     Attributes
       protected[lang]
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.CloneNotSupportedException]) @native()
126.  var death_by: Int
127.  final def eq(arg0: AnyRef): Boolean
     Definition Classes
       AnyRef
128.  def equals(other: Any): Boolean
     Definition Classes
       Player → AnyRef → Any
129.  def finalize(): Unit
     Attributes
       protected[lang]
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.Throwable])
130.  final def getClass(): Class[_ <: AnyRef]
     Definition Classes
       AnyRef → Any
     Annotations
       @native()
131.  def hashCode(): Int
     Definition Classes
       Player → AnyRef → Any
132.  def interaction(): List[ZoneInteraction]
     Definition Classes
       InteractsWithZone
133.  def interaction(func: ZoneInteraction): List[ZoneInteraction]
     Definition Classes
       InteractsWithZone
134.  def isAlive: Boolean
135.  def isAnchored: Boolean
136.  def isBackpack: Boolean
137.  final def isInstanceOf[T0]: Boolean
     Definition Classes
       Any
138.  def isMoving(test: Float): Boolean

     This object is not considered moving unless it is moving at least as fast as a certain velocity.

     This object is not considered moving unless it is moving at least as fast as a certain velocity.

     test

       the (squared) velocity to test against

     returns

       `true`, if we are moving; `false`, otherwise

     Definition Classes
       WorldEntity
139.  def isMoving(test: Vector3): Boolean

     This object is not considered moving unless it is moving at least as fast as a certain velocity.

     This object is not considered moving unless it is moving at least as fast as a certain velocity.

     test

       the velocity to test against

     returns

       `true`, if we are moving; `false`, otherwise

     Definition Classes
       WorldEntity
140.  def isMoving: Boolean

     A velocity of non-zero is the same as moving.

     A velocity of non-zero is the same as moving.

     returns

       `true`, if we are moving; `false`, otherwise

     Definition Classes
       WorldEntity
141.  def isOverdrived: Boolean
142.  def isReleased: Boolean
143.  def isShielded: Boolean
144.  var lastSeenStreamMessage: Array[Long]
145.  var lastShotSeq_time: Int
146.  final def ne(arg0: AnyRef): Boolean
     Definition Classes
       AnyRef
147.  final def notify(): Unit
     Definition Classes
       AnyRef
     Annotations
       @native()
148.  final def notifyAll(): Unit
     Definition Classes
       AnyRef
     Annotations
       @native()
149.  def resetInteractions(): Unit
     Definition Classes
       InteractsWithZone
150.  def sector(zone: Zone, range: Float): SectorPopulation

     Buckets in the blockmap are called "sectors".

     Buckets in the blockmap are called "sectors". Find the sectors in a given blockmap in which the entity would be represented within a given range.

     zone

       what region the blockmap represents

     range

       the custom distance from the central sector along the major axes

     returns

       a conglomerate sector which lists all of the entities in the allocated sector(s)

     Definition Classes
       BlockMapEntity
151.  var silenced: Boolean
152.  var spectator: Boolean
153.  val squadLoadouts: LoadoutManager
154.  final def synchronized[T0](arg0: => T0): T0
     Definition Classes
       AnyRef
155.  def toString(): String
     Definition Classes
       Player → AnyRef → Any
156.  def updateBlockMapEntry(newCoords: Vector3): Boolean

     Update the internal data's known coordinate position without changing representation on whatever blockmap.

     Update the internal data's known coordinate position without changing representation on whatever blockmap. Has the potential to cause major issues with the blockmap if used without external checks.

     newCoords

       the coordinate position

     returns

       `true`, if the coordinates were updated; `false`, otherwise

     Definition Classes
       BlockMapEntity
157.  final def wait(): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException])
158.  final def wait(arg0: Long, arg1: Int): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException])
159.  final def wait(arg0: Long): Unit
     Definition Classes
       AnyRef
     Annotations
       @throws(classOf[java.lang.InterruptedException]) @native()
160.  def zoneInteractions(): Unit
     Definition Classes
       InteractsWithZone

### Inherited from AuraContainer

### Inherited from JammableUnit

### Inherited from Container

### Inherited from ResistanceProfile

### Inherited from Vitality

### Inherited from VitalsHistory

### Inherited from InteractsWithZone

### Inherited from BlockMapEntity

### Inherited from PlanetSideServerObject

### Inherited from ZoneAware

### Inherited from FactionAffinity

### Inherited from PlanetSideGameObject

### Inherited from WorldEntity

### Inherited from IdentifiableEntity

### Inherited from Identifiable

### Inherited from AnyRef

### Inherited from Any

### Ungrouped