Commit Graph
54 Commits
Author SHA1 Message Date
1d0404953f Add GridUidChangedEvent and MapUidChangedEvent (#5893)
* Add GridUidChangedEvent and MapUidChangedEvent

* cleanup

* Fix assert

* more fixes

* docs

* record struct

* Use implicit tuple constructor

* stinky review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2025-04-30 18:36:53 +10:00
nikthechampiongrandGitHub 656835e7fa Change EntityRenamedEvents arguments and make it broadcast (#5413) 2024-08-31 11:04:44 +10:00
TayrtahnandGitHub 7319f3a241 Raise an event when an entity's name is changed (#5216) 2024-06-08 10:45:28 +10:00
Leon FriedrichandGitHub 25211e3781 Improve transform & state handling exception tolerance (#5081)
* Improve transform & state exception tolerance

* release notes

* Fix pvs assert

* Fix velocity conservation
2024-04-29 18:42:05 +10:00
Leon FriedrichandGitHub eba58cb893 Remove RobustTree & PVSCollection (#4759)
* Cut down RobustTree

* Better LoD

* Add PvsPriority flag

* Undo cvar name change

* reorganize grafana metrics

* Fix tests

* Fix replays

* Don't try process empty chunks

* Fix move benchmark

* Fix benchmark

* Remove obsolete audio methods

* Moar benchmarks

* Rename EntityData

* A

* B
2023-12-28 09:10:13 +11:00
2733435218 Audio rework unrevert + audio packaging (#4555)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-11-27 22:12:26 +11:00
metalgearslothandGitHub 24b0165ec9 Revert Arch (#4613) 2023-11-27 21:41:01 +11:00
7dce51e2cf Arch PR two electric boogaloo (#4388)
Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-11-23 14:29:37 +11:00
metalgearslothandGitHub 170d192791 Revert audio rework (#4554) 2023-11-07 09:34:09 +11:00
metalgearslothandGitHub d75dbc901f Audio rework (#4421) 2023-10-29 14:58:19 +11:00
metalgearslothandGitHub 3fd731d917 Network entity ids (#4252) 2023-09-11 09:42:55 +10:00
metalgearslothandGitHub cd13cd3cd8 Delete EntityDeletedMessage (#4329) 2023-08-29 05:21:29 +10:00
metalgearslothandGitHub 6cc8fb8aa5 Delete effectsystem (#3702) 2023-01-16 04:45:10 +11:00
metalgearslothandGitHub fb0907a1a4 Remove EntityInitializedMessage (#3657) 2023-01-05 20:00:47 +11:00
metalgearslothandGitHub 5f03465879 Add pause time to pause events (#3570) 2022-12-14 11:56:11 +11:00
Leon FriedrichandGitHub 8bd47cd7f8 Misc lerping changes (#3472) 2022-11-14 21:42:30 +11:00
Leon FriedrichandGitHub 603b88c77a Client entity deletion error tolerance (#3435) 2022-11-06 03:45:28 +11:00
Jacob TongandGitHub adcdb9f736 Clean up audiosystem (#3251) 2022-11-04 09:48:33 +11:00
Leon FriedrichandGitHub 94aeb309b2 Add additional container assert (#3397) 2022-10-29 10:53:29 +11:00
Pieter-Jan BriersandGitHub bf1cc8fd7c Minor performance improvements (#2860) 2022-05-28 15:28:08 +02:00
metalgearslothandGitHub 4a4fb15e06 Add xform comp ref to parent change message (#2709) 2022-04-11 17:01:07 +10:00
Leon FriedrichandGitHub 1ae14c4bfa Add error tolerance to physics map (#2672) 2022-04-01 22:07:27 +11:00
a14c956ccc Nuke EntMapIdChangedMessage (#2621)
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2022-03-26 18:14:56 +01:00
metalgearslothandGitHub 33251222cd EntityLookup as a system (#2573) 2022-03-03 21:17:01 +11:00
de4d255841 Analyzer to enforce classes to be either [Virtual], abstract, or sealed. (#2469)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-02-05 19:31:58 +01:00
Leon FriedrichandGitHub 561699b26e Replace EntityDirtyEvent with C# event. (#2495) 2022-02-05 12:23:51 +11:00
Vera Aguilera PuertoandGitHub a54283e637 ByRefEvent attribute for events. (#2375) 2021-12-27 17:59:32 +01:00
20kdc 5e7d617736 Susser Todd: Robust.Shared, Error Pass 1 2021-12-03 18:40:55 +00:00
Vera Aguilera Puerto c39f6d09eb Lots of manual fixing. More to come. 2021-12-03 17:01:46 +01:00
metalgearslothandGitHub a4ff5d65ec Dirty changes (#2174) 2021-11-02 16:05:45 +11:00
ShadowCommander 2d6eebfae2 Rename GridCoordinates to FallbackCoordinates and move GetFallbackCoordinates to shared 2021-08-28 02:29:47 -07:00
ShadowCommander 5540d643ef Change from MapCoordinates to GridCoordinates 2021-08-12 01:45:07 -07:00
ShadowCommander 76c1d9f97b Change Audio to also use MapCoordinates as a fallback 2021-08-10 20:42:46 -07:00
Pieter-Jan Briers abea3024b4 Raise event when entity paused state changes. 2021-07-02 17:19:34 +02:00
metalgearslothandGitHub 6c44dd9665 RenderingTreeSystem cleanup (#1759)
* RenderingTreeSystem cleanup

10% less bad but 100% still boilerplate

* Slight changies

* Even better

* New shit just got made

* Apply revews
2021-05-20 18:57:29 +10:00
AcruidandGitHub e16732eb7b Network View Bubble (#1629)
* Adds barbones culling.

* Visibility culling and recursive parent ent additions.
DebugEntityNetView improvements.
Visibility moved from session to eyecomponent.

* Multiple viewport support.

* Perf improvements.

* Removed old netbubble system from ServerEntityManager.
Supports old NaN system for entities leaving view.
Supports old SendFullMap optimization for anchored, non-updating Entities.

* Fixes size of netView box.

* Remove empty EntityManager.Update method.
Switching ViewCulling back to PLINQ.
2021-03-29 16:17:34 -07:00
AcruidandGitHub f7e8178736 Added new ComponentEvents system in IEventBus. (#1601)
* Added new ComponentEventBus, combined it with IEventBus.

* Removed all traces of IEntity from ComponentDependencies.
Removed IEntityManager dependency from ComponentManager.

* Added entity create/delete events to IEntityManager.

* ComponentEvents now use EntitySystemMessages instead of their custom ComponentEvent class.

* Component events are now just overloads of entity events.

* Removed obsolete EntitySystemMessage, now everything uses the base EntityEventArgs.

* Add a bool argument for if the message should be broadcast as well as directed.
Fix ordering and init issues of events in EntityManager.

* Changed names from Component/Entity events to Directed/Broadcast.

* Fix bugs and unit tests.
2021-03-09 11:02:24 -08:00
Pieter-Jan Briers d751c0b3ab Revert "Physics (#1602)"
This reverts commit fefcc7cba3.
2021-02-28 18:45:18 +01:00
fefcc7cba3 Physics (#1602)
* Physics worlds

* Paul's a good boy

* Build working

* Ingame and not lagging to hell

* Why didn't you commit ahhhhh

* Hard collisions working

* Solver parity

* Decent broadphase work done

* BroadPhase outline done

* BroadPhase working

* waiting for pvs

* Fix static PVS AABB

* Stop static bodies from awakening

* Optimise a bunch of stuff

* Even more broadphase stuff

* I'm fucking stupid

* Optimise fixture updates

* Collision solver start

* Building

* A is for Argumentative

* Fix contact caching island flags

* Circle shapes actually workeded

* Damping

* DS2 consumables only

* Slightly more stable

* Even slightlier more stablier

* VV your heart out

* Initial joint support

* 90% of joints I just wanted to push as I'd scream if I lost progress

* JOINT PURGATORY

* Joints barely functional lmao

* Okay these joints slightly more functional

* Remove station FrictionJoint

* Also that

* Some Box2D ports

* Cleanup mass

* Edge shape

* Active contacts

* Fix active contacts

* Optimise active contacts even more

* Boxes be stacking

* I would die for smug oh my fucking god

* In which everything is fixed

* Distance joints working LETS GO

* Remove frequency on distancejoint

* Fix some stuff and break joints

* Crashing fixed mehbeh

* ICollideSpecial and more resilience

* auto-clear

* showbb vera

* Slap that TODO in there

* Fix restartround crash

* Random fixes

* Fix fixture networking

* Add intersection method for broadphase

* Fix contacts

* Licenses done

* Optimisations

* Fix wall clips

* Config caching for island

* allocations optimisations

* Optimise casts

* Optimise events queue for physics

* Contact manager optimisations

* Optimise controllers

* Sloth joint or something idk

* Controller graph

* Remove content cvar

* Random cleanup

* Finally remove VirtualController

* Manifold structs again

* Optimise this absolute retardation

* Optimise

* fix license

* Cleanup physics interface

* AHHHHHHHHHHHHH

* Fix collisions again

* snivybus

* Fix potential nasty manifold bug

* Tests go snivy

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-03-01 03:09:36 +11:00
AcruidandGitHub 2183cd7ca1 Massive Namespace Cleanup (#1544)
* Removed the Interfaces folder.
* All objects inside the GameObjects subfolders are now in the GameObjects namespace.
* Added a Resharper DotSettings file to mark the GameObjects subfolders as not providing namespaces.
* Simplified Robust.client.Graphics namespace.
* Automated remove redundant using statements.
2021-02-10 23:27:19 -08:00
Acruid 033d6ffb22 Fixes bug where effects were dying in transit from lag. Resolves #1256. 2021-02-01 19:17:34 -08:00
b8e5b47e7a Use 'new' expression in places where the type is evident for the engine (#1415)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-11-26 00:16:55 +01:00
0a67cecfa5 Replace every usage of GridCoordinates with EntityCoordinates (#1280)
* Added struct skeleton for EntityCoordinates.

* Polish EntityCoordinates, add tests, add EntityCoordinates to Transforms

* Doc cleanup

* Remove useless code

* Return offset 0 when you don't have a parent

* Test for making sure EntityCoordinates for entities without parents have offset 0

* Use parent transform's GridId for GetGridId.

* Adds various methods, checks and tests

* Replace GridCoordinates with EntityCoordinates

* EyeManager.WorldToScreen fix

* Address reviews

* Fix za buildo

* Fix one transform test

* Fix the remaining tests

* Remove duplicate

* Remove another merge duplicate

* Fix property

* Rename most usages of GridCoordinates to EntityCoordinates.

* Add WithEntityId method to EntityCoordinates.

* Fix EntityCoordinates usage in GetEntitiesInRange

* Remove cursed IMapGrid method, change naming.

* Makes GridTileLookupSystem use EntityCoordinates

Co-authored-by: Acruid <shatter66@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <zddm@outlook.es>
2020-09-06 16:09:19 +02:00
664e6a00ee Grid tile lookup system (#1281)
* Grid tile lookup system

* Make grid updates better for lookup

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-09-06 15:43:18 +02:00
6ffe2e1750 Effect entity parenting (#1264)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-29 12:59:18 +02:00
Pieter-Jan Briers b72b0e5984 Use a DynamicTree for sprite finding.
Significantly improves client CPU usage.
2020-06-29 16:18:11 +02:00
Pieter-Jan Briers a40d89dd3e Optimize TransformSystem.
Now keeps a list of actively lerping transforms instead of iterating every transform every tick.

Yeah it doesn't even show up in profiles anymore instead of taking like 8% of CPU time.
2020-06-28 00:41:48 +02:00
Pieter-Jan BriersandGitHub 0d3cd41382 Enable NRTs on Robust.Server (#1118) 2020-06-09 14:18:29 +02:00
Pieter-Jan BriersandGitHub ec0f4b35f7 Enable nullable reference types on Robust.Shared and fix all warnings. (#1109) 2020-06-08 01:13:01 +02:00
Pieter-Jan Briers 2a614e9c3d Squashed commit of the following (PR #1081 + fixes):
commit 46881727ce4107bf61e12cbbdbfa702381debb93
Author: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Date:   Fri Jun 5 23:27:02 2020 +0200

    Fix playing stream storage.

commit 4beef7d66e48c7517ec14f21e0a3ce8db1de57c8
Merge: 6138c00e3 c32f21bea
Author: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
Date:   Fri Jun 5 22:45:11 2020 +0200

    Merge branch 'master' into audio

commit 6138c00e3c
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Fri Jun 5 14:23:52 2020 -0500

    refine audiosystem changes

commit 21f9c389e8
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Mon Jun 1 00:50:49 2020 -0500

    remove unused variable

commit ee0cf99edf
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Fri May 29 00:26:41 2020 -0500

    I THINK that fixed the crash. Not sure exactly what though.

commit 4a2e0b3b18
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Fri May 29 00:22:30 2020 -0500

    Remove bloat.

commit 1cddcac705
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Thu May 28 15:35:32 2020 -0500

    fix everything

commit c45dc8fb9d
Author: FL-OZ <anotherscuffed@gmail.com>
Date:   Thu May 28 01:36:45 2020 -0500

    Add server side sound event stopping.
2020-06-05 23:28:14 +02:00