a multiplayer game of parenting and civilization building
You are not logged in.
More ways to obtain rope
This but about a billion times.
I hate the idea of "research" whenever I see it.
It wouldn't fit in this game and would most likely end up being an absolutely boring bottleneck that no one would enjoy doing.
What if I told you that if you're bored whenever you see an abundance of towns having maxed out the tech tree the solution isn't to simply impede everyone's progress but to improve on this experience and add more to the game?
I am of the opinion that if your game is as complete and complex as it should be then the progression and pacing should stand up on its own.
And it absolutely does up to the point where people run out of things to do other than to survive.
The best example I can come up with is tech-oriented industrial minecraft ftb mod-packs.
It took months of playtime to get to the endgame where you generate iridium from UU-matter (and that's without relying on a civilization not collapsing around you).
That experience was a blast learning so many different parts of the game: learning to make a proper smeltery, processing of ores, mass produce rubber, automate machine fabrication, mass produce power, etc...
Everything was so satisfying and fit together so nicely.
I know those are 2 very distinct games but I enjoy them in the exact same way.
I had a blast learning to farm at first, then to make compost, to build pens, to bake, to make clothes, to smith.
Particularly smithing is great: first to make tools, then building a newcomen engine with its various mechanism that then allow you to make an oil rig followed by a fractional distiller that finally gives you access to kerosene.
In my opinion, this is the absolute best part of the game and is what was the most well done.
If I were to be a smith trying to make some tech and all of the sudden I would be unable to make x or y just because "you didn't spend z amount of time just waiting while research is conducted on the crafting of this item, sorry" that would immediatly discourage me from playing at all.
This new update seems to add more complex tech and I am both glad and excited for it.
I bought the game after seeing its trailer where I was promised I would help build civilizations up to the point where we have towns guarded by atomic powered robots and I hope this will be the case.
I do agree with Crumpaloo's first post though.
Some earlier parts of the game could use some updates and be made more complete.
For example farming (as in simply planting and watering stuff, not the composting part) was the first thing I learned and now I always avoid it like the plague.
It is the most boring part of the game while unfortunately being the most important too.
If perhaps it was made more complete with the possibility to create an automatic irrigation system later on.
That would go a long, long way in giving people more incentive to farm and make this part of the game much more interesting.
I heard of the textile idea too and found that absolutely genius.
The reddit thread suggested spinning wheels and looms.
Adding an option as satisfying and complex as smithing for the clothing part of this game that would give much more durable clothes would be absolutely wonderful and is overall a genius idea in my opinion.
Curious could this also cause playback issues?
That's a good question, I'm not completely sure.
I know from reading the code that apparently there are binds that allow you to slow/speed up the passage of time that worked by directly changing the variable so those are definitely broken though it could be made compatible.
Just tried it, it also applied cleanly to the mod, yes it's much better. It gets jerky in a full city, but it's already much better.
Yes as I said, this only fixes the slow motion issue but the underlying lag that was there before is still present.
It's just that now whenever the game lags it will no longer go in slow motion mode making everything that much easier to do.
BTW: Could you please submit a pull request to Awbz mod?
Right now there are changes both in OneLife and minorGems and Awbz only has a fork of OneLife.
I guess I could make this work with changes only to OneLife if I measure frame time in the game code instead but first I'd like to see what Jason thinks of this so perhaps it could actually be fixed in the main game.
First time posting here.
I recently bought the game on steam after hearing about it and absolutely loved it.
However I quickly began to notice a couple issues with it.
First, the VSync is always on no matter what you do even though there seems to be a "countingOnVSync" setting for it which also seems to show up in the menu.
Second, sometimes when there is a lot going on in the screen, the game will go in a "slow motion" sort of lag where everything including the hud and the pause menu itself takes twice as long to move/update.
This makes it incredibly difficult to move or do anything really.
This to me strongly suggested that the game was dependent on the framerate for timing purposes.
So a couple days ago I decided to go digging around in the code since it was open source.
What I found was the explanation for everything and also a couple of odd things.
To start with, there indeed was code to handle VSync that could be turned off here (from ScreenGL_SDL.cpp, minorGems):
Yet the VSync was still on regardless of the setting that controls mUseFrameSleep.
So I moved on to another idea and found this (from the same file):
Admittedly I didn't bother to try and remove the flag to see if it would turn off the VSync but I suspect this is the reason as to why it is always on no matter what.
Next I checked LivingLifePage.cpp from OneLife and found out that the game was indeed dependent on the framerate for timing purposes.
The game code relies on a variable called frameRateFactor but never updates it as if it was made on the assumption that the framerate would always be absolutely constant no matter what.
So I fixed it and also changed the parts of the code that seemed to assume frameRateFactor would always be constant with 2 commits here and here.
Now whenever the framerate drops the game runs perfectly without slow motion.
On that note, this game does have framerate issues that hopefully could be addressed in the future.
All in all I was kind of confused by this, what was jason's intention while writing this code?
Is VSync intended to be always on no matter what, despite what the setting and some parts of the code seem to suggest?
I also found this function while looking through the code:
which seems to indicate that the problem is known yet the function is called nowhere as far as I can tell and after trying to use it it turned out to be buggy as the animations would not loop properly.
If you ask me, I'm fine with VSync being on as a default but I think people should always have the choice to turn it off and let the game run as fast as it can on their machine or possibly set their own FPS cap.
Another thing I wanted to talk about was the structure of the game code itself.
I get that this is purely a multiplayer game and that it's not supposed to work without a server, but absolutely everything seems to be done at the same time.
Reading server messages, physics/logic code, rendering. All at once.
Particularly in LivingLifePage::step(). This method is an absolute monster, roughly 5k in lines.
Why not split/organize the code into multiple functions here? Possibly even like what most game engines do: network parsing, logic/physics followed by rendering.
I'm not trying to argue against anything here, I'm simply curious about all this as I'm only familiar with the usual way game engines are made.
Anyways, I'm not sure if it's alright to post binaries here, hopefully someone can inform me.
The fix works great, it's helped me a ton as I often do get FPS lag in big towns.
I'm not sure how common this issue is, I've heard other people ingame saying they experience it.
I should also mention that I have a 144hz screen, perhaps people who have 60hz monitors run into the issue much less often, I don't know.