Zay Es Versions Save

Zay-ES is a Java-based high-performance entity-component-system.

v1.5.0

1 year ago

A maintenance release with some API improvements and some bug fixes.

Change log:

  • Added some trace logging to DefaultEntityData.removeEntity() and DefaultEntityData.removeComponent()
  • Added the PersistentEntityData interface to allow EntityData implementations to implement persistence-specific methods.
  • Modified SqlEntityData to implement the PersistentEntityData interface.
  • Added PersistentEntityData.markPersistentType() for indicating that a component should be persistent even if it doesn't implement the PersistentComponent interface. Sometimes a library component's persistability is not black and white between one codebase and another and requiring interface implementation was too restrictive.
  • Modified the sql ComponentTable class to work with non-public type constructors.
  • Fixed sql ComponentTable to handle components with no fields.
  • Added a proper toString() method to DefaultWatchedEntity.
  • Fixed redundant EntityChange events from being sent if EntityData.removeEntity() is used.

Zay-ES-Net-v1.5.2

1 year ago

A small bug fix release. 1.5.1 and 1.5.2 have been combined because 1.5.1 had some additional debug code in it that wasn't noticed until after publishing.

Change log:

  • Fixed a NPE caused by rare race condition during connection tear-down when active entity sets are still present.
  • Removed some debug code from the release.

v1.4.0

2 years ago

Maintenance release to upgrade to gradle 7.4.2 and setup publishing to maven central.

Change log:

  • Upgraded the build to use gradle 7.4.2
  • Migrated publishing to maven central instead of jcenter

Zay-ES-Net-v1.5.0

2 years ago

Maintenance release to upgrade to gradle 7.4.2 and setup publishing to maven central.

Change log:

  • Upgraded the build to use gradle 7.4.2
  • Migrated publishing to maven central instead of jcenter

v1.3.2

3 years ago

Just a javadoc update.

  • Updated StringIndex javadoc to provide more information.

Zay-ES-Net-v1.4.3

3 years ago

Small patch release including one small but serious bug fix.

Change log:

  • Fixed an NPE in RemoteEntityData (presumably) when an entity set has been closed while messages from the server are still pending.

Zay-ES-Net-v1.4.2

5 years ago

Small patch release including one small but serious bug fix.

Change log:

  • Fixed a bug in RemoteStringIndex where id=0 was being converted to id=-1 as if the item wasn't mapped.

Zay-ES-Net-v1.4.1

5 years ago

Small bug fix release:

  • Refixed the HostedEntityData.getStringInfo() to send back a -1 if the ID doesn't exist so that the client side has the proper information to handle it as a non-cacheable miss. (Previous fix still threw NPEs.)

v1.3.1

5 years ago

Minor bug fix release.

Change log:

  • Fixed MemStringIndex.getStringId(string, false) to return -1 instead of throwing an NPE if the string has no ID.
  • Modified DefaultEntityData.addEntityComponentListener() to throw an IllegalArgumentException for null listeners.

Zay-ES-Net-v1.4.0

5 years ago

Bug fixes and internal improvements including the ability to provide per-client component filtering.

Change log:

  • Fixed HostedEntityData.getStringInfo() to send back a null if the ID doesn't exist for the string rather than sending back -1. A -1 would have been cached but a null won't be.
  • Added EntityDataHostedServer.getHostedEntityData() for setting up connection specific entity stuff from other services.
  • Added support for client-specific ComponentVisibility filters that can be used to limit the clients' views of certain component values, e.g.: based on permissions, local object visibility, etc..
  • Added lots of additional trace logging in support of the above.
  • Fixed HostedEntityData.getEntitySet() to force the next sendUpdates() to make at least one pass through the entity sets. Else some components won't be properly tracked.