simple machines forum

Please login or register.

Login with username, password and session length
 

News:

Remember to make your own backup of posts before submitting.

 
 
Pages: 1 [2]

Author Topic: EXIT: Long time no update! (Sorry about that)  (Read 7665 times)

Holey Moley

  • Website System
  • Administrator
  • *****
  • Offline Offline
    • MaleView Profile
    • twitter.com/m__7761
look out honey, 'cause I'm using technology
Holey Moley says,
« Reply #15 on: January 20, 2022, 02:12:40 PM »

Here (attached) is a copy of SOM_MAP that can be copied into the TEXT/English/Neutral.zip (or if unpacked dropped into the Neutral folder) to add an event "module" to SOM_MAP to be able to direct an event to load a map in the background. It's just something to play around with in the meantime if anyone wants to try this out. (I've been talking some lately with "Verdite" who's responsible for the Moratheia project.)

A word of warning is if you remove (rollback) this patch or this language pack feature then SOM_MAP will quietly remove the event "module" from your events.

I've also updated yesterday's patch just now just to add a little readout to the F6 display that will show the second map in memory under the "map" heading. You can confirm it's working that way. I'm thinking about how to display the percentage of the maps' loading progress, but didn't add that yet. Generally they will load in a second or so, but there's no precise way to say given that PCs all have different capabilities. If loading is that fast then a loading percentage readout might only be a blip.

In the present state you need to check the new "Relative" option in the map transfer event module to get the maps to change without any visual indication. I don't know if there's any other route to doing this than this way. I have to study it some more if so. (Edited: The problem is that the preexisting behavior likely has to change to let the other modes be used this way, and I'm not sure it's worth it given limitations.)

Of course the sky and fog settings will be a tell unless they're identical. I'm still working on this. I think that lights system I spoke of will also entail settings for overriding the fog and sky and map title and BGM. This will let you designate organic subsections of maps as having different conceptual localities. Plus KFII has tiles with custom fog that have to be implemented for my project to faithfully reproduce them. It's still possible to blend in the fog on map changes, as it would be possible to do with the ambient light if it wasn't burnt into the maps' vertex colors. (I don't know what it will mean to have a variable sky, most likely it will just be a way to switch between interior and exterior sections.)
Formerly "Holy Diver" ("Holy") [Holy will be back as soon as I'm back to full form]

Holey Moley has 2726 posts

Holey Moley

  • Website System
  • Administrator
  • *****
  • Offline Offline
    • MaleView Profile
    • twitter.com/m__7761
look out honey, 'cause I'm using technology
Holey Moley says,
« Reply #16 on: January 25, 2022, 11:42:18 PM »

REPOST: I had to pull this post after more problems started to arise. It sucks to be a programmer sometimes. So, some time has passed since I originally posted this. (The new problem was because some new code I'd written in haste failed to make some important thread synchronizing objects because C++ has this annoying thing where if you don't write the name of an object it just pops in and out of existence as if it never really existed. In this case the threads were stepping on each others toes.)

------------------------------------------------------------

Patch Patch (Important)

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.6.zip

The patch I put up the other day with map streaming capability has a critical problem where the textures will be lost when an old map is unloaded from memory (kicks in a few minutes after switching maps without using the standby map system.)

Off-topic: While working on blending skies I found out that some extension code I think I thought was doing a "Z-test" optimization on the sky was being defeated by some code I might not have understood, although it's possible I did but couldn't solve it at that point, but I don't see notes to that effect. So I rewrote the sky subroutine and it wasn't working with the Z-test, and that's because opaque MDO elements force on z-buffer writes. To get around that this has to be momentarily overruled just for the sky. Anyway, what this amounts to is a pretty good optimization when portions of the sky are hidden. I.e. this should improve frame rates significantly where applicable.

Oh yeah, another weird thing I noticed yesterday is the circular trip zone event system actually adds the radius it's given to the object/character that's bound to the event's own radius. I've disabled this behavior. I added a do_fix_circle_trip_zone_radius extension to the Ex.ini file in case this breaks a game that can't be fixed. The square trip zone doesn't do this. I guess someone didn't get the memo.

[EDITED: I also patched x2mdl (http://csv.swordofmoonlight.net/x2mdl.dll/1.0.0.2.zip) earlier today. It wasn't working with when the model has no (0) polygons/vertices (i.e. a dummy) because of some error checks I wrote for reasons I'm not sure why.]
« Last Edit: January 26, 2022, 01:41:32 PM by Holy Diver »
Formerly "Holy Diver" ("Holy") [Holy will be back as soon as I'm back to full form]

Holey Moley has 2726 posts

Holey Moley

  • Website System
  • Administrator
  • *****
  • Offline Offline
    • MaleView Profile
    • twitter.com/m__7761
look out honey, 'cause I'm using technology
Holey Moley says,
« Reply #17 on: January 27, 2022, 11:10:34 PM »

Oh man, not another PATCH :frown:

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.6.zip

I felt sick at my stomach when I found out I messed up the do_fix_circle_trip_zone_radius code from the other day's patch. I knocked out the event's radius instead of the unwanted one! I guess that was wishful thinking since it turned out the other one was too difficult to get at. I honestly don't understand how I miss these things. (Edited: I just rewrote the subroutine instead.)

I also found a bug in the sky routine I use to resituate the sky in front of the transparent scene elements. It kicks in when the sky has more transparent elements than the scene itself, and there aren't 0 such elements. I guess I never saw it before because SOM's skies only have one transparent element, so that means it could never be more unless there are 0. So maybe this isn't interesting. (Edited: When blending skies all elements are transparent and there are two skies for the moment.)

There's also code in place to blend the fog and sky across maps in this patch. I expected blending the sky to look kind of funky, but it's actually perfectly smooth and even. That's a relief. I was afraid it would be a weak point.

I haven't quite figured out how to drive the blending parameter. In this patch it just blends it over the course of two seconds. That's actually what Dark Souls does. But it's not what I have planned. The one problem with my plan is it needs a notion of what is moving towards the new map and away from the old map, and that's not an obvious metric. I have some ideas but I have a feeling there won't be a perfect solution. But it should work fine most of the time if you don't do anything funny.

I have to work on fading out the BGM. I'm surprised SOM doesn't have a system for that. I think it's mute function just cuts out. But I could be wrong. It's worded that way. Anyway, after that and some work on the Japanese language pack the next release cycle will be wrapping up. It's always annoying when the previous release gets patched to the degree it's the same as the new release. Sometimes it's easy to isolate features to a release and sometimes it would be more work than is worth it for "alpha" software.
« Last Edit: January 28, 2022, 08:35:21 PM by Holy Diver »
Formerly "Holy Diver" ("Holy") [Holy will be back as soon as I'm back to full form]

Holey Moley has 2726 posts

Holey Moley

  • Website System
  • Administrator
  • *****
  • Offline Offline
    • MaleView Profile
    • twitter.com/m__7761
look out honey, 'cause I'm using technology
Holey Moley says,
« Reply #18 on: January 31, 2022, 07:04:41 PM »

Last patch? Demo patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.3.6.zip
http://www.swordofmoonlight.net/text/日本語/最新.zip (Japanese)
http://www.swordofmoonlight.net/text/English/Neutral.zip

Aye yai yai, I don't know how it happened but the fog got messed up by the last patch. This was because it thought it was to be applying the blending effect. What I don't understand is why my test project wasn't exhibiting that behavior. I thought about putting it under the microscope but decided it wasn't worth the time and effort.

I'm really sick of all the patches in this release. I mean I'm disgusted with myself to a large extent. I'm hoping it's just a cursed release.

This patch is actually the final patch of what I thought might be the next release, but actually I've recalled I'd considered just releasing a patch as a demo since I've still not built out a full scale scenario with two real maps of significant scale.

Since this patch is identical to what would be a demo I'm not going to make an odd numbered demo patch for it. I'm just going to write a blog post up and start a new discussion thread. Also even though there's enough here to do what KFII requires, I feel that lighting being missing from this feature set makes it a little bit incomplete.

I also kept getting stuck in Moratheia's opening titles. I thought I covered them in terms of multi-thread locks but I went back and looked and it seemed like not. So I hope they're covered now. I'm not sure what happened in that case.

After a little more testing to see if the code has stabilized I'm going to see about updating the TOOL folder.

The language packs have new UI things for SOM_MAP's events. For English it may just be new trip zone and action based activation features compared to that quick/dirty demo I shared a while back. For Japanese it's all new to be up-to-speed with the English version.

When I write a blog I will share some potential ways to workaround the missing lighting feature in case anyone wants to do early tests before I can work on it.

Anyway, this is technically a patch to fix things I broke. I will reshare this patch in the new topic/thread I should make sometime later today. I did work on some last minute things before posting this fix, even after I noticed the problem.
« Last Edit: January 31, 2022, 08:52:31 PM by Holy Diver »
Formerly "Holy Diver" ("Holy") [Holy will be back as soon as I'm back to full form]

Holey Moley has 2726 posts
Pages: 1 [2]