It's been almost a week since Gynocracy launched in Early Access and I'm very humbled by the response so far, thank you all very much. I'd like to take this opportunity to clarify some frequently raised issues.
Release of new chapters
Each chapter takes about two months to produce. Chapter 4 was completed in August. Chapter 5 is currently about 50% done, so you should expect it to be available in late October/early November. Please keep in mind that this is a single-dev project and things outside my control can happen, so don't take this as set in stone, but this is the general idea.
Localization
Will the game be translated into [insert your favorite language]? I can't say yet. I would like the game translated into as many languages as possible, but only after it comes out of Early Access. The reason for this is that localization would complicate the release of new chapters at this stage + I want to be able to easily tweak existing chapters as needed.
Game choices, paths
The first three chapters are fairly linear to establish the game world and story. In chapter 4, things start to diverge based on your choices. These divergences revolve around the main couple, the protagonist and his wife. The changes are subtle at first, but the idea is to make them deeper and deeper. From the feedback I've gotten so far, there are a lot of different expectations for how our heroes' relationship should evolve, so I want to let the players decide.
Steam Reviews
If you have played the game, please, please, please consider writing a review ːsteamthumbsupː ːsteamthumbsdownː. So far, only a tiny fraction of players have left a review. In addition to providing feedback to the developers, reviews affect the visibility of the game on Steam and are therefore extremely important, especially for small indie games like Gynocracy.
Feedback
I want to hear your feedback! Tell me what you liked, what you didn't like, what you'd like to see more of (or less of). Even though I have the whole story outlined, I'm not afraid to change things based on player feedback :)
This report will be cut into two pieces, the first will be about the upcoming patch, and the second part will be about our experimentations done on Unreal Engine 5.
In 3 days we will be releasing a small patch to Penkura, it will contain fixes, code performance improvements, widget (3D interfaces) performance improvements, a lot of quality-of-life additions, new music, new sound effects, and minor content additions. This will most likely be the last patch we will release on Unreal Engine 4.27.2.
Now, let's move on to the next part of the report. Unreal Engine 5 experimentation and transfer.
For the last 5 months, we have been experimenting with the Unreal Engine 5, but unfortunately our project "AS IS" was losing around 60-80% of its performance when moved to the newer engine. We of course consider this an unacceptable loss, and we didn't want our community to lose so much performance.
We are looking to move to Unreal Engine 5, not only is it a high-end engine capable of doing incredible things, but we wanted to be up to date with the tech and use some of the tools that can be only found in engine 5.0+. Those tools will greatly speed up our workflow, and who knows what else Epic Games will add to the Engine that could possibly help us with the development of the game.
This is the screenshot of Penkura on our test machine within our Custom Unreal Engine 4.27.2.
In the heaviest part of the game to render with all settings on max we were getting a stable 105+ fps.
In Unreal Engine 5.0 with the project "as is", we were getting roughly 35+ fps in the same area.
This does not mean that Unreal Engine 5 is incapable of getting the same performance as Unreal Engine 4. It just means that we would need to do a lot of work to get that performance. We will not move to Unreal Engine 5 until we are sure that our community will get a similar performance at the very least.
To provide players with better performance we created our own in-house tools and systems that not only boost performance but also simulate certain high-end features at the lowest cost possible.
Those systems are:
LionsMat (our octahedral mesh painting system)
LionsNav (Long-range navigation system for NPC, Bots)
LionsLight (our non-ray trace Light and shadow system that allowed us to create pitch-black rooms and caves even when the outside of the entire level is fully lit by the sun).
LionsHide (our occlusion system for 3d widgets, shadow quality switch based on hidden objects)
and dozens of other minor systems that each improve performance by 0.5 to 1% but add up to a bigger effect when working simultaneously.
We knew that all of these systems needed to be moved to Unreal Engine 5 in order to get better performance.
After reading the documentation and testing out our project with various solutions, we are now certain that we WON'T be using the Unreal Lumen system, Nanite system, or Virtual Shadowing system. No matter how amazing they are (even though we have to admit it is one of the best techs we have seen). The reason is very simple, people with graphics cards lower than RTX GeForce 20 series will just suffer.
We are happy to report that we were able to move the LionsMat system, LionsNav system, and LionsHide system without major issues (as only a few systems were changed in Unreal Engine 5). Unfortunately, the LionsLight system was almost completely broken. It took us some time and heavy coding to fix this system to an "acceptable" rate.
After all the experimenting on Unreal Engine 5, we are happy to showcase the performance improvement we have been able to make since the first transfer.
We still need to fix many minor issues but already we can see that it not only got to the level of Unreal Engine 4, but we actually achieved a little bit better performance! We got to roughly 110+ FPS.
Because of this, we want to inform everybody that we will spend the next month not only moving the entire project to Unreal Engine 5, but we will also clean and streamline a lot of background code. Which will make our work A LOT easier going forward. All of the code has remained untouched because any major code that we wanted to make to assets could potentially break the saves files of the player.
After all of this, we need to talk about the negative side. We want to inform all of you that it is very likely this will be the last patch where your current saves will work. We spent over a week creating a system that would allow us to smoothly transfer saves from the 4.27 to 5.3 engine, but the metadata difference between files made on Unreal Engine 4.27 and 5.3 are very different. This means the current saves would be unreadable on the new version of the game.
We will use this opportunity to change and most of all improve the entire code in the game that needed to be improved a long time ago. Since we were able to prepare for this for quite some time, we expect to complete this in a single month.
Lastly, because of the request made by some players, we will start to place our Dev-Coms on Reddit - https://www.reddit.com/r/Penkura/ Steam and of course Discord. We were also requested to make a classic-style forum on our website, but since our community is still very small, and we have a lot on our plate already, we will do our best to improve our Discord by adding forum-style channels.
A few weeks ago, we ran an Open Beta for Endless Survival, and we received a lot of positive feedback on it. We also saw folks "break the game". That said, while we work on polishing up this version, we want to clarify how we're intending on approaching this.
Balance Philosophy
Our approach to balance in this game is much more lax than it was in Element TD 2. As many builds as possible should work. If something is little strong, that's fine. If something is weak, buff it. Only nerf something if it stands out.
However, with the introduction of Endless Survival, certain effects and upgrades are scaling way stronger in that mode, to the extent that it's breaking the mode itself. We don't want to adjust everything else to be Endless either (which, doing so would arguably homogenize the rest of the game). At the same time, we can't just hard nerf those upgrades because, well, they'd be terrible everywhere else.
As a result, there's a lot of changes. Just about every Tower, Trap, Mine, & Upgrade is being adjusted. This includes:
Boring upgrades. -- We have a few too many upgrades that are just "increased range", and we want to reduce those.
Redundant upgrades. -- Ie, Nuclear has three upgrades that increase how much damage it deals, just in different ways. One of them will be replaced with a support effect of some kind.
And then upgrades that are only good in a specific mode. -- % HP damage, for example, is going out the window -- Certain upgrades let you accrue silly amounts of Power and Lives, especially in longer modes
On top of that, numerous Axons got some buffs. Some buffed so that the relative balance in early game is about the same. Some buffed so they scale stronger later in the game. At the same time, we've improved Smart Targeting so that towers will focus particularly dangerous Axons better (ie, Mass Teleporter).
We also found numerous bugs that rendered certain towers either useless (Orbital Cannon U3 stunlocking itself) or way more powerful than intended (Drilling Laser U3 triggering rapid-fire explosions at the edge of its range).
On the whole, there should be far more options and build variety than before. Experiment at will, and form tons of fun new builds!
That's odd, I don't recall Pulseray having a continuous beam...
Endless Survival
For those of you that tried the Open Beta, whether you hardcore broke the mode or not, we are bumping the HP scaling on it. Numerous folks were reaching way further than intended, and that's without Meta Techs accounted for. Of course, we're working on rebalancing some of those as well.
Additionally, many in-game Techs have been buffed, and they no longer disappear after certain waves. We're looking into adding some sort of weight so you can't see the same one that you've passed over and over again.
We can confirm that 16,000 Lives is no longer possible to achieve.
Patch Release Date
We plan to release Version 0.2 on Friday, October 13th. Included in it will be:
Just updated the build w/ a big quick fix. We recently reworked how we query and categorize collisions on our character controller. However in a prior update - we actually broke the game if you skate up a quarter pipe and land on flat ground.
Patch Notes:
fixed an issue where the character would fall through the world if they landed on flat ground from vert air
an extremely beta version of an emote wheel has been added. This has only been tested on mouse + keyboard. While offboard, you can try to access it by pressing Q and clicking the appropriate emote bubble.
ollieing off of a grind while in the middle of a leave-rail animation crossfade should now animate responsively and no longer exhibit an awkward delay after setting the vertical post-grind ollie coyote-time velocity.
manual balancing control inputs during arcade mode overtime should no longer be relinquished during overtime.
If these hot fixes ended up breaking other things, pls inform me on Twitter or email. We'll try to get to those fixes while still cooking up other stuff for the game.
Thanks for checking out the game and reporting all the issues you've been seeing! This update fixes up a bunch of big and small issue and introduces a format change to the chunk saving and network transmission to speed things up for slower connections to reduce artifacts and whatnot. See full notes below, and please continue to report any weirdness you see!
Please make sure you and your friends all update to this version so you can keep playing together!
Balance:
Slightly reduced hostile creature count at night
Increased hunger/thirst levels when respawning to make it a bit easier to get to camp and continue surviving
Removed bedroll given on respawn
Fixes:
Fixed error case in the game's world that causes joining clients to error out and then eventually time out
Fixed item repair interaction breaking when complete in certain cases
Fixed item repair not working at all on clients
Fixed item repair on grinding wheel stand not working
Fixed crafting animation breaking if last small stone breaks with more recipes queued
Fixed "unexpected error" when the game autosaves after waking up if there is at least one other player in the game
Fixed copper alembic not being placeable
Fixed host autosaving before all players have been transitioned to awake state, causing any loads from that save to think the client players are asleep with regards to showing nearby item labels and other functions
Fixed some various error cases with a tool when harvesting
Fixed missing physics information for hand cart wheels and rims causing them to disappear when dropped and subsequently corrupting any subsequent save
Fixed error when attempting to place buildings rapidly on clients before the host acknowledges a correct placement
Fixed conversation dialogs not behaving properly in certain paths, for example not being able to give slime sample to Elric due to repeating initial message
Fixed missing translation for news title on the main menu screen
Fixed double processing of items in item inventories placed on the ground like the backpack, sometimes causing errors when items fully decay
Fixed lying down sometimes starting and stopping immediately causing a lengthy animation if you are just at the edge of the range of the bedroll
Fixed Blight clouds not being reflected in the water
Fixed some text in buttons wrapping weirdly in other languages
Performance:
Greatly reduced amount of update network messages sent to client players for container buildings like the rain catcher or soaking basin
Other changes:
Reduced chunk texture mapping resolution by 0.5x to vastly reduce chunk size when being saved to disk and sent over the network. Chunks were around 1mb each before, now around 0.3mb. Old saves should still function fine, existing chunks will be resized to be smaller when re-saved. Should help with some texture artifacts appearing on the terrain with certain connection speeds
Added version checking when querying games from friends so that you can only join games that are the same version. v0.7.1 clients will be blocked from joining v0.7.2 games but won't get an obvious message
Added extra timeout duration for joining a game if there is a lot of data to load, should reduce the instances of timeout messages when trying to join a game
Timeout settings for regular requests and join requests are now in the game's settings file
Added button that links to a form to allow you to request playtest access for your friends