Releases: Net5F/Repose
1.2.1
Amalgam Engine 1.2 Release Notes
Live Lua scripting, Interactions, Behaviors (AI, etc)
Non-client entities now can accept an "initialization script": a Lua script that gets ran when they're constructed.
The init script interface features Interactions (things that happen when you click on the entity, e.g. "Examine") and Behaviors (things that happen automatically, e.g. AI).
Lua bindings are mostly left up to the project, but should follow the concepts of "Interactions" and "Behaviors".
Automatic Entity Component Networking
In C++, there are now two lists of component types: ReplicatedComponentTypes, and ObservedComponentTypes.
Adding types to these lists cause them to be automatically networked with clients, meaning it's now trivially easy to add new components. There's a slight performance penalty to using this path, so performance-sensitive systems such as movement will still handle their components manually.
Behind-the-scenes Improvements
- Refactored movement for another large performance boost. We now can easily support 200 entities in 1 area, moving at 4 inputs/second. We can probably go even higher, I haven't tried yet.
- Refactored entity handling to support non-client entities (this update is our first time dealing with any entities that don't belong to a client).
- Added messages to handle changing an entity's name and sprite, with project hooks for allowing/rejecting the change. This lets a project's build mode send already-hooked-up messages for the entity data that it's likely to support changing in the UI.
1.1.1
Amalgam Engine 1.1 Release Notes
Bugfixes
- Fixed an issue where old tiles weren't being cleared properly by the client.
- Fixed an issue where, if a NW fill overlapped a full fill, the client would render the NW fill on top.
1.1.0
Amalgam Engine 1.1 Release Notes
New Sprite Editor Workflow
To import your art for use in The Amalgam Engine:
- Open the Sprite Editor and import your sprite sheet.
- Draw bounding boxes on your sprites.
- Add your sprites to a sprite set.
Improved Build Mode
Build mode has new and improved tools:
- An easy to use "Remove" tool.
- A context-aware "Wall" tool.
- Simple tools for Floors, Floor Coverings, and Objects.
Behind-the-scenes Improvements
- (AUI) Refactored the Image widget to be really easy to use.
- (AUI) Added nine slice support to Image widget.
- (AUI) Big refactor to support widget clipping.
- (AUI) Added smooth-scrolling list widget.
- (AUI) Added collapsible container widget.
- Refactored SpriteDataBase and SpriteData to support sprite sets.
- Updated SpriteData.json format to support sprite sets.
- Refactored TileMapBase and TileMap to support sprite sets.
- Improved TileMapBase's interface, taking advantage of sprite sets (it's now really nice to use).
- Refactored tile map update messages to be closer to TileMapBase's interface.
- Added Ray concept and Ray/BoundingBox intersection.
- Added WorldObjectLocator, which lets the UI cast a ray from the mouse and get the intersected world objects (tile layers, entities).
Repose 1.0.1
To play, download the Client file for your platform. It's already set up to connect to a server ran by Net_.