NokiMo
shibagani48
shibagani48

patreon


Weekly report May 3/5, 2025

Hello everyone!
 Thank you as always for your support.
Let's take a look at this week's progress!

Demo Update

The battle scene has been restored.

download it from here. The new password is "th243rLUBRAKFTR".

Bug Fixes

Reported by: lucky

Reported by: yeayea

Refactoring Defeat (Again)

This week, I tried once again to refactor with the goal of implementing Onion Architecture.
However, I realized I had not fully understood it. For example, domain and application layers need to consist of pure C# classes, so the entry point for game flow must be in the presentation layer.

The idea is to completely separate Unity’s MonoBehaviour classes from pure classes, but I started programming with Unity, so I only now realized I didn’t understand the basics of using pure classes.
With MonoBehaviours, you don’t need to instantiate them yourself—they run automatically if attached to objects in the hierarchy. They can execute independently, even without being called from other classes.
In contrast, pure class instances must be created and controlled entirely in code.
To use one, another class must instantiate it, and that class itself must be instantiated elsewhere, forming a long dependency chain.
Because pure classes can’t use MonoBehaviour, interfaces must be created for each connection point.
I only noticed how complex and massive this task would be after starting. As a result, I tinkered with MonoBehaviours here and there, breaking all the scripts beyond repair.

Fortunately, since I’d been regularly backing up to GitHub after the last data loss incident, I was able to roll back to the version before refactoring started.
Still, the attempt failed again.
The reason for this failure was my lack of knowledge about separating and rebuilding pure classes, and my underestimation of the workload.

As a more realistic approach going forward, I plan to separate the existing God classes without forcibly converting them to pure ones, keeping them as MonoBehaviours.
This allows me to leverage my current knowledge and gradually convert smaller class units to pure classes where possible.

Misc: Laptop Setup

On sunny days I get the urge to go outside and can’t stand staying inside to work.
But since my main PC is a desktop, I can't take it with me. So I started looking into buying a laptop as a sub machine.
When choosing a PC, it’s important to balance its purpose and specs.
Since I mainly use it for coding, I thought an older laptop would suffice.
However, when I consulted a shop, they warned that Unity’s 3D functions might not run well on an onboard GPU.
To test this, I had a friend with a laptop try running Unity and checked the size of the Hellversus project.
In the end, it seemed I’d need a fairly decent spec laptop—more expensive than expected.

I remembered I had an old Mac gathering dust, but hadn’t considered it due to the different OS.
But if I have to buy a pricey PC, it’s worth at least trying it.
When I booted the Mac for the first time in years, it wasn’t broken, but I had to deal with lots of software updates, forgotten passwords, and long download times.
The worst part was character encoding mismatches causing garbled text, but updating VS Code and tweaking the settings seems to have fixed it.

I haven’t fully started working on it yet, but I may soon be able to work on Hellversus while sipping coffee at Starbucks.

Plans for Next Week

That's all for this week. Thanks to everyone's support, we can continue development! Much appreciation.
Have a great weekend!

Weekly report May 3/5, 2025

Related Creators