Browse Source

Item Movment, Consumables (WIP)

bolt_update
laurids 3 years ago
parent
commit
2361779119
22 changed files with 1910 additions and 540 deletions
  1. +4
    -0
      Assets/GWConquest/Prefabs/UI/TransportUI/ItemIcon.prefab
  2. +1023
    -0
      Assets/GWConquest/Prefabs/UI/TransportUI/ItemMoveTooltip.prefab
  3. +7
    -0
      Assets/GWConquest/Prefabs/UI/TransportUI/ItemMoveTooltip.prefab.meta
  4. +13
    -9
      Assets/GWConquest/Prefabs/UI/UnitInfoPanel/InfoPanel.prefab
  5. +49
    -49
      Assets/GWConquest/Resources/Database/Ships.csv
  6. +176
    -176
      Assets/GWConquest/Resources/Database/Units.csv
  7. +38
    -278
      Assets/GWConquest/Scenes/GalaxyMap.unity
  8. +4
    -0
      Assets/GWConquest/Scripts/Formation.cs
  9. +181
    -20
      Assets/GWConquest/Scripts/Inventory.cs
  10. +36
    -0
      Assets/GWConquest/Scripts/ServerCallbacks.cs
  11. +8
    -4
      Assets/GWConquest/Scripts/UI/DragDropElement.cs
  12. +1
    -0
      Assets/GWConquest/Scripts/UI/IngameUI.cs
  13. +138
    -0
      Assets/GWConquest/Scripts/UI/ItemMoveTooltip.cs
  14. +11
    -0
      Assets/GWConquest/Scripts/UI/ItemMoveTooltip.cs.meta
  15. +16
    -0
      Assets/GWConquest/Scripts/UI/TransportUIElement.cs
  16. +43
    -0
      Assets/GWConquest/Scripts/UI/TransportUIItemIcon.cs
  17. +21
    -4
      Assets/GWConquest/Scripts/UI/UnitInfoPanel.cs
  18. +19
    -0
      Assets/GWConquest/Scripts/Unit.cs
  19. +8
    -0
      Assets/GWConquest/Scripts/UnitClass.cs
  20. BIN
      Assets/Photon/PhotonBolt/assemblies/bolt.user.dll
  21. BIN
      Assets/Photon/PhotonBolt/assemblies/bolt.user.dll.mdb
  22. +114
    -0
      Assets/Photon/PhotonBolt/project.json

+ 4
- 0
Assets/GWConquest/Prefabs/UI/TransportUI/ItemIcon.prefab View File

@ -171,8 +171,12 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b2d51b1b7888cf746a92268bf10b8826, type: 3} m_Script: {fileID: 11500000, guid: b2d51b1b7888cf746a92268bf10b8826, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
MoveTooltipPrefab: {fileID: 5885765285174699514, guid: c693e51d87d6ee54c821bda6af9f17fe,
type: 3}
Icon: {fileID: 6815987390313110545} Icon: {fileID: 6815987390313110545}
Amount: {fileID: 6815987389502116016} Amount: {fileID: 6815987389502116016}
CanBeDragged: 0
ParentUI: {fileID: 0}
--- !u!1 &6815987390313110547 --- !u!1 &6815987390313110547
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0


+ 1023
- 0
Assets/GWConquest/Prefabs/UI/TransportUI/ItemMoveTooltip.prefab
File diff suppressed because it is too large
View File


+ 7
- 0
Assets/GWConquest/Prefabs/UI/TransportUI/ItemMoveTooltip.prefab.meta View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c693e51d87d6ee54c821bda6af9f17fe
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

+ 13
- 9
Assets/GWConquest/Prefabs/UI/UnitInfoPanel/InfoPanel.prefab View File

@ -3022,7 +3022,7 @@ GameObject:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!224 &254456684739317276 --- !u!224 &254456684739317276
RectTransform: RectTransform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3252,7 +3252,7 @@ GameObject:
- component: {fileID: 5721716189640782176} - component: {fileID: 5721716189640782176}
- component: {fileID: 3212379484969327377} - component: {fileID: 3212379484969327377}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesBarPanel
m_Name: FoodBarPanel
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -3737,7 +3737,7 @@ GameObject:
- component: {fileID: 7983451911964343991} - component: {fileID: 7983451911964343991}
- component: {fileID: 7710110990975033073} - component: {fileID: 7710110990975033073}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesBarPanel
m_Name: FuelBarPanel
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -4495,7 +4495,7 @@ GameObject:
- component: {fileID: 4252897667148605541} - component: {fileID: 4252897667148605541}
- component: {fileID: 8071686238484062919} - component: {fileID: 8071686238484062919}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesBar
m_Name: FuelBar
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -4947,7 +4947,7 @@ GameObject:
- component: {fileID: 2648349951139574813} - component: {fileID: 2648349951139574813}
- component: {fileID: 6363806673150807071} - component: {fileID: 6363806673150807071}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesButton
m_Name: FuelButton
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -5099,7 +5099,7 @@ GameObject:
- component: {fileID: 7845435055257312141} - component: {fileID: 7845435055257312141}
- component: {fileID: 8707620671798900726} - component: {fileID: 8707620671798900726}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesIcon
m_Name: FoodIcon
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -5247,7 +5247,7 @@ GameObject:
- component: {fileID: 2332433110252633176} - component: {fileID: 2332433110252633176}
- component: {fileID: 4611590753942732807} - component: {fileID: 4611590753942732807}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesIcon
m_Name: FuelIcon
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -5364,6 +5364,10 @@ MonoBehaviour:
FormationUnitsTransform: {fileID: 1050217559578958967} FormationUnitsTransform: {fileID: 1050217559578958967}
FormationUnitsPrefab: {fileID: 6815987390155653563, guid: cfeb7d67ef99a7a48950d76159c22b10, FormationUnitsPrefab: {fileID: 6815987390155653563, guid: cfeb7d67ef99a7a48950d76159c22b10,
type: 3} type: 3}
FormationFuelBar: {fileID: 8071686238484062919}
FormationFoodBar: {fileID: 5300546645429047956}
FormationSuppliesBar: {fileID: 7480306143189545121}
IsBattleMenu: 0
--- !u!1 &6391937544300042816 --- !u!1 &6391937544300042816
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5450,7 +5454,7 @@ GameObject:
- component: {fileID: 7645284469128152350} - component: {fileID: 7645284469128152350}
- component: {fileID: 632089545658046527} - component: {fileID: 632089545658046527}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesButton
m_Name: FoodButton
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -5680,7 +5684,7 @@ GameObject:
- component: {fileID: 1341394783277367771} - component: {fileID: 1341394783277367771}
- component: {fileID: 5300546645429047956} - component: {fileID: 5300546645429047956}
m_Layer: 5 m_Layer: 5
m_Name: SuppliesBar
m_Name: FoodBar
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0


+ 49
- 49
Assets/GWConquest/Resources/Database/Ships.csv View File

@ -1,49 +1,49 @@
Full Name,Short Name,Unit Type,Hitpoints,Shields,Shield Regeneration,Attack Count,Damage,Penetration,Accuracy,Armour,Evasion,Movement,Attack Range,Equipment Slots,Inventory Slots,Morale,Build Time,Credit Upkeep,Food Upkeep,Min Factory Tier,S-P Transporter,Boarding Ships,Fighter Bomber Capacitiy,Description,Credit Cost,Recruit Cost,Ammo Cost,Fuel Cost
,,,,,,,,,,,,,,,,,in sec,pro sec,pro sec,,,,,,,,,
Strike Craft,StrikeCraft,Ship,100,30,1,1,10,1,0.9,0,0.1,5,1,1,6,10,10,2,2,1,,,,,200,10,10,10
Frigate,Frigate,Ship,200,100,1,2/4,20/5,2/0,0.9/0.8,1,0,4,1,2,6,10,10,2,2,3,,,,,200,10,10,10
Escort Frigate,EscortFrigate,Ship,180,100,1,1/6,20/10,2/0,0.9/0.8,1,0,5,1,3,6,10,10,2,2,3,,,,,200,10,10,10
Cruiser,Cruiser,Ship,300,150,2,3/2/3,35/15/8,3/2/0,0.9/0.9/0.8,2,0,3,1,2,6,10,10,2,2,3,,,,,200,10,10,10
Heavy Cruiser,HeavyCruiser,Ship,350,175,2,3/2/2,40/15/8,3/2/0,0.9/0.9/0.8,2,0,3,1,3,6,10,10,2,2,3,,,,,200,10,10,10
Destroyer,Destroyer,Ship,500,250,2,2/3/2,60/30/10,4/3/0,0.9/0.9/0.8,3,0,2.5,2,4,6,10,10,2,2,3,,,,,200,10,10,10
Battleship,Battleship,Ship,1000,600,3,2/2/4/4,80/50/30/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,2,2,4,6,10,10,2,2,1,,,,,200,10,10,10
Battleship,Battleship2,Ship,1000,600,3,2/2/4/4,80/50/30/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,2,2,4,6,10,10,2,2,1,,,,,200,10,10,10
Dreadnought,Dreadnought,Ship,1800,1000,3,2/2/5/5,120/70/50/20,5/5/3/0,1.0/0.9/0.8/0.8,5,0,1.5,3,5,6,10,10,2,2,1,,,,,200,10,10,10
Dreadnought,Dreadnought2,Ship,1800,1000,3,2/2/5/5,120/70/50/20,5/5/3/0,1.0/0.9/0.8/0.8,5,0,1.5,3,5,6,10,10,2,2,1,,,,,200,10,10,10
Transport Frigate,TransportFrigate,Ship,200,100,1,2,5,0,0.8,1,0,4,1,1,6,10,10,2,2,2,,,,,200,10,10,10
Transport Cruiser,TransportCruiser,Ship,300,150,1,1/2,20/5,2/0,0.9/0.8,2,0,3,1,1,6,10,10,2,2,3,,,,,200,10,10,10
Transport Hauler,TransportHauler,Ship,500,250,2,2/4,25/5,2/0,0.9/0.8,3,0,2,1,1,6,10,10,2,2,3,,,,,,,,
Light Carrier,LightCarrier,Ship,200,100,1,2,5,0,0.8,2,0,4,1,1,6,10,10,2,2,3,,,,,,,,
Medium Carrier,MediumCarrier,Ship,300,150,2,1/2,20/5,2/0,0.9/0.8,2,0,3,1,1,6,10,10,2,2,3,,,,,,,,
Heavy Carrier,HeavyCarrier,Ship,500,250,3,2/4,25/5,2/0,0.9/0.8,3,0,2,1,1,6,10,10,2,2,3,,,,,,,,
Escort Carrier,EscortCarrier,Ship,250,110,2,1/4,20/5,2/0,0.9/0.8,2,0,5,1,1,6,10,10,2,2,1,,,,,200,10,10,10
Fighter Squadron,FighterSquadron,Squadron,10,0,0,4,4,0,0.8,0,0.6,6,1,0,0,10,11,3,3,2,,,,,,,,
Bomber Squadron,BomberSquadron,Squadron,15,0,0,4,30,3,0.4,0,0.5,5,1,0,0,10,12,4,4,3,,,,,,,,
Advanced Fighter Squadron,AdvancedFighterSquadron,Squadron,20,0,0,6,9,0,0.9,0,0.7,6,1,0,0,10,13,5,5,4,,,,,,,,
Advanced Bomber Squadron,AdvancedBomberSquadron,Squadron,25,0,0,6,50,4,0.6,0,0.6,5,1,0,0,10,14,6,6,5,,,,,,,,
Fighter-Bomber Squadron,FighterBomberSquadron,Squadron,20,0,0,3/3,6/40,0/3,0.9/0.5,0,0.6,5,1,0,0,10,15,7,7,6,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Wythler:,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Wythler Attack Squadron,WythlerAttackSquadron,Squadron,25,0,0,6,50,4,0.6,0,0.6,5,1,0,0,10,,,,,,,,,,,,
Silverblade-Class Strike Craft,Silverblade-Class Strike Craft,Ship,200,140,2,1,15,1,0.9,0,0.1,6,1,4,6,10,10,2,2,1,,,,,,,,
Stormlance-Class Escort Frigate,Stormlance-Class Escort Frigate,Ship,300,240,2,1/6,25/15,2/0,0.9/0.8,1,0.1,6,1,4,6,10,10,2,2,3,,,,,,,,
Goldstar-Class Destroyer,Goldstar-Class Destroyer,Ship,500,300,3,2/3/2,65/35/15,4/3/0,0.9/0.9/0.8,3,0,4,2,4,6,10,10,2,2,3,,,,,,,,
Kyzagan-Class Heavy Destroyer,Kyzagan-Class Heavy Destroyer,Ship,750,300,3,2/3/2,65/35/15,4/3/0,0.9/0.9/0.8,3,0,3,2,4,6,10,10,2,2,3,,,,,,,,
Keshig-Class Battleship,Keshig-Class Battleship,Ship,1000,600,4,2/2/4/4,85/55/35/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,3,2,4,6,10,10,2,2,1,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic:,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Trailhunter-Class,,Squadron,,,,,,,,,,,,,,,,,,,,,,,,,,
Veilslicer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
Veilscimmer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
Voidrider-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
Voidbreaker-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
Starjumper-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
Starfarer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Rokurant:,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Collossus (Transport),Collossus,Ship,800,300,2,3/2/3,35/15/8,3/2/0,0.9/0.9/0.8,4,0,1,1,4,6,,10,2,2,1,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Exan:,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Deodyle,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,
"Javelin, Blade, Dagger, Spear, Pilum, Halberd, Stilett",,,,,,,,,,,,,,,,,,,,,,,,,,,,
Full Name,Short Name,Unit Type,Hitpoints,Shields,Shield Regeneration,Attack Count,Damage,Penetration,Accuracy,Armour,Evasion,Movement,Attack Range,Equipment Slots,Inventory Slots,Morale,Fuel Capacity,Food Capacity,Supplies Capacity,Build Time,Credit Upkeep,Food Upkeep,Min Factory Tier,S-P Transporter,Boarding Ships,Fighter Bomber Capacitiy,Description,Credit Cost,Recruit Cost,Ammo Cost,Fuel Cost
,,,,,,,,,,,,,,,,,,,,in sec,pro sec,pro sec,,,,,,,,,
Strike Craft,StrikeCraft,Ship,100,30,1,1,10,1,0.9,0,0.1,5,1,1,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Frigate,Frigate,Ship,200,100,1,2/4,20/5,2/0,0.9/0.8,1,0,4,1,2,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Escort Frigate,EscortFrigate,Ship,180,100,1,1/6,20/10,2/0,0.9/0.8,1,0,5,1,3,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Cruiser,Cruiser,Ship,300,150,2,3/2/3,35/15/8,3/2/0,0.9/0.9/0.8,2,0,3,1,2,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Heavy Cruiser,HeavyCruiser,Ship,350,175,2,3/2/2,40/15/8,3/2/0,0.9/0.9/0.8,2,0,3,1,3,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Destroyer,Destroyer,Ship,500,250,2,2/3/2,60/30/10,4/3/0,0.9/0.9/0.8,3,0,2.5,2,4,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Battleship,Battleship,Ship,1000,600,3,2/2/4/4,80/50/30/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,2,2,4,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Battleship,Battleship2,Ship,1000,600,3,2/2/4/4,80/50/30/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,2,2,4,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Dreadnought,Dreadnought,Ship,1800,1000,3,2/2/5/5,120/70/50/20,5/5/3/0,1.0/0.9/0.8/0.8,5,0,1.5,3,5,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Dreadnought,Dreadnought2,Ship,1800,1000,3,2/2/5/5,120/70/50/20,5/5/3/0,1.0/0.9/0.8/0.8,5,0,1.5,3,5,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Transport Frigate,TransportFrigate,Ship,200,100,1,2,5,0,0.8,1,0,4,1,1,6,10,100,100,100,10,2,2,2,,,,,200,10,10,10
Transport Cruiser,TransportCruiser,Ship,300,150,1,1/2,20/5,2/0,0.9/0.8,2,0,3,1,1,6,10,100,100,100,10,2,2,3,,,,,200,10,10,10
Transport Hauler,TransportHauler,Ship,500,250,2,2/4,25/5,2/0,0.9/0.8,3,0,2,1,1,6,10,100,100,100,10,2,2,3,,,,,,,,
Light Carrier,LightCarrier,Ship,200,100,1,2,5,0,0.8,2,0,4,1,1,6,10,100,100,100,10,2,2,3,,,,,,,,
Medium Carrier,MediumCarrier,Ship,300,150,2,1/2,20/5,2/0,0.9/0.8,2,0,3,1,1,6,10,100,100,100,10,2,2,3,,,,,,,,
Heavy Carrier,HeavyCarrier,Ship,500,250,3,2/4,25/5,2/0,0.9/0.8,3,0,2,1,1,6,10,100,100,100,10,2,2,3,,,,,,,,
Escort Carrier,EscortCarrier,Ship,250,110,2,1/4,20/5,2/0,0.9/0.8,2,0,5,1,1,6,10,100,100,100,10,2,2,1,,,,,200,10,10,10
Fighter Squadron,FighterSquadron,Squadron,10,0,0,4,4,0,0.8,0,0.8,6,1,0,0,10,100,100,100,11,3,3,2,,,,,,,,
Bomber Squadron,BomberSquadron,Squadron,15,0,0,4,30,3,0.4,0,0.7,5,1,0,0,10,100,100,100,12,4,4,3,,,,,,,,
Advanced Fighter Squadron,AdvancedFighterSquadron,Squadron,20,0,0,6,9,0,0.9,0,0.9,6,1,0,0,10,100,100,100,13,5,5,4,,,,,,,,
Advanced Bomber Squadron,AdvancedBomberSquadron,Squadron,25,0,0,6,50,4,0.6,0,0.8,5,1,0,0,10,100,100,100,14,6,6,5,,,,,,,,
Fighter-Bomber Squadron,FighterBomberSquadron,Squadron,20,0,0,3/3,6/40,0/3,0.9/0.5,0,0.8,5,1,0,0,10,100,100,100,15,7,7,6,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Wythler:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Wythler Attack Squadron,WythlerAttackSquadron,Squadron,25,0,0,6,50,4,0.6,0,0.6,5,1,0,0,10,100,100,100,,,,,,,,,,,,
Silverblade-Class Strike Craft,Silverblade-Class Strike Craft,Ship,200,140,2,1,15,1,0.9,0,0.1,6,1,4,6,10,100,100,100,10,2,2,1,,,,,,,,
Stormlance-Class Escort Frigate,Stormlance-Class Escort Frigate,Ship,300,240,2,1/6,25/15,2/0,0.9/0.8,1,0.1,6,1,4,6,10,100,100,100,10,2,2,3,,,,,,,,
Goldstar-Class Destroyer,Goldstar-Class Destroyer,Ship,500,300,3,2/3/2,65/35/15,4/3/0,0.9/0.9/0.8,3,0,4,2,4,6,10,100,100,100,10,2,2,3,,,,,,,,
Kyzagan-Class Heavy Destroyer,Kyzagan-Class Heavy Destroyer,Ship,750,300,3,2/3/2,65/35/15,4/3/0,0.9/0.9/0.8,3,0,3,2,4,6,10,100,100,100,10,2,2,3,,,,,,,,
Keshig-Class Battleship,Keshig-Class Battleship,Ship,1000,600,4,2/2/4/4,85/55/35/15,5/4/3/0,0.9/0.9/0.8/0.8,4,0,3,2,4,6,10,100,100,100,10,2,2,1,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Trailhunter-Class,,Squadron,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Veilslicer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Veilscimmer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Voidrider-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Voidbreaker-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Starjumper-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Starfarer-Class,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Rokurant:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Collossus (Transport),Collossus,Ship,800,300,2,3/2/3,35/15/8,3/2/0,0.9/0.9/0.8,4,0,1,1,4,6,10,100,100,100,10,2,2,1,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Exan:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Deodyle,,Ship,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
"Javelin, Blade, Dagger, Spear, Pilum, Halberd, Stilett",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

+ 176
- 176
Assets/GWConquest/Resources/Database/Units.csv View File

@ -1,176 +1,176 @@
Full Name,Short Name,Factory Type,Unit Type,Hitpoints,Attack Count,Damage,Penetration,Accuracy,Armour,Shields,Shield Regeneration,Evasion,Movement,Equipment Slots,Inventory Slots,Morale,Defence Bonus,Abilities,Credit Cost,Recruit Cost,Ammo Cost,Fuel Cost,Build Time,Credit Upkeep,Food Upkeep,Description
Anti Tank Gun,AntiTankGun,Armour,Cannon,30,1,18,5,0.8,1,0,0,0,0.5,2,0,10,,,,,,,1,,,
Artillery Gun,ArtilleryGun,Armour,Artillery,24,1,22,1,0.4,1,0,0,0,0.5,2,0,10,,,,,,,1,,,
Artillery Tank,ArtilleryTank,Armour,Artillery,60,1,22,1,0.5,1,0,0,0,3,2,0,10,,,,,,,1,,,
Flak Cannon,FlakCannon,Armour,Cannon,20,6,5,0.5,0.7,1,0,0,0,0.5,2,0,10,,,,,,,1,,,
Flak Truck,FlakTruck,Armour,Vehicle,20,5,3,2,0.6,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Tekki Truck,TekkiTruck,City,Vehicle,20,1,6,2,0.4,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Anti Tank Truck,AntiTankTruck,Armour,Vehicle,20,1,8,3,0.7,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Flak Halftrack,FlakHalftrack,Armour,Vehicle,20,5,5,0.5,0.65,1,0,0,0,3,2,0,10,,,,,,,1,,,
Heavy Anti Tank Gun,HeavyAntiTankGun,Armour,Cannon,40,1,25,6,0.8,1,0,0,0,0.3,2,0,10,,,,,,,1,,,
Heavy Artillery Gun,HeavyArtilleryGun,Armour,Cannon,35,1,30,1.5,0.4,1,0,0,0,0.3,2,0,10,,,,,,,1,,,
Heavy Rocket Artillery,HeavyRocketArtillery,Armour,Artillery,35,3,20,1.5,0.18,1,0,0,0,0.3,2,0,10,,,,,,,1,,,
Heavy Tank,HeavyTank,Armour,Vehicle,120,1/4,15/4,4/2,0.6/0.6,4,0,0,0,2.5,2,0,10,,,1600,,,,1,,,
Light Anti Tank Gun,LightAntiTankGun,Armour,Cannon,20,2,8,3,0.7,1,0,0,0,0.5,2,0,10,,,,,,,1,,,
Light Artillery Gun,LightArtilleryGun,Armour,Cannon,20,2,12,1,0.45,1,0,0,0,0.5,2,0,10,,,,,,,1,,,
Light Tank,LightTank,Armour,Vehicle,60,3/5,5/4,2/1,0.6/0.6,2,0,0,0,3,2,0,10,,,1000,,,,1,,,
Medium Tank,MediumTank,Armour,Vehicle,100,2/5,10/4,3/1,0.6/0.6,3,0,0,0,3,2,0,10,,,1200,,,,1,,,
Rocket Artillery,RocketArtillery,Armour,Artillery,10,3,14,1,0.2,0,0,0,0,0.5,2,0,10,,,,,,,1,,,
Scout Vehicle,ScoutVehicle,Armour,Vehicle,40,4,4,1,0.7,1,0,0,0.3,5,2,0,10,,,,,,,1,,,
Super Heavy Artillery Gun,SuperHeavyArtilleryGun,Armour,Artillery,40,1,50,2,0.3,2,0,0,0,0.2,2,0,10,,,,,,,1,,,
Super Heavy Tank,SuperHeavyTank,Armour,Vehicle,150,1/3,20/4,5/2,0.6/0.6,5,0,0,0,2,2,0,10,,,2400,,,,1,,,
Support Vehicle,SupportVehicle,Armour,Vehicle,20,1,1,2,0.7,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Tankhunter,Tankhunter,Armour,Vehicle,80,1,12,2,0.7,0.5,0,0,0,2,2,0,10,,,1200,,,,1,,,
Transport Truck,TransportTruck,Armour,Vehicle,20,0,0,0,0,1,0,0,0,4,2,0,10,,,,,,,1,,,
Conscripts,Conscripts,City,Infantry,10,1,3,0,0.4,0,0,0,0,1,2,0,10,1,,300,5,2,,30,,,"These soldiers were pressed into service by the military authorities and armed only with subpar equipment. Consequently, their morale is quite low and they should not be expected to fight very hard."
Militia,Militia,City,Infantry,10,1,3,0,0.4,0,0,0,0,1,2,0,10,1,,100,5,0,,20,,,"Ordinary citizens defending their homeland, armed with everything that could be scrounged from storage. They are only rudimentarily trained and will not pose a real threat to any sizable force."
Breacher Squad,BreacherSquad,Infantry,Infantry,35,2,4,0.3,0.5,0.5,0,0,0,0.8,2,0,10,,,,,,,1,,,
Commando Unit,CommandoUnit,Infantry,Infantry,35,1/1,8/4,1/0.3,0.7/0.7,0.3,0,0,0.5,2,2,0,10,,stealth II,,,,,1,,,
Demolition Squad,DemolitionSquad,Infantry,Infantry,15,1,4,0,0.5,0.3,0,0,0,1,2,0,10,,,,,,,1,,,
Grav-Chute Squad,GravChuteSquad,Infantry,Infantry,15,1,4,0,0.5,0,0,0,0.2,2,2,0,10,,,,,,,1,,,
Heavy Infantry,HeavyInfantry,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,1,,,,,,1,,,
Heavy Mountain Brigade,HeavyMountainBrigade,Infantry,Infantry,35,2,2,0,0.4,0.3,0,0,0,0.8,2,0,10,,,,,,,1,,,
Light Infantry,LightInfantry,Infantry,Infantry,15,1,4,0,0.5,0,0,0,0,1.2,2,0,10,1,,,,,,1,,,
Marine Squad,MarineSquad,Infantry,Infantry,20,1,4,0,0.5,0,0,0,0,1,2,0,10,,stationson,,,,,1,,,
Mountain Brigade,MountainBrigade,Infantry,Infantry,35,2,2,0,0.4,0,0,0,0,1,2,0,10,,,,,,,1,,,
Pioneer Squad,PioneerSquad,Infantry,Infantry,35,1,2,0,0.5,0.5,0,0,0,1.2,2,0,10,2,,,,,,1,,,
Sniper Squad,SniperSquad,Infantry,Infantry,15,1,5,0.5,0.9,0,0,0,0.2,1.2,2,0,10,,stealth I,,,,,1,,,
Standard Infantry,StandardInfantry,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,1,,,
Tank Hunter Squad,TankHunterSquad,Infantry,Infantry,20,1/2,10/2,3/0,0.4/0.6,0.3,0,0,0,0.8,2,0,10,,,,,,,1,,,
Laser Supressor Tank,LaserSupressorTank,Armour,Vehicle,60,6,4,2,0.4,2,0,0,0,3,2,0,10,,,,,,,1,,,
Command Tank,CommandTank,Armour,Vehicle,90,4,4,0.3,0.5,3,0,0,0,3,2,0,10,,,,,,,1,,,
Heavy Command Tank,HeavyCommandTank,Armour,Vehicle,115,4,4,0.3,0.5,4,0,0,0,2,2,0,10,,,,,,,1,,,
Mortar Truck,MortarTruck,Armour,Artillery,20,2,5,1,0.3,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Medic Truck,MedicTruck,Armour,Vehicle,20,0,0,0,0,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Old Transport Tank,OldTransportTank,Armour,Vehicle,75,2,3,0.3,0.6,2.5,0,0,0,3,2,0,10,,,,,,,1,,,
Old Tank,OldTank1,Armour,Vehicle,70,2/5,9/4,2.5/0.5,0.5/0.6,3,0,0,0,2,2,0,10,,,,,,,1,,,
Old Tank,OldTank2,Armour,Vehicle,75,2/5,10/4,3/0.5,0.6/0.6,3,0,0,0,2,2,0,10,,,,,,,1,,,
Old Tank,OldTank3,Armour,Vehicle,80,2/4,11/4,3/0.5,0.7/0.6,3,0,0,0,2,2,0,10,,,,,,,1,,,
Heavy Scout Vehicle,HeavyScoutVehicle,Armour,Vehicle,45,4,5,1,0.65,1.5,0,0,0.25,4.5,2,0,10,,,,,,,1,,,
Transport Vehicle,TransportVehicle,Armour,Vehicle,45,0,0,0,0,0.5,0,0,0,4,2,0,10,,,,,,,1,,,
Light Transport Vehicle,LightTransportVehicle,Armour,Vehicle,40,0,0,0,0,0.45,0,0,0,4.5,2,0,10,,,,,,,1,,,
Old Transport Vehicle,OldTransportVehicle,Armour,Vehicle,35,0,0,0,0,0.4,0,0,0,3.5,2,0,10,,,,,,,1,,,
Medic Squad,MedicSquad,Infantry,Infantry,10,1,1,0,0.5,0,0,0,0,1,2,0,10,,,,,,,1,,,
Tank Crew,TankCrew,Infantry,Infantry,10,1,1,0,0.5,0,0,0,0,1,2,0,10,,,,,,,1,,,
Fast Attack Vehicle,FastAttackVehicle,Armour,Vehicle,25,3,5,1.5,0.55,1.45,0,0,0.2,4.5,2,0,10,,,,,,,1,,,
Spy,Spy,Infantry,Infantry,5,0,0,0,0,0,0,0,0,1,2,0,10,,,,,,,1,,,
Hazard Squad,HazardSquad,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,0.8,2,0,10,,,,,,,1,,,
Heavy Hazard Squad,HeavyHazardSquad,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.6,2,0,10,,,,,,,1,,,
Mortar Squad,MortarSquad,Infantry,Artillery,30,2,7,0.5,0.35,1,0,0,0,0.8,2,0,10,,,,,,,1,,,
Heavy Flak Cannon,HeavyFlakCannon,Armour,Cannon,40,5,6,1,0.7,1,0,0,0,0.3,2,0,10,,,,,,,1,,,
Light Universal Carrier,LightUniversalCarrier,Armour,Vehicle,15,0,0,0,0,0.3,0,0,0.1,,2,0,10,,,,,,,,,,
Anti Material Rifle Squad,AntiMaterialRifleSquad,Infantry,Infantry,15,1,5,2,0.75,0,0,0,0.2,1.2,2,0,10,,,,,,,,,,
Light Attack Fighter,LightAttackFighter,Armour,Aircraft,25,0,0,0,0,0,0,0,0.7,,2,0,10,,,,,,,,,,
Command Squad,OfficerSquad,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,0.8,2,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Rokurant,,,,,,,,,,,,,,,,,,,,,,,,,,
Heavy Artillery Tank,RokurantHArtilleryTank,Armour,Artillery,90,1,26,1.5,0.5,3,0,0,0,2,2,0,10,,,,,,,,,,
Siegebreaker Tank,RokurantSiegebreakerTank,Armour,Vehicle,95,1,20,3,0.6,3,0,0,0,2,2,0,10,,,,,,,,,,
Bulk Transporter,RokurantTransporter,Armour,Vehicle,100,2,2,0,0.6,3,0,0,0,1,2,0,10,,,,,,,,,,
Heavy Rocket Vehicle,RokurantRocketVehicle,Armour,Vehicle,60,3,14,1,0.2,0,0,0,0,0.5,2,0,10,,,,,,,,,,
Rokurant Infantry,RokurantInfantry,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,1,,,,,,,,,
Heavy Infantry,RokurantHInfantry,Infantry,Infantry,40,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,1,,,,,,,,,
Storm Pioneers,RokurantStormPioneers,Infantry,Infantry,45,1,2,0,0.5,0.55,0,0,0,1.5,2,0,10,2,,,,,,,,,
Transport Truck,RokurantTransportTruck,Armour,Vehicle,50,0,0,0,0,0.5,0,0,0,4,2,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Voteine,,,,,,,,,,,,,,,,,,,,,,,,,,
Fast Assault Tank,VoteineFastAssaultTank,Armour,Vehicle,40,1/2,8/3,3/1,0.75/0.8,1,1,1,0.35,5,2,0,10,,,,,,,,,,
Hover Tank,VoteineHoverTank,Armour,Vehicle,45,3,5,1.5,0.8,2,1,1,0.15,5,2,0,10,,,,,,,,,,
Light Hover Tank,VoteineLHoverTank,Armour,Vehicle,40,3,5,1.5,0.75,1.45,0,1,0.3,5,2,0,10,,,,,,,,,,
Voteine Infantry,VoteineInfantry,Infantry,Infantry,32,2,4,0,0.6,0.4,0,0,0,0.8,3,0,10,,,,,,,,,,
Voteine Infantry Elite,VoteineInfantryElite,Infantry,Infantry,38,3,4,0,0.6,0.4,0,0,0,0.8,3,0,10,,,,,,,,,,
Voteine Drones,VoteineDrones,Infantry,Infantry,8,1,1,0,0.4,0.3,0,0,0.75,1,0,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Whythler,,,,,,,,,,,,,,,,,,,,,,,,,,
Husain Jet-Bike Squad,WythlerJetBikeSquad1,Armour,Vehicle,60,4,4,2,0.8,1,2,1,0.6,6,2,0,10,,,,,,,,,,
Winhali Jet-Bike Squad,WythlerJetBikeSquad2,Armour,Vehicle,60,2/4,4/3,2/0.5,0.8/0.7,1,2,1,0.65,6,2,0,10,,,,,,,,,,
Lenphra Jet-Bike Squad,WythlerJetBikeSquad3,Armour,Vehicle,60,2/1,4/10,2/4,0.8/0.7,1,2,1,0.55,6,2,0,10,,,,,,,,,,
Light Attack Speeder,WythlerLAttackSpeeder,Armour,Vehicle,70,3,4,4,0.85,2,2,2,0.3,5,2,0,10,,,,,,,,,,
Attack Speeder,WythlerAttackSpeeder,Armour,Vehicle,90,1/3,12/4,4/2,0.85/0.7,2,2,2,0.35,4,2,0,10,,,,,,,,,,
Heavy Attack Speeder,WythlerHAttackSpeeder,Armour,Vehicle,100,1/4,18/4,5/2,0.85/0.7,2.5,3,2,0.2,4,2,0,10,,,,,,,,,,
Heavy Transport Speeder,WythlerHTransportSpeeder,Armour,Vehicle,90,3,4,4,0.85,3,3,2,0.2,4,2,0,10,,,,,,,,,,
Transport Vehicle,WythlerTransportVehicle,Armour,Vehicle,75,2,1,1,0.7,0.75,0,0,0,2,2,0,10,,,,,,,,,,
Tankhunter,WythlerTankhunter,Armour,Vehicle,60,1,11,2,0.65,0.5,0,0,0,2,2,0,10,,,1200,,,,,,,
Wythler Squad,WythlerSquad,Infantry,Infantry,45,3/4,4/3,2/0.5,0.9/0.8,1,2,1,0,,,,10,,,,,,,,,,
Power Armour Squad,PowerArmourSquad,Infantry,Infantry,45,3/4,4/3,2/0.5,0.9/0.8,1,2,1,0,0.8,2,0,10,1,,,,,,,,,
Rabble,Rabble,City,Infantry,15,1,4,0,0.5,0,0,0,0,1.2,2,0,10,1,,,,,,,,,
Wyth Palace Guard,WythPalaceGuard,Infantry,Infantry,40,2,3,0,0.8,1,1,2.5,0,0.8,2,0,10,1,,,,,,,,,
Assassins,Assassins,Infantry,Infantry,5,1,10,0,0.3,0.3,1,2.5,0.2,2,,0,10,,stealth I,,,,,,,,
Disciplinary Master,WythlerDisciplinaryMaster,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,1,,0,10,,,,,,,,,,
Charnal Guard,CharnalGuard,Infantry,Infantry,60,2,2,0,0.9,0.3,0,0,0,1,,0,10,,,,,,,,,,
Hushtan Ginetiphracts,Ginetiphracts,Infantry,Infantry,20,1,4,0,0.5,0,0,0,0,1,2,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic Remnants,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic Wardens,RepublicWardens,Infantry,Infantry,40,3,3,0,0.8,1,0,0,0,0.8,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Elysia,,,,,,,,,,,,,,,,,,,,,,,,,,
Elysian Light Commando Vehicle,ElysiaLCommandoVehicle,Armour,Vehicle,30,4,5,1.5,0.65,1.75,0,0,0.2,4.5,2,0,10,,,,,,,,,,
Elysian Assault APC,ElysianAssaultAPC,Armour,Vehicle,45,3,4,2,0.65,2,0,0,0.2,4.5,2,0,10,,,,,,,,,,
Elysian Oathsworn Squad,ElysianOathswornSquad,Infantry,Infantry,35,3,3,0,0.65,0.5,0,0,0,1,2,0,10,1,,,,,,,,,
Elysian Light Mechs,ElysianLightMechs,Armour,Vehicle,45,3/4,3/2,2/0.5,0.9/0.8,1,0,0,0,2,2,0,10,1,,,,,,,,,
Elysian Jet Infantry,ElysianJetInfantry,Infantry,Infantry,30,2,3,0,0.65,0.5,0,0,0.2,2,2,0,10,,,,,,,,,,
Elysian Recon Infantry,ElysianReconInfantry,Infantry,Infantry,35,1/1,8/4,1/0.3,0.7/0.7,0.3,0,0,0.5,2,2,0,10,,stealth II,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Yar-Kassy,,,,,,,,,,,,,,,,,,,,,,,,,,
Dervish Assault Tank,YarkassyAssaultTank,Armour,Vehicle,90,1/2,8/3,3/1,0.75/0.8,1,1,1,0.35,4.5,2,0,10,,,,,,,,,,
Desert Raider Squad,YarkassyDesertRaiderSquad,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,1,,,,,,,,,
Elite Marksmen Squad,YarkassyEliteMarksmen,Infantry,Infantry,18,1,5,0.5,0.95,0,0,0,0.25,1.3,2,0,10,,stealth I,,,,,,,,
Ghar Haclem Ark'venuur Serpents,YarkassySerpents,Infantry,Infantry,25,3,2,0.5,0.45,0,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Arca,,,,,,,,,,,,,,,,,,,,,,,,,,
Scum,ArcaScum,City,Infantry,20,2,1,0,0.25,0,0,0,0,1.1,1,0,10,0,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Zami,,,,,,,,,,,,,,,,,,,,,,,,,,
Cryo-Clone Squad,ZamiCryoCloneSquad,Infantry,Infantry,25,2,2,0,0.75,0,0,0,0,1.5,2,0,10,0,,,,,,,,,
Immortals Cryo-Clone Squad,ImmortalsCryo-CloneSquad,Infantry,Infantry,35,3,2,0,0.8,0.55,0,0,0,1.5,2,0,10,0,,,,,,,,,
Zami War Tripod,ZamiWarTripod,Armour,Vehicle,100,2/6,4/1,2.5/0,0.8/0.8,2.5,2,1,0,2,2,0,10,,,,,,,,,,
Zami War Strider,ZamiWarStrider,Armour,Vehicle,85,1/7,4/1,2.5/0,0.75/0.75,2,2,1,0,2,2,0,10,,,,,,,,,,
Conscripted Miner Slaves,ConscriptedMinerSlaves,City,Infantry,12,2,3,0,0.45,0,0,0,0,1.2,2,0,10,1,,,,,,,,,
Satyr-9 Varanguard,Satyr-9Varanguard,City,Infantry,40,3,3,0.5,0.9,1,0,0,0,1,2,0,10,1,,,,,,,,,
Krioss Ravager Pack,KriossRavagerPack,Infantry,Infantry,50,5,2,1,0.45,0.75,0,0,1,5,3,0,10,,,,,,,,,,
Snagaa Newborn,SnagaaNewborn,Infantry,Infantry,15,2,1,0,0.3,0,0,0,0,1.5,0,0,10,,,,,,,,,,
Axa Axa,AxaAxa,Infantry,Vehicle,45,4,1,0,0.7,0.5,1,2.5,0,1,0,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Stuntreen,,,,,,,,,,,,,,,,,,,,,,,,,,
Headtaker Commando,HeadtakerCommando,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Hareen Cari Immortals,HareenCariImmortals,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Exan,,,,,,,,,,,,,,,,,,,,,,,,,,
Clan Warriors,ExanClanWarriors,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Headtakers,ExanHeadtakers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Methaphor,,,,,,,,,,,,,,,,,,,,,,,,,,
Republican Guard,MethaphorRepublicanGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Green Guard (Elite Mountain Troops),MethaphorGreenGuard,Infantry,Infantry,40,2,2,0,0.6,0,0,0,0,1,3,0,10,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Noser,,,,,,,,,,,,,,,,,,,,,,,,,,
Royal Guard,NoserRoyalGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Stalker Squad,NoserStalkerSquad,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Caer Bannoq,,,,,,,,,,,,,,,,,,,,,,,,,,
Realm Hunters,CaerBannoqRealmHunters,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Keepers of Secrets,CaerBannoqKeepers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Paladins,CaerBannoqPaladins,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Seekers,CaerBannoqSeekers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Vesparus,,,,,,,,,,,,,,,,,,,,,,,,,,
Vesparusian Militia,VesparusMilitia,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Freekorps Caine,VesparusFreekorps,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Inobria,,,,,,,,,,,,,,,,,,,,,,,,,,
Infantry,InobriaInfantry,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Tunnel Fighter,InobriaTunnelFighter,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Sartorius Rax,,,,,,,,,,,,,,,,,,,,,,,,,,
Infantry,SartoriusInfantry,Infantry,Infantry,22,1,4,0,0.55,0,0,0,0,1,2,0,10,1,,,,,,,,,
Heavy Infantry,SartoriusHeavyInfantry,Infantry,Infantry,32,2,3,0,0.6,0,0,0,0,1,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Spice,,,,,,,,,,,,,,,,,,,,,,,,,,
Longclaw Pack,SpiceLongclawPack,Infantry,Infantry,16,2,3,0,0.6,0,0,0,0,1.4,2,0,10,1,,,,,,,,,
Tunneler Pack,SpiceTunnelerPack,Infantry,Infantry,20,2,3,0,0.6,0,0,0,0,1.4,2,0,10,1,,,,,,,,,
Healer Pack,SpiceHealerPack,Infantry,Infantry,14,2,3,0,0.6,0,0,0,0,1.4,2,0,10,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,
Amothep,,,,,,,,,,,,,,,,,,,,,,,,,,
Pyramidians,Pyramidians,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Spyre Guard,SpyreGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,1,,,,,,,,,
Full Name,Short Name,Factory Type,Unit Type,Hitpoints,Attack Count,Damage,Penetration,Accuracy,Armour,Shields,Shield Regeneration,Evasion,Movement,Equipment Slots,Inventory Slots,Morale,Fuel Capacity,Food Capacity,Supplies Capacity,Defence Bonus,Abilities,Credit Cost,Recruit Cost,Ammo Cost,Fuel Cost,Build Time,Credit Upkeep,Food Upkeep,Description
Anti Tank Gun,AntiTankGun,Armour,Cannon,30,1,18,5,0.8,1,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Artillery Gun,ArtilleryGun,Armour,Artillery,24,1,22,1,0.4,1,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Artillery Tank,ArtilleryTank,Armour,Artillery,60,1,22,1,0.5,1,0,0,0,3,2,0,10,100,100,100,,,,,,,1,,,
Flak Cannon,FlakCannon,Armour,Cannon,20,6,5,0.5,0.7,1,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Flak Truck,FlakTruck,Armour,Vehicle,20,5,3,2,0.6,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Tekki Truck,TekkiTruck,City,Vehicle,20,1,6,2,0.4,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Anti Tank Truck,AntiTankTruck,Armour,Vehicle,20,1,8,3,0.7,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Flak Halftrack,FlakHalftrack,Armour,Vehicle,20,5,5,0.5,0.65,1,0,0,0,3,2,0,10,100,100,100,,,,,,,1,,,
Heavy Anti Tank Gun,HeavyAntiTankGun,Armour,Cannon,40,1,25,6,0.8,1,0,0,0,0.3,2,0,10,100,100,100,,,,,,,1,,,
Heavy Artillery Gun,HeavyArtilleryGun,Armour,Cannon,35,1,30,1.5,0.4,1,0,0,0,0.3,2,0,10,100,100,100,,,,,,,1,,,
Heavy Rocket Artillery,HeavyRocketArtillery,Armour,Artillery,35,3,20,1.5,0.18,1,0,0,0,0.3,2,0,10,100,100,100,,,,,,,1,,,
Heavy Tank,HeavyTank,Armour,Vehicle,120,1/4,15/4,4/2,0.6/0.6,4,0,0,0,2.5,2,0,10,100,100,100,,,1600,,,,1,,,
Light Anti Tank Gun,LightAntiTankGun,Armour,Cannon,20,2,8,3,0.7,1,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Light Artillery Gun,LightArtilleryGun,Armour,Cannon,20,2,12,1,0.45,1,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Light Tank,LightTank,Armour,Vehicle,60,3/5,5/4,2/1,0.6/0.6,2,0,0,0,3,2,0,10,100,100,100,,,1000,,,,1,,,
Medium Tank,MediumTank,Armour,Vehicle,100,2/5,10/4,3/1,0.6/0.6,3,0,0,0,3,2,0,10,100,100,100,,,1200,,,,1,,,
Rocket Artillery,RocketArtillery,Armour,Artillery,10,3,14,1,0.2,0,0,0,0,0.5,2,0,10,100,100,100,,,,,,,1,,,
Scout Vehicle,ScoutVehicle,Armour,Vehicle,40,4,4,1,0.7,1,0,0,0.3,5,2,0,10,100,100,100,,,,,,,1,,,
Super Heavy Artillery Gun,SuperHeavyArtilleryGun,Armour,Artillery,40,1,50,2,0.3,2,0,0,0,0.2,2,0,10,100,100,100,,,,,,,1,,,
Super Heavy Tank,SuperHeavyTank,Armour,Vehicle,150,1/3,20/4,5/2,0.6/0.6,5,0,0,0,2,2,0,10,100,100,100,,,2400,,,,1,,,
Support Vehicle,SupportVehicle,Armour,Vehicle,20,1,1,2,0.7,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Tankhunter,Tankhunter,Armour,Vehicle,80,1,12,2,0.7,0.5,0,0,0,2,2,0,10,100,100,100,,,1200,,,,1,,,
Transport Truck,TransportTruck,Armour,Vehicle,20,0,0,0,0,1,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Conscripts,Conscripts,City,Infantry,10,1,3,0,0.4,0,0,0,0,1,2,0,10,100,100,100,1,,300,5,2,,30,,,"These soldiers were pressed into service by the military authorities and armed only with subpar equipment. Consequently, their morale is quite low and they should not be expected to fight very hard."
Militia,Militia,City,Infantry,10,1,3,0,0.4,0,0,0,0,1,2,0,10,100,100,100,1,,100,5,0,,20,,,"Ordinary citizens defending their homeland, armed with everything that could be scrounged from storage. They are only rudimentarily trained and will not pose a real threat to any sizable force."
Breacher Squad,BreacherSquad,Infantry,Infantry,35,2,4,0.3,0.5,0.5,0,0,0,0.8,2,0,10,100,100,100,,,,,,,1,,,
Commando Unit,CommandoUnit,Infantry,Infantry,35,1/1,8/4,1/0.3,0.7/0.7,0.3,0,0,0.5,2,2,0,10,100,100,100,,stealth II,,,,,1,,,
Demolition Squad,DemolitionSquad,Infantry,Infantry,15,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,,,,,,,1,,,
Grav-Chute Squad,GravChuteSquad,Infantry,Infantry,15,1,4,0,0.5,0,0,0,0.2,2,2,0,10,100,100,100,,,,,,,1,,,
Heavy Infantry,HeavyInfantry,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,100,100,100,1,,,,,,1,,,
Heavy Mountain Brigade,HeavyMountainBrigade,Infantry,Infantry,35,2,2,0,0.4,0.3,0,0,0,0.8,2,0,10,100,100,100,,,,,,,1,,,
Light Infantry,LightInfantry,Infantry,Infantry,15,1,4,0,0.5,0,0,0,0,1.2,2,0,10,100,100,100,1,,,,,,1,,,
Marine Squad,MarineSquad,Infantry,Infantry,20,1,4,0,0.5,0,0,0,0,1,2,0,10,100,100,100,,stationson,,,,,1,,,
Mountain Brigade,MountainBrigade,Infantry,Infantry,35,2,2,0,0.4,0,0,0,0,1,2,0,10,100,100,100,,,,,,,1,,,
Pioneer Squad,PioneerSquad,Infantry,Infantry,35,1,2,0,0.5,0.5,0,0,0,1.2,2,0,10,100,100,100,2,,,,,,1,,,
Sniper Squad,SniperSquad,Infantry,Infantry,15,1,5,0.5,0.9,0,0,0,0.2,1.2,2,0,10,100,100,100,,stealth I,,,,,1,,,
Standard Infantry,StandardInfantry,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,1,,,
Tank Hunter Squad,TankHunterSquad,Infantry,Infantry,20,1/2,10/2,3/0,0.4/0.6,0.3,0,0,0,0.8,2,0,10,100,100,100,,,,,,,1,,,
Laser Supressor Tank,LaserSupressorTank,Armour,Vehicle,60,6,4,2,0.4,2,0,0,0,3,2,0,10,100,100,100,,,,,,,1,,,
Command Tank,CommandTank,Armour,Vehicle,90,4,4,0.3,0.5,3,0,0,0,3,2,0,10,100,100,100,,,,,,,1,,,
Heavy Command Tank,HeavyCommandTank,Armour,Vehicle,115,4,4,0.3,0.5,4,0,0,0,2,2,0,10,100,100,100,,,,,,,1,,,
Mortar Truck,MortarTruck,Armour,Artillery,20,2,5,1,0.3,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Medic Truck,MedicTruck,Armour,Vehicle,20,0,0,0,0,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Old Transport Tank,OldTransportTank,Armour,Vehicle,75,2,3,0.3,0.6,2.5,0,0,0,3,2,0,10,100,100,100,,,,,,,1,,,
Old Tank,OldTank1,Armour,Vehicle,70,2/5,9/4,2.5/0.5,0.5/0.6,3,0,0,0,2,2,0,10,100,100,100,,,,,,,1,,,
Old Tank,OldTank2,Armour,Vehicle,75,2/5,10/4,3/0.5,0.6/0.6,3,0,0,0,2,2,0,10,100,100,100,,,,,,,1,,,
Old Tank,OldTank3,Armour,Vehicle,80,2/4,11/4,3/0.5,0.7/0.6,3,0,0,0,2,2,0,10,100,100,100,,,,,,,1,,,
Heavy Scout Vehicle,HeavyScoutVehicle,Armour,Vehicle,45,4,5,1,0.65,1.5,0,0,0.25,4.5,2,0,10,100,100,100,,,,,,,1,,,
Transport Vehicle,TransportVehicle,Armour,Vehicle,45,0,0,0,0,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,1,,,
Light Transport Vehicle,LightTransportVehicle,Armour,Vehicle,40,0,0,0,0,0.45,0,0,0,4.5,2,0,10,100,100,100,,,,,,,1,,,
Old Transport Vehicle,OldTransportVehicle,Armour,Vehicle,35,0,0,0,0,0.4,0,0,0,3.5,2,0,10,100,100,100,,,,,,,1,,,
Medic Squad,MedicSquad,Infantry,Infantry,10,1,1,0,0.5,0,0,0,0,1,2,0,10,100,100,100,,,,,,,1,,,
Tank Crew,TankCrew,Infantry,Infantry,10,1,1,0,0.5,0,0,0,0,1,2,0,10,100,100,100,,,,,,,1,,,
Fast Attack Vehicle,FastAttackVehicle,Armour,Vehicle,25,3,5,1.5,0.55,1.45,0,0,0.2,4.5,2,0,10,100,100,100,,,,,,,1,,,
Spy,Spy,Infantry,Infantry,5,0,0,0,0,0,0,0,0,1,2,0,10,100,100,100,,,,,,,1,,,
Hazard Squad,HazardSquad,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,0.8,2,0,10,100,100,100,,,,,,,1,,,
Heavy Hazard Squad,HeavyHazardSquad,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.6,2,0,10,100,100,100,,,,,,,1,,,
Mortar Squad,MortarSquad,Infantry,Artillery,30,2,7,0.5,0.35,1,0,0,0,0.8,2,0,10,100,100,100,,,,,,,1,,,
Heavy Flak Cannon,HeavyFlakCannon,Armour,Cannon,40,5,6,1,0.7,1,0,0,0,0.3,2,0,10,100,100,100,,,,,,,1,,,
Light Universal Carrier,LightUniversalCarrier,Armour,Vehicle,15,0,0,0,0,0.3,0,0,0.1,,2,0,10,100,100,100,,,,,,,,,,
Anti Material Rifle Squad,AntiMaterialRifleSquad,Infantry,Infantry,15,1,5,2,0.75,0,0,0,0.2,1.2,2,0,10,100,100,100,,,,,,,,,,
Light Attack Fighter,LightAttackFighter,Armour,Aircraft,25,0,0,0,0,0,0,0,0.7,,2,0,10,100,100,100,,,,,,,,,,
Command Squad,OfficerSquad,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,0.8,2,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Rokurant,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Heavy Artillery Tank,RokurantHArtilleryTank,Armour,Artillery,90,1,26,1.5,0.5,3,0,0,0,2,2,0,10,100,100,100,,,,,,,,,,
Siegebreaker Tank,RokurantSiegebreakerTank,Armour,Vehicle,95,1,20,3,0.6,3,0,0,0,2,2,0,10,100,100,100,,,,,,,,,,
Bulk Transporter,RokurantTransporter,Armour,Vehicle,100,2,2,0,0.6,3,0,0,0,1,2,0,10,100,100,100,,,,,,,,,,
Heavy Rocket Vehicle,RokurantRocketVehicle,Armour,Vehicle,60,3,14,1,0.2,0,0,0,0,0.5,2,0,10,100,100,100,,,,,,,,,,
Rokurant Infantry,RokurantInfantry,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
Heavy Infantry,RokurantHInfantry,Infantry,Infantry,40,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
Storm Pioneers,RokurantStormPioneers,Infantry,Infantry,45,1,2,0,0.5,0.55,0,0,0,1.5,2,0,10,100,100,100,2,,,,,,,,,
Transport Truck,RokurantTransportTruck,Armour,Vehicle,50,0,0,0,0,0.5,0,0,0,4,2,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Voteine,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Fast Assault Tank,VoteineFastAssaultTank,Armour,Vehicle,40,1/2,8/3,3/1,0.75/0.8,1,1,1,0.35,5,2,0,10,100,100,100,,,,,,,,,,
Hover Tank,VoteineHoverTank,Armour,Vehicle,45,3,5,1.5,0.8,2,1,1,0.15,5,2,0,10,100,100,100,,,,,,,,,,
Light Hover Tank,VoteineLHoverTank,Armour,Vehicle,40,3,5,1.5,0.75,1.45,0,1,0.3,5,2,0,10,100,100,100,,,,,,,,,,
Voteine Infantry,VoteineInfantry,Infantry,Infantry,32,2,4,0,0.6,0.4,0,0,0,0.8,3,0,10,100,100,100,,,,,,,,,,
Voteine Infantry Elite,VoteineInfantryElite,Infantry,Infantry,38,3,4,0,0.6,0.4,0,0,0,0.8,3,0,10,100,100,100,,,,,,,,,,
Voteine Drones,VoteineDrones,Infantry,Infantry,8,1,1,0,0.4,0.3,0,0,0.75,1,0,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Whythler,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Husain Jet-Bike Squad,WythlerJetBikeSquad1,Armour,Vehicle,60,4,4,2,0.8,1,2,1,0.6,6,2,0,10,100,100,100,,,,,,,,,,
Winhali Jet-Bike Squad,WythlerJetBikeSquad2,Armour,Vehicle,60,2/4,4/3,2/0.5,0.8/0.7,1,2,1,0.65,6,2,0,10,100,100,100,,,,,,,,,,
Lenphra Jet-Bike Squad,WythlerJetBikeSquad3,Armour,Vehicle,60,2/1,4/10,2/4,0.8/0.7,1,2,1,0.55,6,2,0,10,100,100,100,,,,,,,,,,
Light Attack Speeder,WythlerLAttackSpeeder,Armour,Vehicle,70,3,4,4,0.85,2,2,2,0.3,5,2,0,10,100,100,100,,,,,,,,,,
Attack Speeder,WythlerAttackSpeeder,Armour,Vehicle,90,1/3,12/4,4/2,0.85/0.7,2,2,2,0.35,4,2,0,10,100,100,100,,,,,,,,,,
Heavy Attack Speeder,WythlerHAttackSpeeder,Armour,Vehicle,100,1/4,18/4,5/2,0.85/0.7,2.5,3,2,0.2,4,2,0,10,100,100,100,,,,,,,,,,
Heavy Transport Speeder,WythlerHTransportSpeeder,Armour,Vehicle,90,3,4,4,0.85,3,3,2,0.2,4,2,0,10,100,100,100,,,,,,,,,,
Transport Vehicle,WythlerTransportVehicle,Armour,Vehicle,75,2,1,1,0.7,0.75,0,0,0,2,2,0,10,100,100,100,,,,,,,,,,
Tankhunter,WythlerTankhunter,Armour,Vehicle,60,1,11,2,0.65,0.5,0,0,0,2,2,0,10,100,100,100,,,1200,,,,,,,
Wythler Squad,WythlerSquad,Infantry,Infantry,45,3/4,4/3,2/0.5,0.9/0.8,1,2,1,0,,,,10,100,100,100,,,,,,,,,,
Power Armour Squad,PowerArmourSquad,Infantry,Infantry,45,3/4,4/3,2/0.5,0.9/0.8,1,2,1,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
Rabble,Rabble,City,Infantry,15,1,4,0,0.5,0,0,0,0,1.2,2,0,10,100,100,100,1,,,,,,,,,
Wyth Palace Guard,WythPalaceGuard,Infantry,Infantry,40,2,3,0,0.8,1,1,2.5,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
Assassins,Assassins,Infantry,Infantry,5,1,10,0,0.3,0.3,1,2.5,0.2,2,,0,10,100,100,100,,stealth I,,,,,,,,
Disciplinary Master,WythlerDisciplinaryMaster,Infantry,Infantry,25,1,4,0,0.5,0.3,0,0,0,1,,0,10,100,100,100,,,,,,,,,,
Charnal Guard,CharnalGuard,Infantry,Infantry,60,2,2,0,0.9,0.3,0,0,0,1,,0,10,100,100,100,,,,,,,,,,
Hushtan Ginetiphracts,Ginetiphracts,Infantry,Infantry,20,1,4,0,0.5,0,0,0,0,1,2,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic Remnants,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Republic Wardens,RepublicWardens,Infantry,Infantry,40,3,3,0,0.8,1,0,0,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Elysia,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Elysian Light Commando Vehicle,ElysiaLCommandoVehicle,Armour,Vehicle,30,4,5,1.5,0.65,1.75,0,0,0.2,4.5,2,0,10,100,100,100,,,,,,,,,,
Elysian Assault APC,ElysianAssaultAPC,Armour,Vehicle,45,3,4,2,0.65,2,0,0,0.2,4.5,2,0,10,100,100,100,,,,,,,,,,
Elysian Oathsworn Squad,ElysianOathswornSquad,Infantry,Infantry,35,3,3,0,0.65,0.5,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Elysian Light Mechs,ElysianLightMechs,Armour,Vehicle,45,3/4,3/2,2/0.5,0.9/0.8,1,0,0,0,2,2,0,10,100,100,100,1,,,,,,,,,
Elysian Jet Infantry,ElysianJetInfantry,Infantry,Infantry,30,2,3,0,0.65,0.5,0,0,0.2,2,2,0,10,100,100,100,,,,,,,,,,
Elysian Recon Infantry,ElysianReconInfantry,Infantry,Infantry,35,1/1,8/4,1/0.3,0.7/0.7,0.3,0,0,0.5,2,2,0,10,100,100,100,,stealth II,,,,,,,,
,,,,,,,,,,,,,,,,,100,100,100,,,,,,,,,,
Yar-Kassy,,,,,,,,,,,,,,,,,100,100,100,,,,,,,,,,
Dervish Assault Tank,YarkassyAssaultTank,Armour,Vehicle,90,1/2,8/3,3/1,0.75/0.8,1,1,1,0.35,4.5,2,0,10,100,100,100,,,,,,,,,,
Desert Raider Squad,YarkassyDesertRaiderSquad,Infantry,Infantry,35,2,2,0,0.5,0.5,0,0,0,0.8,2,0,10,100,100,100,1,,,,,,,,,
Elite Marksmen Squad,YarkassyEliteMarksmen,Infantry,Infantry,18,1,5,0.5,0.95,0,0,0,0.25,1.3,2,0,10,100,100,100,,stealth I,,,,,,,,
Ghar Haclem Ark'venuur Serpents,YarkassySerpents,Infantry,Infantry,25,3,2,0.5,0.45,0,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Arca,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Scum,ArcaScum,City,Infantry,20,2,1,0,0.25,0,0,0,0,1.1,1,0,10,100,100,100,0,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Zami,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Cryo-Clone Squad,ZamiCryoCloneSquad,Infantry,Infantry,25,2,2,0,0.75,0,0,0,0,1.5,2,0,10,100,100,100,0,,,,,,,,,
Immortals Cryo-Clone Squad,ImmortalsCryo-CloneSquad,Infantry,Infantry,35,3,2,0,0.8,0.55,0,0,0,1.5,2,0,10,100,100,100,0,,,,,,,,,
Zami War Tripod,ZamiWarTripod,Armour,Vehicle,100,2/6,4/1,2.5/0,0.8/0.8,2.5,2,1,0,2,2,0,10,100,100,100,,,,,,,,,,
Zami War Strider,ZamiWarStrider,Armour,Vehicle,85,1/7,4/1,2.5/0,0.75/0.75,2,2,1,0,2,2,0,10,100,100,100,,,,,,,,,,
Conscripted Miner Slaves,ConscriptedMinerSlaves,City,Infantry,12,2,3,0,0.45,0,0,0,0,1.2,2,0,10,100,100,100,1,,,,,,,,,
Satyr-9 Varanguard,Satyr-9Varanguard,City,Infantry,40,3,3,0.5,0.9,1,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Krioss Ravager Pack,KriossRavagerPack,Infantry,Infantry,50,5,2,1,0.45,0.75,0,0,1,5,3,0,10,100,100,100,,,,,,,,,,
Snagaa Newborn,SnagaaNewborn,Infantry,Infantry,15,2,1,0,0.3,0,0,0,0,1.5,0,0,10,100,100,100,,,,,,,,,,
Axa Axa,AxaAxa,Infantry,Vehicle,45,4,1,0,0.7,0.5,1,2.5,0,1,0,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Stuntreen,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Headtaker Commando,HeadtakerCommando,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Hareen Cari Immortals,HareenCariImmortals,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Exan,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Clan Warriors,ExanClanWarriors,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Headtakers,ExanHeadtakers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Methaphor,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Republican Guard,MethaphorRepublicanGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Green Guard (Elite Mountain Troops),MethaphorGreenGuard,Infantry,Infantry,40,2,2,0,0.6,0,0,0,0,1,3,0,10,100,100,100,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Noser,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Royal Guard,NoserRoyalGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Stalker Squad,NoserStalkerSquad,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Caer Bannoq,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Realm Hunters,CaerBannoqRealmHunters,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Keepers of Secrets,CaerBannoqKeepers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Paladins,CaerBannoqPaladins,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Seekers,CaerBannoqSeekers,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Vesparus,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Vesparusian Militia,VesparusMilitia,City,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Freekorps Caine,VesparusFreekorps,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Inobria,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Infantry,InobriaInfantry,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Tunnel Fighter,InobriaTunnelFighter,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Sartorius Rax,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Infantry,SartoriusInfantry,Infantry,Infantry,22,1,4,0,0.55,0,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Heavy Infantry,SartoriusHeavyInfantry,Infantry,Infantry,32,2,3,0,0.6,0,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Spice,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Longclaw Pack,SpiceLongclawPack,Infantry,Infantry,16,2,3,0,0.6,0,0,0,0,1.4,2,0,10,100,100,100,1,,,,,,,,,
Tunneler Pack,SpiceTunnelerPack,Infantry,Infantry,20,2,3,0,0.6,0,0,0,0,1.4,2,0,10,100,100,100,1,,,,,,,,,
Healer Pack,SpiceHealerPack,Infantry,Infantry,14,2,3,0,0.6,0,0,0,0,1.4,2,0,10,100,100,100,1,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Amothep,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Pyramidians,Pyramidians,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,
Spyre Guard,SpyreGuard,Infantry,Infantry,20,1,4,0,0.5,0.3,0,0,0,1,2,0,10,100,100,100,1,,,,,,,,,

+ 38
- 278
Assets/GWConquest/Scenes/GalaxyMap.unity View File

@ -16070,42 +16070,6 @@ RectTransform:
m_AnchoredPosition: {x: 68.7, y: -9.3} m_AnchoredPosition: {x: 68.7, y: -9.3}
m_SizeDelta: {x: 455.79993, y: 39.15039} m_SizeDelta: {x: 455.79993, y: 39.15039}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &260143046
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 260143047}
m_Layer: 5
m_Name: MovingFleet
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &260143047
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 260143046}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 1886414993}
m_Father: {fileID: 1481547534}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &266275090 --- !u!1 &266275090
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -31161,6 +31125,7 @@ RectTransform:
- {fileID: 587515776} - {fileID: 587515776}
- {fileID: 1054568953} - {fileID: 1054568953}
- {fileID: 1481547534} - {fileID: 1481547534}
- {fileID: 1679029304}
m_Father: {fileID: 1986334066} m_Father: {fileID: 1986334066}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -31188,6 +31153,7 @@ MonoBehaviour:
DebugUI: {fileID: 587515775} DebugUI: {fileID: 587515775}
PauseMenu: {fileID: 1054568952} PauseMenu: {fileID: 1054568952}
GameUI: {fileID: 1967795785} GameUI: {fileID: 1967795785}
DragDropPlane: {fileID: 1679029304}
MovingFleetsTransform: {fileID: 1481547534} MovingFleetsTransform: {fileID: 1481547534}
doubleClickInterval: 0.2 doubleClickInterval: 0.2
--- !u!1 &494421157 --- !u!1 &494421157
@ -92145,8 +92111,7 @@ RectTransform:
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 260143047}
m_Children: []
m_Father: {fileID: 494226835} m_Father: {fileID: 494226835}
m_RootOrder: 7 m_RootOrder: 7
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -102071,6 +102036,41 @@ MeshFilter:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1679023902} m_GameObject: {fileID: 1679023902}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1 &1679029303
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1679029304}
m_Layer: 5
m_Name: DragDropPlane
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1679029304
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1679029303}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 494226835}
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1001 &1684140558 --- !u!1001 &1684140558
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -117328,246 +117328,6 @@ MeshFilter:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1885138119} m_GameObject: {fileID: 1885138119}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!1001 &1886414992
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 260143047}
m_Modifications:
- target: {fileID: 200793009239835511, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264674992649803, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264674992649803, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264675066306908, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.x
value: -26.999998
objectReference: {fileID: 0}
- target: {fileID: 6934264675173919768, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264675173919768, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264675533803899, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264675533803899, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734670, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_Name
value: FleetIcon
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734670, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_Pivot.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchorMax.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchorMax.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchorMin.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchorMin.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.x
value: 55
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 55
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676128576589, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6934264676128576590, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264676128576590, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676281443874, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676281443875, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264676281443875, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676736199430, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 15
objectReference: {fileID: 0}
- target: {fileID: 6934264676736199430, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 7.5
objectReference: {fileID: 0}
- target: {fileID: 6934264676898299648, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_SizeDelta.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6934264676898299648, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8138893207784313283, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9087990028491932013, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.w
value: 0.7071076
objectReference: {fileID: 0}
- target: {fileID: 9087990028491932013, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalRotation.z
value: -0.707106
objectReference: {fileID: 0}
- target: {fileID: 9087990028491932013, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: -90.00001
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: b4b4aee434157c54cb53399d1578f446, type: 3}
--- !u!224 &1886414993 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 6934264676097734671, guid: b4b4aee434157c54cb53399d1578f446,
type: 3}
m_PrefabInstance: {fileID: 1886414992}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1893307637 --- !u!1 &1893307637
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0


+ 4
- 0
Assets/GWConquest/Scripts/Formation.cs View File

@ -181,6 +181,8 @@ namespace GWConquest
get => MovementState == FormationMovementState.Idle; get => MovementState == FormationMovementState.Idle;
} }
public IInventory FormationInventory;
public void TryMoveToPlanet(Planet planet) public void TryMoveToPlanet(Planet planet)
{ {
if(currentZone.zoneType == ZoneType.Space) if(currentZone.zoneType == ZoneType.Space)
@ -543,6 +545,8 @@ namespace GWConquest
UnitEntities = new EntityList(State, "Units"); UnitEntities = new EntityList(State, "Units");
SubFormationEntities = new EntityList(State, "SubFormations"); SubFormationEntities = new EntityList(State, "SubFormations");
FormationInventory = new CombinedInventory(() => Units.Select(u => u.Inventory));
PathQueue = new ZoneList(State, "PathQueue"); PathQueue = new ZoneList(State, "PathQueue");
AllFormations.Add(this); AllFormations.Add(this);


+ 181
- 20
Assets/GWConquest/Scripts/Inventory.cs View File

@ -1,5 +1,6 @@
using UdpKit; using UdpKit;
using Bolt; using Bolt;
using System;
using System.Linq; using System.Linq;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
@ -9,8 +10,8 @@ namespace GWConquest
[System.Serializable] [System.Serializable]
public struct ItemStack : IIconObject, IProtocolToken public struct ItemStack : IIconObject, IProtocolToken
{ {
public static int MaxStackSize {
get => GameManager.Instance.MaxStackSize;
public static int GetMaxStackSize(string item) {
return GameManager.Instance.MaxStackSize;
} }
public bool IsUnit; public bool IsUnit;
@ -149,8 +150,21 @@ namespace GWConquest
} }
} }
public class Inventory : BoltList<ItemStack, InventoryToken>
public interface IInventory
{ {
int GetItemAmount(string item);
bool AddItem(string item, int amount);
int GetRemainingSpace(string item);
bool RemoveItem(string item, int amount);
}
public class Inventory : BoltList<ItemStack, InventoryToken>, IInventory
{
// Question: Can there be more then one half-full stack for an item type??
public Inventory(IState _state, string _propertyName) : base(_state, _propertyName) { } public Inventory(IState _state, string _propertyName) : base(_state, _propertyName) { }
public int StorageCapacity = int.MaxValue; public int StorageCapacity = int.MaxValue;
@ -165,28 +179,16 @@ namespace GWConquest
return this.Count(stack => !stack.IsUnit && stack.ItemName == item); return this.Count(stack => !stack.IsUnit && stack.ItemName == item);
} }
public bool DoesItemFit(string item, int amount)
{
int currentAmount = GetItemAmount(item);
int currentStacks = GetItemStackAmount(item);
int restAmount = amount - (ItemStack.MaxStackSize * currentStacks - currentAmount);
if(restAmount <= 0)
{
return true;
}
int neededStacks = Mathf.CeilToInt((float) restAmount / ItemStack.MaxStackSize);
return Count + neededStacks <= StorageCapacity;
}
public bool AddItem(string item, int amount) public bool AddItem(string item, int amount)
{ {
if(DoesItemFit(item, amount)) {
if(GetRemainingSpace(item) >= amount) {
int maxStackSize = ItemStack.GetMaxStackSize(item);
for(int i = 0; i < Count; i++) for(int i = 0; i < Count; i++)
{ {
var stack = this[i]; var stack = this[i];
if(!stack.IsUnit && stack.ItemName == item) if(!stack.IsUnit && stack.ItemName == item)
{ {
int remainingRoom = ItemStack.MaxStackSize - stack.Amount;
int remainingRoom = maxStackSize - stack.Amount;
if(remainingRoom >= amount) if(remainingRoom >= amount)
{ {
stack.Amount += amount; stack.Amount += amount;
@ -195,7 +197,7 @@ namespace GWConquest
} }
else { else {
amount -= remainingRoom; amount -= remainingRoom;
stack.Amount = ItemStack.MaxStackSize;
stack.Amount = maxStackSize;
this[i] = stack; this[i] = stack;
} }
@ -204,7 +206,7 @@ namespace GWConquest
while(amount > 0) while(amount > 0)
{ {
int amountToAdd = Mathf.Min(amount, ItemStack.MaxStackSize);
int amountToAdd = Mathf.Min(amount, maxStackSize);
Add(ItemStack.FromItem(item, amountToAdd)); Add(ItemStack.FromItem(item, amountToAdd));
amount -= amountToAdd; amount -= amountToAdd;
} }
@ -216,6 +218,74 @@ namespace GWConquest
} }
} }
public int GetRemainingSpace(string item)
{
int maxStackSize = ItemStack.GetMaxStackSize(item);
int emptyStacks = StorageCapacity - Count;
int currentAmount = GetItemAmount(item);
int currentStacks = GetItemStackAmount(item);
int restAmount = maxStackSize * currentStacks - currentAmount;
return emptyStacks * maxStackSize + restAmount;
}
public bool RemoveItem(string item, int amount)
{
int currentAmount = GetItemAmount(item);
if(amount <= currentAmount)
{
// First iteration: take from partially full stacks only
int amountToRemove = RemoveFromStacks(item, amount, true);
if(amountToRemove > 0)
{
// Second iteration: take also from full stacks
amountToRemove = RemoveFromStacks(item, amountToRemove, false);
}
if(amountToRemove > 0)
{
BoltLog.Error("Inventory Error: Did not remove enough items of type {0} (desired: {1}, left: {2})", item, amount, amountToRemove);
}
return true;
}
else {
return false;
}
}
private int RemoveFromStacks(string item, int amount, bool partialStacksOnly)
{
int maxStackSize = ItemStack.GetMaxStackSize(item);
int amountToRemove = amount;
for(int i = Count -1; i >= 0; i--)
{
var stack = this[i];
if(!stack.IsUnit && stack.ItemName == item && (stack.Amount < maxStackSize || !partialStacksOnly))
{
if(stack.Amount <= amountToRemove)
{
amountToRemove -= stack.Amount;
RemoveAt(i);
}
else {
stack.Amount -= amountToRemove;
this[i] = stack;
amountToRemove = 0;
}
if(amountToRemove <= 0)
{
return 0;
}
}
}
return amountToRemove;
}
public static IEnumerable<ItemStack> AddAllItems(IEnumerable<ItemStack> items) public static IEnumerable<ItemStack> AddAllItems(IEnumerable<ItemStack> items)
{ {
//TODO Unit Items //TODO Unit Items
@ -242,4 +312,95 @@ namespace GWConquest
} }
} }
public class CombinedInventory : IInventory
{
private Func<IEnumerable<IInventory>> InventoryFunc;
public CombinedInventory(Func<IEnumerable<IInventory>> _inventoryFunc)
{
InventoryFunc = _inventoryFunc;
}
public int GetItemAmount(string item)
{
return InventoryFunc().Sum(inv => inv.GetItemAmount(item));
}
public int GetRemainingSpace(string item)
{
return InventoryFunc().Sum(inv => inv.GetRemainingSpace(item));
}
// TODO organize items for maximum space
public bool AddItem(string item, int amount)
{
if(GetRemainingSpace(item) >= amount)
{
int remainingAmount = amount;
foreach(var inv in InventoryFunc())
{
int space = inv.GetRemainingSpace(item);
if(space > 0)
{
if(space >= remainingAmount)
{
return inv.AddItem(item, remainingAmount);
}
else {
inv.AddItem(item, space);
remainingAmount -= space;
}
}
}
BoltLog.Error("Could not add all items to combined inventory: item {0}, amount {1}, left {2}", item, amount, remainingAmount);
return true;
}
else {
return false;
}
}
public bool RemoveItem(string item, int amount)
{
if(GetItemAmount(item) >= amount)
{
int remainingAmount = amount;
foreach(var inv in InventoryFunc())
{
int invAmount = inv.GetItemAmount(item);
if(invAmount > 0)
{
if(invAmount >= remainingAmount)
{
return inv.RemoveItem(item, remainingAmount);
}
else {
inv.RemoveItem(item, invAmount);
remainingAmount -= invAmount;
}
}
}
BoltLog.Error("Could not remove all items from combined inventory: item {0}, amount {1}, left {2}", item, amount, remainingAmount);
return true;
}
else {
return false;
}
}
}
public static class InventoryExtensions
{
public static bool HasItem(this IInventory inventory, string item, int amount)
{
return inventory.GetItemAmount(item) >= amount;
}
public static bool DoesItemFit(this IInventory inventory, string item, int amount)
{
return inventory.GetRemainingSpace(item) >= amount;
}
}
} }

+ 36
- 0
Assets/GWConquest/Scripts/ServerCallbacks.cs View File

@ -106,5 +106,41 @@ namespace GWConquest
var flank = evnt.BattleFlank?.GetComponent<BattleFlank>(); var flank = evnt.BattleFlank?.GetComponent<BattleFlank>();
unit.StartShelling(flank); unit.StartShelling(flank);
} }
public override void OnEvent(MoveItemEvent evnt)
{
IInventory origin = null;
if(evnt.Origin.GetComponent<District>() != null)
{
origin = evnt.Origin.GetComponent<District>().Inventory;
}
else if(evnt.Origin.GetComponent<Formation>() != null) {
origin = evnt.Origin.GetComponent<Formation>().FormationInventory;
}
IInventory target = null;
if(evnt.Target.GetComponent<District>() != null)
{
target = evnt.Target.GetComponent<District>().Inventory;
}
else if(evnt.Target.GetComponent<Formation>() != null) {
target = evnt.Target.GetComponent<Formation>().FormationInventory;
}
if(origin != null && target != null)
{
if(origin.HasItem(evnt.ItemName, evnt.ItemAmount) && target.DoesItemFit(evnt.ItemName, evnt.ItemAmount))
{
origin.RemoveItem(evnt.ItemName, evnt.ItemAmount);
target.AddItem(evnt.ItemName, evnt.ItemAmount);
}
else {
BoltLog.Error("Could not move {0} of item {1} between inventories", evnt.ItemAmount, evnt.ItemName);
}
}
else {
BoltLog.Error("One of the specified inventories is null");
}
}
} }
} }

+ 8
- 4
Assets/GWConquest/Scripts/UI/DragDropElement.cs View File

@ -44,8 +44,7 @@ namespace GWConquest
hasMoved = true; hasMoved = true;
OnDragBegin(); OnDragBegin();
origParent = rectTransform.parent; origParent = rectTransform.parent;
rectTransform.SetParent(rectTransform.GetComponentInParent<Canvas>().transform);
rectTransform.SetAsLastSibling();
rectTransform.SetParent(IngameUI.Instance.DragDropPlane);
} }
} }
@ -58,8 +57,7 @@ namespace GWConquest
{ {
if (OnDragFinished()) if (OnDragFinished())
{ {
rectTransform.SetParent(origParent);
rectTransform.localPosition = origPosition;
ResetToOriginalPosition();
} }
} }
hasMoved = false; hasMoved = false;
@ -70,6 +68,12 @@ namespace GWConquest
} }
} }
public void ResetToOriginalPosition()
{
rectTransform.SetParent(origParent);
rectTransform.localPosition = origPosition;
}
public virtual bool OnDragFinished() public virtual bool OnDragFinished()
{ {


+ 1
- 0
Assets/GWConquest/Scripts/UI/IngameUI.cs View File

@ -21,6 +21,7 @@ namespace GWConquest
public GameObject DebugUI; public GameObject DebugUI;
public GameObject PauseMenu; public GameObject PauseMenu;
public GameObject GameUI; public GameObject GameUI;
public RectTransform DragDropPlane;
public RectTransform MovingFleetsTransform; public RectTransform MovingFleetsTransform;


+ 138
- 0
Assets/GWConquest/Scripts/UI/ItemMoveTooltip.cs View File

@ -0,0 +1,138 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace GWConquest
{
public class ItemMoveTooltip : MonoBehaviour
{
public Image ItemImage;
public InputField AmountField;
private ItemStack MovedItem;
private TransportUIElement Origin;
private TransportUIElement Target;
private TransportUIItemIcon ItemUI;
public void Init(ItemStack _item, TransportUIItemIcon _itemUI, TransportUIElement _origin, TransportUIElement _target)
{
MovedItem = _item;
ItemImage.sprite = MovedItem.Icon;
ItemImage.color = Util.UpdateColorRGB(ItemImage.color, MovedItem.IconColor);
ItemUI = _itemUI;
Origin = _origin;
Target = _target;
int toTransfer = Mathf.Min(GetMaxTransferable(), MovedItem.Amount);
AmountField.text = toTransfer.ToString();
}
void FixedUpdate()
{
if(Input.GetButtonDown("Left Click"))
{
var rt = GetComponent<RectTransform>();
if(!RectTransformUtility.RectangleContainsScreenPoint(rt, Input.mousePosition))
{
Cancel();
}
}
}
void Update()
{
if(!IngameUI.Instance.PlanetView.TransportUI.isActiveAndEnabled)
{
Cancel();
}
}
public void Cancel()
{
ItemUI.Amount.enabled = true;
ItemUI.Icon.enabled = true;
ItemUI.ResetToOriginalPosition();
Destroy(gameObject);
}
public void Confirm()
{
if(int.TryParse(AmountField.text, out int current))
{
int transferable = GetMaxTransferable();
if(current <= transferable)
{
var ev = MoveItemEvent.Create(Bolt.GlobalTargets.OnlyServer);
ev.ItemName = MovedItem.ItemName;
ev.ItemAmount = current;
ev.Origin = Origin.Type == TransportUIElement.ObjectType.District ? Origin.District.entity : Origin.Formation.entity;
ev.Target = Target.Type == TransportUIElement.ObjectType.District ? Target.District.entity : Target.Formation.entity;
ev.Send();
}
else {
BoltLog.Error("Amount {0} of item {1} is not transferable ({2})", current, MovedItem.ItemName, transferable);
}
}
else {
BoltLog.Error("Invalid amount: {0}", AmountField.text);
}
Cancel();
}
public void ClickArrow(int amount)
{
if(int.TryParse(AmountField.text, out int current))
{
AmountField.text = (current + amount).ToString();
OnValueChanged();
}
}
public void OnValueChanged()
{
if(AmountField.text != null && AmountField.text != "")
{
if(int.TryParse(AmountField.text, out int amount))
{
int max = GetMaxTransferable();
if(amount > max)
{
AmountField.text = max.ToString();
}
if(amount < 0)
{
AmountField.text = "0";
}
}
else {
BoltLog.Error("bad string in input field: {0}", AmountField.text);
AmountField.text = "";
}
}
}
public int GetMaxTransferable()
{
int available = Origin.GetInventory().GetItemAmount(MovedItem.ItemName);
int remainingSpace = Target.GetInventory().GetRemainingSpace(MovedItem.ItemName);
return Mathf.Min(available, remainingSpace);
}
}
}

+ 11
- 0
Assets/GWConquest/Scripts/UI/ItemMoveTooltip.cs.meta View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0a59da9e4f26fd4498f026a53accf6c5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

+ 16
- 0
Assets/GWConquest/Scripts/UI/TransportUIElement.cs View File

@ -70,6 +70,21 @@ namespace GWConquest
Arrow.localEulerAngles = new Vector3(0f, 0f, IsExpanded ? -180f : -90f); Arrow.localEulerAngles = new Vector3(0f, 0f, IsExpanded ? -180f : -90f);
} }
public IInventory GetInventory()
{
if(Type == ObjectType.Planet)
{
return null;
}
else if(Type == ObjectType.District)
{
return District.Inventory;
}
else {
return Formation.FormationInventory;
}
}
private IEnumerable<ItemStack> GetAllItems() private IEnumerable<ItemStack> GetAllItems()
{ {
if(Type == ObjectType.Planet) if(Type == ObjectType.Planet)
@ -177,6 +192,7 @@ namespace GWConquest
var itemIconComp = itemIconGO.GetComponent<TransportUIItemIcon>(); var itemIconComp = itemIconGO.GetComponent<TransportUIItemIcon>();
itemIconComp.CanBeDragged = true; itemIconComp.CanBeDragged = true;
itemIconComp.ParentUI = this;
itemIconComp.UpdateDisplay(item); itemIconComp.UpdateDisplay(item);
return itemIconComp; return itemIconComp;


+ 43
- 0
Assets/GWConquest/Scripts/UI/TransportUIItemIcon.cs View File

@ -5,6 +5,8 @@ namespace GWConquest {
public class TransportUIItemIcon : DragDropElement, IUpdatable<ItemStack> { public class TransportUIItemIcon : DragDropElement, IUpdatable<ItemStack> {
public GameObject MoveTooltipPrefab;
public Image Icon; public Image Icon;
public Text Amount; public Text Amount;
@ -14,6 +16,8 @@ namespace GWConquest {
public bool CanBeDragged = false; public bool CanBeDragged = false;
public TransportUIElement ParentUI;
public void UpdateDisplay(ItemStack stack) public void UpdateDisplay(ItemStack stack)
{ {
Stack = stack; Stack = stack;
@ -35,8 +39,47 @@ namespace GWConquest {
public override bool OnDragFinished() public override bool OnDragFinished()
{ {
if(ParentUI != null && ParentUI.Type != TransportUIElement.ObjectType.Planet)
{
var mousePos = Input.mousePosition;
foreach(var ui in FindObjectsOfType<TransportUIElement>())
{
if (ui != ParentUI && RectTransformUtility.RectangleContainsScreenPoint(ui.GetComponent<RectTransform>(), mousePos))
{
if(ui.Type != TransportUIElement.ObjectType.Planet)
{
if(ui.GetInventory().GetRemainingSpace(Stack.ItemName) > 0)
{
var tooltipGO = Instantiate(MoveTooltipPrefab);
tooltipGO.transform.SetParent(IngameUI.Instance.DragDropPlane);
tooltipGO.transform.position = mousePos;
var tooltipComp = tooltipGO.GetComponent<ItemMoveTooltip>();
tooltipComp.Init(Stack, this, ParentUI, ui);
Icon.enabled = false;
Amount.enabled = false;
return false;
}
else {
BoltLog.Info("No remaining space in target inventory!");
}
}
}
}
}
return true; return true;
} }
void FixedUpdate()
{
if(ParentUI != null && !ParentUI.isActiveAndEnabled)
{
Destroy(gameObject);
}
}
} }
} }

+ 21
- 4
Assets/GWConquest/Scripts/UI/UnitInfoPanel.cs View File

@ -58,6 +58,10 @@ namespace GWConquest
[System.NonSerialized] [System.NonSerialized]
public List<TransportUIUnitTypeIcon> FormationUnitsList = new List<TransportUIUnitTypeIcon>(); public List<TransportUIUnitTypeIcon> FormationUnitsList = new List<TransportUIUnitTypeIcon>();
public Image FormationFuelBar;
public Image FormationFoodBar;
public Image FormationSuppliesBar;
public bool IsBattleMenu; public bool IsBattleMenu;
[System.NonSerialized] [System.NonSerialized]
@ -210,19 +214,32 @@ namespace GWConquest
} }
else if(CurrentFormation != null) else if(CurrentFormation != null)
{ {
int totalHitpoints = CurrentFormation.Units.Sum(u => u.Hitpoints);
int maxHitpoints = CurrentFormation.Units.Sum(u => u.Class.Hitpoints);
var formationUnits = CurrentFormation.Units;
int totalHitpoints = formationUnits.Sum(u => u.Hitpoints);
int maxHitpoints = formationUnits.Sum(u => u.Class.Hitpoints);
HealthBar.fillAmount = (float) totalHitpoints / maxHitpoints; HealthBar.fillAmount = (float) totalHitpoints / maxHitpoints;
HealthBarText.text = totalHitpoints.ToString() + "/" + maxHitpoints.ToString(); HealthBarText.text = totalHitpoints.ToString() + "/" + maxHitpoints.ToString();
float maxMorale = CurrentFormation.Units.Sum(u => u.Class.Morale);
float maxMorale = formationUnits.Sum(u => u.Class.Morale);
float moralePct = Mathf.Min(CurrentFormation.Morale/maxMorale, 1f); float moralePct = Mathf.Min(CurrentFormation.Morale/maxMorale, 1f);
MoraleBar.fillAmount = moralePct; MoraleBar.fillAmount = moralePct;
MoraleBarText.text = (moralePct*100).ToString() + "%"; MoraleBarText.text = (moralePct*100).ToString() + "%";
MoraleBar.color = Util.UpdateColorRGB(MoraleBar.color, CurrentFormation.Player.Color); MoraleBar.color = Util.UpdateColorRGB(MoraleBar.color, CurrentFormation.Player.Color);
int currentFuel = formationUnits.Sum(u => u.Fuel);
int maxFuel = formationUnits.Sum(u => u.Class.FuelCapacity);
FormationFuelBar.fillAmount = (float) currentFuel / maxFuel;
int currentFood = formationUnits.Sum(u => u.Food);
int maxFood = formationUnits.Sum(u => u.Class.FoodCapacity);
FormationFoodBar.fillAmount = (float) currentFood / maxFood;
int currentSupplies = formationUnits.Sum(u => u.Supplies);
int maxSupplies = formationUnits.Sum(u => u.Class.SuppliesCapacity);
FormationSuppliesBar.fillAmount = (float) currentSupplies / maxSupplies;
var hero = CurrentFormation.HeroUnit; var hero = CurrentFormation.HeroUnit;
if(hero != null) if(hero != null)
{ {
@ -234,7 +251,7 @@ namespace GWConquest
FormationHeroName.text = "No Leader"; FormationHeroName.text = "No Leader";
} }
var formationUnitList = TransportUIUnitTypeIcon.SumUnitTypes(CurrentFormation.Units);
var formationUnitList = TransportUIUnitTypeIcon.SumUnitTypes(formationUnits);
GWLayout.UpdateGameObjects(FormationUnitsList, formationUnitList, FormationUnitsPrefab, FormationUnitsTransform); GWLayout.UpdateGameObjects(FormationUnitsList, formationUnitList, FormationUnitsPrefab, FormationUnitsTransform);
} }


+ 19
- 0
Assets/GWConquest/Scripts/Unit.cs View File

@ -70,6 +70,21 @@ namespace GWConquest
set => State.Morale = value; set => State.Morale = value;
} }
public int Fuel {
get => State.Fuel;
set => State.Fuel = value;
}
public int Food {
get => State.Food;
set => State.Food = value;
}
public int Supplies {
get => State.Supplies;
set => State.Supplies = value;
}
public Player Player { public Player Player {
get => Formation.Player; get => Formation.Player;
} }
@ -176,6 +191,10 @@ namespace GWConquest
State.AddCallback("UnitClass", () => { State.AddCallback("UnitClass", () => {
Inventory.StorageCapacity = Class.InventorySlots; Inventory.StorageCapacity = Class.InventorySlots;
Equipment.StorageCapacity = Class.EquipmentSlots; Equipment.StorageCapacity = Class.EquipmentSlots;
Fuel = Class.FuelCapacity;
Food = Class.FoodCapacity;
Supplies = Class.SuppliesCapacity;
}); });
if(BoltNetwork.IsServer) if(BoltNetwork.IsServer)


+ 8
- 0
Assets/GWConquest/Scripts/UnitClass.cs View File

@ -101,6 +101,10 @@ namespace GWConquest
unitClass.CreditUpkeep = data.GetFloat("Credit Upkeep"); unitClass.CreditUpkeep = data.GetFloat("Credit Upkeep");
unitClass.FoodUpkeep = data.GetFloat("Food Upkeep"); unitClass.FoodUpkeep = data.GetFloat("Food Upkeep");
unitClass.FuelCapacity = data.GetInt("Fuel Capacity");
unitClass.FoodCapacity = data.GetInt("Food Capacity");
unitClass.SuppliesCapacity = data.GetInt("Supplies Capacity");
if(zoneType == ZoneType.Space) if(zoneType == ZoneType.Space)
{ {
unitClass.FactoryType = FactoryType.Space; unitClass.FactoryType = FactoryType.Space;
@ -321,6 +325,10 @@ namespace GWConquest
public float CreditUpkeep; public float CreditUpkeep;
public float FoodUpkeep; public float FoodUpkeep;
public int FuelCapacity;
public int FoodCapacity;
public int SuppliesCapacity;
public int MinFactoryTier = 1; public int MinFactoryTier = 1;
public FactoryType FactoryType; public FactoryType FactoryType;


BIN
Assets/Photon/PhotonBolt/assemblies/bolt.user.dll View File


BIN
Assets/Photon/PhotonBolt/assemblies/bolt.user.dll.mdb View File


+ 114
- 0
Assets/Photon/PhotonBolt/project.json View File

@ -1092,6 +1092,60 @@
"ExtrapolationMaxFrames": 9, "ExtrapolationMaxFrames": 9,
"SnapMagnitude": 10.0 "SnapMagnitude": 10.0
} }
},
{
"Name": "Supplies",
"Enabled": true,
"Expanded": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler",
"MaxValue": 255
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyStateSettings, bolt.compiler",
"ExtrapolationErrorTolerance": 0.25,
"_ExtrapolationCorrectionFrames": 6,
"ExtrapolationMaxFrames": 9,
"SnapMagnitude": 10.0
}
},
{
"Name": "Fuel",
"Enabled": true,
"Expanded": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler",
"MaxValue": 255
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyStateSettings, bolt.compiler",
"ExtrapolationErrorTolerance": 0.25,
"_ExtrapolationCorrectionFrames": 6,
"ExtrapolationMaxFrames": 9,
"SnapMagnitude": 10.0
}
},
{
"Name": "Food",
"Enabled": true,
"Expanded": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler",
"MaxValue": 255
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyStateSettings, bolt.compiler",
"ExtrapolationErrorTolerance": 0.25,
"_ExtrapolationCorrectionFrames": 6,
"ExtrapolationMaxFrames": 9,
"SnapMagnitude": 10.0
}
} }
], ],
"PacketMaxBits": 512, "PacketMaxBits": 512,
@ -2291,6 +2345,66 @@
"Name": "FormationDemoralizedAnimEvent", "Name": "FormationDemoralizedAnimEvent",
"Guid": "4f198445-9cbe-4d63-ad64-be9598b44eb1", "Guid": "4f198445-9cbe-4d63-ad64-be9598b44eb1",
"Groups": [] "Groups": []
},
{
"$type": "Bolt.Compiler.EventDefinition, bolt.compiler",
"Properties": [
{
"Name": "ItemName",
"Enabled": true,
"Expanded": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeString, bolt.compiler",
"MaxLength": 1
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler"
}
},
{
"Name": "ItemAmount",
"Enabled": true,
"Expanded": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeInteger, bolt.compiler",
"MaxValue": 255
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler"
}
},
{
"Name": "Origin",
"Enabled": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeEntity, bolt.compiler"
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler"
}
},
{
"Name": "Target",
"Enabled": true,
"ReplicationMode": 1,
"Priority": 1,
"PropertyType": {
"$type": "Bolt.Compiler.PropertyTypeEntity, bolt.compiler"
},
"AssetSettings": {
"$type": "Bolt.Compiler.PropertyEventSettings, bolt.compiler"
}
}
],
"Name": "MoveItemEvent",
"Guid": "b6635e37-b7e3-4c6e-92d8-62cf65ff9f67",
"Groups": []
} }
], ],
"ActiveGroup": "Everything" "ActiveGroup": "Everything"

Loading…
Cancel
Save