One of the major pains with GMS was working on the user interface. In the past, I would have to recompile the texture page and game (a process that could take up to a minute) whenever one of the ingame sprites was edited, modified, or added. Even when I was purely working with code this would still be 15-20 seconds or so between every change made and previewing the UI. Also any scaling had to be hard-coded, most of the buttons were custom rectangle intersection code, etc. etc. etc.
Unity makes working on UI considerably easier. The main helpful part is the fact that the UI updates in the preview in real-time, which allows me to make a modification and see how it will appear ingame right away. Panels and parts of the UI can also be adjusted within the editor during-runtime, if I so like, which is amazing.

The UI for editing our UI. Big improvement from GMS.

A WIP, ingame screenshot of the new character inspect. Not final.
We've had quite a number of reports and complaints about resolution issues. Our game was set to natively be 1920x1080, and the entire screen shrunk down to fit the user's monitor while playing. There was actually a bit of code in place to try and fit different monitor sizes (most notably, the bottom bar with the radial buttons scaled to screen size), but very little of the game UI had this implemented. With Unity this will no longer be a concern. Every UI sprite/panel/widget/etc. can have an anchor preset to different parts of the screen, with an offset. In short, I can mount parts of the UI to specific parts of the screen, such as the bottom left corner or somewhere from the middle. With different screen sizes the UI bit will gracefully shift to account for that. With a little bit of clever panning, and auto-content fitters, and so on, the new UI and text will be able to scrunch and be read on nearly any monitor size. Much like the immediate live preview, this is a very handy feature which makes things considerably easier.

An early in-game screenshot of the WIP inventory, at 1920x1080. Not final.

An ingame screenshot, with the same exact parameters, but being ran at 1080 x 720.
You may have noticed sliders in those two screenshots. Sliders in Unity are trivially easy, compared to hard-coding the damn things myself. We're going to have a lot more scrolling content, which is controllable by click and drag, mouse wheel, and keyboard shortcuts.

The most recent version of the WIP inventory. Still has a bit more to go, not (you know it-) final.
Also of note that you can not click through the UI and hit multiple things. A mouse click in Unity essentially does a Raycast at the UI, an invisible shot, and only hits the top-most element that it encounters. Gone will be clicking on one thing and having several UI and overmap things going off at once. Of less convenience, but very neat, buttons automatically have a pretty little hover color-shift and click color-shift, so things look better in general.
I've been going ham on the various UI bits in collaboration with Unyin, since we want to make sure the new UI is flawless and performs perfectly for all screen sizes. I've been poking at other bits of the game and running tests, naturally, but UI is the instrument in which the player interacts with the game, and I want to get it right this time.
Next status update (in perhaps a week or two) will be going over more nerd-esque dialogue data storage methods, our new dialogue system, and the parser that I've made.
Here's the current status of the various parts of the game- though do note that this doesn't include any 'porting old character/dialogue/dungeon content' over, only the back-end systems for them.
Bottom Bar (dungeon and territory)
====Partially layed out
Character / Enemy Stats
==== Partially completed
Dungeons
==== Rooms half completed
==== Encounters partially completed
==== Transition to battle partially completed
Inventory
==== Half completed
Items
==== Partially completed
Abilities
==== Partially completed
Character Inspect
==== Partially figured out
Spells/Abilities Screen
==== Partially completed
Main Menu
==== Placeholder semi functional
Save/Load
Top Bar (resources and such)
Overmap Navigation
==== Camera movement completed
Territories
Dialogue
==== Data storage completed
==== Parser half completed
==== Display completed
Siege Stuff
==== Partially figured out
Battles
==== Partially layed out
Last, but not least, here's a little preview of Unyin screwing around and learning Unity. I'm thinking we'll save Dungeon stuff for Update 3, once it's more complete. We'll have to wait and see.

Unyin's brain exploding as he realizes we now have three dimensions.
As always, thanks for your continued support!
Chivalric Games
2019-02-07 01:02:03 +0000 UTC