Recovery.

It's been a rough couple of weeks for me, hit a wall, got depressed, got sick. Cyberjank came out, it is a good game under all the bugs though, as far as I am concerned. Though I never boarded the hype train. It is as I expected, given their record. I played all their games since Witcher 1 and boy that was a janky and unforgiving game, but it was fun though. Anyway that's neither here nor there. I wont be able to work as much as I would like since I will be having to take my dog out a lot more this week because she smushed her junk into a turd and got a UTI so she needs to pee a lot while it clears her system. However I wont be working on the MMO project for a while, well... not exactly.

I will be working on tools for it, like rewriting the DB wrappers with Poco and GDNative if that works out (Testing today).

I may end up rewriting a lot of the MMO project but I think what would be wise is to actually force myself to work on a smaller, easier to develop project first. That CRPG project I was thinking about perhaps (Which is kinda fuckin' huge though, init?). The idea is to build a game that has some overlap with the MMO, as anyone who has read some of the posts from late last month into the first week or so of this month would be aware.

The thought of blending SMT with a CRPG. I will also be working on Tamakai so I might have some crossover there as well. The reality of the MMO project at this point is that I have to fully rewrite it more or less. Rather than just diving right in and making even more mistakes that I will then hit another wall with I think it would be best to get more experience with Godot and possibly write my own small engine. I haven't done that in so long now, the last engine I wrote was in VB6. It'd be more of a learning project but that's for the future.

For now I want to try and get the Poco libs to work in a GDNative project. Then go about planning a simple version of the CRPG. Maybe get a character walking around, create a world state machine that maintains all the state of the character and the world. If I have learned anything it's that I need to come up with a good way to track and save world state. This will be massively beneficial to the MMO project.

Also I want to spend some time with Intersect Engine, I kinda want to use it to prototype my world for maybe both projects. I might use the same world with a different point in time. I feel like it would allow me to think more visually, back the the day of the mirage source spinoffs I found that I had an easier time just making the map and figuring out the story as I went for some things. This wont be Isometric but it will give me essentially interactive concept art.

To that end I have erased the white board, of course not before taking a bunch of pictures to make sure I preserve the information. I will be working on the steps TO the MMO project. The hope is that I can create a fairly solid, but basic RPG prototype by my birthday. I may not do it isometrically, though. I am undecided. I think it would be smarter to focus more on the systems than trying to sort out the craziness of Isometric Y-Sort and collision. I can't be sure.

Anyway, enough talk. Let's see if I can get Poco working in a GDNative project and then get on to the RPG Design.

Or not. It occurs to me I should maybe write all my servers in python and C++ from the start for the MMO project now that I have sat here and done this. I think state management and connection handling would be best done in C++ and DB interaction in Python. After trying to figure out how I would do a "Hello world" with Poco I realized maybe Godot in it's current state isn't the best choice for such a project in general. I really, really like Godot. It is great for game development especially if you like the pythonic way of doing things.

It is still fairly early though, while it is improving very quickly and is perfectly usable for the majority of 2D projects... when you decide you are going to try and make it do some crazy stuff it starts to show it's weaknesses. The beauty of it, of course is that you can easily edit the engine itself, modify the bits that break for you to no longer break. However this does at time to the project, in my case I had to do a lot of hacky stuff to get the MMO project to the state I did.

I feel I may have to relegate the use of Godot to hobby projects for now. There is a lot of stuff I want to do that mixes 2D and 3D but Godot's support for that is still fairly young and slow. I can't even run it on this laptop when I have just a few small cubes moving around.

I think what I should do is try to contribute, but not use it as my main driver going forward as much as it pains me to say. I love Godot. I really can't wait for the time when I can use it in the way I intend. For now though I might need to consider a more mature engine or... if I hate myself enough, write my own that is more than just a toy to learn with.

As far as engines go, though... Unreal is certainly out. I need better 2D support without it being hacky. Hacky code is how I got into this damn mess to begin with. As much as Unity leaves a tinny taste in my mouth just to think of... it is probably the best candidate for the things I want to do. Let's do a little more research, though. I am not sure I can even run Unity on this thing.

Given that lumberyard is also very young I won't be considering that either. No java. Urho3D needs further looking into, I can't be sure but I think it's been around a good long time.

Unity looks like the most supported thing I can use. If I want to be more hireable as a contractor it may be the wisest choice. Mmm welp, not much to be done there. See how it runs, I guess. I learned C# back in the day, it's basically Java but less all over the place.

Well, she runs. There was a lot of screaming as it started up, though now it's open I guess it's fine. Also did they finally make the dark theme the regular one? That was one of the more annoying things I came up against.

Isometric tilemaps are here. I wonder if they have a way for dealing with the Ysort issue. Seems to have automatic chunking. The ability to change the orientation of the tilemap from XY to ZX or XZ or YZ, or even custom is kinda interesting...

I do own some assets for it. Got them in humble bundles over years past. There are very easy to use libs for Postgres in C# as I recall, when I was working out how to write the very first iteration of the DB wrapper. I do not make this decision lightly. There is more testing to be done.

Let's do a test with an asset I got a while ago I guess. Import takes a while on this machine, screams the whole time but I think this asset is kinda large so... we will see.

Seems to have imported, took a bit but I expected that. It has locked up after it finished though I guess that might be due to it having to refresh the UI with all the changed stuff? There she goes. Alright, now let's load up a scene from it and run it. Seems to work. I have this UMMORPG 2D thing I got ages ago, which apparently still updates. I was just messing around making sure it ran alright without my laptop screaming like it was going to die.

Alright, so... I guess I should start trying to design a 2D, pet based RPG just to get an idea of what it is I am doing. Hope the documentation is better than it used to be.

I guess I will try to get a isometric world working in Unity. Get some monsters, NPCs, a couple maps and a player walking around. See where it goes from there.

Well, hit the end of the day with testing, gonna have to decide tomorrow if I want to work on learning my way around Unity with Isometric stuff or one of the Django projects.

Cheers.