February & March 2022: User Interface Shenanigans, Part 2 - Physics Boogaloo
Hey hey! Kept ya waitin’, huh?
It’s been awhile since we last talked, so I’m going to fill you in on everything we’ve been working on since February and why we skipped our blog post too. I hope you’ve all been doing great and staying safe out there and thanks for coming to check out our update!
Without further adieu, lets get into it, friends!
SDCUI: NNGINE-L’s User Interface & Experience
So in January, I gave some news on how we’ve been developing our user interface system. I’ve continued working on that, further polishing it and giving it an insane amount of customization options. When I wrote in January that it was one of the most powerful systems I’ve ever made - I wasn’t joking! And now it’s become even more powerful.
This UI system that I call SDCUI has advanced even more since we last spoke. A lot of it is under the hood upgrades, such as giving widgets “viewports” and improving the input handling, but I won’t get too much into that lest you guys get bored of my rambling. The main thing you need to know is that it’s heavily customizable and very robust, with an emphasis on trying to give it a lot of smoothness and satisfying animations and sound (of course my success on that front is up to you to decide, feel free to send us feedback on Twitter)!
SDCUI is an amalgamation of every UI system I’ve created or worked on; from the old systems used in We Shall Wake, to the system I made called Clear for generalized UIs for programs, to open source projects I’ve worked on like LWJGUI - SDCUI combines elements and philosophies from all of these to make a very robust UI system that will make creating UIs in Robot Farm easier than ever.
SDCUI’s effect on modding
You may ask yourself, “Why is he spending so much time on his UI framework?” The reason is that with how heavily customizable it is, I hope to expose some of it via our modding API in Lua at some point. That way, mods can be even more complex and allow for custom menus! This won’t be in the game at launch, but we’re going to be keeping in eye on the interest in Robot Farm’s modding and what players are doing with it when the game is out.
So what I’m doing here is trying to make the engine as robust as possible so that it can support a variety of features. A major mistake that I’ve made with past versions of Robot Farm is that I haven’t future proofed NNGINE enough, so getting the actual game engine right the first time is very important for a game you intend to support for a long time after release. The foundation needs to be as close to perfect as possible to ensure that not only bugfixes are easy, but also feature creation and additions.
Robot Farm UI look, feel, and mockups
One thing we did in the past that was questionable, was that I’d write a UI framework, but mostly “wing” the design of the ingame menus of Robot Farm. However now, we’re actually trying to plan things ahead and spend some time exchanging ideas so that they can be better than ever. For Robot Farm’s new UI, we’ve actually made various basic mockups and color designs for the game. The coloring/theme of the UI video above is the result of us experimenting with mockups:
As you can see, we haven’t quite perfectly nailed the look we’re going for yet, but we’re getting closer. You’ll also notice the menu design of our test program is very simple - no need to worry about that. That program is simply a basic UI test designed to test our various widgets and ensure correct operation.
As you can see in the mockup, we’re going for a sort of beige approach to our UI. The idea is to give our menus a sort of naturalistic UI approach, while also evoking the imagery of older computers. Robot Farm is very much a game about the marriage of machines and nature (it’s in the name!), so we want this to come out in our UI design.
For example, on the “Character Name” tab, you’ll see an image behind it of “branches”/”plant veins”. We’ll be hopefully adding this sort of imagery throughout the UI, and we’re hoping to also include some cool effects like plants “growing over” menus when you open them.
UI is an important aspect of a game to me and can give it a lot of character. While the menu is still somewhat minimalist (a cost saving measure), I do want to do my best to try and ensure it’s not just a minimalistic UI.
Please wish us luck as we continue to work on our UI/UX! Feedback on twitter or via our contact form on this website is always welcome.
Robot Farm physics/collision handling
Up next, we’ll be discussing the WIP physics/collision handling we’re making for the game.
NNGINE-L doesn’t have a physics solution, so this was one of our top priorities for what to tackle next after the general graphics and tools were assembled. We decided that while I would work on the UI API, our new programmer on handling the physics. This works out well, because we’re both able to put our full attention into both facets and neither of us have to juggle anything! So far, so smooth.
Here is some old footage of our initial tests:
As you can see here, this is some basic collision handling for basic player movement. We’re going to restrict movement to your current elevation, where traversing elevations will be handled by “slopes,” or as it will be in many cases, staircases. Robot Farm is a jRPG at its core, so it won’t have any crazy movement options, unlike some of our past projects like We Shall Wake.
However, we have added programming for moving smoothly between elevations:
The current plan is that while walking by foot, you’ll be limited to the current elevation and need slopes - but Robot Farm also has different movement options such as the Hover-Bike, which we may give the ability to hop over blocks.
Of course, this is all open to tweaking and we’ll just have to see how it turns out once I get to polishing and refining these gameplay elements.
As for how the physics is handled from a developer/modders perspective, we’re trying to make the system as automatic as possible when it comes to building the collision models. We want it to be as plug-and-play as possible to keep things simple not only for us, but for you as well. Of course the sort of systems take time and polish, so we’re taking it slow and making sure that it’s done right.
That’s really all we have to report on the physics at the moment - but it’s getting close to being ready to start laying gameplay on top of. So stay tuned!
Why our blog post was delayed:
I’m sorry that we weren’t able to publish a blog post last month. As I mentioned on our Twitter, we have some members on our team who were affected by the Ukraine crisis - and while I won’t go into details there for privacy reasons, I will say that I felt we needed to give them to process and handle their respective situations. As such, I didn’t feel comfortable nagging them about their progress for the purposes of compiling a blog post. I won’t get too much into it, since like I said, we’re a private bunch, but that is the basic summary.
NOKORIWARE is fortunate to have team members from all over the world, with differing perspectives and viewpoints. This is the soul of our company, and what I believe is one of our greatest strengths. However, this also means that they are all going through their own things, and we must all band together to support each other in times like this. The team’s well-being will always come first.
So what’re you guys doing next?
I finished up the core SDCUI architecture earlier this week. So right now I’m shifting a bit of my focus to getting some legal matters finished up so that it’s off my plate. With that out of the way, I’ll begin building some UI into our World Editor tools while I await the physics to get ready. I’m also awaiting some final finish touches from our graphics programmer as well for the UI.
There is a massive to-do list for Robot Farm, and I definitely have my hands full. I’ll take it day by day and figure out what to prioritize over the coming days/weeks - and then I’ll report back next month with what we’ve been developing.
Some ramblin’ and meanderin’
So that’s the end of the development side of the blog post for now. I figured I’d take a moment and just sort of “check in” with everyone reading this. I’ve mentioned before that my health situation can sometimes affect development progress - but I’m happy to say that I finally got an appointment with a larger and better hospital system in my area. I’ll be heading out that way mid-April, and I’ll hopefully start getting some good answers. Which is great! Since best case scenario, if I get fixed up, I can really start getting more done.
Things are tough right now, but we’re going to do as we have always done and keep giving it our best. We hope you’ll see this big adventure through with us, and we’ll show you what we’ve got!
I want to say this though - there are people out there that play games as a way to escape this world for awhile and get lost in another one. I’m one of those people. In the roughest times in my life, I’ve been able to boot up a game and forget everything. Video games can act as a doorway to a place where you can express yourself and enjoy an adventure in a world that’s beautiful and magical; you don’t have to worry about financial struggles, illness, or the other harsh realities that life can bring. And while I’m not saying that you should run from your problems, it is sometimes nice to just take a break to stop and smell the flowers.
So what I’m trying to say is, hang in there, keep your chin up, and you show us what you’ve got too.
From one outcast to potentially another, let’s do some great things.
♥ NOKORIWARE
Stay updated!
Check these out too: