OpenArthurianX6: Milestones 2 and 3, Version 0.6 Released
It’s been far too long since the Codex posted any news about Slashing Dragon’s Ultima 6-like RPG engine, the somewhat cumbersome-in-name OpenArthurianX6. You may recall that a couple of years ago, he ran a successful crowdfunding campaign on Indiegogo to help finance its development, and he has been working on it quite steadily since then (in and among various other projects that he has undertaken; Slash keeps busy, to be sure).
Rather than attempt to re-cap all of the news about the project that has been published since last it was mentioned here, however, let’s instead focus on three recent bits of news. The first (and least recent) is this blog post from early August, in which Slash muses on the issue of how to implement a line of sight feature in the engine.
…LOS in Ultima 6 is weird since it seems to be location-based (once you open a door you can see the room inside), but you can see through walls (some times?).
I thought just replicating it for the sake of it didn’t make sense and would bring more complexity for map handling and editing. So instead I went for a full system with opaque tiles, so you just have to define the tile as opaque and the engine takes care of the rest.
The current implementation is a pretty simple raycasting, and a mask drawn over the map. It works almost great except the tweening of the mask moving is not in sync with the camera tweening, which causes some small artifacts in the mask border.
You can see a few screenshots of this line of sight implementation in the blog post proper.
Only a handful of days later, Slash released Milestone 2 of OpenArthurianX6, which brought the version number for the engine up to 0.4. Notable updates made in this release included:
- Use inventory item with the keyboard
- Integrate using a key with the mouse with the main logic
- Add armor
- Display equipped weapon and armor on inventory
- Click on party member to show inventory
- Draggable inventory panel
- Ensure combat turns triggers are done before the mob action. Separate endCombat action.
- Destroy old level when loading a new one, fix an issue with combat end before loading level causing issues with party member positioning.
- Make half of the door objects “fixed”, so you cannot walk thru them even if they change their appearance to open
These are the most interesting changes, it should be noted; you’ll want to hit up the news Slash posted for a more complete changelog.
And then, not a week later, Slash published Milestone 3 of the engine (bringing the version number up to 0.5). Notable changes in this release included:
- Support for multiple height levels per map
- Support multiple layers of tiles per level per map
- Smooth transition between levels using stairs
- Using levers to open and close doors
- Finding hidden objects
- Solo mode, so you can move around with an individual party member.
- Examine items on inventory
- Update pathfinding data when opening and closing doors.
The support for multiple height levels in maps — and, evidently, there’s no limit on the number of levels that can be added — is an exciting prospect; Ultima 6 definitely did not boast that as a feature!
Most recently, Slash has released version 0.6 of the engine, which is primarily focused on fixing bugs that users of Milestone 3 have reported.
If you’d like to give OpenArthurianX6 a try, you can do so online at this link.