(Admin Only) Remade All Game Editors in ImGui
Nin Online has always came with an integrated suite of game editors that allow on-the-fly changes to data such as Maps, Events, NPCs, Items, Jutsu etc. These are powerful tools that allow us to add content to the game quickly. Since 2013, we were using tools built in WinForms, which is a dated technology that is no longer well supported by Microsoft and is not cross-platform. I've remade all our in-game editors in ImGui, the same UI system that powers all our in-game user interfaces.
Just a few months ago, Nin Online contained the following UI systems, each coming with a little bit of deadweight to performance... Robin's UI system, Eclipse Origin's UI System, WinForms, WolfUI1, WolfUI2, ImGui. As of today, Nin Online only has ImGui.
This change will allow us to quickly add on features that are UI intensive features (eg. Guilds, Auctions) much easier in the future. This also cleans up our code base immensely. This also brings us closer to a Mac & Linux native release!
In order to achieve this, I had to remake the following editors while retaining, and in a lot of cases, improving on their functionality.
This is an example of a new Editor!
Hopefully this paints a picture of how much work was involved in doing this months long project. While it may not directly impact player's gameplay, it is important that we have the best tools to continue to create content for Nin Online.
I'm posting this also as a keepsake for the future to look back at these tools that me and a lot of developers for Nin Online have painstakingly worked with and upkept for the past 10 years. Even before that, these editors have had a long history dating back to the days of Mirage Source and Eclipse Origin (the engine Nin Online was originally built with).
Another cool thing about Nin Online's new editors (for devs) is that it all takes place within the game client now. So it can all be used in fullscreen mode without taking the players to new windows on their desktop.
The new editors are not only cleaner, but they are a lot faster and snappier. Here's a video showcasing our new suite of editors!
Once again, this is probably not the update you want right now. But it's the update we need to keep things going.
Besides the new editors, Nin Online is now also 100% free of Visual Basic code. Despite us being in C# programming language for the last few years, we've never been able to fully rid ourselves to Visual Basic code. Converting a full game over to a new programming language is a lot of work. Especially when Nin was as ancient a codebase as it was. We've now moved out of compatibility mode and Nin Online's source code is 100% that of a modern game.
I don't know how else to express how much work this took and how much this is going to improve our development going forward.
This is an example of one of many commits of me just deleting thousands of lines of code and making Nin Online's codebase way smaller and cleaner.
From the same time last month, we had 146456 lines of code in Nin Online's (client) codebase. Today, we have 90644. That's an almost 40% reduction in code.
This is a software called Gource that visualizes project codebases. This is what our source code for the client looked like just a few months ago, compared to now.