Sarkath

Active Member
Sep 8, 2019
510
854
When trying to play the game in Linux under Wine, I get the following: -- See Screen Shot --

When I try to run the Jar file, I get the following:
Error: Could not find or load main class com.lilithsthrone.main.Main
Anyone have any ideas?
It depends on which distribution you're using. If you're using Arch, install the java8-openjdk and java8-openjfx packages. If you're using Ubuntu, install the openjdk-8-jre and openjfx packages. Later versions of OpenJDK might work as long as OpenJFX is also installed, but JRE 8 is the developer recommended version.

I wouldn't bother with Wine. Aside from having pretty specific requirements the game works very well under Linux (as well as Lilith's Throne can run, anyway ;)).
 

IvoryOwl

Active Member
Mar 29, 2017
754
1,390
Good news! We will be getting more performance patches, including one that will (apparently) help offset the lag caused by having a large amount of kids.



Hello again,

This is just a small post to let you all know how things are progressing towards v0.4.2.5's release. Since the last post (and the release of v0.4.2.3), I've mainly been working on getting a large pull request merged (PR#1622 from AceXP) that should significantly improve performance and save file sizes in games where you have a large number of unmet offspring. I've also been fixing some bugs and getting some other minor things addressed.

Starting tomorrow, I'm going to move on to adding the content for the other shops in Elis's shopping precinct. I'd also like to get a few more bugs and other minor issues sorted out, so while I initially was aiming for a release around the middle of this week, it's highly likely that v0.4.2.5 will now be out at the earliest on the evening of this Saturday, 27th (as a preview release over on SubscribeStar). If it's looking like there's going to be a delay, I'll try to let you know a day or two in advance.

My next post will likely be the release (or delay...) post of v0.4.2.5, so I'll see you again then.
 

tehlemon

Well-Known Member
Jan 26, 2021
1,224
1,556
Good news! We will be getting more performance patches, including one that will (apparently) help offset the lag caused by having a large amount of kids.
I read that and had a laugh. The couple people insisting performance was way better in the current version because Inno said there would be an update from Ace, when it wasn't in the patch notes at all.

Turns out it wasn't in this version at all.

That explains why it still plays like shit lol
 
  • Haha
Reactions: Simp Cattu

crash.7ds

Active Member
Nov 18, 2018
890
769
That just might change my opinion about where this game's going if that actually happens. Lag is one of the main killers for me right now, that and how shallow virtually everything is in the game.
 

ebonheart2319

Member
Jul 21, 2017
132
397
Gotta agree with you guys there...
It shouldn't be taxing or difficult.
Its dialogue tags flagged for specific triggers.
Money, Quest Completion, Slave#, Spa, Kid#, Sub/Dom#, Corrupt#... ect.

Or at least it SHOULD be simple.
This is the kind of flavor filler busywork that modders and contributors should easily slip in.
Its one of the systems that SHOULD be simple and easily expandable.

IIRC the game ALREADY tries to do it as the guard dialogue treats you like shit until you have inhuman traits, but does not seem to be expanded beyond such basics.

It just highlights the severity of the coding issue.

Note: This is NOT the "Meaningful" conditional options during events, just NPC flavor text.
(Though the majority of those are already just "oh yeah... walls vs wings.")
 

EmDotRand

Active Member
Sep 7, 2020
568
898
Just tried putting wings on a slime for the first time in ages, only to find out they can't fly anymore. When did that happen?
 

mrttao

Forum Fanatic
Jun 11, 2021
4,521
7,385
We have magic maps that somehow are able to track our children for us
wait really? the game actually track each child individually as they move around the map?
no wonder this game is so goddamn laggy.

There is a reason why coc abstracted this into just having a list of the number of kids.
Then you do something like "X% chance to encounter tamani's daughters" instead of actually tracking every single one of them individually at all times.

I mean, the whole "child is instantly 18 with inherited knowledge and leaves home" is literally a perfect setup for saving resources by not having to track any children.
 

DirtyMare88

Member
Jun 26, 2020
126
228
wait really? the game actually track each child individually as they move around the map?
no wonder this game is so goddamn laggy.

There is a reason why coc abstracted this into just having a list of the number of kids.
Then you do something like "X% chance to encounter tamani's daughters" instead of actually tracking every single one of them individually at all times.

I mean, the whole "child is instantly 18 with inherited knowledge and leaves home" is literally a perfect setup for saving resources by not having to track any children.
well the kids aren't "moving" around the map on there own or anything until you encounter them, but they will massively slow down a game when you have large numbers of them.
The map can be useful for this, lets you summon your kid, attack them, banish them from the game (delete them essentially) It's kinda morally fucked up, but so is enslaving and raping them, but that's the game.

I did that process in my current game today, went through and "deleted" 30-40 uninteresting kids, saw a pretty massive performance boost for the game.
 

Sarkath

Active Member
Sep 8, 2019
510
854
wait really? the game actually track each child individually as they move around the map?
no wonder this game is so goddamn laggy.
The problem isn't so much that the kids move, it's that the game calculates status updates in a naïve and wasteful way. The only status that needs to be processed every turn regardless of position is pregnancy, but the game will perform status update calculations on all NPCs regardless of where they are in the world.

I wrote a patch a while back to defer most status update calculations until the player lands on a tile with an NPC and saw a huge increase in performance with a slight decrease in memory allocation.

Considering the patch specifically mentions performance updates related to "unmet children," I'm curious as to how much of an impact it'll have when there are a lot of active NPCs in the world. I assume the patch ensures that unmet children aren't impacted by status calculations, but I haven't looked into it yet.
 

ebonheart2319

Member
Jul 21, 2017
132
397
wait really?
A major source of lag is the fact that the code runs the numbers for every npc's sperm count, cooch drip, and saliva viscosity every tick.
And... so... much... more. ... as in thousands of lines referenced per NPC per tick. EVERY tick. Universally.
And it does so in vaguely the same way as a day trip from Seattle to LA by way of London and the Moon.

Hence the RAM usage that makes Cyberpunk 2077 blush.

But thats in ADDITION to the known memory leak that degrades the game over time.
 
  • Like
Reactions: mrttao

mrttao

Forum Fanatic
Jun 11, 2021
4,521
7,385
The problem isn't so much that the kids move, it's that the game calculates status updates in a naïve and wasteful way. The only status that needs to be processed every turn regardless of position is pregnancy, but the game will perform status update calculations on all NPCs regardless of where they are in the world.

I wrote a patch a while back to defer most status update calculations until the player lands on a tile with an NPC and saw a huge increase in performance with a slight decrease in memory allocation.

Considering the patch specifically mentions performance updates related to "unmet children," I'm curious as to how much of an impact it'll have when there are a lot of active NPCs in the world. I assume the patch ensures that unmet children aren't impacted by status calculations, but I haven't looked into it yet.
Did inno reject your patch?
 

Sarkath

Active Member
Sep 8, 2019
510
854
Did inno reject your patch?
Nope, I haven't opened a PR yet for it yet.

I haven't given it enough testing with the latest versions of LT to feel comfortable submitting it just yet. I'm also curious to see what Ace changed with their performance patch.
 

NoStepOnSnek

Well-Known Member
Apr 29, 2018
1,167
1,285
I read that and had a laugh. The couple people insisting performance was way better in the current version because Inno said there would be an update from Ace, when it wasn't in the patch notes at all.

Turns out it wasn't in this version at all.

That explains why it still plays like shit lol
Or we could be looking at two unrelated fixes to different, specific issues. But yeah, lets go with your assumption because "hurrdurr bad dev" :rolleyes:
 
  • Like
Reactions: mrttao

IvoryOwl

Active Member
Mar 29, 2017
754
1,390
Just tried putting wings on a slime for the first time in ages, only to find out they can't fly anymore. When did that happen?
I don't remember a specific date but it was long time ago.

EDIT: I tried to look it up but the best I could find was some people mentioning their slimes couldn't fly anymore back in 2018... so around or prior to that?
 
Last edited:

tehlemon

Well-Known Member
Jan 26, 2021
1,224
1,556
It shouldn't be taxing or difficult.
Its dialogue tags flagged for specific triggers.
Money, Quest Completion, Slave#, Spa, Kid#, Sub/Dom#, Corrupt#... ect.

Or at least it SHOULD be simple.
This is the kind of flavor filler busywork that modders and contributors should easily slip in.
Its one of the systems that SHOULD be simple and easily expandable.

IIRC the game ALREADY tries to do it as the guard dialogue treats you like shit until you have inhuman traits, but does not seem to be expanded beyond such basics.

It just highlights the severity of the coding issue.

Note: This is NOT the "Meaningful" conditional options during events, just NPC flavor text.
(Though the majority of those are already just "oh yeah... walls vs wings.")
It should be that simple, but we know its not. The content pipeline wasn't something that was really considered when designing this game, which is why basically every part of it has been or will be completely re-written lol

Nope, I haven't opened a PR yet for it yet.

I haven't given it enough testing with the latest versions of LT to feel comfortable submitting it just yet. I'm also curious to see what Ace changed with their performance patch.
It sounds like Ace's fix is only targeting unmet children. I'm betting, or at least hoping, he went through and re-worked it so that unmet children are just placeholders and not fully realized NPCs until you meet them. That's less of an aggressive fix than I remember yours being, so the two could probably play well together.

Or we could be looking at two unrelated fixes to different, specific issues. But yeah, lets go with your assumption because "hurrdurr bad dev" :rolleyes:
I wasn't making fun of Inno with that one. I was making fun of the commenters here.

This was another "the devs changed onyxia" moment. Nothing changed but people insisted things were very different anyways.
 
  • Like
Reactions: Admiral Thrawn

playerme

Newbie
Jun 3, 2018
90
41
It depends on which distribution you're using. If you're using Arch, install the java8-openjdk and java8-openjfx packages. If you're using Ubuntu, install the openjdk-8-jre and openjfx packages. Later versions of OpenJDK might work as long as OpenJFX is also installed, but JRE 8 is the developer recommended version.

I wouldn't bother with Wine. Aside from having pretty specific requirements the game works very well under Linux (as well as Lilith's Throne can run, anyway ;)).
Yeah, trying under Wine was ... far from satisfactory.
Thank you so very much. I find it interesting that even though we're to Java SDK 17, only 8 is working for games. I couldn't play any Jar files until I just finished installing 8. I'll see if I have openJFX running, but I believe it was one of the items i changed as well. I'll have to try it and verify it before getting back to you.

Thank you for taking the time to try and help.
 

NoStepOnSnek

Well-Known Member
Apr 29, 2018
1,167
1,285
It sounds like Ace's fix is only targeting unmet children. I'm betting, or at least hoping, he went through and re-worked it so that unmet children are just placeholders and not fully realized NPCs until you meet them. That's less of an aggressive fix than I remember yours being, so the two could probably play well together.
That is the gist of it, yes.
I wasn't making fun of Inno with that one. I was making fun of the commenters here.

This was another "the devs changed onyxia" moment. Nothing changed but people insisted things were very different anyways.
People with a bunch of slaves stalking them at home and/or in the city should see an improvement in those areas since that was what's addressed in the current update. If you just park a handful in a milk room, yeah, no shit you don't see a change.
 

Sarkath

Active Member
Sep 8, 2019
510
854
Thank you so very much. I find it interesting that even though we're to Java SDK 17, only 8 is working for games. I couldn't play any Jar files until I just finished installing 8.
Minecraft 1.18 is going to target Java 17, so that's something, I guess? Apparently 17 is the latest LTS release (the previous was 11, I think), so I suppose that makes sense.

As for LT, the only thing that technically ties it to Java 15 and below is its use of the Nashorn JavaScript engine, which was deprecated in Java 11 and completely removed in Java 16. JavaFX complicates things a little bit, since it was included in Java 8 before being split off into its own project. Depending on how your distro's packages are set up, you might be able to get away with using a slightly newer version.

I'll see if I have openJFX running, but I believe it was one of the items i changed as well. I'll have to try it and verify it before getting back to you.

Thank you for taking the time to try and help.
Sounds good! Let me know how you make out.

One other option if all of that fails is rolling your own builds. I do pretty much all of my LT hacking on either Linux or macOS using IntelliJ (which, as an added bonus, can manage its own JRE installations outside of the constraints of what your distro offers), so if you wanted to take that approach instead I can step you through it. I've been around that proverbial block quite a few times at this point. :)
 

a1fox3

Loving Family Member's
Donor
Respected User
Aug 8, 2017
23,686
16,224
Don't know if this has been posted yet or not but here it is.

Monday, 22 November 2021



Hello again,
This is just a small post to let you all know how things are progressing towards v0.4.2.5's release. Since the last post (and the release of v0.4.2.3), I've mainly been working on getting a large pull request merged (PR#1622 from AceXP) that should significantly improve performance and save file sizes in games where you have a large number of unmet offspring. I've also been fixing some bugs and getting some other minor things addressed.
Starting tomorrow, I'm going to move on to adding the content for the other shops in Elis's shopping precinct. I'd also like to get a few more bugs and other minor issues sorted out, so while I initially was aiming for a release around the middle of this week, it's highly likely that v0.4.2.5 will now be out at the earliest on the evening of this Saturday, 27th (as a preview release over on SubscribeStar). If it's looking like there's going to be a delay, I'll try to let you know a day or two in advance.
My next post will likely be the release (or delay...) post of v0.4.2.5, so I'll see you again then.
 
4.10 star(s) 119 Votes