* ComponentNames are not sent over the network when components are created.
* Removed ComponentStates array from EntityState, now the state is stored directly inside the CompChange struct.
* Remove the unnecessary NetID property from ComponentState.
* Remove Component.NetworkSynchronizeExistence.
* Change GetNetComponents to return both the component and the component NetId.
* Remove public usages of the Component.NetID property.
* Adds the NetIDAttribute that can be applied to components.
* Removed Component.NetID.
* Revert changes to GetComponentState and how prediction works.
* Adds component netID automatic generation.
* Modifies ClientConsoleHost so that commands can be called before Initialize().
* Completely remove static NetIds.
* Renamed NetIDAttribute to NetworkedComponentAttribute.
* Fixing unit tests.
* 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.
* 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.
* implements shared string dictionary and handshake from net-code-2
* fix unit test
switch to szr sawmill
* try to silence some warnings around ZipEntry
* rebase and use system zip instead of icsharplib
fix rebase artifacts
* Update Robust.Shared/Interfaces/GameObjects/IComponentFactory.cs
* Update Robust.Shared/Serialization/RobustSerializer.MappedStringSerializer.cs
* Update Robust.Shared/Serialization/RobustSerializer.MappedStringSerializer.cs
* Apply suggestions from code review
* Apply suggestions from code review
* Update Robust.Shared/Serialization/RobustSerializer.cs
* since no longer gathering from paths, make string splitting more robust
* make string gathering ignore strings under 4 chars long
make string gathering yet more robust
* add limit to size of mapped strings
* add more string data to feed into shared string dictionary from YAML files
add JSON importer but don't parse RSI metadata yet
fix typo that breaks nulls in MappedStringSerializer
minor refactoring
make string splitting more robust
add WriteUnsignedInt / ReadUnsignedInt for validating WriteCompressedUnsignedInt / ReadCompressedUnsignedInt aren't bogus
* comment out some log statements
* minor refactor, reorder logging
add null check due to smart typing NRT checks
* Add doc comments, readability improvements to MappedStringSerializer
The protocol, handshake, and internal logic are now more documented.
The main area that could still be improved is the documentation of how
the cache system works, but the code is readable enough for now that it
isn't immediately necessary.
* add documentation, organization
* update some more doc comments
* add flows to doc comment for NetworkInitialize
* more documentation and organization
* more docs
* instead of retrieving INetManager by IoC, assign when NetworkInitialize is invoked
* "document" the regex
* Update Robust.Shared/Network/NetManager.cs
* add missing check for LockMappedStrings
* Update Robust.Shared/Serialization/RobustSerializer.MappedStringSerializer.cs
Co-authored-by: ComicIronic <comicironic@gmail.com>
* change to warning instead of throw for unlocked string mapping
Co-authored-by: ComicIronic <comicironic@gmail.com>
* Project file refactor
Move all the .csproj files to the new .NET Core style.
This doesn't make any difference for compiling for Framework,
but it does reduce a ton of useless boilerplate.
As an extension of this, killed a bunch of uncompiled & unmaintained .cs files.
Compiling for release (to profile) works now.
Removed AnyCPU targets from the solution file.
* Fix compiler warnings.
RobustToolbox projects should be named Robust.*
This PR changes the RobustToolbox projects from SS14.* to Robust.*
Updates SS14.* prefixes/namespaces to Robust.*
Updates SpaceStation14.sln to RobustToolbox.sln
Updates MSBUILD/SS14.* to MSBUILD/Robust.*
Updates CSProject and MSBuild references for the above
Updates git_helper.py
Removes Runserver and Runclient as they are unusable