Page 12 of 13

Re: Drizzle 32 ! (experimental)

PostPosted: Sun Mar 05, 2023 9:05 am
by Sirius
Maroonroon wrote:- For the fullscreen FlyBy video, after the link, it isn't a video but a camera animation made in Blender. (Which in the case of Myst V Ages, have been video captured to make the .bik files).

Yes. I found those in the files, so I just hacked together a script that runs those animations on link-in. You can reuse the script, although I noticed recently it randomly makes the avatar invisible or fails to cut the camera transition to the avatar after the animation.

Maroonroon wrote:- It's the xSimpleJournal/BahroStone scripts that are to use for a book placed opened somewhere in an Age; the file can be named "anything.bik" (256x256 px and without alpha margin); if this file is not found, the panel is white but the book can be used).

Sounds correct. This script doesn't have a fallback for when the video file doesn't exist though, as you've seen.

Maroonroon wrote:- When we look at the book, the Offline KI looks for "age.bik" (512x256 px and with alpha margin); if "age.bik" is not found, the Offline KI uses the ".jpg" image.

In the Relto library only - that sounds correct. It seems another option is agename_spawnpoint.bik.

Maroonroon wrote:Can you explain me:
1) How to set the model's panel in Blender?
2) How to set the .bik file in Blender (or in a script)?

For the world model - as far as I know Korman doesn't support it yet.
For the Relto bookshelf: it will automatically pick up agename.bik (or agename_spawnpoint.bik) if it exists in the AVI folder.
For the GUI: usually you just set the "linkPanel" property of xSimpleWhatever.py to your video file name (including ".bik" - you don't need to specify the "avi" folder name though).


Now that I think about it though, I would advise against using animated linking panels in Fan Ages, since they can cause crashes on some computers. Inevitably some people will not be aware of the issue and wonder why their game is always crashing. Deleting the video file is a workaround, but many people won't be aware of it, and xSimpleLinkingBook doesn't have a fallback to display a static image... It gets even more complicated since (as far as I know) Shards like Deep Island have to either enforce the presence of that file, or not release it at all :|
So yeah, if we want to avoid crashing people's computer, we should probably avoid animated linking panels altogether, unfortunately :(


Chacal wrote:Anytime I try any version of Drizzle, I get this error.

I'm afraid I don't know :( The LookAndFeel error is related to the way Drizzle's window is "decorated", but that's all I can say.
If it happens to all versions of Drizzle you try to run, then it's probably something with your Java version. Maybe try to reinstall it. (Java 8 is the correct version as far as I know.)

Re: Drizzle 32 ! (experimental)

PostPosted: Sun Apr 02, 2023 7:48 pm
by Maroonroon
Sirius wrote:
Maroonroon wrote:- For the fullscreen FlyBy video, after the link, it isn't a video but a camera animation made in Blender. (Which in the case of Myst V Ages, have been video captured to make the .bik files).

Yes. I found those in the files, so I just hacked together a script that runs those animations on link-in. You can reuse the script, although I noticed recently it randomly makes the avatar invisible or fails to cut the camera transition to the avatar after the animation.

Ok. I'll try to put another camera and to anime it to make this fullscreen FlyBy at link in, without any script; if I don't manage to do it without script, I'll try to use a script. :)

Sirius wrote:
Maroonroon wrote:Can you explain me:
1) How to set the model's panel in Blender?
2) How to set the .bik file in Blender (or in a script)?

For the world model - as far as I know Korman doesn't support it yet.
For the Relto bookshelf: it will automatically pick up agename.bik (or agename_spawnpoint.bik) if it exists in the AVI folder.
For the GUI: usually you just set the "linkPanel" property of xSimpleWhatever.py to your video file name (including ".bik" - you don't need to specify the "avi" folder name though).


Now that I think about it though, I would advise against using animated linking panels in Fan Ages, since they can cause crashes on some computers. Inevitably some people will not be aware of the issue and wonder why their game is always crashing. Deleting the video file is a workaround, but many people won't be aware of it, and xSimpleLinkingBook doesn't have a fallback to display a static image... It gets even more complicated since (as far as I know) Shards like Deep Island have to either enforce the presence of that file, or not release it at all :|
So yeah, if we want to avoid crashing people's computer, we should probably avoid animated linking panels altogether, unfortunately :(

It's sad do know how to do something and to not do it because of a kind of random bug. :cry:
But if I manage to at least make the fullscreen FlyBy at link in, I'll be happy. :)

Edit:
I managed to use a .bik file as panel for the book model, but not to have it auto-playing, so, it isn't an animated panel... :?
That being said, a texture animation (using static images) can do the trick (it's long enough to do, but it works). :P
Show Spoiler

But yeah, I probably mixed up things; the "in Age" book GUI doesn't seem to have a fallback to display a static image...
I tried making my own .py file by modifying the "xSimpleLinkingBook.py" script, but I didn't managed to get a working fallback, neither by doing the same with the "xEoALinkingBook.py" script. :cry:
Show Spoiler

So yes, I will probably not use animated panels in my Ages if I don't have a working fallback, or only the book model will have an animated panel.

For the fullscreen FlyBy at link in, I'll try later; for now I'd like to fix a few things in my Age. :)

Edit 2: For the texture animation, as we can have "only" 18 textures in a material, the texture animation can have only 18 images (18 frames, around 0.5 second), while I need 900 images (30 frames a second x 30 seconds)...
So... I forsake the "animated panel" idea.

Re: Drizzle 32 ! (experimental)

PostPosted: Mon Apr 24, 2023 1:46 pm
by RicKy
Hello Sirius,

I tried two version of your Drizzle32, but I Have a issue (this two releases : 18-03-22 and 01-02-23) :

18-03-22
Code: Select all
Checking the folders you gave...
Starting conversion of MOUL...
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=PlayerBlocker4NoCam(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail08(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail07(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=StairsToUL73(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail06(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail05(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=StairsToUL71(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=StairsToUL49(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=StairsToUL04(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=GHTapestry13(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=GHTapestry12(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=GHTapestry11(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=GHTapestry07(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=GHTapestry06(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail02(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail01(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail04(plHKPhysical)(84:1)
Error: plHKPhysical: Unhandled flag combination.: u14=0x2;u15=0x0;losdb=0x4;group0=0x80;name=SharedBalcRail03(plHKPhysical)(84:1)
Error: Unexpected error in GuiThread:
Console: stderr:java.lang.NullPointerException
Console: stderr:   at auto.moul.proccessPrp(moul.java:737)
Console: stderr:   at auto.moul$2.ModifyPrp(moul.java:270)
Console: stderr:   at auto.conversion.convertPrp(conversion.java:199)
Console: stderr:   at auto.conversion.convertFile(conversion.java:119)
Console: stderr:   at auto.conversion.convertFiles(conversion.java:101)
Console: stderr:   at auto.AllGames$GameConversionSub.convert(AllGames.java:358)
Console: stderr:   at auto.AllGames$GameConversionSub.ConvertGame(AllGames.java:268)
Console: stderr:   at gui.ThreadedTasks$14.run(ThreadedTasks.java:111)
Console: stderr:   at shared.GuiThread$InvisibleThread.run(GuiThread.java:106)


01-02-23

Code: Select all
Error: Unexpected error in GuiThread:
Console: stderr:java.lang.NullPointerException
Console: stderr:   at auto.moul.proccessPrp(moul.java:760)
Console: stderr:   at auto.moul$2.ModifyPrp(moul.java:270)
Console: stderr:   at auto.conversion.convertPrp(conversion.java:199)
Console: stderr:   at auto.conversion.convertFile(conversion.java:119)
Console: stderr:   at auto.conversion.convertFiles(conversion.java:101)
Console: stderr:   at auto.AllGames$GameConversionSub.convert(AllGames.java:358)
Console: stderr:   at auto.AllGames$GameConversionSub.ConvertGame(AllGames.java:268)
Console: stderr:   at gui.ThreadedTasks$14.run(ThreadedTasks.java:111)
Console: stderr:   at shared.GuiThread$InvisibleThread.run(GuiThread.java:106)


Did i do something wrong ?

Thank you :)

Re: Drizzle 32 ! (experimental)

PostPosted: Sun Jul 02, 2023 3:16 am
by Maroonroon
I now host on my pCloud a ".7z" archive that contains the last compatible duet of "MOUL(a) install folder + Drizzle(32)", to allow you to convert MOUL(a) Ages ; I will update it at each Drizzle(32) update: urulive.live.1.918.openuru_209.7z

Re: Drizzle 32 ! (experimental)

PostPosted: Wed Dec 13, 2023 7:53 pm
by Atrion
Maroonroon wrote:I now host on my website a ".7z" archive that contains the last compatible duet of "MOUL(a) install folder + Drizzle(32)", to allow you to convert MOUL(a) Ages ; I will update it at each Drizzle(32) update: https://www.thescar.fr/drizzle/


Hello, Long time since I've actually been on this site, decided to dust off My Linking Book and jump back into things, as it were.
I was wondering if it was possible to play offline with the most recent additions that I seen had been added to the online version?
Thanks in advance for any assistance.

Re: Drizzle 32 ! (experimental)

PostPosted: Thu Dec 14, 2023 3:23 am
by Maroonroon
Hello Atrion. :)

There's two things:
  • Either it's up to each of the Ages writers/builders to export their Ages for TPOTS, and then to send the files to Diafero, for him to update the OfflineKI/UAM.
    Diafero seems busy, but if the Ages writers/builders don't export their Ages for TPOTS, he can't do anything anyway.
  • Either it's up to Sirius to update Drizzle, for leting players convert MOUL(a) fans' new Ages.
    I have no news from Sirius since March; I hope he's fine.

Re: Drizzle 32 ! (experimental)

PostPosted: Tue Dec 19, 2023 2:02 pm
by Sirius
Hey guys. Thanks for the concern, I'm doing okay, but I am busy with real life stuff and other projects. So sorry for the lack of update. Playing catch up with MOUL's content and format updates has been very low on my list of things I want to do.

Maroonroon wrote:
  • Either it's up to each of the Ages writers/builders to export their Ages for TPOTS, and then to send the files to Diafero, for him to update the OfflineKI/UAM.
    Diafero seems busy, but if the Ages writers/builders don't export their Ages for TPOTS, he can't do anything anyway.
  • Either it's up to Sirius to update Drizzle, for leting players convert MOUL(a) fans' new Ages.

Preferably we would have authors send a PotS version of the new Ages to Diafero to avoid any issue. I don't know if they considered it. However, Diafero also seems very busy and hasn't been around in a while. It was planned to have other people being able to handle uploading Ages, but there hasn't been progress on that front either.

Failing that I might have Drizzle be able to convert those Ages (at some point, no idea when), but likely not fully explorable (think Myst V Ages as they have been for the longest time).

Sorry. I know it's not ideal, but at least those Ages can be played on MOULa.

Re: Drizzle 32 ! (experimental)

PostPosted: Tue Dec 19, 2023 10:34 pm
by Paradox
For just converting the Ages 1-to-1 (or as 1-to-1 as possible), libHSPlasma includes a PageConvert utility that should also work.

Keep in mind though, the focus and development efforts are on the newer and open-source engine, not on the 20-year-old version.

Re: Drizzle 32 ! (experimental)

PostPosted: Wed Dec 20, 2023 5:58 am
by Maroonroon
Bonjour Sirius ! Content que tu ailles bien. :)

Another thing to consider about the MOUL(a) fans' new Ages, is that they are currently not all complete; I meant that they are still updated, for now...
IMO, it would be better to wait until they stop being updated before converting them, or you will have to convert them again later.

Ps: @Sirius: Dis-moi, par rapport à la documentation dont tu avais parlé concernant les Clothing Items (pour la création de nouveaux), as-tu des nouvelles ?
Sinon, où prévois-tu de la partager quand elle sera complète, GOW forums, GitHub, ou ailleurs ?

Re: Drizzle 32 ! (experimental)

PostPosted: Thu Dec 21, 2023 4:21 am
by Sirius
Paradox wrote:For just converting the Ages 1-to-1 (or as 1-to-1 as possible), libHSPlasma includes a PageConvert utility that should also work.

If I remember correctly, that's only for PRPs so one would still need to somehow retrieve and adjust the Python and SDLs for the puzzles to work. Still, as you said, this is probably the best solution for now.

Paradox wrote:Keep in mind though, the focus and development efforts are on the newer and open-source engine, not on the 20-year-old version.

Agreed. As much as I like the old engine for what it offers (single player, customization and a wider range of Ages), it would be best if we could eventually retire it in favor of the newer engine.

Maroonroon wrote:IMO, it would be better to wait until they stop being updated before converting them, or you will have to convert them again later.

That's pretty much the issue. Drizzle and the Offline-KI both do very specific stuff with MOUL's content, since for the longest time you could rely on MOUL's files not changing at all. Which of course is no longer true. So Drizzle will break down anytime the PRP format changes, or an object is exported with a different name. I fixed the Great Tree Pub a bunch of times because the linking books just wouldn't keep the same names across versions.

Maroonroon wrote:Ps: @Sirius: Dis-moi, par rapport à la documentation dont tu avais parlé concernant les Clothing Items (pour la création de nouveaux), as-tu des nouvelles ?

Houla, tu fais bien de me le rappeler, j'avais oublié après avoir réinstallé mon PC... J'ai toujours la documentation sur mon ancien disque, je vais déterrer ca.