Commit graph Aetheria/Assets/Scripts/ServerShared/Entity.cs
Author SHA1 Message Date
Reinier Vens
f643f6cc8a New Inventory System + Overhaul
Removed universal GameContext references
Refactored GameContext: It's now only responsible for item management. As such it's now called ItemManager
GlobalData is gone, relevant settings are distributed amongst specialized settings classes
Entities are no longer database entries, references to them are now direct - Zone is reponsible for storing them in ZonePacks
Controller subtypes are now generic classes, class argument is task type
Inventory is now a 2D grid instead of a list
Entity temperature is now a 2D grid instead of a number
Item sizes are now arbitrary shapes instead of a number
Hardpoints are now arbitrary shapes instead
Equipped items have their own temperatures
Map view now displays sunlight colors
Integrated Allegorithmic Substance Plugin
Imported Djinni ship and assigned Substance materials
Removed Node Editor framework (might come back later but needs work to integrate with behavior system)
2020-12-10 23:20:38 +00:00
Reinier Vens
1f90d3639a Asteroids & Refactoring
We have proper belts that hug the Grid, reactive properties for planet instance data, and more!
2020-12-01 00:16:11 +00:00
Reinier Vens
d12d7c5c45 Initial ARPG Port
ARPG scene assets from old project are now correctly visualizing sectors generated by ZoneGenerator and updated by GameContext
2020-11-27 22:47:33 +00:00
hyperion51
1e2b474fc1 Various Fixes
Newly created drones now register their origin colony correctly
Hauling behavior fixed for multiple items
Buttons can't be dragged unless explicitly enabled
Inspecting a colony with lots of compound commodities no longer sets your computer on fire
2020-07-03 01:33:42 +01:00
hyperion51
991d411c91 Hauling Task
Added a control module which enables drones to haul items from colony to colony
Added confirmation dialog for actions which require confirmation, can have fields added to it just like a PropertiesPanel
Moving items between inventories now displays confirmation dialog
2020-06-12 01:57:15 +01:00
hyperion51
a901a8e829 Ship Building & Drydock
Made it possible to turn new hulls into drones which can then be outfitted and activated for service
Missing blueprint ingredients no longer crash the game and gracefully log what's broken
Loadout cargo is now stored entirely separate from gear
2020-06-11 02:55:11 +01:00
hyperion51
7b3c0cad64 Child Inventory Drag & Drop
Added child selection and child inventory panel to colony tab, and implemented drag and drop functionality between parent and child inventories
2020-06-10 02:45:10 +01:00
hyperion51
70100a48ef Population Personality Property Production Performance
Personality now affects production quality
You can now assign population points to infrastructure
Production influences personality
Automated production has a quality variable, imitating population affinity
New properties panel field type for incrementing/decrementing integers
2020-06-08 01:01:33 +01:00
hyperion51
39ce6809c0 Inventory Events
Added an event system allowing the UI to subscribe to changes in entity cargo, hardpoints or on specific items
Fixed bugs in colony tab caused by recent refactoring
2020-06-06 03:21:03 +01:00
hyperion51
43f33546a3 Inventory Refactoring
Massively refactored everything related to entity inventory management
We are no longer recalculating mass by iterating over the entire inventory any time anything changes, for example
Gear is explicitly associated with hardpoints in the entity code
This did introduce some bugs, will clean those up tomorrow
2020-06-05 04:16:33 +01:00
hyperion51
b0d7fa4904 Properties Panel & Load Testing
Properties panel elements now have dynamic layout
Added console command to spawn lots of entities for load testing
2020-06-04 01:36:55 +01:00
hyperion51
4eb83acb34 Infrastructure and Production
Added the ability to directly install blueprints onto hardpoints in the colony tab
Added the ability to customize production of factories
This stuff is still kinda buggy
2020-06-02 07:01:03 +01:00
hyperion51
a99b4e82f3 Colony Tab Interface
Properties panel supports read/write properties
Colony tab is now populated with colony data when a colony is selected
2020-06-01 03:11:04 +01:00
hyperion51
d78ad49762 Survey Controller & Drone Feedback
Implemented task and control module for surveying resources
Implemented behavior for resource scanner
Resources aren't shown until they have been surveyed
Entities can now display messages, used to provide drone state feedback
Orbital entities now provide correct velocity, improving drone docking precision
2020-05-29 23:06:35 +01:00
hyperion51
399b933a38 Mining
New Mining Controller Behavior and Mining Tool Behavior, tweaked a bunch of asteroid related stuff
2020-05-28 04:50:40 +01:00
hyperion51
139c593ccd Towing
Created control module abstraction, vastly simplifying current and future control module code
Created context menu option for creating towing tasks
2020-05-27 02:23:25 +01:00
hyperion51
698263ce63 Entity Properties & Thermal Regulation
Entities such as colonies and ships can now be clicked on to reveal their properties or context menus
Orbital Colony loadout now has a new item (thermostatic heater) which itself has a new behavior type (Thermotoggle) allowing it to regulate its temperature for more agreeable living conditions
Fixed stat modifiers for hull stats (e.g. Hull Expansion)
Widened property label in DB inspector
2020-05-26 01:12:06 +01:00
hyperion51
110ff883b8 Entity Spawning & Rendering
Entity rendering now fully supports dynamic entities from game context
Entity children now displayed underneath icon
GameContext can spawn entities by loadout
Selected corporation's initial fleet is spawned in parent corp's home sector
Properties panel API is now unified with context menu API
Properties panel labels now update dynamically
2020-05-25 03:05:30 +01:00
hyperion51
61072de924 Mega Placement
Megas now have unique placement algorithms for their home sectors
PerformanceStats can be marked as simple to hide heat and durability
PerformanceStats automatically hide exponents when min and max are the same
Some behaviors now have options to spread their effects over time
2020-05-21 01:53:06 +01:00
hyperion51
3ffd88ade5 Visual Behavior Sorting
Behaviors in DB Inspector now visibly sort according to their execution order
2020-05-13 22:35:56 +01:00
hyperion51
8cd4ea3dc5 Massive Item Behavior Refactoring
Item behaviors are now separated into more granular units, allowing designers to create more interesting items by combining behaviors
2020-05-12 01:42:13 +01:00
hyperion51
fc94531566 Behavior Canceling & Grouping
Behaviors are now grouped, behaviors within a group can cancel execution of the rest of the group
2020-05-11 01:17:10 +01:00
hyperion51
ab8aa5fb9a Control Modules & Job System
Agent behaviors are no longer hard coded but instead created by equippable control modules
Game Context has a job system which assigns appropriate tasks to drone control modules
2020-05-07 03:53:54 +01:00
hyperion51
6aeb2ae280 Entity Persistence Refactoring
Entities refactored to enable robust persistence
Entities detect stale data references and reload behaviors
2020-05-06 04:56:36 +01:00
hyperion51
4f29bf24d0 Refactored Ghost Entities
Game Context was creating an empty OrbitalEntity for every planet; this was an ugly hack so I refactored it, as well as refactoring some object references to GUIDs as they should be
2020-05-04 00:07:36 +01:00
hyperion51
8986575c59 Factory Changes
Factory now has the ability to persist its state
Added exponents to control speed/quality tradeoff and quality randomness
2020-04-30 02:54:31 +01:00
hyperion51
8d1b7bed28 Missing Database Reference Hotfix
Database inspector was crashing when selecting a blueprint with missing ingredients
2020-04-29 23:36:00 +01:00
hyperion51
75eb534983 Added Console
Debug commands can now be executed using an in-game console
2020-04-28 01:50:50 +01:00
hyperion51
b589a6422c Ship Locomotion & Tech Tree Panel
Ship locomotion now accounts for tangential velocity, slows down properly with terminal phase separated into velocity matching behavior
Tech tree properties panel visualizes parents and children correctly
2020-04-25 00:01:13 +01:00
hyperion51
af88788e4f Local AI Testing & Interactive Tech Tab
Refactored game loop to allow full local testing
Added AI controller abstractions
Added ability to save database to local copy for offline testing
Tech Tab is now interactive, has properties panel
2020-04-23 03:31:17 +01:00
hyperion51
d8ff1e2289 Stat Effects and Tech Tree Improvements
Tech tree layout is now correct thanks to MSAGL
Blueprint stat effects can now target item stats
Durability is now a PerformanceStat
2020-04-16 03:08:18 +01:00
hyperion51
7cd24147ae Behavior Refactoring
Behaviors and PerformanceStats are no longer associated solely with Ships, instead there's a generic Entity class which will also be used for stations and turrets.
2020-04-09 10:33:16 +01:00