TUXDB - LINUX GAMING AGGREGATE
 NEWS TOP_PLAYED GAMES ITCH.IO CALENDAR CHAT WINE SteamDeck
 STREAMERS CREATORS CROWDFUNDING DEALS WEBSITES ABOUT
 PODCASTS REDDIT 

 

SUPPORT TUXDB ON KO-FI

MENU

ON SALE

New Twitch streamer aggregation implemented (#FuckTwitch) due to Twitch's API issues (more info on my Discord )


Name

 Sipho 

 

Developer

 All Parts Connected 

 

Publisher

 All Parts Connected 

 

Tags

 Indie 

 Strategy 

 

Singleplayer 

 

 Early Access 

Release

 2018-11-13 

 

Steam

 € £ $ / % 

 

News

 98 

 

Controls

 Keyboard 

 

 Mouse 

 

Players online

 n/a 

 

Steam Rating

 n/a 

Steam store

 https://store.steampowered.com/app/809310 

 

SteamSpy

Peak CCU Yesterday

  

Owners

 0 .. 20,000 +/-  

 

Players - Since release

  +/-  

Players - Last 2 weeks

  +/-  

Average playtime (forever)

 0  

Average playtime (last 2 weeks)

 0 

Median playtime (forever)

 0 

Median playtime (last 2 weeks)

 0 

Public Linux depots

 Sipho Linux [211.44 M] 




LINUX STREAMERS (0)




Sipho 1.2.3 patch is live!

Here's a little patch release that fixes some of recent feedback on the game:
[h2]Version 1.2.3f1[/h2]


  • Add Zooid health bar display options - control how long they are shown and if they are shown in Growth Mode
  • Leech renderer gets proportionally much less segments when scaling with stats - improves performance late epoch
  • Fix stacked Budlings sometimes erroring out when detached
  • Cache particle graphics settings so they are not read every time particles are spawned - improves performance in late epoch


[ 2024-04-18 19:59:11 CET ] [ Original post ]

Sipho 1.2.2f2 hotfix

Fixed game considering mouse as constantly active - that caused Controller aim input to stop working


[ 2024-04-15 11:04:45 CET ] [ Original post ]

Sipho 1.2.2 bugfixes are here!

Welcome old and new players!
With new player influx we have noticed several issues popping up more often than would be normally acceptable. Therefore, while working on new content, I wanted to gather a bunch of fixes and improvements to the game bit earlier and release that in this small update:

Version 1.2.2f1

  • Do not scale boss battle spawners in higher levels and epochs - fixes lag in late game
  • Handle input device timings better. Fixes PS4 controller being regarded as "used" at all times
  • Out of bounds areas in boss arenas appear black
  • Fix Zooid award effect despawning bit too early
  • Respect grid spawner Seed value when calculating random nudge offsets - fixes overlapping food and powerup spawns
  • Leech uses epsilon to check for pull distance instead of zero
  • Cra'Than boss 3 null ref guard - the boss should handle killing its parts while its growing better
  • Fix pacifist achievement erroring out in first level - might fix black screen issue for some players
  • Budded-off Siphos apply Mutations correctly
  • Fix caltrop activation sprite being visible after being ejected from Voider
  • Skin flowers aren't that shaky anymore when they get moved
  • Fix breed unlock progress not showing up correctly in Main Menu


As always, if you experience an issue, have suggestions or would like to share your creations - let us know! Also, the Daily Deal sale will persist throughout the week - if you like Sipho, let your friends know!

- Dominas


[ 2024-04-14 19:31:19 CET ] [ Original post ]

Sipho is on -20% sale!

Hello future Sipho players!
Sipho is now on historically high sale - 20% off! We have some bits of information of what to expect in the game:

[h3]Get new Zooid parts by slaying bosses![/h3]
Bosses get harder and drop increasingly more rewards. Don't get scared - most bosses have weaknesses!


[h3]Make powerful builds![/h3]
Parts have various synergies - be sure to experiment with what you get!


[h3]Recompose in Aquarium![/h3]
If you're feeling stuck, be sure to wind down in Aquarium. You can explore various existing creations to seek for new build strategies!


[h3]Beyond your Epoch[/h3]
Once you beat the game, you won't beat it just once - be sure to dive further away from Open Waters and start new Epochs. Wild Mutation combinations await you!


[h3]Join the community![/h3]
Share your strategies, builds and skill-related inconveniences on our Discord!
And be sure to share your creations on Workshop!



Something's being cooked
- Dominas


[ 2024-04-12 21:31:25 CET ] [ Original post ]

Our NinjaKyat's Antipaint is out now!

Hello Siphonophoreans!

One of the fathers of Sipho, NinjaKyat, has released their solo project called Antipaint! It is a roguelite action-shooter where each levels becomes a painting. The game features an awesome soundtrack from real live bands, really juicy effects that make popping enemies super satisfying and wacky items that parallel Sipho Late Epoch Gameplay.

From my personal experience, I've been playtesting the game and it hasn't gotten old yet - it's a really nice way to let off steam after day's work. It feels like I can still break the game in different ways and while doing so, I have started putting my attention to the level's dynamic canvas - some intrusive thoughts come in tell you to try manipulating your playstyle just to draw on it. There are some creative gameplay parallels with Sipho for sure.

https://store.steampowered.com/app/1418390

So while waiting for the next Sipho update, I recommend trying Anpaint out, it has a free demo after all!

Yours,
Dominas


[ 2024-03-13 06:09:47 CET ] [ Original post ]

Happy new Year with an update 1.2.1!

With this update we would like to wish you Merry Christmas and Happy New Year!
Lots of background changes have been introduced in this version - while it's not content, we want to have the best version of Sipho available while we work on more content.

Level generation rewritten
This was one of the changes I wanted to do for a long time and this paragraph will get a bit technical. Since the beginning, level spawning was made to be noise-based and "shader-like" where we would go through every potential spawn position (pixel) and check the noise function value if we need to spawn something there or not. The spawner system was and still is set up this way:


  • There is a Spawner which can have a parent and use its noise values for itself. It can add parent's values, only spawn when parent spawns or do not spawn if its parent spawns.
  • Spawner has a spawn range within which Chunks are loaded/unloaded - when player Sipho moves, we check for its position each frame and manage chunks from there. If chunks are smaller, then there's additional overhead of managing them. If chunks are large then it may degrade performance to spawn whole chunk at once.
  • Chunks consist of Cells which can be offset to make nicer patters and each cell is basically a spawned object - a rock obstacle, a piece of Nutrition, a Spike ball or a Coral.

As with any noise based generation, this is fast to tweak and get results. However, when it comes to gameplay-sensitive stuff like Nutrition it becomes very hard to get right without additional work. Since we can only tweak how layers interact, we couldn't know at what actual density, for example, Nutrition was spawned.

So together with the additional work to have a control over how much Nutrition is spawned per-chunk, I have separated the maths calculation part from spawning part - which allows us to have less performance pressure every frame when chunks are spawned. Previously we had variable sized chunks - on paper that sounds like nice control over content, but it makes calculating things much harder, since we can't assume that a single Child Spawner chunk covers whole Parent Spawner chunk. That is why all chunks have been made to be the same size, which now allows us to:

  • Not worry about having lower layers of obstacles spawn before upper layers have spawned - which could happen if we mixed different sized chunks in different spawner layers
  • Consistently and performance-wise cheaply check if certain position has all chunks spawned - helpful for checking if player or enemy Siphonophore can be teleported or spawned at some location
  • Re-use previous layer noise values in lower layers, without recalculating for every layer - this is somewhat true, since we need to interpolate values of every cell if cell sizes are different (or you can say cell count in a chunk differs) . That is much cheaper to do than to re-calculate all spawner layers


These changes allowed these design changes:

  • Ensuring all levels have very similar spawned Nutrition density
  • Spawn additional snacks when player has lost nutrition at the end of the level and would be otherwise forced to leave the level
  • Something else that I might have forgotten

Honestly, I am a big fan of Factorio and reading their blogs have somewhat influenced development style and design approach of Sipho. If you like these kind of technical ramblings, I feel you would really enjoy reading them written by the legends themselves - https://www.factorio.com/blog/

Spanish language added!
Huge thank you to Rosario Rivas Leal for translating Sipho to one of the most spoken languages in the whole World - Spanish!

What's more to come
Sipho is about living things and it is alive itself. This update has some balance changes sneaked in which illustrate what's to come - better balance, more synergies and more stats to mutate!

More notable changes:

  • Highly rewritten level spawning logic which should improve performance by a lot
  • Energy Leech steals buffs
  • Pushers Push what Voiders Void
  • Damage Resistance stat, which is currently used by Piston's Extended neighbor buff and poison (negative values)
  • Swarmer performance is no longer comparable to bitcoin mining
  • Polyp buff is further-reaching
  • Lots of bugfixes
  • Caltrops are sticky and activate on touch
  • Turbine Joint Protection buff adds +10% health instead of +1 - scales better with Mutations
  • Round Max Health instead of flooring it - consistent with other stats
  • Polyp releases what it's attached to if it gets damaged
  • Use deterministic hash for Grid Spawners and Boss fights
  • Swarmers can attack Deep zooids
  • Following Effects correctly check if attached poolable has been despawned
  • Deep Zooids emerge from depths when they die
You can find the whole changelog here, at Pastebin!


[ 2024-01-01 16:21:07 CET ] [ Original post ]

Sipho 1.1.1 is now available - Verified on Steam Deck!

Hello players!
As hinted about in previous update post - we finally have a full Verification for Steam Deck!
This required making several improvements to User Interface. Now smaller screens have UI automatically scaled up to make the text larger and more legible in small resolutions (800p).

Text Input Fields required some rework which I am quite happy with. Now on top of all Input Fields an extra button appears when hovered or selected, indicating what will happen when it's clicked - either entering search query, renaming a thing. Feels quite fitting for all input types and makes them more noticeable.

We have a lot of reworks happening in the background - from more Stats that Mutations can change to better and more consistent level spawning. Stay tuned for more and keep eating those ecosystems!

Version 1.1.1f1

  • Italic font style Layout Description
  • If Stat base is negative, positive multiplier will reduce the impact instead of amplifying it
  • Cooldown Recovery is now a multipler-only stat


Version 1.1.1a3
  • Fix projectile bouncing
  • Shorten some input options strings


Version 1.1.1a1
  • Controller friendly input fields for all Aquarium UIs
  • Input field support for Controllers
  • Disable navigation to MutationUIs when not in main Growth Mode - fixes them getting selected in other occasions
  • More migration to TMP Input fields which play nicely with Controller
  • You can get key down and ignore control lock
  • Add on screen keyboard hooks for Steam Deck
  • Support non-root Input Fields in UI


[ 2023-11-12 20:31:38 CET ] [ Original post ]

Sipho Soundtrack is now available!

Dear Sipho fans!

Highly requested Sipho soundtrack is now available both on Steam and Youtube! Years in the making, it was carefully composed together with in-game art by our artist TheSpin!

You can support Sipho development by purchasing the soundtrack on Steam. It also includes high-quality FLAC files: https://store.steampowered.com/app/2628380/Sipho_Original_Soundtrack/


The soundtrack is also available on Youtube:
[previewyoutube=eYh7liX3_8w;full][/previewyoutube]

Enjoy the Sipho music wherever you go and keep on diving!


[ 2023-11-03 09:55:15 CET ] [ Original post ]

Secret patch 1.1.0f4

Psst! poisonBomb We snuck in a bunch of fixes following the last announcement:
Version 1.1.0f4

  • Do not try replacing non-skill key when key in options is rebound
  • Update Tutorial images and make it control-type agnostic
  • Fix extra zooid selection out of bounds
  • UI scaling fixes for small resolutions
  • Eradicate 'click' mentions in UI
  • Report relevant current button binding when rebinding skills
  • Fix Growth Camera movement with keys not being aligned with camera rotation


[ 2023-10-30 08:25:47 CET ] [ Original post ]

Sipho 1.1.0 is now available in more languages!

Hello Sipho players!

We are proud to present a new, much more Polished version of Sipho! From little things that break immersion and make you question the reality of underwater ecosystem dynamics to huge improvements for Controller and new languages!

[h2]Controller improvements[/h2]
We saw a significant use of Controllers to play Sipho and had to go in and fix several long-standing issues. One of them was not being able to reposition or move zooids in Growth mode using controller. So now you can!

Taking control of your lifeforms is a first step towards fulfilment

This feature also works for mouse input - which is great for editing large Siphos!

Great people at Valve have started evaluation of Sipho compatibility with Steam Deck - that has also prompted us to make improvements to non-mouse controls. Expect even more improvements soon!

[h2]More fully translated languages![/h2]
Sipho has been translated to Ukrainian, Czech, German, French, Japanese, Korean, Lithuanian, Polish, Russian and Chinese! Some of translations were done by volunteers, which we are eternally grateful for. Having someone with actual game knowledge do translations is great as mechanics and other semantics can be translated without losing connections.

There's something special seeing Sipho in foreign (to us) language!

As Sipho is going to get more updates, it is unavoidable that we will have new strings to translate. If you wish to contribute to your language or fix any errors, please join our Crowdin project here.

[h2]Changelog[/h2]
There are many more fixes in this update - check out the full list below!

Version 1.1.0f3

  • Clamp growth mode camera offset to its bounds
  • Positive Strain is ignored when generating Mutations


Version 1.1.0f2
  • Fix polyp referencing wrong Rigidbody
  • Enemy Heads only have 0.5 movement force, while Player's remain at 1.0
  • Fix wacky zooid outlines when they're at an angle
  • Reorder Soul Eater components so it doesn't deal damage to itself when firing its last charge
  • Prioritize currently selected growth point if cursor is exactly above it
  • Correctly rotate dragged zooids with scrollwheel
  • Fix strain damaging extra zooid when strain is more than 1
  • Ensure that polyp attaches to a single object correctly
  • Fix wrong order of time stamp in logs
  • Dot not increase kill count for last damage dealing siphos when zooids die in artificial occasions


Version 1.1.0f1
  • Shortened strings
  • Sort language names by translation status and gray out untranslated ones
  • Update translations
  • Localize missing Aquarium strings - Erasers and Enemy Aggressiveness
  • Gray out unstranslated languages in options menu
  • Add translations and set languages fully translated: German, French, Japanese, Korean, Lithuanian, Polish, Russian, Chinese Simplified
  • Use color codes instead of color names to become compatible with Text Mesh Pro
  • Use larger epsilon value when checking zooid distances to make behaviour consistent with old one
  • Update non-rebindable keys upon loading Input Manager
  • Fix input defaults being incorrectly assigned when loading from save
  • Give a little distance margin to zooids with non-extended connections for easier connectivity
  • Increase Turbine radius to match regular structure zooid radius
  • Change how active buff calculates time remaining - instead of scaling duration, scale its tick. Fixes inconsistent buff durations when new stacks are applied that would have shorter duration.


Version 1.1.0a4
  • Swarmer minions do not trigger friendly mines
  • Polyp updates its buff if held zooid dies
  • Megalocyst correctly shows Cooldown Recovery stat as relevant
  • Caltrop no longer slowly shows decay
  • Polyp tentacles no longer fly around when grown
  • Rebinding skill key in options menu also rebinds skill key in current game
  • Skill bindings support both mouse and controller at once. Entering growth mode remembers what input type was used
  • Environment tweaks
  • Burstopod projectile has twice the health and pulls in things harder when they're close
  • Deep Holes stand out more from the environment
  • Apply environment tint values correctly and tweak them for all areas
  • Level end whirlpools are properly sparse again
  • Tweak some deep obstacles to have better contrast with regular layers
  • Whirlpools appear slower when on screen
  • Fix circle shader changing width at different rotations
  • Cra'Than powerup is brighter
  • Freeroam has zero enemies set to spawn - fix that with 8
  • Tweak Advena and Cra'than areas
  • Fix spawner function texture lookup incorrect scaling - fixes unintentionally denser obstacles in Advena areas
  • Head selection zooid selection menu is controlled by keyboard arrow keys or controller right stick
  • When growing zooids with buttons, try selecting next growth position in the same direction
  • Controller support for repositioning zooids


Version 1.1.0a3
  • Skill binds of dead zooids correctly survive save/load
  • Skill binds are no longer lost when zooids die
  • Pause game if gamepad is main input device and it becomes disconnected
  • Add Select gamepad "select" button glyph
  • Sizzler attack gets cancelled if it gets stunned or dies
  • Add more hole spawners in Cra'Than second boss fight
  • More robust steam achievement intialization
  • Fix some obstacles having unintended holes inside and causing zooids to get stuck
  • More robust and physics based approach to fixing zooids getting stuck in obstacles
  • Instantly check if buff reacts with other buffs when added - enables stacking damage from Muck and multiple Sizzlers reactions at once.
  • Fix Flail not conducting Sizzler attacks correctly


Version 1.1.0a2
  • Snack spawner doesn't use saving
  • Grown zooids destroy dead zooids that they have grown on top of
  • Enemies give up on their targets more easily
  • Burstopod projectiles are slightly "magnetic"
  • Dead zooids do not block placing new zooids
  • Sizzler now has 1 second wind-up effect, instead of shocking instantly
  • Claws, Leeches and Swarmers do not damage friendly faction if there are non-friendly targets available
  • Saenus second Boss disengages if it does not get damaged for some time
  • Frakir minions engage their targets if they're damaged from far away
  • Disable looping for music players - fixes Aquarium songs not changing
  • Only show valid potential Growth Points and snap only to valid rotations when dragging groups of Zooids in Growth mode
  • Voider spits out its contents if it's about to be teleported - fixes strings of Caltroper stretching across the universe
  • Projectiles receive health equal to their penetration and damage multiplied, instead of just penetration. This results in increased Sniper projectile lifetime and makes projectiles a little bit more resistant to Leeches
  • Add threat weight that scales enemy likeliness to attack or ignore siphos that are already targeted by their faction. Child zooids are more likely to attack same targets, while naturally spawned enemies try targeting something else.
  • Tweak Squirter shoot effect color
  • Budling skill costs only 10 energy (down from 100)
  • Improve Squirter spray effects
  • Scale deformable angular drag differently from linear drag
  • Polyps detach when they die
  • Do not display extra skill energy breakdown lines if they are 0
  • Switch all labels to Text Mesh Pro
  • Add Czech language and mark it as translated along with Ukrainian


Version 1.1.0a1
  • Adjust main menu UI scale automatically for small screens


[ 2023-10-29 20:34:21 CET ] [ Original post ]

Sipho 1.0.1f3 is now available - better performance and AI!

Hello all!

We have been gathering feedback from community forums and watching various streamers play Sipho and got a nice list of notes that we are addressing with this update!

Budlings now feel much safer next to their parents and should not run away from big enemies. Especially those enemies who are threatening their mother colony!

There seems to be a disturbing lack of self-preservation among your offspring...

Enemy AI has been tweaked to be less aggressive to enemies that are much smaller than them - that makes more sense to make them dispose of something that is more threatening and only then go after small ones. The change is most impactful when the small one is the player!

A lot of bugfixes and performance have been done - especially related to level spawning and whirlpool level destruction. While there are things to optimise further, we hope this will help with stuttering a lot.

Version 1.0.1f4

  • More robust way of holding consumables should fix Polyp sometimes causing consumables to be unholdable
  • Do not update Environment Grid if things have recently been spawned


Version 1.0.1f3
  • Optimize whirlpool level destruction
  • Tweak Advena areas
  • Cache level spawner texture values - improves performance for levels based on texture lookup spawning


Version 1.0.1f2
  • Add Tooltip to separate canvas in Main Menu
  • Mover camera fast while in transition - fixes camera flying around after entering new zones
  • Fix growth zooid type categories not being disabled correctly


Version 1.0.1f1
  • Refactor enemy spawning to allow having different enemy counts per campaign level. Adjust enemy aggressiveness and counts
  • Add option to slow down game simulation if it is unable to keep up with target framerate
  • Alphas are guaranteed to drop relevant mutations
  • Fix whirlpools not spawning in Freeroam
  • Saenus Boss 3 creates currents a bit more rarely. Other boss fight enemies never flee
  • Pathfinder completes its path requests when setting new ones
  • Allow Mutations have differently constructed titles for localization. Add missing translations.
  • Refactor how campaign sipho zooids get swapped for variety - dynamically determine if swapping is possible instead of being hardcoded. Fixes enemies with impossible layouts appearing
  • Megalocyst explodes instantly instead of 0.1sec delay
  • Do not regenerate health when losing nutrition to overnutrition - fixes some bosses healing themselves for a while before allowing themselves to be over-dps'ed
  • Make Advena campaign areas a bit wider to navigate
  • Boss battle arena does not care if there is null sinkable to sink
  • Fix zooid info tooltip text to contain proper newlines
  • Better Leader following AI for minion Siphos
  • Enemies are less likely to attack smaller enemies
  • Display zooid type next to breed name in the tooltips
  • Improve some zooid descriptions
  • Fix leech teleporting
  • Mutation generation can skip types - allows Abrasive mutation to be applicable to Puffer, but not be generated for Structures
  • Enemy Spawner tracks and manages children of the children as well - fixes boss arenas sometimes being stuck after killing a boss
  • Siphos drop recently eaten nutrition if they're killed fast enough
  • Don't clump up enemies when spawning
  • Correctly dispose of player minions when starting new Epoch


Version 1.0.1a1
  • Revert to shape matching correctly when detecting NaN deformation values
  • Add obstacle inside shrimpy's centre so nothing gets moved or spawned in it
  • Cra'Than second boss waits before attacking
  • Update Environment Grid over several frames - reduces stuttering
  • Update pathfinding grid 1 chunk over time as now obstacle spawners spawn more consistently
  • Obstacle spawners update chunks dynamically over several frames
  • Do not spawn sizzler arc if distance is lower than 0.1 - fixes arcs flying away
  • Claw Weapons and Twister Swirls have unlimited overlaps
  • Fix flower petals in Buginis areas and enable their fade-outs
  • Polyp damages their target immediately when attaching
  • Use realtime in breed selection breed chosen animation so the animation isn't affected by time scale
  • Align level spawners with Environment Grid chunks - better overlap checking, better performance.
  • Give spawner manager one frame delay to spawned chunk checking - should allow physics to catch up and have valid raycast queries
  • Improve Enemy Spawner checking for unspawned chunks - include radius in search so moving spawned enemy is guaranteed to not later overlap the enemy


[ 2023-10-16 17:10:26 CET ] [ Original post ]

Sipho Trading Cards and Emoji are now available!

Hello, Gamers! siphoPog

For all your gamer conversations and cool profile backgrounds Sipho Emoji and Trading Cards are now available!

Impress your friends with your grabbing skillz:
siphoPoggrabberStartgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberMidgrabberEndnutritiousEgg

Or make silly faces:
poisonBomblickItpoisonBomb
skellyHandLseaheadskellyHandR

Are all now available in Steam through card collecting and points shop!


[ 2023-10-07 11:59:47 CET ] [ Original post ]

Sipho 1.0.0f7 is here with Brazilian Portuguese language support!

Hello Sipho players!

Almost a week has passed since 1.0.0 launch and it was exhilarating! After so long in the Early Access tunnel the release and tons of new players experiencing the game for the first time were the light at the end of the tunnel.

Development isn't over though - we want to "unlock" the intended Sipho experience for everyone. After watching many new Let'splays and collecting players' feedback we noticed that onboarding to the game needs more work. It is something you can develop a blind eye on - the playerbase was experienced, you, as a developer know how things work - so nobody notices the missing first steps as they've already passed them.

One of the things we can immediately fix are certain moments where players can't get up on their feet anymore: Losses at the end of levels sometimes put players in soft-lock state, where there is no more nutrition left and only large enemies. Our solution - spawn some "snacks" so if player has lost any nutrition they will be able to regain before having the courage to dive deeper.

Other things were obvious quality issues - stability, problems with input and polish in general. We will continue to improve new player experiences, controller support and add more polish to the game. As well as new in-game languages.

Sipho is now also available in Brazilian Portuguese language!
We had a good friend to help us and translate to Brazilian Portuguese language. The language can be accessed through Options -> Player Settings menu. New players, who have their Steam client set to available and fully translated language will have it selected automatically. Divirta-se!

Changenotes:
Version 1.0.0f7

  • Fix Leech and Polyp teleporting their tentacles around
  • Deep Zooid Layer no longer collides with Ignore Raycast layer - fixes Flail Chain Links connector colliding with Deep Zooids
  • Fix second Advena zone to no longer spawn food into walls
  • Peapod distance stiffness when relaxed is a bit higher
  • Expand player vision under top level decortaions if siphonophore is covered
  • Optimize Environment Settings shader property upload by using property name hashes
  • Projectiles that carryover buffs check for null colliders - fixes rare error
  • Apply tint to Saenus whirlpool sprites
  • Enemies properly spread out
  • Spawn snacks when player is below expected progression to help with soft-locks when a level ends but there's no nutrition left
  • Tweak Piston stats - increase mass to 5 (up from 1) to allow better deformation stability when many heavier zooids connect to it. Increase angular connection stiffness to 0.5 (up from 0.1) to prevent oscillations
  • When changing constraint values also lerp angular constraints - reduces physics overshoots even more
  • Fix wrong distance constraint stiffness step amount when undeforming - that caused overshoots and sipho mangling-up
  • Auto-set languages that have marked as fully translated when first launching the game. Set Brazilian language as fully translated
  • Add Translators credits
  • Separate different environment depth layer gradients to ensure that they are selected properly for their depth layer. Fixes rare occurences when certain objets appeared uncollidable when they were
  • Tweak Buginis boss 1 arena to have smoother outer walls
  • Fix that UI toggle button didn't toggle off certain parts of UI
  • Change Frakir minion value range from 200-400 to 150-250 - less broken layouts to fight against


[h2]Previous hotfixes contained:[/h2]

Version 1.0.0f6
  • Caltrops penetrate things one frame ahead of time which prevents them getting physics reaction forces and bouncing off penetrated objects
  • Caltrops do not immediately die when penetration expires
  • Skin Flower has more accurate colliders
  • Add DPad defaults for growth mode picking zooid category to grow - those were unused and are kind of nice. Always rebindable in Options menu
  • Add input detection mode to allow overriding automatic input type
  • Do not unparent objects when they're about to be destroyed as part of scene unloading - just some game-log santiziation
  • Clamp caltrop pull force after 5 seconds - fixes some crazy scenarios where caltrops no longer collide due to huge forces acting on them


Version 1.0.0f5
  • Enemies after first boss are bit more chill
  • Final boss now enrages properly and does a bit more to survive
  • Reschedule path if Sipho radius changes
  • Slow down time earlier in transition effects so the game doesn't play while while is about to be chomped on
  • Fix respawning in Aquarium sometimes setting overshot values to transition and time effects
  • Make relaxed peapod a bit stiffer in distance constraining
  • Buginis Guard doesn't aggro immediately when passing by
  • Greatly reduce number of unintentionally destroyed poolables - a slight performance improvement
  • Puffer projectiles are not containable in Voider
  • Fix deep rocks showing up in growth mode incorrectly - various boss arenas had weird black shadows from deep decorations that were close to the surface
  • Add cursor lock to window option to gameplay options
  • Append extra zooid info when hovering grown zooid and holding Alt key
  • Don't destroy on load Time Master


Version 1.0.0f4
  • Add Full Screen Mode option to Graphics menu - using Fullscreen Exclusive could help improve performance on low-end machines
  • Reduce overall music volume just a tiny bit
  • Fix memory leak in deformable jobs
  • Fix memory leak and improve performance of pathfinding clearance calculations
  • Fix Grabber erroring out in rare occasions and do not exert firing force if it stayed connected


Version 1.0.0f3
  • Add translations incomplete disclaimer
  • Fix polyp not attaching correctly
  • Tidy up music playing and play it in Aquarium
  • Upload to Workshop with Public visibility by default
  • Fix layouts marked in layout Browser as Do Not Spawn were still spawned
  • Things that do not want to be held are no longer held - fixes Polyp attaching to Zooid unlock consumables
  • Correctly request for Depth texture rendering when depth blur is on - fixes the game being super blurry if Ambient Occlusion is off, but Depth Effect is on


[ 2023-10-06 20:58:39 CET ] [ Original post ]

Sipho 1.0.0 f6 hotfix is now live!

Hello all,
We have a small batch of hotfixes from recent feedback. Some have reported controller auto-detection not working, so we added an option to override input detection mode. It can be found in the Options menu.
We notice a lot of runs end after the first boss - enemies are noticeably more aggresive there and gang up on the player. As a temporary solution we have tweaked their aggresiveness and range of detection to be lower - making them less likely to gang up on the player. Let's see how this goes.
Caltroper is one of the newest Zooids who is quite hard to control. These changes make it a bit more predictable by pre-penetrating objects without obstruction of movement. Old behavior was that they would bounce-off for single frame and penetrate on the next one.



Version 1.0.0f6

  • Caltrops penetrate things one frame ahead of time which prevents them getting physics reaction forces and bouncing off penetrated objects
  • Caltrops do not immediately die when penetration expires
  • Skin Flower has more accurate colliders
  • Add DPad defaults for growth mode picking zooid category to grow - those were unused and are kind of nice. Always rebindable in Options menu
  • Add input detection mode to allow overriding automatic input type
  • Do not unparent objects when they're about to be destroyed as part of scene unloading - just some game-log santiziation
  • Clamp caltrop pull force after 5 seconds - fixes some crazy scenarios where caltrops no longer collide due to huge forces acting on them


Version 1.0.0f5
  • Enemies after first boss are bit more chill
  • Final boss now enrages properly and does a bit more to survive
  • Reschedule path if Sipho radius changes
  • Slow down time earlier in transition effects so the game doesn't play while while is about to be chomped on
  • Fix respawning in Aquarium sometimes setting overshot values to transition and time effects
  • Make relaxed peapod a bit stiffer in distance constraining
  • Buginis Guard doesn't aggro immediately when passing by
  • Greatly reduce number of unintentionally destroyed poolables - a slight performance improvement
  • Puffer projectiles are not containable in Voider
  • Fix deep rocks showing up in growth mode incorrectly - various boss arenas had weird black shadows from deep decorations that were close to the surface
  • Add cursor lock to window option to gameplay options
  • Append extra zooid info when hovering grown zooid and holding Alt key
  • Don't destroy on load Time Master


[ 2023-10-05 06:56:01 CET ] [ Original post ]

Sipho 1.0.0f4 hotfix

Hello Sipho players!

A small patch build has been uploaded which addresses several issues. There were some memory leaks in new and improved pathfinding code. Aquariums were lacking music and they won't anymore! We hope you are enjoying Sipho and more improvements will be coming!

Version 1.0.0f4

  • Add Full Screen Mode option to Graphics menu - using Fullscreen Exclusive could help improve performance on low-end machines
  • Reduce overall music volume just a tiny bit
  • Fix memory leak in deformable jobs
  • Fix memory leak and improve performance of pathfinding clearance calculations
  • Fix Grabber erroring out in rare occasions and do not exert firing force if it stayed connected


Version 1.0.0f3
  • Add translations incomplete disclaimer
  • Fix polyp not attaching correctly
  • Tidy up music playing and play it in Aquarium
  • Upload to Workshop with Public visibility by default
  • Fix layouts marked in layout Browser as Do Not Spawn were still spawned
  • Things that do not want to be held are no longer held - fixes Polyp attaching to Zooid unlock consumables
  • Correctly request for Depth texture rendering when depth blur is on - fixes the game being super blurry if Ambient Occlusion is off, but Depth Effect is on


[ 2023-10-01 20:36:16 CET ] [ Original post ]

Sipho 1.0.0 is now available!

Dear Sipho players,

Sipho is out of Early Access with all its glory! New content awaits you!


  • A new Mushroom-inspired Breed!
  • Wild new parts - Zooids!
  • Improved Enemy AI
  • Steam Workshop support for creations - Layouts
  • New soundtrack
  • Polished boss fights
  • Visual and other various improvements - just can't name all of them here!



In coming days we are going to be releasing Steam community content and gradually releasing new languages. We are also monitor game's balance - expect more polish in that area!

As always - we invite you to join our community:


Changelog
Whole changelog is just too big for this post, so we put all changes in a single pastebin

Thank you for being with us for almost 6 years - we can't you all. Here's to a great future with Sipho!


[ 2023-09-30 21:59:48 CET ] [ Original post ]

Sipho 1.0 will come out of Early Access this September!

We are very happy to announce that Sipho will be coming out of Early Access this September of 2023!

[h2]The upcoming Sipho 1.0 will have:[/h2]


  • A new Mushroom-inspired Breed!
  • Wild new parts - Zooids!
  • Improved Enemy AI
  • Steam Workshop support for creations - Layouts
  • New soundtrack
  • Game translations to different languages
  • Visual and other various improvements - just can't name all of them here!

We have prepared a little teaser trailer to get you all hyped:
[previewyoutube=tQuay7qDZ0Q;full][/previewyoutube]What new things can you spot in the Trailer?

As Sipho comes out of Early Access its price will be increased to $18 USD or your regional equivalent upon launch. If you haven't tried Sipho yet - now is the last chance to get it for Early Access price.

The Time In Early Access
Sipho has come a long way since it entered Early Access. As we developed the game publicly, we tried to listen to player feedback and guide the game towards common vision. Creation contests have proven to be immensely valuable and uniting our whole community. Fostering such creativity in the game and outside of it has been our goal from the beginning. In the end, Sipho has become bigger and better than we expected it to be at the start. From what would have been made in 1 year of Early Access, we now have almost 5 years of love and labour put in. Thank you for your support and here's hope to another 5 years!

Thank you for following us for so long!


[ 2023-09-05 08:11:43 CET ] [ Original post ]

Poll: Which Zooids need improvements?

Hello Siphonophorians!

We're just inches away from Sipho 1.0 and there is still some time to improve our beloved Zooids. It would be very interesting to hear which Zooids, in your opinion, need the most work - so I've created a poll. Let me know which Zooids are the most underwhelming by moving them to the top/giving them the most points in the poll.

If you have additional comments or would like to participate in discussions - we have a lively discussion and some sneak-peaks into development of Sipho on our Discord or leave a comment under this announcement.

Cheers and keep on diving deeper,
Dominas


[ 2023-08-08 20:06:27 CET ] [ Original post ]

Sipho 0.9.5f2 Hotfix: Rebounce

A quick hotfix for players which experience only Head zooids spawning instead of fully grown enemies. This was caused by game not handling several invalid custom Layout cases which should be resolved now. All invalid layouts are moved to /Layouts/Invalid.
Version 0.9.5f2

  • More robust Layout importing
  • Fix old Cra'Than obstacles being referenced by several sprite atlases


[ 2023-05-04 09:47:28 CET ] [ Original post ]

Sipho 0.9.5 - Bounce Back

Hello Sipho society, we have an update!
[h2]Bounce Mutation[/h2]
Ever since the Mutation Creation Contest I've had this urge to implement a Bouncy Mutation. Many shoot-em-up games have this because bounciness is chaos and chaos is fun. You can land trick shots over corners, get surprised by enemy fire that bounces off or even create some Rube Goldberg machines. These are the ultimate goal of Sipho - a collection of mechanics that complement each other and allow creating complex systems for you to have fun with and beat the game.


A new Bounce Stat was added and a Mutation to go along with it

Thus the Bounce Stat has been added - as of now, only used by Projectile weapons - Flak, Sniper, Soul Eater and Sprayer. In the future other Zooids might support Bounce stat too, however, it can be trickier to balance as bounce can sometimes be non-beneficial.

One of benefits of having some Bounce is to guarantee your shots in tight areas. Now what do I use to reach that food?

For Projectiles Bounce works by keeping an internal counter of "remaining bounces". When a projectile hits a solid, non damageable object it checks if it has bounces left and bounces off if it does. If it doesn't - it dies as usual. This works with Obstacles and even with Spikes and Flails - projectiles can bounce off them!

[h2]Aquarium Obstacle Menu Overhaul[/h2]
One of the silent and huge updates we had some time ago was updating Aquarium content. This was motivated by the need to tidy-up obstacle names for future game translations and update the old content in general. As a result we now have a pretty nifty spawnable object categorization with previews:


Notice the pleasing column/row ratio

It is now also possible to change at which depth objects are spawned - on, below or above playable surfaces. In future, Decorations and Obstacles should become one category - as spawning Obstacles at non-collidable layers makes them Decorations and some Decorations can be interesting to collide with or even have some gameplay function.

Tooling, like changing depth or moving already spawned obstacles is also something I keep in mind.

[h2]Shady Business[/h2]
One of graphical improvements that I really wanted to do for a long time were shadows.

Fancy name for a simple thing - blurry black outlines that get thicker if an object covers another object from higher distance.

Sipho action happens in deep waters and I really want to emphasize the atmosphere of this depth. While 2D by definition does not have depth we can do some tricks. One of which is parallax to add depth to lower layers - the deeper things are, the less they "move" when camera moves. This trick only works for deeper than playable layer. Playable layer can't have parallax as it would creation confusion around collisions. Higher layer in theory could have parallax, but it felt too distracting. So to add some depth emphasis on all layers at once I added Ambient Occlusion effect. It can be tweaked in Graphics Options for your liking!

There is some good stuff hidden in the patch notes - movement improvements, performance optimisations for late game, secret features.

Version 0.9.5f1

  • Add Tier 3 Projectile weapon bounce mutation
  • Use Factions to determine what Mutations UI represents
  • Remove separate debuff drag logic and use stat-baed logic for Muck - fixes spazzing out
  • Modify third Buginis Boss arena walls to have less sharp corners that Siphos can get stuck on
  • Add Bounce stat, icons, description
  • Skill use also gets queried in Fixed Update - fixes skipping input for fast skills when framerate is low
  • Cache Shell Grower results which greatly improves performance for Siphos with large amount of far-reaching Chitins
  • Add GetAllNeighborZooids variant with HashSet which has optimized search for Contains()
  • Destructible objects can be indestructible


Version 0.9.4f8
  • Experimental symmetrical building by holding Alt button
  • Handle single zooid sipho velocities better when trying to move
  • Update angular velocity after zooid rotations were updated - fixes incorrect velocities at frame-after-frame level
  • Add ZooidDeep layer and use it for Deep zooid. Deep is no longer affected by Pushers and Twisters. Deep collides with large obstacles
  • Mines no longer explode on contact with Consumables


Version 0.9.4f7
  • Puffer spike thicker
  • Fix Auto Grow messing things up
  • Detached/Reattached zooids can get callback
  • Tweak Tank movement to work with new movement logic
  • Fix Moss glitching out in certain positions
  • Fix deformed built-in Buginis Layout "Rapacious Buginis Pig"
  • Use simpler logic to remove detached Zooid connections when repositioning zooids - fixes moving pistons erroring out
  • Fix incorrect angular velocity calculation of Siphos when passing through 360 degrees - fixes stutter when turning in Tank movement
  • Add Consumption flag to skills and make enemies use them to reach food quicker
  • Enemies use skills if their skill zooid is in range to the target
  • Grid spawner debug
  • Remove Whirlpool spawners from Aquarium areas
  • Experimental PID movement - F11 toggles
  • Detach Polyp when teleporting Sipho
  • Fix audio sliders being 99% by default, not 100%
  • Update Megalocyst description
  • Rename zooid files to contain Zooid_ prefix


Version 0.9.4f6
  • Update Graphics Connector position when initializing - fixes Graphics Connectors appearing in wrong positions for the first frame
  • Handle Layout generation positioning when main sipho is at zero position
  • Polyps do not damage dead damageables - fixes an error spam
  • Align Polyp mover icon with base
  • Do not attempt growing new zooid again when ending growth - fixes growing new zooids twice at once


Version 0.9.4f5
  • Fix Head zooids costing nutrition when they shouldn't
  • Display Health Regeneration stat value correctly
  • Tweak Decoration Coral 3 vertex animation
  • Fix two custom spawning related bugs - Aquarium spawns and desspawns should now persist
  • Select Layout preview generator position even more robustly
  • Initialize Zooids with correct indexes - fixes Piston incorrectly expanding/contracting when spawned
  • Override main Piston connection with thicker looking connection and non-main with thinner
  • Zooids can have Graphics Connector overrides for directions


Version 0.9.4f4
  • Brighten up Main Menu postprocessing effect
  • Use campaign spawners for Aquarium areas
  • Fix whilpool pop when Area Clears
  • Separate Ancient Rock bottom objects from Rocks
  • Make deep connections stiffer and correct outline depth
  • Alien Rock Bottom desaturates with depth
  • Wacky workaround for not spawning extra empty spaces for Spawnable box
  • Better Aquarium spawn groups and their UI panels
  • Cell fitter now supports max cell count constraint
  • Tweak Obstacle names
  • Tweak Cooldown Recovery powerup icon
  • Move Environment Object Variant info onto the same component
  • Set Aquarium background grid depth to spawnable depth


Version 0.9.4f3
  • Alien rock bottom is an obstacle now
  • Projectile starting health is determined by Penetration
  • Get unseen position for Sipho preview generator
  • Cancel snapshot generation when leaving death screen
  • Holes always spawn things at zero depth
  • Fix Alien Rock Bottoms overlapping other objects
  • Rocky spikeball won't spawn in regular levels yet
  • Tweak boss battle spawn positions
  • Environment Object shader again has option not to write to depth - fixes some effects overwriting depth
  • Use RectMask in Aquarium menu instead of per-pixel mask
  • Fix powerup effects and add missing icons
  • Display depth tooltip when selecting depth in aquarium
  • Reorder some spawnables in Aquarium UI
  • Don't localize intermediate env object names
  • Don't spam instanceID reimports
  • Fixup Leech NaNs?
  • Add Spike ball
  • Do not localize instances of prefabs as they can have random names
  • Flower decorations
  • Report when new localization keys are added
  • Correct Deeper Rock depths
  • Reset currents scale when scaling parent object - preserves correct Z
  • Fix Currents visuals
  • Alien rock bottom decoration tweaks
  • Translations
  • Prepend to filename tool
  • Add more decorations to spawn in Aquarium
  • Cleanup decorations
  • Lava Rock tops correctly inherit from prefab
  • Add capitalize function to asset renaming window
  • Do not localize environment object names directly
  • Aquarium spawning groups up objects with the same name into expandable categories
  • More obstacle cleanup
  • More obstacle cleaning up
  • Aquarium spawn effect has correct depth and group up spawnables
  • Bump year in Main Menu
  • New year - reimport all prefabs
  • Intestines tweak
  • Correct Piston skill icon
  • Minion siphos are very angry
  • Do not include backgrounds to Cra'Than sprite atlas
  • Add Cra'Than and Buginis environment sprites to atlases
  • Fix incorrect environment object world position calculation
  • Aquarium spawns at Mid depth (Z=0) by default
  • Fix energy regen pickup effect clouds rotating and clipping
  • Reenable Deep outline
  • Skin flowers are nasty again
  • Fix flower 2 visuals
  • Always output top facing normals for particle sprites
  • Vertex anim support for environment object shader (shouldn't be used though)
  • More names fix
  • Correct Aquarium depth slider values
  • Revert translations
  • Obstacles now have variants in their names
  • Dither fix again
  • Add Toggle UI button - default bind F12
  • Advena rocks use correct depth-supported material
  • Add depth spawning assets
  • Add recorder that works
  • Polyp Zooid descriptions and visual tweaks
  • Ripple particles have no size limit - they were incorrectly clamped before


Version 0.9.4f2
  • Same
  • Identifyable database uses assset postprocessor to setup references
  • Fix Decoration dithering
  • Disable double buffered positions - rotation constraint needs to be fixed first to be sure this has no additional drawbacks
  • Don't overtiffen rotation constraint when entering growth mode - currently it has incorrect values, so overtstiffing it breaks physics
  • Revert to more stable soft body constraint calculation
  • Allow changing depth when spawning in Aquarium
  • Leech uses interpolated Zooid transform position for graphics
  • Make sure renderer clones are removed
  • Revert translations
  • Add Debug dump all mutations
  • Gather identifyables when building


Version 0.9.4f1
  • Tweak depth layers
  • Ripples do not sample from things that have higher depth
  • Add alpha/depth dithering
  • Make Advena head selection bottom rocks stay at the bottom
  • Use environment shader functions in depth normals shader to get correctly aligned depth values
  • Fix Buginis Boss first boss fight particles not being spawned when the fight ends
  • Reset projectile health when initializing launched projectiles
  • Move skillbind permutations away from localized strings
  • Translation cleanup
  • Use all caps font in Dive button
  • Add Recorder package
  • Constraint tester v2
  • Extract distance constraint function
  • Use custom shader for rendering depth
  • Tweak AO default settings
  • Add Ambient Occlusion setting
  • Render Ripples at Low depth - fixes ripples overallping collidable objects
  • Environment Objects and Ripples write into depth
  • Enable Ambient Occlusion in Postprocessing Profiles
  • Correct offset falloff and handle inverse orientation
  • Better constraint tester
  • Add perpendicular function
  • Use interpolated Zooid transform positions instead of physics positions when positioning Zooid Growth buttons and Growth Point indicators - fixes them being offset when Sipho is edited in high motion
  • Fix some nested particle effects getting incorrectly scaled
  • Support more debug vectors
  • Extract Rotation constraint calculation method for easier debugging
  • Apparently I could save one normalization in rotation constraint - more Soft Body Physics performance!
  • Soften up sentence for The Condemned One and allow it to be included in builds
  • Apply position and rotation offsets after constraints are calculated - fixes symmetrical builds with contracting muscle zooids spinning out of control


[ 2023-05-03 09:43:58 CET ] [ Original post ]

Sipho 0.9.3 - New contest winning Mutations!

Looking through the whole changelog and thinking of "what should I outline for this update" really makes me want to have done this announcement one version ago. Nevertheless, we need to keep ourselves ahead, so here it is - another Sipho update!

In the spirit of celebrations, we have implemented some of new Mutation Contest winning entries. Specifically in this order - Phyllodermic, that reduces Drag stat of Zooids, EF5 Twister that turns Twister into a mild tornado and Reduplicating - which makes your projectile weapons shoot an extra projectile and hurt themselves for the right balance!

[h2]Loving our work[/h2]
Phyllodermic was the first one to be implemented as it seemed the simplest. We didn't have Drag as stat yet, it was a property of Zooid, so we moved its definition to a place where all stats are placed - into a huge ZooidStats data structure. That data structure is modified through all our Buffs and Mutations - meaning that we will also be able to change Drag with the new Mutation. Drag being a negative stat - that slows or "drags" your zooids down, is the first stat to have a negative effect. We had to implement a negative stat concept for Tooltips - increasing that should be a red coloured text as opposed to the rest of existing stats. Having done all that we send a huge thank you, Salreix, for this contest entry!

Phyllodermic reduces Drag by 33% and increases Max Health by 1, as if it was adding a slick layer!

[h2]Twisting mechanics[/h2]
The second mutation from the contest to be implemented was EF5 Twister. "EF5" is a highest, most destructive category for tornadoes, which is a very fitting name to our micro-tornado creating Zooid. Twister was designed with deep synergy with projectiles in mind - to carry them the extra distance to your target and to keep bombs, like Burstopod bombs, close to your foes. Looks like our players wanted some more OOMPH out of Twister so the Mutation was conceived. The idea was to allow Twister dealing damage as if it was a tornado. To implement that we have added an internal damage counter to its Swirls, which makes them deal damage per second equal to the Ranged Power stat on the Zooid. If Swirl kills anything, it gains +1 DPS as if it "absorbed" broken pieces of what it hit and loses 2% of its DPS when damaging something - it "lost" a part of things that deal damage. To balance high power scaling and not to allow Twister become a tornado with a few damage increasing Zooids like Agonizers, we have given it base Ranged Power reduction of 66.6%. That means each damage buff from Agonizers or Zenoplates that give +1 Ranged Power to connected Zooids will only give +0.33 Ranged Power to Twister.

The EF5 Mutation, being a Twister specific can be generous in damage increase, so it gives base +5 Ranged Power and +100% multiplier. Playtesting it has proven to be fun and interesting - it makes you attack less health-regenerating sides of your enemies and use environment Spike-balls for extra damage. Thank you, Vera, for this great concept!

[h2]Reduplicating work[/h2]
Finally, Reduplicating Mutation has been implemented. It makes Projectile (Flak, Sprayer, Sniper, Soul Eater), Bomb (Miner, Burstopod, Muck) and Cloud (Squirter) Zooids fire an extra projectile. This required some rewriting of our projectile-shooting code. Due to historic reasons and incremental development we had unique scripts for almost each Zooid. In year 2017 we started out with FlakWeapon script, which was used by Flak, Sprayer and Sniper zooids. Later on, in 2019 a more abstract LaunchObjectSkill was added for Twister and others. Being more abstract, LaunchObjectSkill was eventually used for more Zooids and become better maintained. To clean up some code, I've decided to migrate FlakWeapon zooids onto LaunchObjectSkill. Mostly everything went fine, we were even able to add little fire effects to each former FlakWeapon. There was a one big issue with Flak Zooid itself - it fired three projectiles already, but with different damage values. Initially Flak had 2 Ranged Power and fired three projectiles - two 1 damage and one 2 damage, which would add up to 4 damage in total - not what tooltip said, nor it made any sense as Flak had 2 Ranged Power. To stay as close to previous balance as possible, I've set values to mimic previous behaviour as close as possible and allow scaling through stats:

Now Flak has Ranged Power of 1.33 and Projectile Count 3 with 60% linear falloff - meaning that side projectiles deal 60% and centre ones deal 200% - 60% = 140%. In total, this rounds to 4 damage per shot.
A note for math enjoyers - the linear falloff creates a "house" looking curve with sum area of 1. With steeper side-damage-ratio the error can sum up to 7% because the function is evaluated per-projectile. In reality, this becomes negligible as damage values are high and rounded. From gameplay perspective, it's usually better to have single high damage projectile as it has more chances to kill a Zooid, so this rounding error can be considered a small nerf to extra projectiles for Flak. So far, other projectile weapons have constant damage across all launched projectiles.

Now that all shooting Zooids have been migrated onto we were able to implement Reduplicating Mutation:

The Reduiplicating Mutation is quite powerful and gives +1 Projectile Count, essentially multiplying your damage output. And there's this broken heart thin- What's this "Strain" stat?

[h2]Strain stat[/h2]
To balance already powerful ranged weapons and not scale them ad infinitum with another cool Mutation, a Strain stat has been added. Its behaviour might change in the future and the current version is quite radically fun:
Zooids with Strain stat will receive damage equal to the Strain value on skill use. Meaning that Sniper weapon with 5 strain will lose 5 health per shot. Then, each neighbour of Strained zooid will receive Strain-1 damage - so the Sniper's neighbour will receive 4 damage. And then further neighbours will get damaged, until Strain damage reaches zero.
This means that if you decide to make your ranged weapon more powerful you will have to balance this extra damage with additional healing - either Health Regeneration or Chitin's Shell. Yes, Chitin blocks this damage and even though it feels like the Strain should be "below" the shell, it makes it up with interesting synergy between Chitin and Strain.
A very graphic example of 5 x Reduplicating Mutation Straining Flak
We might use Strain in other places as well - I think it would be interesting to see Soul Eater have 1 Strain if it gets shot empty - this would encourage filling it up and add a bit of strategy to Pusher/Twister and Soul Eater combo. Zooids like Radial, which regenerates Energy when damage could benefit from this anti-stat.

That's it for now, enjoy Sipho and let us know what you think!

Version 0.9.2f1

  • Fix Muscle Zooid trying to get its Siphonophore while being uninitialized
  • Twister EF5 Mutation
  • Twister effects
  • Use stat relevancy for displaying stats in descriptions
  • Twister can very inefficiently do damage
  • Melee Grade 4 Mutation reduces Drag and rebalance Powerup Addiction Mutation
  • Add Charge and Reach Stat icons
  • Add Phyllodermic Mutation that decreases Zooid Drag
  • Flail respects Drag stat change
  • Fix Buffing zooids not being notified of stats changed
  • Zooid Mass and Drag are now Stats
  • Scale Puffer transform correctly
  • Restore Puffer to having 16 connection angles
  • Update Siphonophore RecentWealth immediately if Wealth changes to higher - fixes Aquarium spawners initially spawning empty heads
  • Support Polyp-only siphos
  • Siphonophores no longer store unused stats
  • Update 2D packages
  • Muscle Zooids change distance by absolute values - makes Piston and Puffer bit more reliable
  • New Zooid visual tests
  • Expand Piston connections only for main connection Zooid
  • Fix Flail wind-up which would send Flail flying forward when its retracted
  • Update volatile stats when updating structure
  • Update credits
  • Advena mover Radial applies Energy Regeneration buff instead of instantly granting 10 energy per damage point
  • Make Energy Orb tooltip dynamic so it always refreshes
  • Polyp damages Zooids it's attached to
  • Add option to not destroy projectiles on chip
  • Add Skill energy cost scaling support
  • Revert back to old pusher behavior - push force vectors are collinear when pushing and concentric when pulling
  • Projectiles remember pierced colliders
  • Launch objects at offset distance by launch angle instead of fixed point
  • Save manually spawned enemies in Aquarium
  • Remove Mutations from built-in Layouts
  • Try to fix neighbors stored in Layouts when loading

Version 0.9.3f1
  • Essence of the Elders reduces Strain
  • Tweak Twister damage
  • Deal Strain damage on the next frame - won't require dealing with dead Zooids mid-skill activation
  • Add Reduplicating Mutation and its icon - fire extra Projectile, but have increased Strain
  • Flak, Sprayer and Sniper are now using Launch Object Skill and supports multiple projectiles per shot. Add new shot effects
  • Use Projectile Count stat with Launch Object Skill Zooids - Burstopod, Twister, Soul Eater, Muck, Squirter
  • Use generic launch object skill instead of poison sack for Squirters
  • Display multiplied values when displaying buffs and Mutations
  • Add Strain stat - using skill with deal damage to the Zooid itself and with fall-off to its Neighbors. Add Strain Icon
  • Twister Grade 4 Mutation gives base damage 2.5 as well
  • Twister starts with 2 Penetration (up from 0), lower inherent Twister damage downscale to -300% (from -400%). Twister Swirls that destroy things increase their internal Damage Per Second by 1. Swirls that deal damage lose 2% of their DPS
  • Earthy Blossoms Area: Spawn mossy bricks only in deeper layers and bright bricks in top layer
  • Do not apply energy regen percentage buffs if Zooid doesn't have base energy regen - reduces possible permutations for Intercirculatic Mutation
  • Parallelize soft body mass inversion calculation for 1% performance improvement
  • Fade-in soft body deformations instead of having them instant
  • Split some of Projectile logic into separate scripts for modularity
  • Allow offsetting random time per zooid renderer - more visual variety for animations
[h3]Bugfixes:[/h3]

  • Delay stat change update to the next frame on Zooid to prevent stack overflow
  • Fix Shell created effect appearing in wrong places
  • Remove hack in zooid shader which made zooids fully opaque if they were black
  • Fix Twister incorrectly counting objects that haven't been damaged as pierced
  • Handle Leeches dying from leeching on their targets
  • Premultiply alpha of all Zooid and Environment sprites that do not have semi-transparent parts. Fixes white outlines on some sprites. Was especially visible in Advena areas
  • Fix negative stat change multiplier display percentage

Version 0.9.3f2
  • Launch Flak, Sniper and Sprayer projectiles at full speed and have no extra force for the same behavior as before
  • Build

Version 0.9.3f3
  • Scale extra Flak projectiles in a similar way they've been scaled with old Flak Weapon behavior

Version 0.9.3f4
  • Update Flak description
  • Cleanup Zooid descriptions and add Projectile Count stat
  • Scale Zooid add-force-over-frames added force linearly instead of applying constant force until all force is applied
  • Deal Strain damage over time

Version 0.9.3f5
  • Correct Flak damage distribution


[ 2022-12-01 20:33:02 CET ] [ Original post ]

Announcing the Winners of Mutation Design Contest!

Halloween has quickly passed and have finally tallied all of the Mutation Creation Contest results!
Considering the difficulty of the challenge - designing Mutations that are only experienced while deep in the game, the Sipho community has proven to be adamant with 9 entries in total!

Choosing the winner
We have realised that objectively choosing a single winner out of all entries would be impossible - high majority of the ideas fit perfectly in the game. And we can only tell if presented ideas are going to work is by implementing them. We have decided to award all of the participants as most entries differ by their presentation, while underlying ideas are pretty solid. We want our competitions to be a celebration for the community and inspire future participation. We have commented each entry how we imagine these ideas in the game by order of their submission:

[h2]Injector[/h2]
Steam Entry by Earwig Incorporated

This Mutation turns Spike into a debuffing Zooid that specifically counters Chitin Shell passive ability - growing Shells on other Zooids and protecting them from damage. We could see this effect on more Zooids than just Spike - Shells do tend to get out of control in later Epochs.

[h2]Loitering Leach[/h2]
Discord Entry by skipydog

Effects:
+ 75% range
+ 1 penetration
- 50% energy usage (-100%)
- 66% autotracking (-150%)
- 30% stiffness (leach tip lags behind movement)
- Zooid is permanently activated

The goal of this mutation is to transform leach type zoids into one where the leech lazily "hangs around", like the stinger of a jellyfish but still just as deadly, where prey that happen to get caught in it are leeched of their blood instead of stung!

A punny play on words, this Mutation turns Leeches into jellyfish-like tentacles that sting on touch. This sounds like a great idea that could synergize well with fast-moving Siphos. Furthermore, Leech tentacles could be affected by Pushers and Twisters as well. That would give player control to extend limp Leeches further as they would lack stiffness with this Mutation. Definitely worth of thinking about and giving some extra work on Leech physical interactions with the world.

[h2]Reduplicating Combat[/h2]
Discord Entry by Moff
[table noborder=1][tr][td][/td][td]
Only affects zooids that make projectiles. Affected zooids include: Flak, Sprayer, Sniper, Soul Eater and all forms of Mine or Bomb laying Zooids.
When a zooid affected with this Mutation fires a projectile, the stimulating properties cause the Zooid's generating properties to bolster, making it fire an additional projectile per volley. This boost however cannot be maintained for long as the mutation is actively hindering the zooid and its healing ability

Reduces Energy Efficiency by 15%, and the Healing Efficiency of all affected Combat Zooids. Snacks and Nutrition will heal affected zooids less
[/td][/tr][/table]
The classic extra-bullet per bullet take with a twist - at the expense of reduced healing and Energy efficiency. Ranged weapons are inherently very strong - most of them can safely damage their prey while being far away from the danger. To balance that, proposed drawbacks help limiting the damage potential - with reduced energy efficiency and increasing the risk - with reduced healing effect. We could push this further by making affected weapon damage its neighbours while firing - as if it was leeching life-force to create additional stings or bombs to fire. This could be mitigated with healing and regeneration Mutations. This could open up interesting synergies with Zooids that activate their passive abilities after being damaged - one of which is Advena's Radial mover that regenerates Energy after being damaged.

[h2]The Ramak[/h2]
Steam Entry by buzzart30

As a Mutation, The Ramak appears to be a conversion of Nervefiber into a self-sufficient damaging Zooid. Imagine a ball of Ramaks slowly approaching their enemies - sounds like some body-horror blob of death. We will keep this entry as a separate Zooid idea.

[h2]Phyllodermic Utility[/h2]
Discord Entry by Salreix Von Otsuu

A mutation for weapons and utility based on the dermal denticles that sharks have for reducing drag (hence the name translating to leaf-skinned because some denticles resemble leaves, idk)
Loving the biological basis for this Mutation! Physical Drag reduction Mutation was one of the things we were thinking about of introducing into Mutation pool and this idea hits the right spot. The very subtle +1 Max Health hints of Zooid getting an additional layer of skin - one that makes them move better in the water.

[h2]Adhesive[/h2]
Discord Entry by Vera the Wut Worshipper

Grade IV Mutation for Burstopod, Miner, and Muck

Effects:
- +1 penetration (if applicable)
- +2 ranged power (if applicable)
- +50% range
- 50% slower cooldown
- Zooid projectiles no longer detonate on their own, instead eventually fizzling out after a while.
- Zooid projectiles gain the ability to attach to enemy siphos, detonating after a short period of time after attaching.

This mutation aims to turn the Miner into a weapon that you can use on its own, and the Burstopod into a better weapon. Muck also becomes more useful at slowing down enemy siphos, because the attached mines will mess with their "aerodynamics".

Another classic mechanic entry with a suggestion of sticky, or rather, Adhesive mechanic - with a twist of Mines and Bombs becoming a bit less volatile until they get stuck on objects. Shaking those bad boys off would be hard. So we're thinking that initially the Adhesive force would be weaker and additional stacks would increase the strength of the effect - giving player and its enemies a chance to "shake off" stuck bombs early and additional stacks creating more sticky situations.

[h2]EF5 Twister[/h2]
Discord Entry by Vera the Wut Worshipper

Grade IV Mutation for, you guessed it, the Twister.

Effects:
- +1 cooldown (100% slower cooldown)
- More energy usage
- Swirls move slower
- Swirls pull and push things more violently
- Swirls now deal damage to things that are inside them, akin to poison. This makes them affected by mutations/zooids that affect penetration and ranged power, they have a base ranged power of 3 and a base penetration of 0.
- Swirls have a "dustier" appearance, similar to a tornado, to differentiate them from normal swirls.

This mutation, like the one I submitted before it, also aims to turn a utility into a weapon. I feel this mutation would help the Vagorians' lack of weaponry to use, having only the inconsistent burstopod to rely on most of the time.

An attempt to give a deadly power to Twister, a harmless Utility Zooid that creates twists of currents that carry things around, is a welcome attempt. While this Mutation could reduce Twister synergy with Burstopod and Projectile weapons as it would destroy projectiles inside of it, we could make those destroyed projectiles "feed" into the twister, increasing its passive damage. So the play would be keeping the Swirl alive with by releasing additional Swirls and feeding it various objects so it becomes more "dusty" and dangerous.

[h2]Unrelenting Grabber[/h2] Discord Entry by Moff
[table noborder=1][tr][td][/td][td]Affects Grabber.
Effects:
- +25% range
- +5% energy cost
- +2 seconds to cooldown
- Reduces the grabber damage to zero
- Grabber no longer retracts automatically. Instead it stays stuck in the zooid it hit. You can reel in the enemy sipho by holding down the grabber keybind. doing so costs energy.
- The grabber will not start cooldown until fully retracted
[/td][/tr][/table]
Grabber is a very special Zooid that we keep looking for ways to improve - it is chaotic and often does more harm than good - pulling in a spiky ball from offscreen is rarely fun for the player. This Mutation changes how Grabber would work - turning a meme machine into a more controllable and reliable gap-closing Utility Zooid. We might not have this as a Mutation, we might just change how the Grabber works - control and reliability is very important in the physically janky world of Sipho.

[h2]Noodle Piston[/h2]
Steam Entry by Mr Gaymer
[table noborder=1][tr][td]
[/td][td]
Affects Piston.
Effects:
- The pistons connections become weak like the one between the flails base and spike ball when the piston expands
- +350% energy cost
[/td][/tr][/table]
This entry cracks us up as it is a Mutation for a Zooid that doesn't exist yet. At least officially. Piston Zooid is an experimental Zooid, hidden deep in game files and in historical development test builds. We tested how could new "squishy" physics work with muscle Zooids - that can extend and contract their connections. And they do somewhat work - their quick and hacky implementation makes them extend one of their connections further away - allowing player to change their shape on a whim. They could be used as muscles for opening "jaws" without needing to change layout. There are some technical challenges with making connections weaker - Zooids can become tied-up in a disorderly ball if their connections are loose enough. Before we implement Piston or any other kind of Muscle Zooid, we will keep this Mutation in our hearts. Figuratively.

[h2]Thank you all for the participation![/h2]
Dear Earwig Incorporated, skipydog, Moff, buzzart30, Salreix Von Otsuu, Vera the Wut Worshipper and Mr Gaymer, we are very humbled and thankful for your participation in this event! The support is immense and we love making Sipho a better game for you! We will be contacting Discord entry authors on Discord. Steam users - please contact us on sipho@allpartsconnected.com, by messaging Dominas or on Discord to receive your prize!

Speaking of support, we have a community-ran Wiki page that you can participate on. It is pretty fresh, but the content is solid - waiting for more additions. We also discuss Wiki matters and other Sipho development topics most actively on our Discord server.


[ 2022-11-06 20:03:08 CET ] [ Original post ]

Sipho 0.9.1 - Bugfixes and preparations

This update brings small bugfixes and some hidden code refactors to make Sipho a bit more extensible for future Zooids.

There is a one notable fix to how dive-awarded Mutations were applied. They were given to the player when they should have been applied to enemies. Newly spawned enemies would get their Mutations correctly, but since the player never dies, player accumulated them by surviving. Saving and re-loading would apply correct player Mutations. This was noticeable by player being weaker after save reload. The outcome of this fix makes New Game plus a bit harder. The upside of that is that we can add more powerful Grade IV Mutations that will help the player a bit more in the future. Big thanks to our player who reported it.

And a reminder - our Mutation Design Contest is still on-going and gives you a chance to win Sipho keys for you or your friends!

[h2]Version 0.9.1f1[/h2]


  • Always update Sipho stats in Growth mode so energy regeneration and other values do not get stale
  • Attempt to fix spooky growth point null ref bug
  • Grabber remembers what damageables it has pierced
  • Pierce objects one-frame early with Grabber so the tip doesn't stop when piercing
  • Sync Muck cloud particle lifetime with its effect better
  • Award all unlocked achievements that are saved in files on launch
  • Fix Mutation Manager applying mutations to player when they should be applied to correct Faction when adding new mutations
  • Workaround not getting Steamworks callback for enabling us to report Achievements
  • Pusher supports negative force
  • Polyp uses Fixed Joint
  • Polyp correctly attaches to surfaces and aligns to their normal
  • Polyp applies strong energy buff when attached to a surface
  • Track enemies in defined areas instead of globally in Buginis boss fight 3 - prevents soft-locks if there are enemies in unreachable areas
  • Add 3 second spawn delay to Reward consumables so they aren't accidentally picked up so easily after spawn
  • Highlight Mutation zooids on UI select
  • Update ignored zooid collisions when repositioning zooids correctly
  • Use strict initialization path for ZooidComponents
  • Fix Aquarium Spawners not saving spawned things due to inconsistent ID
  • Fix Polyp connection angles
  • Leeches hold things better


[ 2022-10-26 19:41:42 CET ] [ Original post ]

Halloween Mutation Creation contest!

Have you ever had ideas for new spooky and creepy Mutations? Now there is a chance - we announce The Halloween Mutation Creation contest!

If you need inspiration, you could think of how you would like to see certain Zooids act differently and what needs to be changed. For example - if you wished to have dozens of passive Spikes that are good enough just to sit on your structure Zooids while you ram your enemies your wish could be a Mutation: Reduce Spike Mass, Drag, Range and Cooldown Recovery and it becomes a stationary, passive Spike, which can be placed all around your Sipho. You can also read more about Mutations in our Mutations update announcement.

Mutations can be seen as Zooid ideas which are not unique or distinct enough to become physical Zooids. This type of thinking allows taking some of those ideas and creating them as Mutations. Or creating Mutations that shift existing Zooids into their idea counterparts. This changes how your Sipho is laid-out and that is what makes Mutations and replaying the game interesting.

There are some design limitations - Mutations need to stack to not make their usefulness limited. If you wish to negate some of existing Zooid functionality you could play around with Stats as in previous Spike example. Adding negative Stat allows to shape Mutated Zooid into playstyle you want. And those Stat reductions can be alleviated with other Mutations, allowing player with a certain Mutation combo have a very powerful Sipho.

[h2]How to participate[/h2]
Think of a Mutation that changes the way you would play the game and write that down. You can also use Aquarium and create a Layout that shows how your Mutation is used. Creative freedom is yours! After your are ready to share the idea, post it in our Discord or on Steam's Artwork page. Most unique and technically achievable ideas will be remade in the game!

You don't have to be a professional designer to participate in this event. A basic doodle on a napkin and a description of Mutation effects are enough for us to pick it up and get it into the game. Anyone can participate. Although if you haven't played Sipho before, be sure to check videos or screenshots to get familiar with its world and creatures.

[h2]Basic guidelines:[/h2]


  • Describe Mutation effects - try using existing Stats, Buffs and other mechanics or come up with new ones. If the idea is chosen - we will come up how to implement it!
  • These effects should stack - picking up designed Mutation for second time should make its effects stronger
  • Describe which or what kind of Zooids are affected - type of zooids, breed or specific Zooids. For example: Weapon type Zooids, Weapons that shoot projectiles, Weapons, Advena breed Zooids, Grabber
  • Provide a sketch or a screenshot with Layout string of a Sipho that uses this Mutation - if your Mutation is chosen to be added to the game, we will also include the Layout
  • You can also draw an icon for the Mutation - it will not be judged, but will be a welcome addition. Make sure it is not subject to copyright and by providing it you allow it, or modified form of it, to be used in the game
  • More unique and technically achievable Mutations will be judged better. Cleverly using existing game mechanics are much more welcome
  • Post your entry on Sipho's Artwork section. If you can't post it there, leave a comment with a link here or post it on our Discord
  • Multiple contest entries are allowed

[h2]Have fun![/h2]

Our team will pick one or more winning designs right after the end of this event.
Winners will be awarded with Sipho Steam keys and their name in the credits.

The event ends at November 1st, 00:00 UTC


[ 2022-10-23 07:40:05 CET ] [ Original post ]

Sipho 0.9.0 - A new Epoch begins!

The deep waters have changed - what was once a simple endless loop of growing, adapting, eliminating your foes and resting is no more. Instead of laying down your Zooids after finishing the game you will now be able to repeat your journey in a new Epoch. Some may call it a New Game Plus!

Each new Epoch starts after your long slumber, getting a wake up call to climb back onto the top of the food chain. After your first Epoch, Nature starts to Mutate and shift towards chaos. Each dive brings new Mutations to your foes and each Boss kill awards you with a choice of one. Alpha creatures also reward you with a choice of Mutation - but beware, the one that isn't picked gets applied to the rest of the creatures.

That is some highly mutated Sipho right there

New Epochs and Mutations will give new opportunities to experiment with builds that were not possible before - some Mutations may even change Zooid properties that affect their placement. Other Mutations will simply make you faster, stronger or prolong buff durations!


Gameplay Changes
Your run will no longer be ending in the area after the last boss. You can choose to roam The Open Waters (formerly Freeroam) and fight your former creations freely, but entering a Whirlpool will again bring you to a first Level. You will be stripped of Nutrition, but will not lose anything that has been Adapted or Mutated. A new Epoch will begin.

In following Epochs Mutations are introduced - permanent buffs that stack and affect your colony in different ways. Currently there are 4 Grades of Mutations with increasing effect with each Grade:

  • Grade I: Usually affects all Zooids. These Mutations are weak, but can stack up quickly if combined with other Mutations.
  • Grade II: A group of Zooids is affected - either whole Breed or type of Zooid - Combat, Movement, Utility, Structure. These Mutations can enhance your strategy or allow shifting it towards previously non-viable one. These Mutations have stronger effect than Grade I.
  • Grade III: Affects specific Zooids and have strong effects. Some stats, like the new Neighbor Reach stat will increase how far, for example Zenoplate, Splitter or Greaser buff their Neighbors - a strong effect which even affects how your Sipho is shaped.
  • Grade IV: Affects specific Zooids with very strong effect and can have drawbacks. Designed to change your playstyle and strategy. Negative effects can be countered with lower Grade Mutations.


Mutations can be acquired and will be applied to Enemies in different ways:
  • Each dive to a deeper Level awards enemies with Grade I and II Mutations - the difficulty gradually increases, keeping you on your toes.
  • Each non-boss, non Level 1 and not The Open Waters level will have an Alpha creature spawned which will be Mutated with two additional Grade I-III Mutations. Killing it will allow you to choose one to keep and another to give to your opponents. A risk-reward opportunity to make your Sipho even stronger.
  • In addition to Zooids, regular bosses will drop Grade I-III Mutations and the final boss will award you with Grade III-IV Mutations.

As you might notice, Grade IV Mutations are never awarded to Enemies - this is intentional as this allows us designing more game-breaking mechanics without compromising the difficulty. We can never be certain that there will be enough counter-Mutations for adverse Grade IV effects and Layout designs so that Enemies stay competitive and varied. For example, some built-in designs can be broken with Grade IV Mutation which increases Spike Damage by 500%, but reduces Range to close to 0.

Layouts that have been Autosaved will retain Mutation information. This will preserve Mutation context in which that Layout works. In the future, we will add Layout Mutation manipulation to Aquarium so irrelevant Mutations can be stripped off or new ones added.

Changelog
You can find the long list of changes on Pastebin.

These new additions are massive and best explained while playing the game. Don't hesitate, jump in Sipho and let us know how you like them.

The future
This 0.9.0 update marks a huge leap forward and little remaining steps towards Sipho 1.0.0. Development will not be slowing down - in the near future we will be polishing up remaining boss fights, improving enemy AI and getting ready to come out of Early Access. More on these news will come soon. For now we are prototyping new Breed.
If you are interested how the game is made, we sometimes stream development on Twitch
Join our Discord community if you wish to chat with other players, share your strategies or creations and gives us feedback on early builds!


[ 2022-10-14 09:38:59 CET ] [ Original post ]

Sipho 0.8.3f4 Hotfix

Fix whoopsie and random errors that have surfaced after engine update. Enjoy!
Version 0.8.3f4

  • Handle unplugging input device if it was plugged in before
  • Fix Steam not initialized errors
  • Fix projectiles never dying if they keep colliding with triggers. Also gradually kill off projectiles that are slower than 50% of their intended velocity


[ 2022-04-27 20:10:27 CET ] [ Original post ]

Sipho 0.8.3 - Layout browser improvements

This update marks a new step towards Layout management as we have envisioned.

Layout Browser now displays previews of layouts which makes layout management much more pleasant and allows to see what is going to be grown without exiting the window.

It works by Layout Window requesting for previews of displayed layouts and the Layout Preview Generator either provides existing layouts or queues a request to render a preview for layout. Then Siphos are spawned in the background to have their layout image taken. Selected layouts take priority and no longer displayed layouts without previews have their requests automatically retracted. Large siphos grow over several frames to not resource hog the game, so some may take several frames to render a preview. If you have a very low memory machine you can reduce the number of cached layouts in options menu.

Descriptions can now be added to saved layouts in Layout Browser, allowing to describe lore or intended strategy of the layout. Descriptions are included in exported layout data.

We now also track kills of the layout in Campaign mode. It should be an interesting trivia to look after at some time - who is your greatest nemesis?

In the future, we hope to speed up Layout preview generation process by saving generated previews as files on disk, so they don't have to be regenerated every time the game is opened. This would also allow us to embed layouts in images and allow sharing images instead of just layout text.

We have made some notable mechanical changes:


  • Projectiles now have their "age" reset after being bounced-off a surface. This mainly happens in Cra'Than zones and could make some interesting interactions by using walls to reach enemies further away or around corner
  • Flail base now has smaller collider than its "head" - this means that now Flail zooid, when retracted, fully blocks attacks from the front. It is, however, still susceptible to poison or flanking attacks, but it should have some interesting defensive properties now.
  • Speaking of Flails, a new movement type has been introduced called "Twin Stick Spin" - it allows having a free spinning Sipho, which allows "windmilling" with multiple flails. Holding Right/Left buttons makes Sipho spin clockwise or counterclockwise, Forward/Backward buttons move it to or from where the mouse is pointing at.


We have seen reports of Sipho not running well on new Macbooks (M1 architecture). We have updated engine and plugins to newest versions which fixes several issues - UI glitches and Steam support.

Time to tidy up all those autosaved layouts and take a Flail for a spin!

Version 0.8.3f3
  • Clone Advena boss 3 layouts properly
  • Include Warden of The Depths in Layout Browser
  • Fix exceptions if game is exited while previews are being generated
  • Update Unity packages


Version 0.8.3f2
  • Tweak Layout browser spacing
  • Select neighbor Layout Browser entry if selected one disappears
  • Fix Layout Browser search getting defocused when it filters new Layout results
  • Tone down description colors in Layout browser
  • Lock input when editing Layout description


Version 0.8.3f1
  • Layout browser size tweaks
  • Show more statistics and description of Layout in Layout Browser
  • Layout Browser improvements
  • Better way of detecting if renderer cloner can be moved or will it be destroyed
  • Update engine to 2021.3.0f1
  • Fix copy-paste typo in handling Sipho change of Campaign Logic


Version 0.8.3a3
  • Update Unity version to 2020.3.33f1


Version 0.8.3a2
  • Update Steamworks.NET to 20.1.0 Package
  • Fix null ref exception in zooid graphics initialize if no Camera Follow is existing
  • Make Flail base collider much smaller so the Ball part covers it completely from projectiles
  • More refactoring to support separate Zooid Physical and logical radii
  • Handle player death Layout kill tracking when there's no killer
  • Separate Zooid Radius from Physical Radius to support arbitrarily sized Zooid colliders
  • Reset projectile age if it bounces or slips off a surface
  • Fix Cra'Than Environment Holes bugging out if spawned in zero timescale
  • Fix weird built-in layouts
  • Basic kill/deaths info in Layout selection
  • Include layout name in Sipho death logs
  • Put UI icons to an atlas
  • Add Skull icon
  • Track layouts that are killed by player and which ones kill the player
  • Track all Layout Guids in Layout Database
  • Add compressed layout format for exporting Layout strings
  • Fix Layout browser selection scrolling
  • Add Global Unique Identifier to Layouts
  • Tweak how Layout Browser looks
  • Make current Sipho Layout information panel buttons selectable only in Growth mode
  • Fix keyboard/controller navigation in Layout Browser not selecting layout type toggles
  • Use Linear color space for rendering Layout Previews
  • Show player's layout evolution when player dies
  • Invoke Zooid kill callback before zooid is removed from its Sipho
  • - Layout saving refactor
  • Add Realtime Preview generation priority which renders preview while gameplay is unpaused
  • Track player's Layout evolution throughout Campaign play session. Does not persist through restarts yet
  • Add more layout hash tests
  • Approximate Layout hashes are order-independent
  • Add OnKilledSipho callback for Siphos
  • Disable Random Motor Speed component when pooling
  • Cleanup tutorial code which used old ways of updating Layouts
  • Try rendering High Priority Layout previews as soon as possible
  • Add Approximate Hash calculation for Layouts
  • Clean up several built-in layouts
  • Block Tooltip raycasts below Layout Browser
  • Sort layouts consistently


Version 0.8.3a1
  • Automatically determine Layout Preview resoltion
  • Add Layout Preview Cache Size and Resolution settings to Graphics Options Menu
  • Cull Layout browser elements according to their visibility in viewport. Prioritize preview for selected Layout
  • Use rigid mode for preview generator Siphos
  • Grow layout preview Siphos over time instead of stalling to grow whole layout instantly
  • Generated Layout previews are transparent
  • Add Layout generator which generates Layout previews for Layout browser while the game is paused
  • Add Twin Stick Spin movement type convenient for round Siphos
  • Menu Stacks are local


[ 2022-04-23 15:16:40 CET ] [ Original post ]

Sipho 0.8.2 - Better performance, more synergy and new effects

This update brings polish to various parts of Sipho.

Most notably - performance, which after latest physics update has not been as good as with older physics. It was expected as calculations are now more complex, but reports have shown that some players were unable to play in certain parts of the game. We would have left optimisation phase for 1.0 release, but we tackled this issue now, as we want to keep the game as accessible as possible. Not only we have spent time improving physics calculations related code, but also optimised other parts of the game to give more CPU room for physics to run.

Some of Powerup effects were quite dated - coming from the older times when Powerups have been just introduced and never changed since. Other effects were placeholders which weren't replaced for a while. We took an opportunity to make visual effects more consistent and fit a more realistically into Sipho world.

We are always looking for ways to improve mechanics in the game by tying up different zooids with synergies. Either through stats or other more interesting interactions. Thus we have finally added support for Leech and Energy Leech to benefit from Penetration stat. Leeches will now slurp on more targets as Penetration stat scales. The leech graphics behaviour had been also updated which looks quite satisfying.

New Powerup effects and Buffed Leech in action.

Another, more fringe mechanic was added to Sniper zooid. We wanted to try this for a long time and while Sniper was already a strong zooid due to its ranged capabilities, it didn't differ much from other projectile weapons. We made its projectiles carry status effects. Sniper Projectiles can now be imbued with Sizzler energy, can be Poisoned or Mucked if they pass through a cloud and carry these effects onto targets as if the Sniper's owner was applying them. This makes fighting with Sniper more interesting - your damage type depends on what you are fighting. Or you can come up with elaborate Layouts to imbue your projectiles with deadly effects.

Version 0.8.2f1

  • Make Sizzler and Muck damage logic based on Reactions - this allows doing damage when Muck is applied after Stun and allows Sniper projectiles to carry this effect
  • Buffs can now react to each other
  • Change Soul Eater base Penetration stat to 3 and scale additional stat increases by 300% - 1 additional stat increase would actually increase Penetration by 3
  • Wait one frame after activating a skill before activating another so that it's easier to time ordered skill use


Version 0.8.2a4
  • Add Damage powerup remove effect
  • Dirty prefabs
  • Add fade-out effects for Cooldown Reduction and Cra'Than powerups
  • Sizzler now damages Damageables other than Zooids if they are Mucked
  • Reduce Sizzler penetration base value to 4
  • Update Sniper description
  • Sipho Eggs do not explode on contact if they're stunned
  • Food containers and Sipho eggs can now be debuffed
  • Sniper projectiles now carry over debuffs to their targets
  • Add IDamager interface for damage callbacks and use it with Projectile
  • Allow BuffManager have no zooid.
  • Tweak Powerup effects
  • Fade out ripple effects when entering growth mode
  • Increase size of deformable parallel job batches to reduce overhead caused by the job system - fast machines are already fast at this and slower ones will benefit from less overhead
  • Pre-calculate inverse mass ratios outside of soft body loop
  • Normalize constraint direction
  • Use regular lerp instead of slerp for slightly faster orientation lerping
  • Optimize soft body calculations by not converting rotations to angles and back
  • Add Slerp for lerping orientations


Version 0.8.2a3
  • Initialize GraphicsConnectorSystem on BeforeSceneLoad rather than BeforeSplashScreen


Version 0.8.2a2
  • Saenus Boss 3 enemies are now more goal-oriented (to kill the player)
  • Cra'Than powerup effect is now black
  • More robust leech calculations
  • Use Frame Skipper for Boid-based boss ability checks
  • Use Frame Skipper to skip pulling in consumables with Eaters
  • Fix Cra'Than holes not counting their spawn time correctly after FrameSkipper changes
  • Jobify GraphicsConnector position updating
  • Fix FixedFramSkipper not skipping frames correctly. Add utility method to check for skips
  • Remove unused EaterGraphic script
  • Add method to remove script from all prefabs
  • Execute Deformable Fixed Update latest in the frame so it has time to complete Deformation Jobs
  • Add performance log to GraphicsConnector update
  • Optimize Zooid consumable consumption search - now they will only try to consume if Siphonophore overlaps nearby food by its radius
  • Optimize Zooid Overlay controller
  • Fix leech weapon accessing position of dead zooid in rare cases


Version 0.8.2a1
  • Add teleport delta to leech tongue positions when Sipho is teleported
  • New Powerup effects that fit in better in the world.
  • Speed Powerup effect is now a cool shadow instead of blue sparks
  • Renderer cloner can now clone Sprites onto Particle Systems as well
  • Allow Following Effects not have Particle System
  • More leech polish
  • Improve leech graphics
  • Update leech graphics
  • Leeches now attach to multiple victims based on their Penetration stat
  • WIP Leech Penetration support
  • Fix Cra'Than Holes spawning things after they have been disabled. Also simplify some other components that get disabled when pooled
  • Advena boss 3 ungrows zooids only if there are enough poison stacks to kill
  • Bump year :^)
  • Mines (Poison and Muck mines) don't explode when touched by Bombs (Burstopods)
  • Avoid infinity and NaN in recent wealth
  • Add Optional Debug to Reward On Death
  • Move tooltip scripts to separate folder
  • Correctly get world corner tooltip positions for non 16 by 9 screen resolutions. Correctly calculate tooltip direction for world objects
  • Allow getting key down if Input Manager is null
  • Make it easier to hover mouse over Zooid unlock pickup by adding larger UI collider


[ 2022-02-28 21:22:50 CET ] [ Original post ]

Sipho Version 0.8.1f1 hotfix is here!

Version 0.8.1f1

  • Complete soft-body constraint calculations earlier if constraint errors are below threshol - should significantly improve physics performance
  • Fix null exception when event zooid dropping Sipho is killed after player is already dead
  • Fix whirlpools getting NaN size when spawning at the same time as level ends


[ 2021-12-26 15:03:16 CET ] [ Original post ]

Squishy Physics are now in Sipho 0.8.0!

Oh boy, what a journey this was. The short version of the story is - Sipho physics are now different - more squishy, wiggly and natural-feeling.

Just look at this Sipho segments individually moving in different directions!

New physics allow Zooids to have different Connection Stiffness parameter - something that controls how much deformation resistance Zooid has. Higher stiffness means less deformations and more similar behaviour to old physics. Lower stiffness means that connected Zooids will be more wiggly and Sipho will have more difficulty holding its shape. Current stats as of this patch are:


  • All non-structure Zooids have 100% connection stiffness
  • Saenus Chitin also has maximum stiffness. It should be de-facto the most stiff Zooid - When future physics tweaks allow us to have more stiffness Chitin stiffness will be increased. Currently it is as stiff as it can be
  • Cra'Than Nervefiber has 80% stiffness
  • Vagorian Peapod has 80% stiffness and a skill to toggle down to 10%
  • Advena Zenoplate has 70% stiffness
  • Buginis Splitter has 60% stiffness


The stiffness loss compared to old physics is somewhat acceptable for Siphos grown in Campaign mode - they don't usually reach the size where more stiffness would be needed. This won't be the case for super large Siphos saved in Aquarium. Some larger Siphos now might suffer from not being able to hold their shape:

This can be solved by using Chitin or adding more connections:
These improvements were long coming from the conception of Sipho. We once used built-in Unity 2D joints, but they have proven to be very unstable with more connections.

At some point we switched to shape-matching physics you have become familiar with - the algorithm would try to hold Sipho in shape that is defined by Layout. This worked for up to 4 by 4 Zooid sized Siphos. However, it had limitation of not understanding limbs - larger Siphos would feel box-like and deform somewhat unintuitively.

Hopefully these new physics will make Sipho stand out even more from similar games, such as shipbuilders and other rigid-body simulation games. Having quite rigid and box-like creatures didn't feel as organic and live as we want Sipho to feel.

To iron out all issues and provide as much variety as possible physics might get tweaked in the future - we want to provide as many creative compositions as possible and allow you to make creature you wish to play with.

Just look how happy he is stretching those limbs!

And for the most curious, please have a changelog! Read bottom-to-top:
[h2]Version 0.8.0f2[/h2]

  • Optimize Zooid food eating check
  • Add flail launch force over time
  • Make procedural generation of Cra'Than Boss 3 more robust


[h2]Version 0.8.0f1[/h2]

  • Tweak Layout Info panel
  • Fix Whirlpool NaN on spawn
  • Fix Growth Ghosts being updated in between growth states
  • Add ChargeUpButton and use it for Layout deletion button
  • Tweak skill UI font so Q is more visible
  • Deselect growth element when tooltip is shown in tutorial
  • Do not show center text in Tutorial as it obstructs other text
  • Fix typo in tutorial
  • Fix wrong info for skill rebind key
  • Extrapolate positions and rotations from velocity when adding new body to deformable
  • Add wider margins for growth camera
  • Do not automatically regrow Zooids which neighbors are too far away. Apply force to bring them together
  • Fully stiffen Zooid connections when they are close enough
  • Grow Zooids with connections initially relaxed for far away neighbors to reduce immediate forces
  • Use last seen alive neighbour position to display dead Zooid ghosts
  • Fix NaN center of Mass and Thrust when Sipho dies
  • Regrow zooids next to their alive neighbors rather than at undeformed position
  • Place new zooids locally according to their neighbor position
  • Add Mass and Movement Force stat icons to Growth Mode. Clicking them toggles display of their areas
  • Recalculate Center of Mass and Center of Thrust on Sipho to support stat display in Growth Mode
  • Recalculate Sipho volatile stats on Zooid reposition
  • Move whole Sipho if center of mass is outside of area of trust - fixes unbalanced Siphos getting stuck on rocks while trying to turn
  • Prevent Sprite renderers without sprite to be cloned. Remove dummy sprite renderer from Grabber connection
  • Do not update Growth menu in Fixed Update - should reduce lagspike when entering growth mode
  • Override Sipho stiffness to undeform when entering growth mode
  • Allow setting custom save/data path with -datapath launch argument
  • Move Relax skill onto Peapods, make them originally stiffer
  • Projectile weapons apply their knockback force over several frames to avoid breaking physics simulation with large impulses
  • Fix certain Buginis boss layout Zooid positions being off-grid
  • Whirlpools always break obstacles and decorations
  • Add soft body connection stiffness parameter to Zooids


[ 2021-12-14 19:19:25 CET ] [ Original post ]

Sipho 0.7.17 update is here!

Happy October everyone! This is quite fitting update for the month as it features improved boss fights for third Saenus Beefuorus encounter and various improvements for other bosses.
Third Saenus boss concept is a Warden of The Depths - it is a literal boss of a prison guarding various aggressive outlawed Siphonophores. It launches shockwaves which destroy parts of arena letting captive enemies out. This destructible obstacle feature was something we wanted to experiment for a long time and may be used elsewhere in the future.
Check out the full list of changes below:
Version 0.7.17f4

  • Add last two missing layouts to Saenus Boss fight 3
  • Priotize breed in saved Beefuorus Boss 3 Layouts
  • Add three more Layouts to Beefuorus Boss fight 3

Version 0.7.17f3
  • Add several supervillainous enemies to Beefuorus Boss fight 3
  • Buginis Boss 3 fight obstacle break does big screenshake
  • Reduce flail drag to 1
  • Aggro Cra'Than Boss 2 when player passes through them
  • Sink Advena Boss 1 and 2 center arena rocks after fight
  • Players start with 16 nutrition and Cra'Than start with Leech

Version 0.7.17f2
  • Saenus Boss 3 stops sending shockwaves after all obstacles are broken
  • Properly clear automatically gathered Boid skills
  • Check if sinking destroyed sinkables
  • Higher Saenus Boss 3 sweep damage

Version 0.7.17f1
  • Third Saenus Beefuorus boss is now called Warden Of The Depths and has more things going for it
  • Hide Pusher debug draws behind debug option
  • Damageable Sweeper now has falloff damage value for nicer sweeps
  • Collection Utility acceps IReadOnlyList instead of IList where applicable
  • Destrucitble Obstacles are now stored in static list for easy access
  • Boid AI now dynamically gathers skills, avoid distance checking obstacles further away than their target is
  • Add Old Bronze Rock destructible variants
  • Add GetClosestZooid to EnemyUtilities
  • Do not do special Poolable enable when new object is spawned so it doesn't call OnEnable twice
  • Add ISiphonophoreAI interface to time boss AI when fights start
  • Damageable sweeper now handles objects with multiple child IDamageable components correctly and damages them only once
  • Add destructible Old Bronze Water rocks
  • Allow Rock Damaged and Destroyed effects to be created off-screen
  • Add experimental conductive object feature which conducts Sizzler attacks
  • Sort zooids by name so they are displayed in order in Head Selection menu, debug menus
  • Obstacle Base prefab does not override Outline object's layer to Default
  • Powerups now also restore one Regeneration Point as do Snacks
  • Allow toggling Currents
  • Support world position as UV for dissolve map in Environment Object shader
  • Damageable Child returns own collider if parent doesn't have
  • Twister twists do not pass through obstacles
  • Add segments of walls in Buginis third boss fight which open up when enemies are killed for the segment
  • Increase zooid reward spawn distance with each additional reward
  • Spawn boss kill particles from last killed boss sipho if available
  • Buginis Boss 3 siphonophores move slower if there are no threats around
  • Destroy Buginis Boss 3 eggs on touch
  • Reduce Buginis Boss 3 DNA drops to 1 each
  • Initialize Head Selection Controller upon activation
  • Cache growth-dependant values in Growth Point UI. Fixes rare exceptions
  • Check if cached raycast results were destroyed when checking for UI pointer overlaps


[ 2021-10-10 18:39:47 CET ] [ Original post ]

Hotfix: Version 0.7.16f5

Version 0.7.16f5

  • Prioritize child of already shown tooltip when selecting which object to show tooltip for
  • Growth Sidebar is not a UI raycast target - fixes structure tooltips appearing when hovering sidebar
  • Make BuffUI scale correctly and fit perfectly above skills


[ 2021-09-02 20:45:00 CET ] [ Original post ]

Sipho v0.7.16 is now available!

Greetings! It's been a while since last update - summer has taken toll on development time with its social life occasions. Finally, the Autumn is here and we can finally sit back at our screens and deliver the Sipho content everyone awaits.

Speaking of updates, previous one has introduced a new kind of powerup which stacks and its effectiveness heavily relies on how many stacks it has. We already have more than 5 different powerups which need an easier way of tracking - telling which ones and when will fade away. Powerups are designed to be something that impact moment-to-moment decisions of fighting or fleeing so the information has to be readable at glance. Thus buff UI was added:
Hovering it also highlights affected zooids and what stats it provides - it should be especially clearer for new players what buffs do. In the future, more interesting effects can be shown in this space.

Most of the zooids were designed with simple ways of connecting them in mind. By experimenting, we have noticed that having more diverse zooid connections makes more interesting Sipho Layouts. Combined this experience with feedback that starting breed weapon Spike should be placeable at an angle we found that it can be a very (inefficiently) fun zooid!

Spike can now not only be placed at an angle, but also allows other zooids connect to it. The gif above shows new Spike placement taken to extreme. To place Spikes, or other multi-connection-point zooids at a different angle, rotate them with default key R.

As always, the nitty-gritty details can be found below:
Version 0.7.16f4

  • Fix inconsistent race condition when initializing ZooidPlacementGhosts

Version 0.7.16f3
  • Display damage in debuff description
  • Show basic tooltip information upon hovering enemies in growth or aquarium mode
  • Tweak zooid connection point UI. Do not show for zooids with standard connections

Version 0.7.16f2
  • Move buff UI above skill bar
  • Respect UI scaling when calculating tooltip pivots
  • Use bigger brain way of showing zooid placement ghosts

Version 0.7.16f1
  • Show connection points when growing new zooids
  • Shift + Rotate rotates zooids in other direction
  • Automatically detect anchors for tooltips - improves positions of many different tooltips
  • Make Buff UI selectable with controller
  • Add experimental option of increasing MaxWealth when picking up nutrition while being under MaxWealth. Needs game rebalance to work
  • - Rename Zooid prefab files to reflect prefab type, zooid type and name so they are more easy to search in Editor
  • None of Food Spawners are scalable so they are not important and don't block enemy spawning. Also fixes having too many food spawns in later levels
  • Fix Freeroam not spawning enemies
  • Add Buff UI which shows currently active buffs, debuffs and powerups
  • Allow highlighting zooids outside Growth mode
  • Tooltips can now also be dynamic and be updated each frame
  • Handle sprite renderer copies without sprite
  • Copy zooid shader properties when cloning materials - makes greaser, muck, agonizer buffs to display dissolve amount
  • Display number of buffed neighbor zooids in tooltips
  • Use sprite icon pivot to correctly display Spike position when growing
  • Fix zooid selection saying "poop" the first time it's shown and there are no zooids adapted
  • Fix error throwing when initializing Extra Zooid UI before Head Selection Controller
  • Make a copy of zooid list when doing new game animation
  • Spike has additional connection points
  • But be 99% strict when checking for Sipho self-overlaps - still needs to be fixed on Layout level of logic
  • Be only 75% strict when checking for overlaps when repositioning zooids - Growth Points already ensure correct positions
  • Fix gathering more neighbors than a zooid should connect to - short-connected zooids will no longer created invalid distant connections
  • Fix Leech bottom graphics being offset
  • Fix Advena boss 3 throwing errors while trying to ungrow poisoned zooids
  • Post-build updated assets


[ 2021-08-31 18:52:48 CET ] [ Original post ]

Sipho Version 0.7.15 is upon us!

The closer we get to feature-completeness of the non-linear levels the more wacky mechanics we can experiment with and reach our design goals.
One of them is introduction of The Essence of The Elders buff exclusive to Cra'Than evironments. Even though it was designed to make Cra'Thanos boss fight quicker and easier, it can be found in The Twisted Betrothal and Cra'Than environments as well, spawned by Holes. It has a very short 5 second duration, 90% shorter for each stack, but it stacks +50% buff to damage, movement speed and range. It also temporary reduces all zooid health by 50% with each stack turning your (enemy) sipho into a glass cannon. We have already seen players stacking it to ludicrous stacks and having fun with that.
Following Holes spawning a new buff, Tentacles have received a bit of brain and will react to things touching them. We hope that these environmental gimmicks bring more to the table and makes visiting Cra'Than areas play out differently than usual.
Version 0.7.15f2

  • Zooid unlock pickup is now a trigger and is possible to pass-through
  • Zooids also try eating consumables with Trigger colliders
  • Zooid pickup needs to be charged-up to pick-up instead of being instant pick-up
  • Twisters now only check for pushable layer - doesn't affect decorations

Version 0.7.15f1
  • Tweak Cra'Than boss 2 arena
  • More robust save upgrade process for very old saves. Save game version in saves
  • Hide Tentacle debug text behind debug option
  • Tweak Cra'Than Boss 2 arena
  • Make Tentacles react to things touching them
  • Essence of the Elders buff has stronger but shorter effect. It also decreases max health
  • Color zooid max health in tooltips according to positive/negative change
  • Fix buff descriptions showing +- for negative effects
  • Zooids with lower max HP than normal will decay as if they were damaged at their normal HP
  • Cap minimum value of zooid health at 1
  • Rename Energy Regenerated Per Second to Energy Regeneration
  • Make Sniper projectile 50% faster
  • Cra'Than Holes now only spawn The Essence of The Elders and Snacks
  • Tweak Cra'Than first boss fight arena to allow fitting 3 zooid wide Siphos on sides
  • Add The Essence of Elders powerup
  • Fix Spike trying to update pooled graphics connectors
  • Replace whitespace with underscores in itchio upload version tags
  • Fix enemy flee direction - fixes enemies clumping up at (0,0) coordinates
  • Handle rotated camera in growth mode UI correctly
  • Hide sonar in growth mode
  • Reward more nutrition for killing larger enemies
  • Only pull consumables which can be consumed
  • Allow eating consumable if it provides no nutrition while Sipho is full
  • Include tag to version of builds uploaded to itch


[ 2021-07-26 19:10:21 CET ] [ Original post ]

Sipho 0.7.13f4 hotfix is now available!

Starting a game for new players is now fixed. Update also includes little sneaky gift of ading synergy between Sizzler and Muck and buffing Chiting structure zooid!
Version 0.7.13f4

  • Fix starting in tutorial


Version 0.7.13f3
  • Sizzler now deals damage to mucked targets
  • Really gather all environment object rigidbodies for disabling when pooling
  • Chitins now grow shells on zooids further away
  • Disable all rigidbodies attached to the environment object when pooling


[ 2021-06-30 09:33:12 CET ] [ Original post ]

Sipho 0.7.13 Update: Non-linear levels for real now!

Keeping up to our plans we have improved Whirlpools - you will now be able to choose which Environment to dive to, one out of two. This will add a little bit of strategy of choosing which breeds to encounter early and what bosses to fight. This improvement also allows us sneaking in surprise destinations.
Third Advena boss fight has also been improved thanks to our community feedback on Discord Server. We will continue improving and polishing the rest of the boss fights - hop and and share your ideas!
And the changelist:
Version 0.7.13f2

  • Tweak third advena boss arena
  • Remove logspam
  • Fix first frame of teleport having old center of mass which break distance calculation for siphos
  • Don't add number strings to translation dictionary
  • Change camera angle quantization to be enum
  • Improve EnumUI - add generics support, allow having enums with values which don't match their index
  • Fix missing final boss scene reference in Campaign scenes. Refactor how areas are handled
  • Add Growth camera rotation snapping and setting for it
  • Refactor how Areas are handled in Campaign. Allow selecting one out of two areas to dive to
  • Saves store a seed value
  • Adapting zooid now also gives nutrition amount of the zooid cost
  • Automatically gather layouts build. Add several builtin layouts
  • Enemies forget about food that was despawned immediatelly
  • Do not ungrow zooids when cancelling new zooid placement with right mouse click
  • Automatically determine which spawner is "important" and blocks enemy spawning while not has spawned itself
  • Third Advena boss ungrows and regrows poisoned zooids
  • Allow automatically uploading Steam builds


[ 2021-06-27 20:19:40 CET ] [ Original post ]

Updated Cra'Than environments are in Sipho 0.7.12!

Greetings, travellers of the depths! We are getting closer to finishing Sipho 0.7 branching level update cycle with new Cra'Than environments. Before moving on to exciting new things we have planned, we will also be improving some of bosses, to bring them up to a similar quality bar.
Version 0.7.12f1

  • Third Advena boss bounces around
  • More aggressive regular enemies
  • Tweak Cra'Than level 1
  • Add Ragdoll layer as Solid layer
  • Scale tentacle motor speed with scale
  • Brains are slippery
  • Fix old plant obstacle having colliders set up in a way which could make zooids stuck
  • Cra'Than Environment uses new sprites
  • More spawner-parent interaction modes for grid spawner
  • Add Cra'Than Red Tentacle environment object formation
  • Cra'Than Second Area uses new sprites
  • Grid spawner can now add value of parent spawner. Null spawn objects are also supported for having holes in spawns
  • Utility script for blurring images
  • Reset Environment Rot shader variable when exiting
  • Attempt to fix scale not being reset correctly for non-disable-overridden consumables
  • Add several utility scripts used for testing
  • Update Unity packages


[ 2021-06-09 22:03:42 CET ] [ Original post ]

Version 0.7.11f3 is now available!

Hey everyone, small hotfix update while working on finishing new Cra'Than levels and experimenting new physics. Stay tuned!
Version 0.7.11f3

  • Update Unity to 2020.3.9f1
  • Fix level scaling for Tutorial. Fixes black screen


[ 2021-05-28 21:23:06 CET ] [ Original post ]

Sipho Version 0.7.11 is now available!

Greetings!
This in-between large updates update addresses some of recent feedback points. Enemy threat evaluation has been re-written to be more easily controllable. This will help us to monitor and tweak enemy behaviour to become more predictable and feel fair to fight against.

Enemies now spawn at distance depending on level instead of fixed range - this fixed emergent difficulty rise which made enemies spawn more relatively densely in later levels. Players would end up fighting more enemies than intended at once which would negate any strategy. Now enemy spawn range scales with their size and environment.

Such scaling allowed us to make visible area around the player dynamic - later levels will now have more things spawned around and consequently add more view range. This should feel less claustrophobic and more rewarding for growing big. Things out of distance will be shrouded with blackness.

Energy Leech now attaches to environment bodies such as Spike Balls and holds them at distance! It then can be used as a makeshift Flail or as a shield against projectiles. We hope to have more physical objects in the future which could be exploited by this physical interaction.

Check out the changelog:
Version 0.7.11f2

  • Separate Enemy threat passiveness for defending and attacking. Tweak values for first levels
  • Replenish lost nutrition when adding nutrition as well. Nutrition pickups restore double if player has lost nutrition
  • Reset nutrition delta display timer earlier so it doesn't stack amounts that have almost faded out

Version 0.7.11f1
  • Add work-in-progress Mutation code
  • Add Math2D Utilities - AngleSafe and RotateByVector
  • Add Debug Utility to draw Arrows
  • Do not attach leeches to pooled consumables
  • Increase Energy leech pull force by 25%
  • Do not attach Energy Leech to zooid-owned non-damageable rigidbodies - fixes grabbing your own Spikes and Flails

Version 0.7.11a2
  • More responsive view change in Growth and Aquarium Edit modes
  • Spawn Simple Effect if there are no CameraFollows available anyway
  • Increase view distance in Aquarium

Version 0.7.11a1
  • Tweak enemy self-confidence
  • Head selection Siphos should not chase after invisible food
  • Do not set velocities on static rigidbodies
  • Serialize Camera in CameraFollow component
  • Refactor how Enemy threats are calculated
  • Another fix for error messages
  • Attempt to fix growth point UI error messages
  • Melee Power affects leech pull force. Leeches do not pulse if their target is not damageable
  • Detach leech from disabled objects
  • Reduce drag and mass of environment spike
  • Energy leech now attaches to dynamic rigidbodies and holds them at distance
  • Remove unused serialized stat data
  • Prioritise healing zooids with lowest health
  • Scale enemy spawners, max visible distance, level obstacle spawn distance with level
  • Use custom zoom for growth mode
  • Add black circle around visible camera area
  • Fix not registering Five Second Rule achievement
  • Fix game incorrectly counting pooled instances counts after playing one session. Fixes levels sometimes never ending
  • Fix leech having a limit on targets. Fixes sometimes not leeching on a potential target
  • Allow zooming out more and add black circle around visible range
  • Delay Destructible Egg death consumable time by 0.1s and make consumables inherit velocity so they feel and work better with Grabbers
  • Add Slippery environment object mechanic - Projectiles, Mines, Spikes and Grabbers slide-off slippery objects
  • Hide mouse cursor when Gamepad is used



[ 2021-05-12 18:51:26 CET ] [ Original post ]

Version 0.7.10 is now available!

Hey all!
Big bugfixing update is now available for everyone.

Sipho's performance is very important - even small stutters can ruin your experience. The FPS needs to be smooth. Therefore we have put our attention to how disabled objects are handled as they were causing stutters. Now, instead of disabling whole hierarchies of Obstacles, Consumables, Decorations - everything that is constantly spawned and despawned in played level, we disable only parts that are visible or cause interactions. This has cut the time CPU has to process level spawning by almost a half - noticeably improving performance in denser areas and level-ends. Let us know if you notice a difference!

Full list of changes below:
Version 0.7.10f2

  • Add test to catch offset graphics
  • Fix Polyp graphics position too
  • Fix Energy Leech graphics object being offset and consequently making connectors render incorrectly
  • Fix Consumables being added to the instance list twice - fixes ghost Consumables shown in Sonar
  • Fix outlines still rendering for pooled objects
  • Fix Zooid pickups not getting disabled

Version 0.7.10f1
  • Tweak Buginis boss 3 behavior and arena
  • Add Health Regeneration stat and use it for Vagorian mover
  • Soul Eater projectiles die faster when they're flying fast
  • Do not allow camera movement after death in campaign
  • Fix Steamworks app ID location
  • Debug things
  • Explicitly control what gets disabled when poolables are pooled - improves spawn/despawn performance by ~50%
  • Update Mover dash stat multipler
  • Update Steamworks.NET to Release 15.0.0
  • Stat values are now stored as 1000 times larger integers to avoid rounding errors over time
  • Make consumables without owned edible immediately
  • Tweak Sizzler effects
  • Update steamworks



[ 2021-04-18 20:02:09 CET ] [ Original post ]

Sipho Version 0.7.9: Nutrition's Back!

This update might not seem like a big one from the first glance - not so many content additions, mostly tweaks and bugfixes. But there is one major tweak that will change how Sipho is played - Snacks now restore Nutrition if you have fallen below your recorded maximum!

That's right - if you lose half of your colony, you can still get it back by consuming much more abundant Snacks. This helps to keep achieved progress and avoids soft-locks where one is unable to re-grow parts without killing whole Siphos. This change has been suggested in many forms by you, players, and we had to figure out how to make it work intuitively. Nutrition Orb now displays missing nutrition as a red bar above your current nutrition, as well as indicates how much nutrition you lose or gain by doing actions:

Notice how picking up additional Snacks don't provide nutrition beyond the red zone. We hope that these changes will remedy some of unfortunate moments due to volatile nature of Zooids.

Cra'Than Sizzler zooid has received a facelift - it has received a better visual effect to show what has been affected by the shock. Affected zooids are no longer random - now closest zooids and their neighbors are shocked.

Additionally, Sizzler stun duration is now affected by Ranged Power stat, which increases stun duration by 1 second for each stat point.

Changelog in detail:
Version 0.7.9f2

  • Show nutrition delta on Nutrition orb
  • Add utility to find neighboring zooids up to zooid count
  • Sizzler is now affected by Penetration - how many zooids it affects and Ranged Power - stun duration
  • Add Development-only Penetration powerup
  • Shell now protects from Sizzler stun on application rather than in update step. This allows adding additional stuns on the same frame
  • Add tooltip explaining lost wealth to Nutrition orb
  • Search for tooltip instances in parent game objects too. Tweak some UI objects to not provide unrelated tooltips
  • Return ungrowth nutrition immediately when ungrowing zooids
  • Fix plant leaves looking weird when rotten
  • Food should not block growing new zooids
  • Reset player's MaxWealth when growing from layout or toggling unlimited nutrition in Aquarium


Version 0.7.9f1
  • Add cooldown and energy cost to skill description shown in zooid tooltip
  • Increase base energy regeneration to 25 (up from 20)
  • Chitin shell is removed when it protects from Sizzler attack
  • Apply poison to nearby targets on initial poison spawn. Makes using Mines up close easier
  • Do not twin-stick turn Sipho while game is in Growth mode transition
  • Prewarm poison pill so it instantly appears as intended
  • Sipho Death events now carry information about killer. Prevent other Siphos picking up consumables which they don't own for 1 second
  • Make damage powerup triangles two-sided so they don't disappear when consumable is flipped
  • Cra'Than hole spawn progress decreases instead of being reset when something covers it
  • Increase Event System Drag Threshold to 15 (from 5)
  • Rearrange development menu spawn items
  • Interactive area is deactivated if main sipho dies
  • Death cancels whirlpool diving
  • Better debug for Graphics Connector and Swarm Minion to catch reported exceptions
  • Break down Head Selection intialization code for debugging
  • Fix null key paths after starting new game
  • Fix Vagorians not being spawned
  • Nutrition orb shows mising wealth
  • Update UI default shader
  • Pushers won't try pushing Decorations
  • Update engine to 2020.3.2f1
  • ignore Debug folder
  • Bring back Nerverfiber heal to 2. Do not restore nutrition through heals



[ 2021-04-11 17:58:20 CET ] [ Original post ]

Version 0.7.8f8 is here!

Last bugfix and quality updates for 0.7.8 are here! Next update is going to be about addressing surfacing common feedback - enemy behavior and nutrition drops, stay tuned.
[h2]Version 0.7.8f8 [/h2]
- Use optional debugging menu for debugging some game systems that were previously just drawing their own debug things and cluttered whole screen
- Fix Buginis environment leaves for some reason being 2x smaller than intended
- Heads no longer deal damage on touch. Tweak head graphics to appear above connections
- Spike fixaroo 5: Electric boogaloo - reduced launch force and drag for spike tip to make it match expected distance and be more stable
- Do not change Rigidbody type and disable them entirely when sinking. Should improve performance on Area Clear
- Fix error throw if growing through Growth point failed
- Clip transparent Zooid pixels
- Fix Zooid growth growing on different growth point than it previews
- Fix growth point search for peapods
- Update Sipho structure data when growing from Layout
- Make Cra'Than areas scale as the rest of the areas
[h2]Version 0.7.8f7[/h2]
- Make zooid repositioning work with relevant zooid search
- Improve Growth Point UI search by taking their relevant direction into account
- Improve zooid highlights by highlighting "main" connection zooid
- Remove duplicate Layout and update original "Genial Advena Nosher"
- Clamp healing to max health to prevent overhealing
- Fix old builtin layout Advena Slicerness
- Update Sipho structure data on demand
- Only upgrade layouts if their version is lower, rather than not equal to current
- Update total Siphonophore movement power every frame instead of on structure change


[ 2021-04-01 08:47:45 CET ] [ Original post ]

Version 0.7.8f6 is now available!

This update addresses some requests for better control binding - you can now bind default keys for skills. Dive action keybind has been also separated from Confirm button - so it will be possible to bind to another key for gameplay and still use it for confirming UI navigation.

Big refactor has been performed on how Layout data stores zooid angles - we had an issue where growing a perfect circle with 22.5 degree turns was impossible - it would get rounded up or down. We had to update how Layout data is stored which means it will no longer be backwards compatible with previous versions once new version is loaded up.
[h2]Version 0.7.8f6[/h2]


  • Buginis Boss 1 attacks back
  • Add option to limit total spawns of an Enemy Spawner. Limit Alpha spawns to 1 per level
  • Angle-clamp zooid angles in layouts to 1440 degrees
  • Increase exported Layout position precision to 3 fraction digits (up from 2)
  • Optimize boss skill range checks by exiting early if skill is unavailable. Should improve Buginis Boss 3 performance
  • Fix zooid angle rounding error by internally storing zooid angles 4 times higher, to support up to 32 rotations as integers
  • Fix spacing in UI Elements by adding minimum height as font size
  • Add missing sprites for Controller key binds. Allow setting default keybinds for skills in Options menu
  • Add separate Dive button keybind


[ 2021-03-28 20:31:36 CET ] [ Original post ]

Hotfix for Version 0.7.8f5 is now live!

We had an opportunity to make several small fixes to a part of issues we had reported. Enjoy!
[h2]Version 0.7.8f5[/h2]

  • Delay Buginis Swarm boss obstacle checks up to over 10 fixed frames to easen CPU load
  • Don't spawn 30 shockwave particles, spawn 1 instead and as twice as distorting - fixes lag in some boss fights
  • Add missing pickup and place sounds for Zooids. Add test for missing zooid sounds
  • Tweak visual connection distances for Claw and Peapod
  • Add Head Selection debug messages to help debugging game launch error
  • Remove duplicate event system in tutorial level
  • Swarmer improvements - faster minion turning, prioritize zooids over everything else, move at 75% speed (rather than 15%) when on obstacles
  • Use slider joint to limit spike movement along extension axis. Add drag when it's extended so it doesn't flail as much
  • Set Growth UI object name to contain zooid that will be grown name for easier debug


[ 2021-03-26 07:58:42 CET ] [ Original post ]

Sipho branching maps update is here!

We can finally say that the latest version 0.7.8 is a direct improvement over previously available Sipho version 0.6.9 and time has come to make it available for everyone! There are loads of new content and tweaks in this update:

New and higher resolution graphics for all environments. Deeper objects are now affected by parallax effect. Some of new objects have special properties - Bones spawned in Advena areas are breakable, Cra'Than Holes spawn food if they are unblocked. And all of these environments are no longer visited in fixed order - this improves replayability and allows us present more varied enemies. Previously, Saenus Beefuorus were only seen in first levels and they barely fought back. Now, you might encounter them in later giving a much better fighting chance for that breed.

Sea creature in its comfy coral-decorated environment waiting to snip you

9 new bosses were added for each difficulty tier, adding up to a total of 13. Some of boss designs were based on the winners of community boss design competition. Boss fight arenas also use new environment features to spice up the strategy. We will be further polishing these fights - we want to these fights to encourage varied strategies and break pace from regular open-area battles. Boss fights are also great for experimenting with different mechanics in isolated area which we might bring later to the rest of the game.

One of new Advena breed bosses found in Level 3 "Secondary Crater"

Extended connections for structure parts was a small change which unlocked exponentially more possibilities of designing your SIpho. It was once a cursed growth technique of experienced players, which required placing and removing structure Zooids in a specific way to create farther connections than usually possible. Thanks to our community, it has been implemented to work out of the box:

Here you can see Advena structures placed further apart to allow Spikes sliding through

Special properties for movement Zooids were added to differentiate movement zooids further. They have the following effects:

  • Advena movers regenerate energy on hit - we hope that this will play well with Advena's aggressive idea
  • Saenus movers have much stronger Dash skill effect - acting like real-life squid jets
  • Buginis movers decrease cooldowns of neighboring zooids by 10% - plays well with Buginis skill
    oriented breed. Since skills are not separated for each zooid and connections can be more intricate, mean value for cooldowns is used. For example if you have a Flak with 110% Cooldown Recovery and another with 120% CR, skill cooldown will be reduced by 15%.
  • Cra'Than movers have additional connection points - crazy, we know, let's see how this works!
  • Vagorian movers regenerate health - destined to bump into spiky things, Vagorians have evolved to regenerate their wounds,


Improvements worth mentioning:

  • Rebalanced energy use of skills to scale better with smaller and larger Siphos. Read more about the change in previous announcement
  • Added new Cooldown Recovery stat which improves your Skill cooldown duration
  • New type of Siphonophore enemy - Polyp, which are stationary, turret-like Siphos. They don't think much and certainly don't move. Currently they can be found in single boss fight and spawned in Aquarium. In future versions we might use them as enemies in regular areas as well as in different boss fights.
  • Zooid unlock drop options increase with each level - first boss drops two zooids to choose from, second one drops three and so forth - we hope this gives more freedom and incentive to continue playing in further levels.
  • You now keep all adapted Zooids throughout runs. It means that with every replay extra Zooid selection list grows with new zooids. We thought that previous behaviour was just unpleasant for inexperienced players and nothing of value for experienced ones.
  • New powerups - Melee and Ranged Damage, Cooldown Recovery and Range


Known issue:
  • With increased amount of environment objects performance can get worse once Area is Cleared. We are looking into how to improve both performance and experience of being told that the level has ended.


The most recent changes that haven't been mentioned in previous updates:
Version 0.7.8f4
  • Spawn Cra'Than boss 3 whirlpool in the middle of arena
  • Fix save updating to new version
  • Support child colliders in Object Eraser

Version 0.7.8f3
  • Reduce crazy amounts of nutrition in Advena areas
  • Serialize Zooid rigidbodies so they're always available
  • Deactivate Zooid Reposition UI Stack if we are coming back to it dragging nothing
  • Add optional debugging to UIModuleStack
  • Remove duplicate event system from Aquarium menu
  • Serialize Canvas reference in Growth Manager so it can have Growth Point UI recreated early
  • Fix Spike throwing skill errors when becoming dead
  • Bump year label

Version 0.7.8f2
  • Update obsolete Bone Ball Obstacle references in scenes
  • Refactor achievements to support nonlinear levels
  • Add environment type analytics
  • Stop spike damage once it has exceeded pierce count and is still not retracted to simulate previous behavior
  • Spike weapon improvement - track damage time per damaged collider rather than per-spike
  • Debug improvements: add optional logging, allow turning off AI in debug enemy spawn menu, instantly spawn them
  • Spikes pierce all colliders when retracting. Tweak spike forces
  • Fix author of Crabs

All of changes made since 0.6.9 can be found here.


[ 2021-03-24 19:42:38 CET ] [ Original post ]

Version 0.7.8 is now available in beta branch!

As we are getting closer to 0.7.x release to wide masses we are focusing on doing last touches of polishing roughest edges. Remakes of Cra'Than areas and boss polish will be coming after we release this update to the default branch - they are good enough to not lower the quality bar compared to widely available version 0.6.9.

This version can be played after updating to Steam's beta branch called [staging]. Find it at: Library -> [Right Click] on Sipho -> Properties -> Betas


Version 0.7.8f1

  • Enemies now remember who damaged them and treat them more cautiously
  • Fix Zooids instantly exploding on death in previous commit
  • Refactor Zooid health change events
  • Add Siphonophore debug info to Development UI
  • Destroy blocking rocks and other environment features once Seanus Boss Fight 3 ends
  • Destroyed Sinkable Environment Objects handle being sunk
  • Tweak gamepad/camera code
  • Tweak Twister Narrows area - wider gaps, less food spawns, nicer bone spawns
  • Dirty Project Settings
  • Support controller with Camera Follow
  • Remove Input workarounds for controller inversion. Use built-in Input System UI Input Module
  • Use more generic IsPointerOverUI calculation code
  • Put tentacle sprite pivot at the tentacle base. Adjust all prefabs and placements of tentacles
  • Fix dead zooids throwing errors on whirlpool sink
  • Alphas should spawn without extra nutrition
  • Reimport all prefabs to populate serialized data
  • Cra'Than boss battle arena layout tweaked
  • Environment spikes remember damage time per-object - should feel much more consistent. Tweak damage values - damage more often, but require more velocity for full damage
  • If ungrowing a Zooid would leave some Zooids detached, ungrow them too
  • Fix glitch that allowed stacking zooids
  • Remove silly Saenus layout from built-in
  • Add powerups and Bone Balls to Aquarium UI
  • Update object database
  • Allow skipping objects from inclusion to the database
  • Create new Bone Ball prefabs with new prefab workflow
  • Decorate Cra'Than first Boss arena
  • Ignore .vsconfig
  • Upgrade Unity engine to 2020.3.0f1


Version 0.7.7f2
  • Make Advena Boss 2 rotate instead of constantly facing player
  • Skip a frame when registering for Sipho Inventory so that anything that sets up inventory doesn't trigger Zooid unlock popup
  • Rename Powerup Range to Range Powerup
  • Currents should not affect Ignore Raycast layer - fixes leeches being affected
  • Fix destructible object becoming almost invisible while damaged. Scale mass and hit damage with size
  • Set local scale to Poolable objects before spawning them
  • Do not lower clamp zooid decay to 0.01
  • Re-enable save compression


Version 0.7.7f1
  • Reduce spike launch and chip forces to accomodate for lower mass
  • Spread out enemy spawners a bit
  • Change Eating powerup to become Range powerup - it also increases zooid range. Make powerup IDs consistent, add save upgrade path.
  • Improve Cra'Than Boss 1 fights
  • Add proper save versioning and upgrade path
  • Change base time to spawn to 8 of Cra'Than Hole and scale it by their size - larger holes spawn more often
  • Scale Destructible Container drop amount and health by their size
  • Tweak Gemini boss, add its down aggro effect
  • Never scale zooid size below 0.01 - fixes rare cases of leech tips disappearing
  • Fix leech tips staying visually attached to pooled objects
  • Reduce camera change speed in growth mode
  • Print Siphonophore spawn log entry in Start instead of Awake - allows Enemy spawners to set Siphonophore name for better debugging
  • Refactor how Enemy Spawners gather their settings. Clean up lots of parameters. Add scaled Alpha Enemy spawning to all areas. Tweak enemy Layout value level ratios
  • Tweak spike
  • Tweak spike to be less wiggly
  • Fix Cra'Than mover "hands" being below their elbows
  • Fix connection visuals not syncing correctly while dragging introduced in previous commits. Do not discard valid position when ending drag very close to zooids of that position (makes placing a bit nicer)
  • Use absolute position values when moving child zooids through repositioning in growth mode
  • Obliterate Zooid.transform references in Zooid Button UI - use Zooid.Position/Rotation instead
  • Allow setting Zooid rotation through its property
  • Add missing Peapod audio clip
  • Fix skill bar being limited after certain width. Also stretch it down if it doesn't fit the screen
  • Fix hole sprite bone references



[ 2021-03-20 15:17:36 CET ] [ Original post ]

Cra'Than Gemini Boss is in 0.7.6 beta branch!

Another fight based on boss design contest has been added to the game! This time it's The Gemini, create by Popcorn Dust!
The original design was solid - boss behaviour promotes interesting strategies fighting them. And there is a lot of potential for lore. We deviated a bit from original by making the second Gemini an invert of the original design:

The fight might be fiendishly hard or cake-walk easy. We will be monitoring feedback and tweaking this boss in the future!

The arena features new Cra'Than environment objects which will be added to existing levels to spice up variety. We are very happy how Tentacles have turned out to be. If they prove to be stable enough for such physics-based action as Sipho has, we might add stronger interactions with them - some might get annoyed and push objects away. We have also added Holes which sometimes spit out useful powerups to aid you in your fights.

Aquarium Layout Browser has gotten a little bit of love - it can now be searched and sorted by names or values of Layouts. More Aquarium functionality improvements are planned in the future.

Have a go at all changes we've made:
Version 0.7.6f1

  • Enable random motors on tentacles to make them move
  • Cra'Than boss battle 2
  • Set up Cra'Than holes which spawn food
  • Turn off batching on tentacle sprite skins to attempt fixing flying vertices
  • Conver "bulp" audio file to ogg and trim silence
  • Add minimum delay option to Audio Player
  • Support looping audio on following effect
  • Turn off always update on sprite skins of tentacles and holes
  • Spawn bonus nutrition where the boss was
  • Tweak tentacles
  • Set Ragdoll layer to not collide with Default layer
  • Set up Hole sprite bones
  • Add new environment objects to environment object collection
  • Polish tentacle physics
  • Improve Cra'Than Twin boss fight
  • Fix layout author search not being lowercased
  • Add sorting and filtering to Layout browser
  • Add joints to tentacle objects
  • Generate sprite bones for tentacles
  • Allow rocks to set different solids layer than Default
  • Add Ragdoll layer
  • Add random motor speed script for Tentacle use
  • Add music beat detector script
  • Add 2D skinning package
  • Do not use Growth Point UI while Sipho structure is dirty - fixes rare cases of entering bad UI state when quickly doing growth things
  • Add multiple boss support
  • Add Rect extension to incorporate Rect expansion
  • Tweak depth colors so that mid depth is not as desaturated and dark
  • Set up Cra'Than obstacle colliders
  • Add Cra'Than prefabs and gallery scene
  • Add new Cra'Than environment sprites
  • Fix camera having slower zoom change speed than intended



[ 2021-03-09 18:23:59 CET ] [ Original post ]

Swarm boss and boss fight camera improvements are now in 0.7.5 beta [staging]!

Initial release of so-called Swarm - Buginis third boss fight has shown several things it needs to be improved upon. Its AI was tweaked to have a goal inside the Boid-brain to attack its current target Siphonophore - you, the player. Previously it would override Boid flocking behavior to go straight to its target, if it is in vision, and it would cause clumping together with other agents. Clumping up should now happen much less often.
Another interesting change was addition of Camera position and size overrides for boss fights. We can now increase zoom range in arenas without having to design environment outside of playable areas - the camera is simply pushed away from the edge, towards arena contents. This increases vision of important arena parts and allows us to tell the story using the environment more clearly.
Version 0.7.5f1

  • Beautify Buginis boss 3 arena
  • Add plant Nest formation
  • Add damaged effect to Sipho container
  • Fully zoom out when using custom views - makes boss fight zoom consistent
  • Make Buginis Swarm boss movement fully boid based with goal support
  • Sipho eggs spawn siphonophores using their own direction
  • Tweak Buginis Boss 2 arena camera limits
  • Add Camera Follow Overriders to boss arenas to limit vision only to relevant area and allow zooming out further
  • Tweak Buginis Swarm boss behavior to include player as goal in Boid simulation
  • Workaround Sipho size being very large after boss area load by skipping a frame
  • More Rect utility tests
  • Add Camera Follow Overrider to enable custom camera control for boss fights
  • Remove explosive sweeping from Sipho container



[ 2021-02-14 19:08:37 CET ] [ Original post ]

Version 0.7.4f1 is swarming in [staging] branch!

After many tweaks, third Buginis boss fight is now in the game! It is based upon Murderswarm design by TIC. We have let ourselves experiment with it a bit and we feel that it is going to be yet another unique boss fight.

The boss fight implementation differs from original by being Buginis, rather than Vagorian breed. On paper, swarm-based AI might sound easy to do, but it required quite a bit of tweaking to get it somewhat right in the game. It turned out alright and we are pretty happy with the result - the Swarm behaves believably in confined arena and is a threat to the player.

While tweaking and improving Swarm's behavior we saw potential of using the same method of control for friendly Siphos in Aquarium. Smaller Siphos would follow larger ones, including player's Sipho, which would have some influence upon the rest of the Swam. That would turn into a herd-management minigame if you want to keep your own Swarm together and fight other Siphos. These Aquarium improvements would come after we finish with non-linear levels in 0.7 versions.

Version 0.7.4f1

  • Less error prone way of applying zoom to view margins
  • Reduce duration for camera animation if there is no spawn animation
  • Use boss battle zoomout for other bosses
  • Allow overriding zoom level for camera follow. Use zoom overrides for boss battle initial camera animation
  • Swarm AI and arena improvements
  • Add Buginis Boss 3 Swarm Layouts
  • Do not save game while boss fight has not ended yet. Deterministically select zooid unlock drops
  • More appropriate way of saving Boss Battle state
  • WIP Buginis swam boss - swap arena art to Buginis environment, boid movement improvements, spawn swam from destroted eggs
  • Add Destructible Sipho Container which spawns Siphos upon destruction
  • Add HUE shift property to environment shader
  • Add test for finding duplicate Environment Object IDs and fix them
  • Swarmer Boid AI is now Faction based - boids will follow anyone in their faction
  • Add Intended Rotation property to Siphonophore
  • Update Siphonophore physical radius each frame instead of on Structure change

We had a little hidden update with several improvements:
Version 0.7.3f3
  • Use automatic Graphics API for MacOS
  • Move LUTs to Textures directory out of PostProcessing
  • Show Builtin layouts first if there are no manually saved layouts in Layout Browser
  • Rename few particles options
  • Re-gather shader
  • WIP Buginis boss
  • Add some particle graphics options
  • Remove two unused texture lookups in whirlpool mist shader
  • Choose another enemy spawner layout if enemy spawner fails to spawn in 100 tries
  • Increase level end timeout to 30 minutes


[ 2021-02-09 09:06:12 CET ] [ Original post ]

Version 0.7.3 has been sighted in [staging] beta branch!

Greetings everyone! Happy past holidays and new year! Now that the festive distractions are gone we can go back to improving Sipho.
One thing that has been bothering us for a while, was how hard the game is when your Sipho is little. It is hard to balance the game to play well when your creature colony is small, made out of few movers and a weapon, and large, having dozens of buffed-up(tm) weapons, efficient energy regeneration... and skills cost the same fixed amount. So we have finally gathered our courage to attempt at balancing that through skill cost. Now, most of the skills have a lower base cost and grow their cost with each zooid:
[table][tr][th]Zooid[/th][th]Old cost[/th][th]Cost Base[/th][th]Extra cost Per Zooid[/th][/tr][tr][td]Burstopod[/td][td]35[/td][td]20[/td][td]3[/td][/tr][tr][td]Claw[/td][td]30[/td][td]16[/td][td]3[/td][/tr][tr][td]Flail[/td][td]20[/td][td]6[/td][td]3[/td][/tr][tr][td]Flak[/td][td]55[/td][td]20[/td][td]8[/td][/tr][tr][td]Leech[/td][td]7[/td][td]5[/td][td]1[/td][/tr][tr][td]Sniper[/td][td]60[/td][td]30[/td][td]7[/td][/tr][tr][td]Soul Eater[/td][td]50[/td][td]20[/td][td]7[/td][/tr][tr][td]Spike[/td][td]50[/td][td]22[/td][td]7[/td][/tr][tr][td]Sprayer[/td][td]10[/td][td]5[/td][td]1[/td][/tr][tr][td]Swarmer[/td][td]15[/td][td]6[/td][td]2[/td][/tr][tr][td]Energy Leech[/td][td]2[/td][td]3[/td][td]1[/td][/tr][tr][td]Grabber[/td][td]25[/td][td]20[/td][td]1[/td][/tr][tr][td]Miner[/td][td]45[/td][td]30[/td][td]4[/td][/tr][tr][td]Muck[/td][td]25[/td][td]15[/td][td]3[/td][/tr][tr][td]Pusher[/td][td]15[/td][td]5[/td][td]3[/td][/tr][tr][td]Sizzler[/td][td]75[/td][td]25[/td][td]2[/td][/tr][tr][td]Squirter[/td][td]25[/td][td]10[/td][td]4[/td][/tr][tr][td]Twister[/td][td]35[/td][td]15[/td][td]4[/td][/tr][/table]
As you can see, new skill costs match old ones are around 4-5 zooids. We hope that this skill cost rebalance will feel more realistic and allow better difficulty scaling for different Sipho sizes. We will monitor experience and adjust these skills costs accordingly - let us know how they feel!
Version 0.7.3f2

  • Correctly decrease poison duration by 30% for each stack
  • Balance sum skill costs around 4-5 zooids rather than 2-3. Generally makes skills cheaper
  • Heads by default have 0 melee damage, but can deal damage if buffed.
  • Set poison duration to 3 for real this time
  • Fix some environment objects remaining collidable after level ends forcefully
  • Fix environment some objects not fading out correctly

Version 0.7.3f1
  • Add Fixed set class for future use
  • Muck and Poison clouds are now colliding with environment
  • Remove Rock component from Environment Spike
  • Fix Swarmer minion animations lagging behind. Movement Force stat no longer affects Swamer Minion speed
  • Tweak Saenus boss 2 arena to make it unescapable
  • Add Important setting on spawners and mark obstacle spawners as important. Do not spawn enemies inside chunks of important spawners that have not been loaded yet. Fixes rock-squished enemies
  • Fix error when kill point receiver tries to unsubscribe from nonexisting Siphonophore
  • Swarmer minions now crawl on top of obstacles
  • Add timer based melee damage to all heads
  • Kill point receivers (Soul Eater and Swarmer) kill dead Zooids on collision
  • Pusher Penetration stat allows pushing more objects at full force by 30% per stat
  • Improve whirlpool particles
  • Zooid description shows Penetration stat as relevant if Ranged stat is non-zero
  • Twister Penetration stat increases Swirl lifetime by 30%
  • Poison debuff now has a duration of 3 (was 1) and scales duration down by 70% with each stack.
  • Allow buffs and debuffs scale duration depending on stack count
  • Enemy Spawner bases spawns on current wealth rather than Recent Wealth. Fixes Aquarium spawners not adapting quickly enough
  • Add world position scale parameter to Scrolling Texture shader and use it for Muck clouds
  • Muck doesn't affect its owner anymore. Increase Muck cloud duration to 5 (from 3.5) and radius per range to 0.3 (from 0.25)
  • Dash now costs 20 Energy + 5 per zooid
  • Added tooltip translations
  • Show skill cooldown difference in tooltips. Tell players how to rebind skills
  • Move GameKey beatifying code to String Beautifier
  • Round energy capacity bonus instead of flooring it down. The effect is most noticeable with Energy powerup
  • Change how extra cooldown is displayed - show delta in tooltips
  • Cooldown translations renamed
  • Rebalance skill costs so they scale with the count of zooids with that skill
  • Proportionally increase skill cooldown if it is more costly than max Sipho energy. Display skill cost energy breakdown in tooltips
  • Gray out energy regeneration buff if it's irrelevant
  • Fix growth points improperly registering themselves at manager
  • Improve skill tooltip to show skill energy costs
  • Reduce flak shoot audio latency
  • Update Burst and Collections packages
  • More speedy Growth Point generation
  • Forcefully end level if player doesn't clear it in 5 minutes
  • Change object layer to Ignore Raycast when sinking to avoid unnecessary raycast hits
  • Stagger sinkable sinking
  • Serialize Zooid connection angle masks
  • Remove duplicate standalone input module
  • Set Growth Point parent to be the same as zooid button parent
  • Do not despawn growth points that are going to be used - improves growth performance
  • Fix incorrectly caching zooid button children
  • Use growth manager to store growth points instead of searching globally
  • Use lazy initialization for Zooid Buttons when Sipho structure gets changed
  • Use Burst to calculate growth point positions
  • Use Burst compiled MatrixUtility outputs as out rather than ref so they can be inlined
  • Also store zooid connection angles as bitmask
  • Do not throw errors when no Area is loaded
  • Remove unused trail renderers from movers
  • Remove pushing capability from Saenus Jet. Change dash multiplier from 2 to 3, reduce drag from 0.25 to 0.2, increase health to 11, do not penalize turning force - set it to 1
  • Parametrize Dash multiplier
  • More robust way of instantiating System Callbacks singleton
  • Do not regenerate Drifter health when zooid is dead
  • Update one of builtin Saenus layouts to be more menacing
  • Reserialize sprite atlases
  • Better utilities for Layout editing and refactor of layout selection logic for Campaign levels
  • Only apply buff if base stats are relevant rather than current
  • Update project to Unity 2019.4.17f1
  • Tweak Spike and Santa hat to behave more controllably
  • Serialize zooid component references in prefabs. Serialize zooid radius instead of calculating it from collider
  • Update two Cra'Than layouts


[ 2021-01-18 20:35:33 CET ] [ Original post ]

Version 0.7.2 f3 is in beta branch!

Hey y'all, small weekly update is here! It features a new Buginis level 1 boss and has few gameplay tweaks/experiments to make fighting a little bit more pleasant. The update, as usual per 0.7.x is currently available only in [staging] beta branch: Here's how to get it:

[h2]Version 0.7.2 f3[/h2]


  • For timestamp of last input device use return minimum value when input device is unknown instead of zero - might fix controls sometimes locking up
  • Plant boss 1 - Patroller
  • Disable default collider on Tree_1
  • Optimize initial spawner spawn to not sync physics objects when it's not necessary
  • Delay forceful whirlpools by 5 seconds
  • Experiment with quick heal distribution
  • Prevent Layout corruption at rare cases when zooid repositioning happens very fast
  • Reserialize all Environment Objects to ensure correct data
  • More strict serialization validation of Environment Object to catch out-of-sync serialized values
  • Grid spawner improvements
  • Buginis boss setup and WIP arena
  • Make Queen area use new sprites


[ 2020-12-20 12:10:45 CET ] [ Original post ]

Version 0.7.2 is now available in [staging] branch!

As weather is getting colder in our Northern hemisphere, water starts solidifying into ice and so does our update!

We had a bunch of sneaky updates since our last update post. Most notable changes are:


  • You now keep all adapted Zooids throughout runs. It means that with every replay extra Zooid selection list grows with new zooids. We thought that previous behaviour was just unpleasant for inexperienced players and nothing of value for experienced ones.
  • There are new Powerups - Damage Increase and Cooldown Efficiency Increase
  • And exactly this update features new sprites for Buginis environments.

Meanwhile movers have received some additional interesting mechanics:

  • Advena movers regenerate energy on hit - we hope that this will play well with Advena's aggressive idea
  • Saenus movers have a little pushing effect as their pusher - even better defensive Saenus capabilities, we'll see how this goes
  • Buginis movers decrease cooldowns of neighboring zooids by 10% - plays well with Buginis skill
  • oriented breed. Since skills are not separated for each zooid and connections can be more intricate, mean value for cooldowns is used. For example if you have a Flak with 110% Cooldown Recovery and another with 120% CR, skill cooldown will be reduced by 15%.
  • Cra'Than movers have additional connection points - crazy, we know, let's see how this works!
  • Vagorian movers regenerate health - destined to bump into spiky things, Vagorians have evolved to regenerate their wounds,


Our near future plans involve implementing new Buginis bosses, improving their environments and rebalancing skills, so they are more useful while your Sipho is still young. We will talk more about these once we actually do the work!

Known issues:
- Game performance drops drastically while levels are collapsing. We are investigating how could we fix this while also evicting players from levels more gracefully

Changelog megalist:
Version 0.7.2f1
  • Add experimental Bouncer script
  • Always create new campaign state if it's not present after loading
  • Do not flip current spawners in Plant 2 area
  • More plant objects renamed
  • Tidy Plant Obstacles. Now all Plant objects are Obstacles
  • Do not error out when there are no zooids in inventory
  • Branch leaves fade with depth correctly
  • More user friendly spawner depth settings
  • Linear campaign level size scaling rather than exponential
  • Plant 1 area using new sprites
  • Add WIP sine wave spawn function
  • Various noise textures and import setting tweaks
  • Allow scaling spawner tiles to rectangular shapes
  • Add a bunch of patterns for noise
  • Correct collider references
  • Tweaks to leaves
  • Make branch leaves a nested prefab and set it up
  • Add leaves to plant branches
  • Tidy up skill names


Version 0.7.1f5
  • Always allow selecting all adapted zooids ever
  • Revert "Decompose Zooid instantly if it gets overkilled"
  • Show sonar in Freeroam
  • Decompose Zooid instantly if it gets overkilled
  • Fix some non-damaging debuffs having damage over time set to non-zero
  • Don't unlock pop zooids that have been disconnected from Sipho
  • Fadeout environment objects render above player
  • Fixed rare occasion of Head Selection throwing error when enabling UI before Head Selection was initialized
  • Correctly fully fade-out decorations when close to them
  • Update rotation in deformable when adding first zooid
  • Hard limit Spike distance to 2x of normal distance
  • Missing verlet meta
  • Add experimental Verlet Constraint based soft body simulation


Version 0.7.1f4
  • Fix input not working when hovering objects in game


Version 0.7.1f3
  • Do not display multiples of same skill in tooltips
  • Show tooltips for world objects - specifically zooid unlock drops
  • Add ReadOnlyInspector attribute
  • Report when game fails to load Input Manager
  • Add reference to the names
  • Add community event participant names
  • Attempt to fix breaking input after update


Version 0.7.1
  • Change buginis mover bonus show up as percent
  • Increase buff duration to 20 seconds (was 10 seconds)
  • Fix Siphos not starting rotated correctly
  • Remove greaser buff effect from other effects
  • Add test to check for zooid prefab reference validity
  • Rename Buginis mover buff asset to conform to new buff naming pattern
  • Do not allow kill point receivers (Soul Eaters and Swarmers) have negative charge
  • Attempt to fix errors on level leave
  • Fix Whirlpools popping into existence
  • Fix missing reference to Cra'Than boss zooid
  • Cooldown recovery is now 1 for all relevant zooids
  • Make some buffs only become applied if stats are relevant
  • Allow skipping applying buffs if buffed stats are irrelevant
  • Cleanup buff code
  • Organize buffs and debuffs
  • Make Advena Boss 1 cage openings more varied
  • Make tutorial toggle On for new players by default
  • Advena Lava 3 obstacles were missing rigidbodies and caused lag
  • Make Spike feel better - increase launch force to 200 (was 150), make launch direction based on Zooid direction rather than tip direction
  • Fix default dash button to be Left Mouse
  • Return default skill cooldown if there is no skill group (for example if zooid is dead)
  • Advena mover regenerates energy when damaged
  • Update mover descriptions
  • Vagorian mover regenerates health over time
  • Add Pusher functionality to Sea mover when it dashes
  • Put Cra'Than mover connection point inwards so it looks good from any connecting angle
  • Add additional connection points to Cra'Than mover
  • Add skill cooldown reduction buffing to Buginis mover


Version 0.7.0a8
  • Return default skill cooldown if there is no skill group (for example if zooid is dead)
  • MegaDebug buff buffs all stats
  • Fix Despawner breaking due to referencing deleted food prefab and not respawning anything when it's empty
  • Tidy consumables
  • Tweak Cooldown Reduction and Damage powerups
  • Make Cra'Than Boss 3 spawner zooid regrowable
  • When rebinding keyboard, ignore special controls as anyKey and imeSelected
  • Add Cooldown and Damage powerups. Spawn them everywhere
  • Add Health Regenerator script
  • Remove accidentally added component
  • Pusher tweaks to allow it being put on anything
  • Serialize reference to Zooid in Zood component
  • Support arbitrary connection angles for zooids
  • Add Cooldown Reduction Powerup to destructible food containers
  • Support cooldown scaling with most of the zooids
  • Add cooldown reduction stat
  • Make renderer cloner more silent
  • Make Seanus boss 2 asymmetric
  • Place Growth Point UIs in Zooid local position. Obstacles block new zooid growth
  • Remove buffs before dead zooid is destroyed


[ 2020-12-09 19:34:40 CET ] [ Original post ]

Announcing the winners of Sipho Boss Design Contest!

After lots of judging and criteria-quantization we have decided upon winners of the Sipho Boss Design Contest!
Judging was not easy. To reach the decision we have tried to imagine how your creations will work in various game scenarios. Less violent boss fights, based on boss behaviour and its "decision making" were evaluated more highly. Some entries even felt like they have been mind-read out of our design ideas list and that gave a lot of confidence in both ideas and entries. We also looked at additional mechanics we would have to implement for some of entries to work and how well we could re-use them in the rest of the game. More re-usable game mechanics were rated more highly. Let's get to the business.
First place winner is:
Untitled Maze boss by skipydog

You are in a maze with 4 - 6 boss Siphos. Each one aimlessly wander around until you are in their line of sight, where the one that sees you would chase after you. You have to maneuver the maze and not be seen by them, they can only see from their front side. You can safely attack them from the sides and easily kill them that way, but doing so will make all others seek to where the kill was, so you have to be careful.
When you wither it down to around 3 or 2 left, the rest will flee into a whirl pool and you win the fight.
You should not attack form the front side of them.

This kind of boss behaviour which is also arena-layout dependant should encourage players to take more cautious fights. Sneaking up on the boss and hiding from other bosses after a kill should make a nice pace-changing challenge. Congratulations!
The runner-ups are:
The Gemini by Popcorn dust
Twin boss idea was something that we kept in our backlog and this entry illustrates it very nicely. It also encourages us to expand Sipho screech vocabulary with "your turn" and "maybe I'll take a little break".
Maze of the Gatekeeper: Vagorian Boss by z0mbiesrock

A boss slithering through small cracks and acting as a whack-a-mole, but the mole is pretty dangerous and lays exploding eggs is something we haven't thought of! It would be as if fighting an invisible enemy that can only be seen with "sonar" indicator. Very creative entry and hopefully won't be as hard to implement as it sounds.
Murderswarm by TIC

Many small enemies instead of big boss? Yes please! Implementing boids-like behaviour which would flock the player or even try to open their own whirlpool? This should be fun.
Leviathan's Maw: Cra'Than Boss by z0mbiesrock
Another award-worthy entry by z0mbiesrock. Potentially technically challenging, but absolutely awesome big boss idea of inter-connected Cra'Thancipede

Winners listed above will be getting Steam keys for each winning entry! We will contact you personally.
[h2]Thanks to all participants for your support![/h2]
skipydog, Popcorn dust, z0mbiesrock, TIC, Salreix Von Otsuu, Max77, Camille, DrakonyxX, your entries have been great and inspiring in many ways. We hope to use this inspiration to push Sipho further than it has been before. Stay tuned for new content and let us know what you thought of this contest!


[ 2020-11-16 17:23:45 CET ] [ Original post ]

Version 0.7.0 Alpha 7 is available in [staging] branch!

It features enabled Development mode which will report issues more visibly - both to you and for us automatically. If you find yourself looking a red text at the bottom-left corner of the game, please report it and tell us what you were doing! We hope to catch issues faster this way and stabilise faster.

[h2]Changelog:[/h2]

  • Graphics settings after build
  • Preload Input Settings
  • Track Burst compilation settings
  • Allow Renderer Cloner be destroyed when scene is being unloaded
  • Change linux build target to x64 - which is now only Linux architecture supported by Unity
  • Upgrade project to Unity 2019.4.13f1 (518737b1de84) - this might cause various unexpected issues
  • Grappling hook is now affected by Penetration stat
  • Update zooid graphics when outline color changes
  • Re-gather Environment Objects for spawning and automatically gather them on build. Fixes missing objects after save load
  • Fix Side Popup double translating
  • Play sounds when zooids are picked up, grown and placed
  • Remove obsolete deformable synchronisations - we don't rely on world positions that much anymore


[ 2020-11-04 21:22:37 CET ] [ Original post ]

Halloween Event - Design a boss challenge which will be put in the game!

Sipho is a pretty spooky game as is and boss fights make it even scarier. From weaksauce first boss, which looks daunting at first, but falls easily, to nerve-wracking (sorry!) stronger, gimmicky bosses - we are looking for your ideas to implement. We had suggestions for boss fights in the past and this is a great time to officially add them to the game and reward idea authors!

Boss fights are all about an isolated challenge and means to overcome it - boss arenas are separate levels which can have various gimmicks which help defeating larger and superior boss Siphos. With that in mind - get creative in Aquarium or just open up MS Paint, sketch your crazy idea for boss layout, arena and tell us how the fight is supposed to go. There can also be various unususal objects in the boss lair that affect the fight - maybe there are unstable currents moving everything around or breakable rocks that allow player getting in better position to strike the boss. Creative freedom is yours! After your are ready to share the idea, post it in our Discord or on Steam's Artwork page. Most unique and technically achievable ideas will be remade in the game!

You don't have to be a professional designer to participate in this event. A basic doodle on a napkin and a description of a fight are enough for us to make it into a proper game asset. Anyone can participate. Although if you haven't played Sipho before, be sure to check videos or screenshots to get familiar with its world and creatures.

[h2]Basic guidelines:[/h2]


  • A picture or a sketch of the boss Sipho and its minions, if present
  • A picture or a sketch of the arena with starting player and boss positions marked
  • Let us know how the boss fight goes - what does the boss do, how does the boss and player interact with environment
  • If there are special environment features - let us know about them!
  • Boss designs and environments should be using existing Sipho assets. Slight variations of these assets - size, colour, mashups of several assets are allowed. Minor unique features like particle effects and sounds are also allowed
  • More unique and technically achievable fights will be better judged. For example we can't technically achieve a multiplayer boss fight. Cleverly using existing game mechanics are much more welcome
  • Post it on Sipho's Artwork section. If you can't post it there, leave a comment with a link here or post it on our Discord

[h2]Have fun![/h2]

Our team will pick one or more winning designs right after the end of this event.
Winners will be awarded with Sipho Steam keys and their name in the credits.

The event ends at November 10th, 00:00 UTC


[ 2020-10-31 12:28:48 CET ] [ Original post ]

Have a taste of what's coming in Sipho 0.7.0!

Hi everyone!
We have been silently working on this update for a while now and we're getting comfortable of sharing part of it with you. This is going to be a largest update so far, overhauling how levels work and adding much more replayability and polish to the game. Our Discord Server members had a little heads-up about this.

And you can try it right now in Steam's [staging] branch:

The current state of 0.7.0 alpha contains and will contain:


  • New and re-designed environments for Advena and Saenus Beefuorus breeds. That includes area layout tweaks, new obstacle and decoration sprites and bosses. Layouts and boss fights are subject to change. In fututre versions Cra'Than and Buginis environments, along with their bosses will get this treatment as well. Currently, new bosses act as placeholders for missing bosses for these environments.

  • Random order of environments - you no longer start in the same Sea environment and end with Advena. Environments are shuffled for every playthrough and are scaled for level accordingly. In future versions Large Enemies will also be correctly scaled and offer different kind of challenge comparted to regular ones.
  • Zooid unlock drop options increase with each level - first boss drops two zooids to choose from, second one drops three and so forth - we hope this gives more freedom and incentive to continue playing in further levels.
  • New type of Siphonophore enemy - Polyp, which are stationary, turret-like Siphos. They don't think much and certainly don't move. Currently they can be found in single boss fight and spawned in Aquarium. In future versions we might use them as enemies in regular areas as well as in different boss fights.
  • Polish and bugfixes And more to come - we love making the game feel good and play right. Growth Mode improvements, graphical improvements, more existing zooid interactions, more stats and powerups are coming.
  • Localization - we have been working hard to convert existing code to support localized strings. The work is done and what remains are translations themselves. In the future we hope to ask you, our community members, to help us translating the game. More news on that later.

We hope this brings some light into our development and will help us accelerate testing and development of Sipho so we can bring these changes to [default] Steam branch as well.
We can't stress enough how our Discord Server members have helped us and participated in various occasions. So if you use Discord, come say us hi!


[ 2020-10-08 11:14:36 CET ] [ Original post ]

Your Creations are now available in Version 0.6.9!

Another great Layout competition is over with 115 new designs added to the game!

Breed distribution ended up being quite uniform, which is great for filling up all levels. Saenus was least submitted with 21 entries and most loved one were Buginis - 26 entries! 100 Designs featured breedless zooid aiding their colony in things whatever Alpha creatures do. We've seen more intricate zooid combos which we hope AI will be able to handle and not be too hard to deal with when encountered! Note that these designs will be standouts in lower-size areas which will shake things up a bit causing you to retreat or have an epic fight against.

Together with adding new Layouts to the game, we tackled some of community reported issues and added a tiny juicy feature which will make Claw feel more physical. Enjoy, while we are working on largest Sipho update so far!

Version 0.6.9

  • Never select larger enemies when scaling with player's wealth
  • Apply Aquarium enemy settings after load
  • Add July event layouts
  • Tweak Grinder sparkles
  • Add new zooids to inventory silently when assigning head, so there's no "green" effect shown
  • Move invalid layouts away from importing them every time game launches
  • Do not load empty Layouts
  • Fix deleting Layouts messing up other layout UI
  • Remove duplicate built-in Layouts
  • Make ZooidButtons appear below Growth Sidebar UI so they don't obscure Growth Zooid selection
  • Fix input deadzones at the top and bottom of the screen
  • Adapt Advena zooids from the start
  • Add Chip effect to Claw
  • Fix incorrectly shaped builtin layouts
  • Fix exceptions and various other issues when pressing F while dragging a zooid in growth mode



[ 2020-07-17 10:55:59 CET ] [ Original post ]

Announcing Sipho NPC design contest!

Dear Whirlpool Surfers and Aquarium Caretakers,
Sipho team would like to invite you take another opportunity to design Sipho NPCs and have them immortalized in the game!

Previous design contest was aimed at smaller and pure-breed creatures to fill in their future habitats. And it has been a wonderful success with many different designs:


This time we are looking for beefy "alphas" that are found swimming along smaller ones. They are big and menacing, but have an exploitable weakness that makes them vulnerable to your attacks even though they are more than twice the size of your Sipho. Maybe one of their sides lacks any kind of defence or their movement is weak and they can be outmanoeuvred. And since these alphas are so old and powerful, they can also have adapted one of non-breed Zooids. These breedless zooids are: Agonizer, Energy Leech, Flail, Grappling Hook, Greaser, Grinder, Muck, Sniper, Soul Eater, Sprayer, Swarmer - any of zooids that do not belong to any of the starting breeds.
Take a look at this example:

It is a buginis Sipho with a not-of-its breed Greaser, which increases range and effectiveness of connected Zooids. It does not have many weapons nor its sides are very protected from attacks. This is just an example, so go wild!

We will be accepting entries as Layout text. Layouts are data structures we use in Sipho to define what Zooids have been grown where. When you grow a new Spike or a Claw, your Layout is modified to resemble what you have grown. Something like a recipe to grow your Sipho. We can save and use Layouts to define enemies that you encounter in different areas or restore your Sipho when loading the game. Manual Layout management is possible through Aquarium game mode and that's where we ask you to create your event entries.
How to enter:

  • Using latest version of Sipho and Aquarium mode take a screenshot of Layout you would like to submit. Feel free to modify the environment keeping Layout clearly distinguishable
  • Upload the screenshot to our Discord server's #event-entries channel with following formatting:**Name:** Name of the layout
    **Author:** Optional author name. Leave it out if you want to remain anonymous
    **Value:** Layout value - shown at the top of Growth mode
    **Description:** Optional Layout description
    **Layout data:** || layout data ||

  • In Aquarium, export the Layout text data as shown in picture below and paste it on layout data. Please keep data between double || marks so it remains spoilered. If Layout data is too long, submit the entry without it and upload layout data as a text file in following message.

Congratulations, you have submitted your Layout! We are looking for as many Layout designs as possible, however we keep our rights to reject some by our judgement or incompatible requirements:
[h2]Layout requirements:[/h2]
  • Layout should not mix breeds and can contain a breedless Zooid. For example: Advena Layout can contain Spikes Zenoplates and Swarmers (breedless), but not Claws (mixing breeds) or additional Greasers (another breedless zooid).
  • Layout value should be between 150-300 nutrition. You can see current Layout nutrition value at the top of Growth screen, under the Sipho name.
  • Layout should be created using Growth mode of latest available version and should contain valid positions and rotations
  • Layout should be created by you or the author rights have been passed to you by the original author
  • Layout should not be already in game or already be a valid submission prior to yours

Once the event ends we will go through all submissions. Submissions that pass the requirement criteria will be added to the game. And we will also credit you, the author, in the game!


[ 2020-06-27 10:37:01 CET ] [ Original post ]

Version 0.6.8 and Snappy's new home

And update arrives with small bugfixes and Quality of Marine Life improvements. Sipho version 0.6.x phase is coming to a long end - from now on we will be delivering small bug fixes and minor improvements suggested by community. This doesn't mean development stops at all, it's the opposite - major features and reworks are being developed in a separate version control branch with higher velocity.

One thing that will be coming with new levels are new Graphics for those environments. Take a look at this snappy in his new habitat:


We plan to have several variations of Obstacles per each environment. In this case rocks are "fresh" and sharp, rounded or old and corroded. Rocks also have several different color variations. Together with those features we are experimenting with "depth" value of Obstacles and Decorations. Depth controls layering of objects and their color saturation. You can see in the animation that some rocks are above corals while other rocks are below Snappy Sipho and are desaturated. We feel that all these layering features will tie environment objects together into believable underwater environment.

Version 0.6.8

  • Thicken every 3rd gridline in growth mode
  • Cleanup builtin layout Sea Creature 5
  • Add option to turn off Layout autosaving
  • Use Steam name as base name for player and as Layout author
  • Rename GlobalSettings to PlayerProfile and store Player's name in it
  • Handle missing saved head zooid gracefully
  • Rename April event layouts by Author's request
  • Update Zooid Graphics on the first frame the zooid is grown



[ 2020-06-05 16:33:49 CET ] [ Original post ]

Your Layouts are now in Sipho 0.6.7!

We bring you a new update, featuring Layouts or NPCs designed by our community members. The restrictions for designs were that they can only contain single breed zooids and can not be more "expensive" 150 nutrition. Let's see how that went:

In total 74 Layouts were added. Here's a breakdown for each breed:

  • Advena 21
  • Buginis 17
  • Vagorian 14
  • Saenus Beefuorus 13
  • Cra'Than 9

Our team is sending a huge thank you to Aldwyn, Araylie, DastianZerg, Iztacmizton, LittleSmog, NovaStar987, Salreix Von Otsuu, TIC, TotalBlazing, skipydog, z0mbiesrock. These are our Discord members who have participared in this event and created the new layouts.

These layouts are now available to play with in game in Aquarium mode. In future, we will use them in Campaign levels where applicable. We are really happy how this turned out and are looking forward to hosting more events with different rules. Stay tuned!

Version 0.6.7
  • Pre-initialize procedural growth next growth type
  • Increase potential Leech target count to 16 from 4. Fixes sometims leeches not attaching to things properly
  • Add text-file based credits. Add Community Layout creator names
  • Pre-sort Layout Databse layouts by name
  • Show author in Layout info panel
  • Make the killer's name appear in red
  • Show killer name
  • Set prettier names to all built-in Layouts
  • Add name generator utilities and expand dictionary
  • Allow Sipho names contain apostrophe ' symbol
  • Update dirty serialized asset name
  • Update Layout tests to new Layout serialization layout
  • Add Event Layouts
  • Add mass Layout text file parser
  • Fix invalid Layout text being treated as valid
  • Add Author name and Description fields to Layouts



[ 2020-05-16 16:15:01 CET ] [ Original post ]

Sipho updated to 0.6.6! Design contest ends tomorrow!

While busy with new level progression development we have released several small updates over the course of previous weeks. Version 0.6.5 was a small patch-release to solidify improvements for Layout creation and contest. Version 0.6.6 is coming out just now with few bugfixes and an improvement to Layout browser.

By popular demand and something we wanted to do for a while, Layout browser now has three tabs to choose from:

  • Manually saved - the classic view you're all used to. Layouts saved in Aquarium appear here
  • Autosaved - we autosave your Campaign Sipho as Layout in this category so you can dig-out builds that were used to beat the game. Sipho is all about creating and we want to save every drop of your creativity. We use this category to spawn NPCs in Freeroam and Aquarium levels - you might have noticed that you're battling former-self!
  • Built-in - all regular enemy layouts that can be found in the game are in this category. After the Layout creation event ends your entries will be added to this category as well!

    Reminder that Layout Design Event ends tomorrow, 4th of May, at 18:30 UTC - read more about the contest here:


    Version 0.6.6
    • Move Layout name generator to its own class
    • Add autosaved and built-in Layout category to Layout browser
    • Fix loading game incorrectly if new game has been started in same game session
    • Convert button click confirm sound to ogg
    • Add button click effect reference
    • Fix game end UI not being fully disabled after hiding it
    • Options UI has button sounds now
    • Added an onClick sound
    • Fix shells not disappearing after death


    Version 0.6.5
  • Fix one of Advena built-in layouts containing Cra'than head
  • Separate Zooid addition logic from Layout Entry addition
  • Fix slight rotational Layout deformation for first zooid grown which occured when Sipho had angular velocity by always synchronizing Sipho position
  • Use proper way to instantiate progress consumable


  • [ 2020-05-03 09:09:29 CET ] [ Original post ]

    Become an official Sipho designer!

    Dear Whirlpool Surfers and Aquarium Caretakers,
    Sipho team would like to invite you take an opportunity to design Sipho Layouts and have them immortalized in the game!

    We have been expanding underwater world of Sipho and now the time has come to start populating it. The future non-linearly traversable areas are in need of habitant designs for all breeds. Larger Saenus Beefuorus, tiny Advenas and both big and small Buginis, Crat'han and Vagorians - all will be encounterable in future areas. We could and will design many enemy Layouts ourselves, but we would like to ask for your help first and have your creations floating in Sipho world. Forever.

    Layouts are data structures we use in Sipho to define what Zooids have been grown where. When you grow a new Spike or a Claw, your Layout is modified to resemble what you have grown. Something like a recipe to grow your Sipho. We can save and use Layouts to define enemies that you encounter in different areas or restore your Sipho when loading the game. Manual Layout management is possible through Aquarium game mode and that's where we will ask you to create your event entries.
    How to enter:

    • Using latest version of Sipho and Aquarium mode take a screenshot of Layout you would like to submit. Feel free to modify the environment keeping Layout clearly distinguishable
    • Upload the screenshot to our Discord server's #event-entries channel with following formatting:**Name:** Name of the layout
      **Author:** Optional author name. Leave it out if you want to remain anonymous
      **Value:** Layout value - shown at the top of Growth mode
      **Description:** Optional Layout description
      **Layout data:** || layout data ||

    • In Aquarium, export the Layout text data as shown in picture below and paste it on layout data. Please keep data between double || marks so it remains spoilered. If Layout data is too long, submit the entry without it and upload layout data as a text file in following message.

    Congratulations, you have submitted your Layout! We are looking for as many Layout designs as possible, however we keep our rights to reject some by our judgement or incompatible requirements:
    [h2]Layout requirements:[/h2]
    • Layout should not mix breeds or contain breedless Zooids. For example: Advena layout can contain Spikes and Zenoplates, but not Claws (mixing breeds) or Swarmers (breedless zooid). For this event we want only pure-breeds to fill basic environments.
    • Layout value should be under 150 nutrition. You can see current Layout nutrition value at the top of Growth screen, under the Sipho name.
    • Layout should be created using Growth mode of latest available version and should contain valid positions and rotations
    • Layout should be created by you or the author rights have been passed to you by the original author
    • Layout should not be already in game or already be a valid submission prior to yours

    Once the event ends we will go through all submissions. Submissions that pass the requirement criteria will be added to the game. And we will also credit you, the author, in the game!


    [ 2020-04-23 19:27:18 CET ] [ Original post ]

    Version 0.6.4 and Layout improvements!

    Hi all!
    In this update we took a big step towards stability and validity of what we call Layouts. They are data structures that hold information of what Zooids and where they are grown. You might have seen us call them Blueprints too - coders in our team love playing Factorio and that's where from the term initially came. Once we added Aquarium and Layout sharing we wanted to go towards something a bit less technical and we came up with the term "Layout".

    When we first coded layouts we wanted to have an easy way to store Sipho templates which could be later used for defining enemies. We would take a snapshot of current player Sipho Zooid positions and save them to a file. If we did that carefully, no position deformations would be stored. We could also later retouch those layouts by hand if we wanted to have Zooids in unusual positions or fix slight offsets that were captured. This wasn't ideal, but it worked for that time being.

    Later on, we had to add saving system and save your being-played Layout to not lose it. This was important because one of the cornerstone aspects of this game is player creativity and our task to foster it. It feels very punishing to spend several minutes in Growth mode and then later find part of your Sipho cut-off and destroyed never to recover. That's why we implemented automatic Zooid regrowing.

    Then Aquarium came and we allowed manually saving your Layouts. Even though Layout sharing is possible right now through text strings, we didn't pay much attention to validity of saved Layouts as they would mainly be used "for your own purposes" and if they were clean enough for you, we were happy too. Layouts could still be deformed due to physics and saved Zooid neighbours didn't matter much as we re-collected them when growing back from Layout. We did, however, try to fully undeform Sipho when entering Growth mode to preserve somewhat correct Zooid positions when re-capturing Layout. Potentially we might not even need to undeform in the future if we fully transition to Layout-based Growth.

    With introduction of Buffer Zooids like Greaser and others importance of connectivity to neighbours was highly escalated. Wanting to buff certain Zooids with Buffer Zooids and seeing them regrow differently was not what we wanted to have as experience - growth should be deterministic and have the same results every time. That didn't come without fun little exploits where it would be possible to attach up to 6 Buffers to the same Zooid and cause some real ruckus.

    This update finally addresses major inconsistencies in Layout creation:

    • Zooid removal by ungrowing does not re-capture all existing Zooid positions, but rather removes ungrown Zooids directly from Layout
    • Growing a new Zooid while there are dead Zooid ghosts no longer re-captures whole Layout - dead Zooid ghosts are removed in the same way as ungrown Zooids
    • Repositioning Zooids no longer re-captures whole Layout - repositioned Zooids are removed and re-added cleanly. However we don't re-use "clean" repositioned Zooid data after they are re-added - we re-capture moved Zooid positions. We will fix that in later updates if it deems necessary.
    • Grown Zooids have their neighbour Zooids set according to what has been store in Layout - neighbours are no longer re-generated when re-growing and are always kept the same. Previously we would just discard neighbour data saved in Layouts.
    • Head Zooids are no longer slightly larger than structure Zooids - we had to have slight margins for growing Zooids initially when Growth code wasn't as mature as it is now

    All of your existing Layouts will be upgraded to re-gather neighbours according to saved Zooid position and rotation. Invalid Zooids will remain in Layouts but will be ungrowable - they will appear as Zooid ghosts and will help to fix invalid Layouts.
    Now that Layouts are almost independent of your Sipho deformations and can be fully trusted to be valid we will be hosting Layout creation contests to populate upcoming depths.


    This huge undertaking was made easier with making use of testing discipline. I have personally noticed that some things require quite a lot of mental power to get started worked on each day - math heavy code, complex code hierarchies, data manipulation. After spending several evenings just to get started on modifying Layout code I decided to write some basic tests to have confidence in different parts of code. With that confidence it was then easier to work on other parts which seemed to be incorrect or harder to test. Now each time I notice that something will require some time to work out how it works or if I catch myself wiring debug messages just to test I consider writing a test instead. That is why you might notice terms "test" in future changelogs. We had tests before, but just now I encountered their real usefulness for existing code. Check'em:
    Version 0.6.4
    • Add ThreatsLayerMask which is used to determine threats that can be pushed away
    • Kill Windows 64 bit standalone when quitting to work around freeze on quit
    • Unpause game when selecting Play Again after beating last boss
    • Increase epsilon of layout growth point generation
    • Adapt all breed zooids when unlocking a breed
    • Track kill point deficit and consume food if there is deficit
    • Fix deadlock when diving while spawners have chunks to update
    • Stop spawners from spawning new chunks after level transition has been initiated
    • Reset rotation bias of Zooid button so it's not inherited by other zooids
    • Do not recalculate zooid positions when growing from Layout
    • Mark Layout statistics dirty when removing zooids
    • Make Sipho head size match structure size
    • Upgrade layouts that have become invalid after Layout upgrade
    • Upgrade built-in layouts
    • Only add lower neighbor indexes to layout of grown zooids to avoid duplication
    • Add several built-in layouts
    • Tests for Layout importer
    • Use layout importer to load layouts for Layout Database
    • Move Layout version definition to Layout class
    • Remove ReadOnly flag from Layouts
    • Handle non-existing zooids when upgrading Layouts
    • Find upgraded layout zooid neighbors anew
    • Save Layouts in pretty format
    • Add GetAllBlueprints to growth utils and write tests for it
    • Add some upgrader tests
    • Add version to Layouts and upgrade accordingly
    • Upgrade Layout when importing from string
    • Add Layout upgrader tests
    • Ensure saved layout zooids are not referencing themselves as their neighbours
    • Fix head growth position on layout change
    • When copying layout, copy entry neighbors too - fixes layouts not being fully copied and causing corruption of unrelated layouts
    • Clear Sipho when setting layout and other fixes
    • Refactor Growth layout setting to require calling explicit method
    • Various debug things
    • Do not recreate Sipho layout when ungrowing or moving zooids
    • Add more layout tests
    • Start working on selecting a random environment for the next levels
    • Do a complete spin180 on the level loading logic and keep most of it inside GameSceneManager and use the Initialize methods to properly setup the area selectors
    • Remove the no longer used initial area from IAreaSelector
    • Tweak the loading order of campaign scenes - campaign logic promts the loading of the first area
    • Add Empty Layout Editor tests
    • CampaignLinearAreaSelector now checks with CampaignLogic on whether we're running the tutorial and chooses the next level according to that
    • Move Level logic to CampaignLogic from GameStateManager and tweak how the next level is chosen with the linear area selector



    [ 2020-04-13 19:08:33 CET ] [ Original post ]

    Sipho Update 0.6.3 comes in!

    We are back to regular two-week update cycle with this 0.6.3 update. Together with tweaks and improvements we are releasing some changes for non-linear level gameplay.

    Even though these level loading changes are invisible and should not affect how you play the game they are important for us to release for several reasons:

    • We want to be confident that code in the future will work as it does now by getting it out as soon as possible. In case any bugs have slipped through we will be able to catch them earlier. While we don't expect any bugs, this is a good precaution of not having to deal with them at once which might make the game unplayable for some. Imagine having two entrances to your home and locks of both break at the same time - you would be left out of your house. Otherwise if only one lock breaks, you can still use another entrance while broken one is being fixed.
    • We want to have as little parallel development as possible. In previous updates we have mentioned we are using Source Control which allows having branches and working on features separately from main code. While that is good for big changes as non-linear level loading is, it also creates additional work of maintaining separate branches. And further those branches separate, more maintenance is needed. So in the new system we have replicated old behaviour and merged it into default branch, converging everything back to one point.

    With that said, in the changelog you might notice fixes to issues that have not risen in previous version. Those are fixes due to additional changes being merged in. Enjoy!

    Version 0.6.3
    • Fix extra zooids being lost as adapted zooid after starting a new game
    • Fix head selection siphos not growing zooids they have been saved with
    • Set swarmer critter layer to projectiles and damage everything they touch
    • Show zooid name above zooid pickup
    • Projectiles no longer block growth
    • Round zooid tooltip values and display zooid cost breakdown in tooltip
    • Provide layout on Aquarium start
    • Add a UI button selection sound
    • Add current layout information at the top in growth mode
    • Update sipho data before clearing layout statistics
    • Always update UI slider text
    • Refactor how Aquarium enemy settings are saved and store all Aquarium Enemy settings
    • Fix UI orb fill being larger than orb itself
    • Instead of reading/writing to gameSave.Level directly, read/write to GameStateManager instead
    • Report how long it took to load layout database
    • Revert accidentally changed poison mine duration to 10
    • Save which zooids are alive and regrow only them on load
    • Change "Quit" to "Save & Quit" so players know the game will be saved
    • Fix skill issues when switching between siphos
    • Upgrade old saved level numbers to new format
    • Set starting nutrition to 15 when not starting Tutorial and set to 5 when starting.
    • Use GameSave.level to track player progress through levels. Always have instance of GameSave even if game has just started
    • Replicate old scene loading functionality through IAreaSelector
    • Add level value to GameSave and don't overwrite it when saving
    • Add IAreaSelector interface
    • More indice cleanup
    • Add Campaign Scene Loader class
    • Remove scene index based area loading. Save environment type so head selection knows what environment to use for preview
    • Rename Aquarium Inventory to Aquarium Logic
    • Move Aquarium logic script to its own folder
    • Make sure Main is the first scene to be loaded
    • Initialize game when Campaign scene is loaded.
    • Move campaign related calls out of scene loading to CampaignLogic script
    • Remove GameSetup and disperse its responsibilities to other classes
    • One reference less to GameSceneManager in HeadSelection
    • Revert GameScenes to original order
    • No need to serialize PlayerSetup in GameSetup
    • Increase max enemy layout wealth selected for all layouts
    • Add cheap bone layouts to builtin layouts
    • Make level 1 bone boss easier to defeat
    • Dynamically select layouts from built-in layouts collection by level value in enemy spawners in all areas
    • Add level 1 bone boss
    • Rename Bone boss scene and assets to reflect level 3
    • Smarter lvl 3 sea boss AI
    • Add circular currents to Sea boss lvl 3 and make spikes float around
    • More accurate skill usages for Sea boss
    • Implement IAreaAffector with Pusher
    • Add distance to line functions to math class
    • Work in progress harder Sea boss AI
    • Add interface to query skill providers of what area they will affect. Implement interface with Claw weapon first
    • Add Sea boss level 3 prototype



    [ 2020-03-29 14:38:46 CET ] [ Original post ]

    New and rebalanced parts are now available!

    It's finally here - Sipho 0.6 available for everybody to play!
    First and foremost, we want to again congratulate our Halloween zooid design contest winner Scepti! The winning entry was a design of Soul Eater which charges its pressure up with eaten remains of enemies and blasts remaining enemies with harmful fluids. We have implemented this idea and it is now available to adapt in game!

    We are very happy how it turned out and we will definitely are going to hold more community contests in the future!

    As the Soul Eater was a recent leap in new game mechanics we had an another idea sprout some time ago. Back in version 0.5 we have added a Greaser - a unique part that buffed-up Range and Movement Power stats of connected zooids. And it was great - it deepened mechanical importance of part placement which spawned many new interesting Sipho designs. Inspired by your creations we wanted to dive deeper with such buffing mechanic. So deep that we did a bold move and have re-balanced all structure zooids to have more importance where they are placed. And the results are glorious:

    The screenshot above shows some of new buffs that are applied by Structures. The changes in detail are as follows:

    • Advena structure now costs 3 (instead of 2) nutrition and increases attached zooid damage by 1 and healing efficiency by 1 - zooids with higher healing efficiency will get more health points from healing effects.
    • Saenus Beefuorus structure will now automatically cover neighboring zooids with protective shell.
    • Buginis structure now adds 1 point of energy regeneration to neighboring zooids.
    • Each Cra'than structure now heals 2 health points (instead of 1) and skill cost is lower, but increases with each zooid.
    • Vagorian structure gives 10% movement speed bonus to attached zooids.

    We hope these changes will increase strategic value in choosing which zooid to use and promote more experimenting with different zooid combinations. We want each part to be unique and beneficial in scenarios you encounter throughout the game.

    We took a step further with buffing idea and have introduced three new zooids, two of which act in a similar way as Greaser:

    In the screenshot you can see Squirter being buffed-up by two buffer zooids:
    • Grinder will grind down your zooid weapons making them sharper and increasing their piercing abilities. This works for poison too - it affects more zooids!
    • Agonizer imbues nearby zooids with acidic substance which increases their damage. Perfect to amp the damage up together with Advena structure!


    To celebrate occasion of this update, we are hosting a sale on Steam store with 15% discount. The sale will last until 16th March, be sure to grab it in time.

    If you want to chat with our team, share creations with other players and discuss legitimate strategies, come join us at

    And all of the changes in detail can be found below:
    Version 0.6.2
    • Track and report semantic game version numbers separately
    • Log when damageable does not have a collider
    • Don't show irrelevant stats. Gray out irrelevant stat buffs in tooltips
    • Use nutrition icon to convey nutrition ungrow value in zooid tooltip
    • Track zooid original prefabs and their base stats in Zooid Info
    • Remove unused Zooid connector color as all zooids now have their own connectors
    • Damage stat determines max stack count on target
    • Each poison cloud now has Damage * Penetration charges which determine maximum amount of stacks each poison can apply
    • Poison cloud now scales from Damage and Penetration stats:
    • Poison debuff now stacks and has duration of 0.9 seconds (down from 3s)
    • Change how DOTs work: instead of dealing damage throughout duration, damaging buffs will now deal damage on stack timeout
    • Update crop for stat icons to reduce mip bleeding
    • Revert Aquarium UI icon change to old Sipho head icons
    • Don't display buffs in tooltips with 0 stacks
    • Update Soul Eater skill description
    • Swap graphics of Agonizer and Grinder
    • Use icons for skill descriptions
    • Update icon bounds in sprite sheet
    • Use new icons for stat tooltips
    • Use named controller icon references without referencing specific TMP sprite icon sheets
    • Reduce pixel bleeding for new icons
    • Tidy TMP icon assets
    • Use names for controller icons rather than indices
    • Icons with padding
    • Make Soul Eater projectiles non-solid, tweak and polish them
    • Add concept of non-solid projectile. Add lose velocity on hit ratio to projectiles
    • Make Poison Mine explosion more powerful
    • Create TMP stats Sprite Asset
    • Icon sheet import settings
    • Icon sheet
    • Add per-projectile extra damage scaling parameter
    • Soul Eater effect improvements
    • Create rotated chip effects when projectile dies
    • Allow projectiles have no renderers attached
    • Make Soul Eater projectile trail follow scale
    • Add scale following to Following Effect
    • Update Steamworks tools


    Version 0.6.1
    • Update Soul Eater description
    • Set Soul Eater projectile layer to Projectile
    • Rename Advena structure buff to Acidic Metabolism
    • Make Soul Eater available in Campaign
    • Change unused Greaser range stat to 0
    • Rename Phaser to Agonizer. Make Agonizer apply damage increase and make it available in Campaign
    • Change Grinder effect to apply penetration stat buff and make Grinder available in Campaign
    • Add Save Custom Data get method with default value override
    • Only play one shot at a time of Soul Eater shot sound
    • Soul eater shoot effect and tweaks
    • Calculate steering direction from projectile rotation if velocity is close to zero
    • Fix Flail outline and remove angular drag from Flail connector. Now Flail should have no drag at all
    • Make flail do 50% of damage when retracted.
    • Do not auto-save layout if layout exists with same content
    • Add Built-in layouts to Layout Database. Initialize Layout Database on game launch and keep it warm when managing layouts
    • Better Layout hashing
    • Keep track of original materials when making copies in Zooid Graphics
    • Soul Eater animations
    • Reserialize Buffer zooids
    • Fix max health debuff reducing more health than it should on apply
    • Sparks for Grinder buff effect
    • Fix flail power scaling
    • Update Steamworks to 1.66 (Steamworks.NET 13.0.0)
    • Fix player being frozen after death in Aquarium
    • Stat buffers no longer buff themselves
    • Added a more robust way to save/load custom data with base type support

    Version 0.6.0
    • Move several test structure prefabs to disabled folder
    • Make Flail weapon damage based more on impact velocity rather than time
    • Increase Muck effectiveness against projectiles
    • Fix Muck animation becoming off-sync when continuously using launch skill
    • Increase Nervefiber healing amount from 1 to 2
    • Chitin Shell buff sprites should not be affected by Greaser effects
    • Despawn environment objects when they sink
    • New buffers use new sprites
    • Buffer zooid sprite metas
    • Tweak Chitin Shell visuals and don't despawn them on level change
    • Buffer zooid sprites
    • Where does the sniper piercing keep disappearing?
    • Try to make flail more fun by reducing its drag and boosting its launch force 20 times. Now you can sort of chase people around with it
    • Set Greaser sac layer to Outline to make it ignored by Renderer cloner effect
    • Hide the weird "zarnokas" sprite in the soul eater projectile
    • Buff soul eater force per range from 150 to 220
    • I suck at making particle effects, but I'm trying to improve the Grinder particle effect
    • Projectile size scales from bonus damage
    • An attempt to make a Grinder effect of some sort
    • Serialize phaser
    • Rename spike skill to "Impale" so it's not confused with pierce stat
    • Slightly robustify shell code from weird states
    • Shells don't expire and sea structures regrow shells every 7 seconds instead of 6
    • Fix a bug (feature?) where dead zooids grew shells.
    • Increased shell lifetime from 16 to 18 seconds and decreased spawn frequency from 4 to 6 seconds to make fighting sea boys less annoying
    • Alien structure costs 3 instead of 2, but retains the 12 health so it's more robust for the price
    • Add a regeneration efficiency stat description
    • Update descriptions for a few structure zooids
    • Vagorian structure buffs nearby movers with 10% extra movement force
    • Reserialize the rest of the zooids
    • Reserialize the two zooids that feel like it
    • Heal skill uses less energy up-front but uses 5 more energy per-zooid
    • Fix nothing healing anymore since the regenerationEfficiency got reset to 0 everywhere
    • Skills can have an extra energy cost per-zooid
    • Advena structures add a health regen efficiency bonus - heal more with less!
    • Advena structure buff naming came back to its senses
    • Shell lifetime extended from 15 to 16 seconds
    • Saenus Beefuorus structure passively grows a shell over a single zooid every 4 seconds
    • Fix exceptions when loading a save with a player skill that no longer exists
    • Advena structure buffs nearby zooid damage by 1
    • Update Buginis structure description
    • Make Buginis structure give +1 energy regeneration to neighboring zooids. Decrease their max energy bonus from 10 to 5


    [ 2020-03-10 21:05:25 CET ] [ Original post ]

    Version 0.6.1 comes to staging branch!

    Another content loaded update comes to [staging] branch. This time we are happy to finally introduce you to our Halloween contest winner's Scepti designed Soul Eater implementation! And we are also throwing in two new buffer zooids - Grinder and Agonizer!

    Grinder will grind down your zooid weapons making them sharper and increasing their piercing abilities.
    Agonizer imbues nearby zooids with acidic substance which increases their damage. Perfect amp the damage up with Advena structure!
    And the star Soul Eater charges its pressure up with eaten remains of enemies and blasts remaining enemies with harmful fluids.

    We will be tweaking and polishing new zooids before letting out them into the wild (default Steam branch) in future updates. This means that this update will too remain in [staging] branch. To get this experimental content you can opt-in in Sipho preference window found by right-clicking on Sipho in Steam Library:

    All of changes that led up to this point are listed below:
    Version 0.6.1

    • Update Soul Eater description
    • Set Soul Eater projectile layer to Projectile
    • Rename Advena structure buff to Acidic Metabolism
    • Make Soul Eater available in Campaign
    • Change unused Greaser range stat to 0
    • Rename Phaser to Agonizer. Make Agonizer apply damage increase and make it available in Campaign
    • Change Grinder effect to apply penetration stat buff and make Grinder available in Campaign
    • Add Save Custom Data get method with default value override
    • Only play one shot at a time of Soul Eater shot sound
    • Soul eater shoot effect and tweaks
    • Calculate steering direction from projectile rotation if velocity is close to zero
    • Fix Flail outline and remove angular drag from Flail connector. Now Flail should have no drag at all
    • Make flail do 50% of damage when retracted.
    • Do not auto-save layout if layout exists with same content
    • Add Built-in layouts to Layout Database. Initialize Layout Database on game launch and keep it warm when managing layouts
    • Better Layout hashing
    • Keep track of original materials when making copies in Zooid Graphics
    • Soul Eater animations
    • Reserialize Buffer zooids
    • Fix max health debuff reducing more health than it should on apply
    • Sparks for Grinder buff effect
    • Fix flail power scaling
    • Update Steamworks to 1.66 (Steamworks.NET 13.0.0)
    • Fix player being frozen after death in Aquarium
    • Stat buffers no longer buff themselves
    • Added a more robust way to save/load custom data with base type support



    [ 2020-02-21 16:51:09 CET ] [ Original post ]

    Version 0.6.0 is now available in Staging branch

    We would like to announce a new era of Sipho updates - 0.6.x. This update contains changes to structure zooids which play a major role in balance of the game. As we want to get new content released as soon as possible for testing, it has not been prepared for inexperienced players and might make some parts of the game harder or easier. For this reason, we are only going to release this version in [staging] branch. Once tested and balanced, we will promote next version to default branch, which reaches everyone by default.

    If you want to get new content and help us by trying it out, switch to [staging] branch through Sipho properties in Steam Library:
    After switching you will be greeted with rebalanced structures:

    • Advena structure now costs 3 (instead of 2) nutrition and increases attached zooid damage by 1 and healing efficiency by 1 - zooids with higher healing efficiency will get more health points from healing effects.
    • Saenus Beefuorus structure will now automatically cover neighboring zooids with protective shell.
    • Buginis structure now adds 1 point of energy regeneration to neighboring zooids.
    • Each Cra'than structure now heals 2 health points (instead of 1) and skill cost is lower, but increases with each zooid.
    • Vagorian structure gives 10% movement speed bonus to attached zooids.

    We hope these changes will make structures a lot more useful and fun to play. Let us know what you think!

    You can find changelist below:
    Version 0.6.0
    • Move several test structure prefabs to disabled folder
    • Make Flail weapon damage based more on impact velocity rather than time
    • Increase Muck effectiveness against projectiles
    • Fix Muck animation becoming off-sync when continuously using launch skill
    • Increase Nervefiber healing amount from 1 to 2
    • Chitin Shell buff sprites should not be affected by Greaser effects
    • Despawn environment objects when they sink
    • New buffers use new sprites
    • Buffer zooid sprite metas
    • Tweak Chitin Shell visuals and don't despawn them on level change
    • Buffer zooid sprites
    • Where does the sniper piercing keep disappearing?
    • Try to make flail more fun by reducing its drag and boosting its launch force 20 times. Now you can sort of chase people around with it
    • Set Greaser sac layer to Outline to make it ignored by Renderer cloner effect
    • Hide the weird "zarnokas" sprite in the soul eater projectile
    • Buff soul eater force per range from 150 to 220
    • I suck at making particle effects, but I'm trying to improve the Grinder particle effect
    • Projectile size scales from bonus damage
    • An attempt to make a Grinder effect of some sort
    • Serialize phaser
    • Rename spike skill to "Impale" so it's not confused with pierce stat
    • Slightly robustify shell code from weird states
    • Shells don't expire and sea structures regrow shells every 7 seconds instead of 6
    • Fix a bug (feature?) where dead zooids grew shells.
    • Increased shell lifetime from 16 to 18 seconds and decreased spawn frequency from 4 to 6 seconds to make fighting sea boys less annoying
    • Alien structure costs 3 instead of 2, but retains the 12 health so it's more robust for the price
    • Add a regeneration efficiency stat description
    • Update descriptions for a few structure zooids
    • Vagorian structure buffs nearby movers with 10% extra movement force
    • Reserialize the rest of the zooids
    • Reserialize the two zooids that feel like it
    • Heal skill uses less energy up-front but uses 5 more energy per-zooid
    • Fix nothing healing anymore since the regenerationEfficiency got reset to 0 everywhere
    • Skills can have an extra energy cost per-zooid
    • Advena structures add a health regen efficiency bonus - heal more with less!
    • Advena structure buff naming came back to its senses
    • Shell lifetime extended from 15 to 16 seconds
    • Saenus Beefuorus structure passively grows a shell over a single zooid every 4 seconds
    • Fix exceptions when loading a save with a player skill that no longer exists
    • Advena structure buffs nearby zooid damage by 1
    • Update Buginis structure description
    • Make Buginis structure give +1 energy regeneration to neighboring zooids. Decrease their max energy bonus from 10 to 5



    [ 2020-02-06 09:18:55 CET ] [ Original post ]

    Version 0.5.8 - Small Update, Big Plans

    With this update we bring several noticeable fixes to input. It will now be possible to bind any input device to any key bind which allows full customisation of key bindings. In the meantime we were working on many different things that will reach you in the future:

    This is how our Mercurial repository of Sipho development looks like. It allows us to work on game in separate branches, which do not affect the default branch - the one that is shipped to you. While in rest of the branches we can thoroughly test and polish larger changes without slowing down update releases. As is it visible in picture above we are currently actively working on two major things:
    [h3]Structure zooid rebalance[/h3]
    We want to rebalance structure zooids to make them more useful and have distinct benefits. Having a single zooid grown should be impactful to the play style and this wasn't a case for structure zooids. We have learned from Greaser that neighbour buffs provides an interesting choice and strategic zooid placement. Having that in mind structures will give bonuses to neighboring zooids and other zooids that already had abilities will have their unique ability amplified.
    [h3]Non-linear levels[/h3]
    In current version of Sipho we are using a list of areas (scenes) which are loaded one after another. That happens in Campaign mode when you traverse the world through whirlpools. This has worked fine since the very beginning of development in 2017. To allow more interesting travels we have to rip out existing system based on list and re-create it in scriptable and more controllable way. This will allow traversing environments in more different order, maybe have a choice or even ability to skip or visit special areas. What we have currently achieved in the levels-nonlinear branch is the base-work for that. Once we are confident that we are able to replicate existing system with new back-end code, we will merge that into default branch and continue working on spicing up level traversal.

    Version 0.5.8

    • Soul eater has a lerp animation for its belly
    • Soul eater clips its sprite instead of using transform scale
    • Soul eater uses 1 charge instead of all of them when used
    • Save ZooidPhaserBuff asset stuff
    • Reset Sniper penetration to 1
    • Add penetration stat description
    • Add a Phaser zooid test prototype that gives nearby weapons penetration
    • Swarmer uses penetration stat for multiple attacks and swarm minions now tell the owner of their damage
    • Volter uses penetration stat to increase max target count
    • Poison uses the penetration stat
    • Spike uses penetration stat
    • Added a penetration stat. Soul eater now penetrates all zooids, but deals less damage
    • Dirty assets after update
    • Update Unity to 2018.4.14f1
    • Invert the appropriate gamepad axes to workaround the new input system bug
    • Finish up the rework
    • Start reworking the input system to be less rigid and be able to bind anything anywhere
    • Fix game skipping the head selection screen sometimes



    [ 2020-01-20 17:04:44 CET ] [ Original post ]

    Merry Version 0.5.7 and Happy New Year!

    Happy new year everyone!

    It's holiday time Sipho homeland, but we have kept our inertia and got a decent bugfix update rolling. Thanks to our players reporting bugs on Discord we had a chance to quickly fix non-intuitive range stat effects and uncover a rare bug with soft body deformations.

    In the meantime we are working on Halloween contest winner zooid Soul Eater which concept was drawn by Scepti and rendered by our artist Spin:

    The inner red sack will expand with each charge to fill up the bone cage. The render shows fully charged Soul Eater.

    And these are changes that make up this version:
    Version 0.5.7

    • Add non-festive version of Santa Hat and use it off-season
    • Don't scale winter zooid through graphics animations
    • Make Sizzler linearly scale max affected target count with range
    • Stop NaN propagation in soft body when there are almost no deformations for symmetric Siphos
    • Add light pulsing to mines so they feel more live just after being spawned
    • Scale mine and bomb size with range increase
    • Increase Poison mine velocity increase for each range unit from 0.375 to 0.9
    • Silently destroy pool objects if pooling is disabled
    • Fix level end analytics not using level label
    • CreateFollowEffect removes following effect on disable
    • Slightly reduce soul eater range
    • Some Grinder serialization
    • Some soul eater tweaks
    • Experimenting with a Grinder zooid that buffs damage similar to greaser
    • Add a trail to the soul eater projectile
    • Fix exceptions when loading a game with controller bindings for skills but no controller plugged in
    • Fix any potential Sipho null refs in Growth
    • Poorly integrate soul eater graphics
    • Soul eater tweaks and fixes
    • Reserialize sniper projectile
    • Projectiles can now be set up generically and launched by the launcher
    • Experimental projectile rework to fit into object launcher



    [ 2020-01-04 12:31:26 CET ] [ Original post ]

    CHRISTMAS SPECIAL- get your cozy hats for your little siphos! Changes to rewards

    Greetings!

    We are happy to bring you this update with features you have been asking for. Pushing "build" button feels like wrapping a Christmas present.

    First one of happy things is that Aquarium will now be available from the start, without having to beat the second boss. It was designed to be a milestone in progressing in the game. Since introducing Aquarium we have added an additional breed and 4 zooids. That acts as progression counter and gives enough goals. Additionally one of Aquarium purposes is training to play with different zooids and learning game mechanics in safe environment. Having that locked behind killing moderately hard boss has cut-off many new players and required the to learn Sipho the hard way.

    The second thing should be exciting for experienced players - bosses will now drop two zooid pickups one of which you will be able to choose by consuming. We feel like the zooid pool is large enough to provide a strategic choice without sacrificing replayability. This should allow guiding your zooid inventory towards more synergetic composition.

    The third thing is a little festive surprise. Let us know how your wear it!

    Controller and keyboard-only support is now considered to be fully functional, without need of using mouse. Happy couch gaming!

    And here is the glorious change list:
    Version 0.5.6

    • Festive things
    • Push away zooids when zooid unlock is being spawned so it's harder to pick it up by accident
    • Fix Layout Browser layout being broken in builds
    • Fix ambient bubbles not respecting emit interval
    • Add ambient bubble spawning based on obstacles
    • Tweak down bubbles a bit
    • Only reset adapted Zooids when starting Campaign game
    • Do not show dialog upon killing Queen boss and unlocking Aquarium
    • Improve Muck effects
    • Buff muck slowing by 50% and decrease skill cost by 50%
    • Add ability to spawn effect on when buffs
    • Add default zooid sprite importer preset
    • Soul Eater part sprites
    • Fix Layout browser being not browsable
    • Use RectMask2D and separate canvas to optimize layout browser layout and rendering with many entries
    • Move save/import layout buttons to the left side of the Layout browser.
    • Tweak layout browser image sizes
    • Show nothing selected when no layout is selected in layout browser
    • Fix aquarium game save leaking into campaign mode
    • Make Layout Browser scale Layout entries to fit UI space
    • Added a killpoint component and taught siphonophores to use it. SoulEaters now use it to collect points individually
    • Fix zooid growth element not being selected from first entry when using zooid type hotkeys
    • Improve Layout Browser layout to be more compatible with button-based UI navigation
    • Only select zooid growth button when directional input was used instead of forcing it to be always selected
    • Fix selecting zooids to grow through category hotkey when there is only a single zooid to grow in a category
    • Integrate bubbles into a couple of in-game effects to get a better feeling of how it all looks
    • Place zooid ghost at mouse position when mouse has recently been used
    • Enter GrowZooid module whenever zooid growth UI element is used
    • Update muck debuff asset
    • Add a super basic SoulEater zooid prototype that scales range depending on regeneration points
    • Muck applies debuff where possible
    • Make bubbles a lot more subtle
    • Improve game over ui controller friendliness
    • Don't insta-beat the game lol whoops
    • Improve game win dialog controller friendliness
    • Game end/over UI buttons selected for controller
    • Fix an issue where the growth hotkey would be shown as a keyboard shortcut instead of a gamepad one
    • I guess more gameplay UI scene updates since I forgot to save last time
    • Added a GameKeyImage that can make the text into the current gamekey binding
    • Together with movement type report gamepad usage as well
    • Add analytics of which zooid has been chosen and skipped in boss fight
    • Do not require Queen boss achievement to play Aquarium
    • Do a little dead-zooid-sweep when spawning zooid unlock consumable
    • Spawn effect for zooid unlock consumable which was despawned
    • Improve zooid unlock consumable spawn effect
    • Make food eaten particles less affected by external forces
    • Add zooid unlock spawn effect
    • Controllers can now be rebound and their bindings are saved/loaded. The core of controller support is finally done #party #timeToFixAllDaBugs
    • You can now see the primary and secondary bindings in the options menu
    • Boss battles now give you a choice between two random zooids
    • Fix ui events happening during rebind operations
    • Simplify ui selection logic in MenuUI
    • Fix rebinding not working correctly for non-first controllers
    • Use controller-specific keys when reading their input and support multiple controllers for skills
    • Controller input is now handled in a separate class
    • Nutrition UI uses beautified button text instead of displaying the default ToString
    • Make sure every game menu has a button selected, otherwise the controller will lose control
    • RebindUI now constantly reset UI input while active and also has a single frame delay before reading any input for rebinding. This should prevent any instant rebinds to the "A" button
    • Reset input axes after rebinding as well
    • Add stricter deadzoning for RebindUI
    • InputManager now uses the new APCButton for stuff
    • Started work on APCButton which will handle all the deadzone and other fancy logic for us



    [ 2019-12-21 22:13:46 CET ] [ Original post ]

    Version 0.5.5 is upon us!

    Greetings!
    It's time for another bi-weekly Sipho update!

    We are experimenting with a major scoped improvement which is allowing to visit different breed zones in other than current order. Replaying the game should be much more enjoyable as you could start the game in Cra'than zones and finish the game just after fighting against beefier Seanus. In addition, if we give you ability to choose which zones to visit first, this would enable more strategic choices whether or not you would like to fight against weaker Buginis now or in later stages. We will keep you updated on our outcome of this experiment in our further updates!

    While these experiments are happening in a separate branch some changes have slipped through the cracks to reach you:
    Version 0.5.5

    • Add several cheap Cra'Than built-in layouts
    • Add an unused rising bubbles effect
    • Some improvements to the perspective shader
    • Add a shader that's capable of doing perspective, sort of
    • Update Utilitarian achievement to only start checking after first level
    • Clamp minimum camera size to 0.1 so it doesn't crash everything
    • Limit pusher effect sound count to 3
    • Add Zooid Top sorting layer and fix Muck sprites being badly ordered
    • Prevent head selection from attempting to load save with empty layout
    • Do not lock cursor to hovered object when using aquarium eraser with relative input - fixes locking controller simulated pointer in place
    • Hide all aquarium sub-menus when closing Aquarium - fixes possibility to enter bad UI state when opening Growth mode from Aquarium


    [ 2019-12-08 18:42:52 CET ] [ Original post ]

    Version 0.5.4 has been released!

    Hello everyone!

    The dust has settled after our participation and GameOn. We have wrapped up improvements we made for the expo in this update.

    One of features of this update is an important one for all new-coming players. We need to have as good as possible first impression, so we have re-done the tutorial level. Tutorial steps have now been laid out in a less "conceptually challenging" order. It now starts with basic movement teachings which leads to growing a single zooid and using Dash skill. Then player is blocked by a rock which requires using combat skills and ends with telling how to modify your Sipho layout. Still, the tutorial is not ideal as we have seen with our eyes. Expo players have shown difficulty finding out how to grow their Sipho and some dialog-popups are still heavy with text. We will be continuing to improve it in future versions.

    To ease post-tutorial playthroughs, we now also spawn your Sipho with pre-made layouts. Starting layouts are uniquely designed for each breed taking starting nutrition and how breed movement works into account. We hope this will help aligning new players with how we expect the game to be played - no more growing 5 structures in your first playthrough. Although that should still remain a possibility and would be fun to explore. Either way, as a consequence, this change will speed-up replays for veterans making zooids pre-grown.

    In past few months we had reports of mysterious few second freezes of the game which would end with player Sipho being damaged. We believe we have found the culprit of said freezes and have attempted to fix the issue. It was a specific case of quadratic soft-body solver used only on player Sipho for extra detail. The detail was too subtle to risk numerical instability so we have improved general linear solution and now apply it on player Sipho as we do on any other Sipho. In addition to that, we have also added a bit more event logging of the game. If you ever encounter any kind of game mishap - please let us know in Bug Reports thread and upload your player log. We want you to have as much fun as possible!

    And the ethereal changenotes, giving a glimpse into our development, are listed below:

    Version 0.5.4

    • Report when siphos are created and killed
    • Don't log achievement unlocked when it has been already unlocked
    • Hide tutorial text when skipping tutorial
    • Cleanup deformable and fix teleporting old position when last remaining zooid is removed
    • Add TIC to credits for supporting our discord server
    • Fix having multiple cursor controllers spawned when going in and out of gameplay
    • Do not track player sipho with sonar
    • Limit sonar indicator size to 2x canvas size.
    • Make deformable more robust and decrease physics drag to compensate movement penalty
    • Use only linear soft body matching for all siphos
    • Fix zooids getting disconnected when repositioned in growth after game load
    • Always use linear soft body solver instead of quadratic
    • Do not allow NaN propagation in Deformable code
    • Add more debug options to physics menu
    • Add physics development menu
    • Added some logging for player death related happenings
    • Added a logging helper class for all kinds of logging
    • Move meshes to mesh folder
    • Fix one rock in tutorial
    • Display controller-relevant tooltip when ungrowing zooids
    • Color zooids red when in ungrow mode with controller
    • Tweak xbox controller icon sizes
    • Make tutorial blips show controller related help
    • Add movement help dialog image
    • Have camera zoomed out a bit more by default
    • Make tutorial dialog text input agnostic
    • Append all layout loading messages to a single message
    • Simplify combat zooid task text
    • Stop rotating the player if the right stick is released
    • Increase skill binding text size
    • Increase global TMP xbox image scale
    • Don't glow growth ui elements if we're not growing
    • Make tutorial prettier
    • Fix sipho icons TMP asset not being properly set up
    • Show correct dialogs and fix flow of tutorial
    • Fix off-by-one error in growth
    • Add callback to Interactive Area when it is entered
    • Add right trigger to default gamepad skill binds
    • Change Tutorial to require growing Movement zooid instead of structure
    • Add currents to force player to grow a movement zooid in Tutorial
    • Spice up the presentation power user
    • Fix whirlpool help text color
    • Ungrow any zooids when entering tutorial
    • Directly return UIModule stack instance in BuildUIManager
    • Use TextMeshPro to render tutorial blips
    • Remove in-tutorial movement type change
    • Start game with predefined layouts



    [ 2019-11-24 23:01:59 CET ] [ Original post ]

    Dive into Version 0.5.3!

    Greetings!

    We are bringing our latest controller support changes into the main game - Steam [controller-support] is no more! This means most of the game is now fully playable with controller - from start to finish.

    Some controller-related things are still missing which we will add and improve current solutions in further updates. Known limitations are:

    • No way to rebind controller keys
    • No way to change your Sipho layout by moving grown zooids - you will have to ungrow and re-grow them
    • Mouse-wheel camera zoom does not have a controller counterpart

    Sit back on your couch and let us know how it feels to play with controller! lunar2019piginablanket

    We have mentioned that controller support was important to us because we might have had an opportunity to participate in a gaming conference. And we do! We will have a booth at Indie Town of GameOn on November 16-17th. We are very excited to see how people are going to play and we hope to hear your Sipho stories in person. Come chat with us!

    And the long and awesome list that brought you this alternative way to play:
    Version 0.5.3
    • Don't try to rebind the confirm button (not supported by us at the moment, since uGUI uses old input).
    • Use text mesh pro for showing rebind option UI
    • Fix freeze when leaving growth mode and also starting some growth-specific module action at the same time
    • Fix zooid growth preview appearing over mouse instead of over the target growth points
    • Fix up and clean up GrowZooid update logic
    • Switch on Controller as primary instantly after receiving input instead of 10 seconds
    • Auto select first enabled growth sidebar zooid UI element when current one gets disabled
    • Don't camera shake camera and rumble controller when progressing - that was unnoticeable anyway
    • Use layout indices for discarding invalid growth points
    • Don't generate growth points around dead zooids
    • Use Breed asset to define starting zooid inventories. Store Inventory on Siphonophore rather on Head zooid
    • Reference breeds from Zooids and not other way around
    • Add breed definition as separate asset
    • Don't try to initialize from an empty/null inventory
    • Add SiphoIcons TextMeshPro atlas for all icons Sipho. Usage example:
    • Use native environment templates for each breed in head selection
    • Don't re-randomize inventory when loading enemies from a game save
    • Make it impossible to save Sipho layout with incorrect indexes
    • Save inventory for every sipho, not just the player
    • Better logic for selecting the next growth point
    • Choose a nearby position for the next potential growth after growing a zooid instead of doing it at random
    • Instead of trying to do some fancy growth logic in GrowZooid, use the existing growth logic inside BuildElementUI (this fixes sounds not playing when growing)
    • Added big brutes for bug and bone levels as well
    • Don't try to do screenshake in growth mode
    • Show ungrow zooid key when selecting zooid
    • Growth UI modules provide info on what they do
    • You can now switch to skill editing/ungrowing from any UI module and you also get some helpful text that says what can you do
    • Naming your sipho will no longer trigger every single hotkey
    • Screenshake rumbles controllers
    • Change the blood particle texture to something that has more texture
    • Some more prefab updates
    • Controller now vibrates when you tell it to
    • Rebind UI uses text mesh pro
    • Move out some of the beautification code into the StringBeautifier
    • Save some reserialized prefabs
    • Add SystemCallbacks that allows subscribing to Updates happening from unity
    • Fix camera getting stuck in boss fight
    • Increase skill UI key binding size
    • Provide xbox images when returning a beautified string if possible
    • Skill UI text uses text mesh pro
    • Push some changed files
    • Use menu toggle to cancel rebinding so that you could rebind some skill to the button 'b'. Also improve the input manager string beautifier a bit to return controller bindings when needed
    • Offset controller images by a little
    • Add a place for UIModule-specific controller help text
    • Show the button for entering/leaving growth mode
    • Swap keys for ungrowing and editing skills
    • Show key for editing skills
    • Update xbox controller sprites and integrate them into controller only text
    • Add experimental text for editing skills
    • Add xbox button images
    • Added text mesh pro
    • Add a ControllerOnlyUI script for showing... erm... controller only UI
    • Add a method for checking if the gamepad is the primary control device
    • Fix controls locking up when quickly mashing enter when rebinding
    • Forgot to add outline sprite
    • Add selection outline to skill UI
    • Reset navigation state when popping ZooidInfoAndUngrow
    • Change and add new keys for doing growth things. You can now edit skills with keyboard/gamepad
    • Fix extra zooid selection throwing errors when navigated with input keys while there are no extra zooids
    • Report when poolable is destroyed because it didn't have an original
    • Fix Spike Zooid background not being pooled properly
    • Fix nutrition icon in Aquarium enemy spawn menu
    • Add flashes to powerup pickup effects and fix their colors
    • Properly re-select UI elements. Fixes Aquarium elements not being highlit when re-entering Aquarium mode
    • Make gamepad twinstick less twitchy
    • If you're using a gamepad, you will get gamepad bindings for skills
    • There is no longer a dedicated button for switching movement on the gamepad. Use the settings menu instead
    • InputManager GetAxis now takes into account the deadzone
    • Legit twinstick support for gamepads
    • Aquarium spawning with controller
    • Do not constantly select deselected object
    • Fix Layout browser not showing entries
    • Stop trying to grow when you run out of nutrition for the selected zooid
    • Update growth points if the target zooid changes
    • This fixes the bug where the ghost would stay in the corner until you moved the mouse
    • GrowZooid more directly controls when to override the mouse position for drawing ghosts
    • Make Aquarium Spawn logic use UIModule stack
    • Aquarium toggled with north button, menus navigated with shoulder buttons
    • UIModule driven Aquarium activation
    • Assert that we don't unpause game more times than we pause
    • Close Layout Browser when pressing cancel button
    • Tooltips follow their targets instead of attaching to a static position
    • Don't use the singleton if we can help it
    • Add IAddRemoveHandler interface and use if to indicate when a UI module is being pushed or popped instead of doing a weird bool
    • Show player aquarium menu only when base growth module is active
    • Deactivate module after popping
    • Quit Growth module immidiately after growth is toggled - otherwise other modules get pushed to stack
    • Make layout browser work with UI stack
    • Fix mouse tooltips also being toggled by the tooltip toggle key
    • Fix menu opening after leaving growth mode with Esc
    • Reuse Aquarium UI module for layout browser
    • Add name property to generic Aquarium UI module
    • Make tooltip appearance abstract and automatic on selection
    • Hacky way to exit growth mode after popping the selectZooidToGrow module
    • UI Module stack deals with Cancel key input instead of all the modules
    • Growth no longer super aborted if you press escape
    • Typo
    • Remove/replace a few old inputs with the new input manager
    • Add tooltips for SelectZooidToGrow (or maybe we could just do it in the UIModuleStack ?)
    • Fix tooltips not toggling correctly
    • ZooidInfoAndUngrow now correctly handles UIButton changes after a zooid is ungrown
    • Fix an issue where left-clicking a zooid would ungrow it
    • UIModuleStack remembers and restores the previously selected UI element when pushing/popping modules
    • Added comments about when each UIModule method gets called
    • Don't toggle tooltips in non-growth mode
    • Keyboard/gamepad overriden tooltips can be toggled on/off with a special key
    • Show tooltips of the selected zooid
    • Push the required new GameKey, whoops!
    • You can now enter zooid info and ungrowth mode while in the growth menu by pressing 't' or the north dpad button (subject to change)
    • Abort zooid info and ungrow module if the mouse moved
    • Rename UngrowZooid to a more broad ZooidInfoAndUngrow
    • Slightly rework tooltip instance to have better API
    • Zooid ungrowing emulates PointerEnter/Exit events on ZooidButtonUI
    • Use polymorphism in BuildUIManager because we can
    • Simplify Aquarium Menu UI module
    • Add Debug Menu entry for UI module stack
    • Fix null reference exception in GrowZooid
    • Do not open aquarium menu when player controls are disabled (for example game menu is open)
    • Aquarium UI module WIP
    • Added a very barebones ability to ungrow zooids with the controller
    • Re-activate the older module after the popping the newer module
    • GrowZooid ui module pops itself if there is no active ui element or if the cancel button is pressed
    • BuildUIManager pops zooid selection module when leaving growth mode
    • SelectZooidToGrow module now uses GrowZooid module if a zooid becomes selected
    • BuildUIManager uses SelectZooidToGrow when enabled
    • Use InputManager for determining when to use the mouse or keyboard/gamepad for growing
    • GrowZooid now uses the zooid ghost for previewing build locations
    • Add a UIModuleStack to gameplayUI
    • You can now grow zooids by using the keyboard/gamepad
    • Use the GrowthUtility CircleColliderRadius where needed in GrowZooid
    • Make FindNeighbors a GrowthUtils function instead of being a part of BuildElementUI
    • Growth points can now be iterated via the automatic UI navigation
    • GrowZooid updates growthPointUI elements as the structure changes
    • GrowthPointUI is now poolable
    • Growth points are stored in a list once again + angle bugfix



    [ 2019-11-11 20:14:35 CET ] [ Original post ]

    Announcing the winner of Sipho Halloween drawing event!

    A big thank you to all participants of the event!

    It was really interesting to see what creations you are going to create in such short time. In total, we have received 10 submissions on Steam and our Discord server. For those who have missed the event - it was a drawing contest of Halloween themed Zooid. And the winner would get his or hers Zooid design re-drawn and brought to life in the game itself! We are happy to announce the first place of the contest:
    "Soul-Spawner" by Scepti

    Our team really loved the idea of using fallen enemies as ammo and the overall design fit Halloween theme perfectly.

    Runners-up:
    "Scythe" by Iztacmizton

    Beautiful renders in an impressive three-zooid entry of which we most liked Scythe design. It could invoke interesting Sipho design choices while keeping minimal melee distance in mind.
    "Evolver" by Araylie

    A nice render by Araylie, The Evolver species has a bold idea of storing surplus nutrition as passive buffs.


    We will add "Soul-Spawner" to the game in the near future, so keep an eye for it. The match-up was close, thus we have decided to award runners-up with Sipho steam keys as well!

    Thank you everyone who participated in our first, but not last, drawing contest!


    [ 2019-11-09 10:51:45 CET ] [ Original post ]

    Halloween drawing contest- winner gets his doodle made into real game art



    Grab a pen or just open up MS Paint, sketch your crazy idea for a creature part, and then share it with us. Best idea will be remade by our artist and put inside our game Sipho.

    You don't have to be a professional artist to participate in this event. A basic doodle on a napkin is enough for us to make it into a proper game asset. Anyone can participate. Although if you haven't played Sipho before, be sure to check videos or screenshots to get familiar with its world and creatures.

    Basic guidelines:


    • Must fit inside a circle, but doesn't have to fill it all up
    • Fitting to Sipho's world- organic elements that are influenced by real world.
    • Shooting, moving, or mind control- write down what it does. Even better if you can draw it
    • Halloween themed- spikes, fangs, exposed internal parts. Make it creepy
    • Post it on Sipho's Artwork section
    • Have fun!


    Our team will pick the best one right after the end of this event.


    [ 2019-10-30 00:15:57 CET ] [ Original post ]

    Version 0.5.2 is here + special controller branch!

    Greetings Siphonophore overlords!

    While working on controller support we have fixed several issues and made some improvements to the game - both performance and visual. Each fix is listed in the changedlog of Version 0.5.2 below!

    As development goes on, we want to bring an additional Sipho version - a special Controller-support enhanced build which includes more drastic changes to allow full utilisation of controllers. We are not ready to publish these changes to everyone who has not deliberately opted-in so we decided to publish that in a beta branch in steam. You can opt-in for controller-support build in Sipho properties in your Steam library:

    Currently ungrowing and repositioning zooids is not possible using controller. We will be fixing that and improving usability in future updates. Let us know what you think about playing the game with a controller!

    Version 0.5.2

    • Fix extra zooid selection throwing errors when navigated with input keys while there are no extra zooids
    • Report when poolable is destroyed because due to not having an original
    • Fix Spike Zooid background not being pooled properly
    • Fix nutrition icon in Aquarium enemy spawn menu
    • Add flashes to powerup pickup effects and fix their colors
    • Properly re-select UI elements. Fixes Aquarium elements not being highlit when re-entering Aquarium mode
    • Fix Aquarium sounds being paused in Aquarium
    • Add sanity check for Greaser Renderer Cloner erroring out
    • Handle loading more defined inputs than we know about
    • Cache postprocessing values which otherwise allocate GC memory
    • Improve performance in Aquarium - prevent UI from rebuilding itself each frame
    • Do not recreate all Zooid buttons on every structure change
    • Unparent zooid connectors when zooids are about to be destroyed. This prevents connectors from being destroyed
    • Set icon of enemy size Aquarium option
    • Fix camera jumping around when switching between Growth and Aquarium modes
    • Do not update lost zooid ghosts while not in growth mode
    • Only create/remove changed zooid overlays instead of all and on every structure change
    • Only mutate enemy inventories if the queen has been defeated


    0.5.2 + Controller Support
    • Forgot to add outline sprite
    • Add selection outline to skill UI
    • Reset navigation state when popping ZooidInfoAndUngrow
    • Change and add new keys for doing growth things. You can now edit skills with keyboard/gamepad
    • Fix extra zooid selection throwing errors when navigated with input keys while there are no extra zooids
    • Report when poolable is destroyed because it didn't have an original
    • Fix Spike Zooid background not being pooled properly
    • Fix nutrition icon in Aquarium enemy spawn menu
    • Add flashes to powerup pickup effects and fix their colors
    • Properly re-select UI elements. Fixes Aquarium elements not being highlit when re-entering Aquarium mode
    • Make gamepad twinstick less twitchy
    • If you're using a gamepad, you will get gamepad bindings for skills
    • There is no longer a dedicated button for switching movement on the gamepad. Use the settings menu instead
    • InputManager GetAxis now takes into account the deadzone
    • Legit twinstick support for gamepads
    • Aquarium spawning with controller
    • Do not constantly select deselected object
    • Fix Layout browser not showing entries
    • Stop trying to grow when you run out of nutrition for the selected zooid
    • Update growth points if the target zooid changes
    • This fixes the bug where the ghost would stay in the corner until you moved the mouse
    • GrowZooid more directly controls when to override the mouse position for drawing ghosts
    • Make Aquarium Spawn logic use UIModule stack
    • Aquarium toggled with north button, menus navigated with shoulder buttons
    • UIModule driven Aquarium activation
    • Assert that we don't unpause game more times than we pause
    • Close Layout Browser when pressing cancel button
    • Tooltips follow their targets instead of attaching to a static position
    • Don't use the singleton if we can help it
    • Add IAddRemoveHandler interface and use if to indicate when a UI module is being pushed or popped instead of doing a weird bool
    • Show player aquarium menu only when base growth module is active
    • Deactivate module after popping
    • Quit Growth module immidiately after growth is toggled - otherwise other modules get pushed to stack
    • Make layout browser work with UI stack
    • [Experimental] restore selected UI element after mouse click
    • Fix null ref exception when exiting play mode with growth mode open
    • Fix mouse tooltips also being toggled by the tooltip toggle key
    • Fix menu opening after leaving growth mode with Esc
    • Reuse Aquarium UI module for layout browser
    • Add name property to generic Aquarium UI module
    • Make tooltip appearance abstract and automatic on selection
    • Hacky way to exit growth mode after popping the selectZooidToGrow module
    • UI Module stack deals with Cancel key input instead of all the modules
    • Growth no longer super aborted if you press escape
    • Remove/replace a few old inputs with the new input manager
    • Add tooltips for SelectZooidToGrow (or maybe we could just do it in the UIModuleStack ?)
    • Fix tooltips not toggling correctly
    • ZooidInfoAndUngrow now correctly handles UIButton changes after a zooid is ungrown
    • Fix an issue where left-clicking a zooid would ungrow it
    • UIModuleStack remembers and restores the previously selected UI element when pushing/popping modules
    • Added comments about when each UIModule method gets called
    • Don't toggle tooltips in non-growth mode
    • Keyboard/gamepad overriden tooltips can be toggled on/off with a special key
    • Show tooltips of the selected zooid
    • Push the required new GameKey, whoops!
    • You can now enter zooid info and ungrowth mode while in the growth menu by pressing 't' or the north dpad button (subject to change)
    • Abort zooid info and ungrow module if the mouse moved
    • Rename UngrowZooid to a more broad ZooidInfoAndUngrow
    • Slightly rework tooltip instance to have better API
    • Zooid ungrowing emulates PointerEnter/Exit events on ZooidButtonUI
    • Use polymorphism in BuildUIManager because we can
    • Simplify Aquarium Menu UI module
    • Add Debug Menu entry for UI module stack
    • Fix null reference exception in GrowZooid
    • Do not open aquarium menu when player controls are disabled (for example game menu is open)
    • Aquarium UI module WIP
    • Added a very barebones ability to ungrow zooids with the controller
    • Re-activate the older module after the popping the newer module
    • GrowZooid ui module pops itself if there is no active ui element or if the cancel button is pressed
    • BuildUIManager pops zooid selection module when leaving growth mode
    • SelectZooidToGrow module now uses GrowZooid module if a zooid becomes selected
    • BuildUIManager uses SelectZooidToGrow when enabled
    • Use InputManager for determining when to use the mouse or keyboard/gamepad for growing
    • GrowZooid now uses the zooid ghost for previewing build locations
    • Add a UIModuleStack to gameplayUI
    • You can now grow zooids by using the keyboard/gamepad
    • Use the GrowthUtility CircleColliderRadius where needed in GrowZooid
    • Make FindNeighbors a GrowthUtils function instead of being a part of BuildElementUI
    • Growth points can now be iterated via the automatic UI navigation
    • GrowZooid updates growthPointUI elements as the structure changes
    • GrowthPointUI is now poolable
    • Growth points are stored in a list once again + angle bugfix



    [ 2019-10-26 22:25:37 CET ] [ Original post ]

    Version 0.5.1 and development plans

    Greetings!

    The dust has settled after 0.5.0 release and we are so far happy with reception of it. We had players stream their progress in our Discord server, chat about their Zooid hunting experience. This was a heartwarming experience. Let us know what you think of the new zooids!

    As our Zooid roster grows more luck is required to get a part drop you wish. We are thinking of ways fixing that and for now, we implemented one simple thing that was suggested by a community member. It is that Frakir will now prioritise dropping parts that you have not yet discovered. This will work as an encouragement to beat the game for more experienced players and will not affect the flow of the rest of the game as it is the end boss. This will guarantee that after beating game finite number of times you will discover all available parts.

    We have an opportunity to participate in local gaming conference for which we need to do some preparations. To get a good playtesting feedback from attendees we need to have a solid new-player-experience, otherwise new player will be stuck on issues we already know and won't be able to provide deeper insight of the game. That means we will be reworking tutorial level and finishing full controller support. These goals align well with our development plans as both tutorial and controller support are needed for a full game. We will share more details about participating in the conference once we really know we have been accepted to showcase Sipho.

    We have already started on controller support improvements in a separate branch, which means that some of the work won't be visible in the changelog until it gets to the main development branch:
    Version 0.5.1

    • Award undiscovered zooid after killing Frakir
    • Fix Frakir becoming invincible again after growing back a zooid
    • Fix game not being unmuted when going back to main menu
    • Make scrolling textures blend options use unity enums instead of hardcoded values
    • Update material assets to include used shader keywords
    • Add debug option to teleport things to center of the screen
    • Make claws appear below zooids so they look better when oversized
    • Update preloaded shader variants to include zooid dissolve shader keyword
    • If the longterm progress can't be parsed from json, assume that it's corrupted and start over
    • If game save can't parse the file from json, assume there is no game save instead of throwing out an exception
    • Make game save, progression and game file reading and parsing a bit more robust.
    • Update the swarmer shake sound to loop better



    [ 2019-10-12 19:11:43 CET ] [ Original post ]

    Version 0.5.0 has arrived!

    Greetings!

    The long awaited 4 new zooids are here:


    • The slimy thought-provoking Greaser which buffs neighbouring zooids with range and movement power. It creates an interesting choice between having one, but powerful zooid or many of the same zooid.
    • The shaky concept-bending Swarmer which spawns little critters that attack their foes and damage everything in their way. It challenges the regular approach to combat by allowing to keep a long distance from enemies but at less direct control of damage.
    • The swingy motion-dependent Flail which damages everything it touches with its spiky ball loosely connected to the colony. Flail use highly depends on your movement skills as it needs to be flung around at great speeds. It also acts as a good shield.
    • The hasty projectile-emitting Sprayer which spews out little projectiles and can hurt by touch as well. Sprayer requires high energy efficiency of the colony and good aim.

    We are happy to bring these crazy ideas as breedless zooids. You will be able to adapt them from bosses the same way as Ancient ones (Grappler, Sniper, Muck and Energy Leech). We are looking into ways of making that less random. This wasn't a problem when we had less zooids, but now that we have more, we will look into making obtaining zooids more of a choice rather than a lottery.

    And the final changes that brought us here are listed below:
    Version 0.5.0
    • Fix Steam loading in built player
    • Increase Swarmer max critter count to 3 and nutrition cost to 6
    • Make swarmer icon power-of-two size to not be stretched in UI
    • Tweak greaser effect
    • Add angular drag to the tip of Flail to limit it's spinning after getting into twister
    • Clean up Zooid shader Properties and make Dissolve optional
    • Move the 4 new zooids out of development and into the game!
    • Swarmer is now a combat zooid
    • Tweak greaser effect to resemble a coat of blue jelly
    • Expose edge detection power parameter and Zooid shader blend parameters
    • Add environment spikes to Frakir boss arena
    • Add environment spikes to Cra'than boss arena
    • Make checkboxes have a checkmark when checked
    • Make swarmer minions spread out when skill is activated without a target
    • Kill swarmer minions if they are 2x further than range
    • Expose Zooid Graphics Transform and make connectors follow it
    • Shake Swarmer on skill use
    • Add some maracas for the swarmer
    • Update the descriptions of the new zooids and skills and change some of their placement sounds
    • Fix Steam related things
    • Add a very rough GrowZooid UI module (still needs a lot of work, pooling, caching and all the good stuff)
    • Add a placeholder GrowthPointUI
    • Cleaned up some UI GameParameters. Added a possibleGrowthLocationMarkerUI GameParam
    • GrowthPoint positions are offset according to the target radius (no longer on the edge of the zooid)
    • Blueprint no longer exposes key/value dictionary for possible growth points. Instead use GetPossibleGrowthPoints(Zooid targetZooid)
    • Don't destroy on load Steam Loader
    • Swarmer tweaks
    • Swarmer spawn effect
    • Flail tweaks and smaller slot graphics
    • Different swarmer spawn effect
    • Use Flail base sprite
    • Change color of swarmer top instead of scaling it
    • New sprite metas
    • Flail base and hive alpha sprites


    [ 2019-09-30 07:10:22 CET ] [ Original post ]

    Version 0.4.9 emerges!

    Greetings!

    Another Sipho update is upon you! We are inches away from having new zooids ready for 0.5.0 update. One of the new zooids is Swarmer, with never-seen-before mechanics:

    It spawns small critters which circle the Swarmer and spread out to attack common enemies on-command. These critters can be defended against with other weapons and take little time to respawn. We can't wait to see what combinations you are going to put them in!

    As per request of one of our Discord server members we have implemented "multi-growth" mode in growth menu. By holding multi-spawn key, which default is left shift, growth will not end after placing single zooid, which helps quickly place multiple zooids with a single mouse click.

    Some of changes below mention "growth points". We are preparing to have better UX in Growth mode which is displaying potential points at which zooids can be grown. Currently, we find those potential points by constantly "asking world" if there are any positions nearby mouse cursor for growing a new zooid. Changes we made allow us to find all positions ahead of time which we will be able to display when selecting to grow a certain zooid. That should be especially convenient when playing with controller - all you will have to do is jump through positions you wish to grow at instead of potentially having a "fake mouse pointer".

    The rest of changes, balancing of new zooids are below:

    Version 0.4.9

    • Use multi spawn key for growing zooids as well
    • Fix one of built-in Layouts which had first zooid as non-head and add validation check for future layouts
    • Add a null check and early exit if we encounter a weird zooid id when generating growth points
    • Growth points are now stored in a dictionary according to their sizes
    • Use the sizes of all growable zooids when determining growth points
    • Make growth point generation completely lazy
    • Fix outline scaling error when ungrowing greaser
    • Fix deformable using incorrect rotation when spawning from rotated Sipho. This fixes Cra'than boss and possibly other things spawning at incorrect angle
    • Fix a bug where growth points were discarded due to the radius and the distance being equal
    • Fix errors when trying to check if a blueprint is valid when it has invalid zooids (caused by growth point regeneration)
    • Add basic melee damage to Sprayer
    • Fix incorrect growth spot blocking calculation
    • Regenerate growth points when growing, ungrowing or updating the blueprint. Allow external access of the growth points
    • Increase swarmer range from 7 to 12 (originally was 15)
    • Resave animation and controller
    • Add a swarmer minion animation
    • Swarmer uses range stat
    • Slow down swarmMinions when they are resupplied, not attacking and near the swarmer zooid
    • Use new sprites for Swarmer and use better names for scripts
    • Make growth background arrow not overlap outlines
    • Use thinner sprite for Flail connection to have better looking bends
    • Use new graphics for Sprayer
    • Add code for generating a list of possible growth points
    • BlueprintEntry can now cache and return the Zooid value based on the id
    • Use new Flail graphics
    • Zooid Outline setup dirties prefabs properly
    • Make Flail head not collide with connections
    • Use new Greaser graphics
    • Forgot to check-in IgnoreListenerPause script
    • New sprite import settings
    • Parasite sprites
    • Add a UIModule for handling skill rebinding
    • Pause in-world audio sources and allow playing UI audio when game is paused
    • Fix Vagorian Mover and Structure zooid connector offsets


    [ 2019-09-13 09:51:21 CET ] [ Original post ]

    Version 0.4.8 is now live!

    Greetings!

    While playtesting new zooids I came up with a nice combo utilising upcoming Flail and Greaser zooids:

    As it is with Flail, Greaser's graphics are still being made. We borrowed very old sprite that was used in very early versions of Sipho as a placeholder. Greaser is a passive Utility zooid which "greases up" nearby zooids and increases their range and movement power. In this case it means that buffed Grabber will have an increased distance. Same would be with any zooid that has concept of range - Spike, Claw, Flak, Leech and others. We think that this zooid should give more strategic choices in choosing between more of the same or less, but more potent. A total of four new zooids are coming in the next major 0.5.0 update.

    Progressing in Sipho world means that the world changes together with you. Discovering new zooids will mean that future enemies might have them discovered too. Existing layouts for enemies now have a chance to mutate and grow discovered zooids instead of base breed ones. We think that make encounters more interesting and add slight flavour of variety.

    More changes have been done in preparation for upcoming zooids. Check out full list below:
    Version 0.4.8

    • Fix Sipho not being stiffened when entering growth mode with only head zooid
    • Stub implementation for confirming a zooid to grow for SelectZooidToGrow
    • Add a SelectZooidToGrow UI module which is responsible for enabling UI navigation for zooid UI elements
    • Add UIModules which should be used for handling various UI-related tasks, one at a time
    • Disable automatic UI navigation for sipho name field
    • Make Cra'than boss spawn minion immidiatelly after being damaged
    • Make environment spike lighter, but have more drag
    • Don't undeform Sipho when it's being grown/modified
    • Remove buffs from zooid when it's dying to prevent destroying nested effects
    • Remove stats from poison debuff so they don't show up in tooltips
    • Make Greaser have no energy upkeep
    • Add and use Flail material
    • Optimize growth mode UI layout
    • Stiffen player Sipho when entering growth mode
    • Do not lerp fixed delta time when pausing game
    • Update growth transition time in Fixed Update as well as in Update
    • Only mutate enemy inventories with adapted zooids, so the player would have a better idea of what to expect from them
    • Ignore flail chain link collisions with flail zooid collider which helps links not getting stuck on launch
    • Make flail chain link distance approximate to range as close as possible
    • Add poolable joint link object to use for Flail joint chain
    • Ping all breed unlock achievements when initializing the campaign achievements, in case some were unlocked without steam
    • Enemies have a 20% chance to mutate one of their zooids in their inventory to some different zooid
    • Don't try to mutate zooids that shouldn't be mutated
    • If vagorian spawners lack layouts, just use random
    • Attempt to fix zooid prefabs becoming dirty in project
    • Disable connecting joints when flail is retracting and use another joint to retract it. Use LineRenderer to render connections
    • Increase physics iteration count to make joints more stable
    • Set up flail connection as a chain of joints


    [ 2019-08-30 21:09:20 CET ] [ Original post ]

    Version 0.4.7 rolls out

    Hello everyone!

    Another two weeks have passed in All Parts Connected Headquarters and we are happy with our progress on upcoming new zooids. One of them is physical Flail:

    Graphics and name are prototypes and subject to change. This little bad zooid with has a lot of weight in its not the smartest spikey end. It will require finesse to control and should be a fun zooid to play as offensively and defensively. If you would like to know more, come chat with us on Discord.

    We have added two new achievements. One of them is for the hardcore players - beat the game without growing any weapon zooid. After implementing the achievement we noticed that we don't have many damaging utility zooids yet, only those which operated with poison. Thus, The Grappler has been asked to change its department to Utility instead of Weapon. It already did little damage and was expected to be operated with accompanying zooid to make a greater combo. We buffed its skill usage and nerfed damage. Later changes will include beating bosses in more creative ways.

    Other balance changes and notes about upcoming zooids can be found below, in the changenotes.
    Version 0.4.7

    • Report if it's steam build in Options menu
    • Fix initializing Steam
    • Change time settings to proper values
    • Fix offset layout previews
    • Do not include Aquarium background in screenshots
    • Buff greaser buff to 50%
    • Store flail state as Sipho head buff. Tweak flail balance
    • Tweak greaser effect
    • Clamp edge detect shader output so it doesn't produce sparkles
    • Add following effect remove callback and use it for Greaser effect to fix not deparenting renderer clones on time
    • Fix dead zooids erroring out due to missing Sipho reference
    • Make layout previews renderable in growth mode
    • Fix screenshotter to not make flipped images
    • Implement fast kill achievement unlock
    • Buffs can now carry owner information and tell where the damage is coming from. This fixes the poison being counted as 'pacifist'
    • Add a fast kill achievement for killing a full health head in 5 seconds
    • Increase Burstopod damage by 1
    • Scale critter minion movement speed based on spawner movement speed
    • Critter minions scale from melee damage instead of ranged damage, as they do melee attacks
    • Made critterminion poolable
    • Make RendererClones always properly follow their targets
    • Tweak zooid descriptions to include valuable information
    • Make Flail extension toggleable
    • Add code that can mutate the enemy inventory by swapping its native zooid with a random unowned zooid of the same type
    • Tweak outlines of some zooids to fit better
    • Increase the volume for swarm attack signal
    • Add a sound effect for sprayer and slightly increase its projectile speed
    • Critter minions can deal damage even when they do not have an attack command issued (but still require a resupply afterwards)
    • Fix a bug where critter minion resupplying was calculated based on the sipho position and not the zooid position
    • Make muck cloud have more angular drag
    • Make Cra'than boss spawn minion skill more costly
    • Fix Cra'than boss spawner zooids not being red
    • Fix zooid graphics not taking different material and texture combo into account when assigning shared material
    • Make poison cloud have ten times less mass, but more drag
    • Make twister swirl initially appear larger and do not lose as much lifetime when pulling non-zooids.
    • Convert Grabber to Utility zooid: Damage reduced from 3 to 2, cooldown reduced from 1.1 to 1 second, energy cost from 35 to 25 and added +3 energy regeneration.
    • Enable utilitarian achievement
    • Added a very basic attack signal effect for the swarmer
    • Add a slight scale wobble when the swarmer is making a new minion
    • Added a tiny minion death
    • Reduce swarm attack energy drain a bit
    • Added a tiny stab effect for minion attacks
    • Critter minions are now part of the zooid effect layer as they should appear on top of other zooids
    • Use Async GPU readback to read rendertexture without stalling render pipeline
    • Move darken Sipho logic to Siphonophore script
    • Add screenshotter script which makes screenshots and sipho previews
    • Rename Math to SiphoMath
    • Expose deep camera in Camera Follow



    [ 2019-08-16 19:56:54 CET ] [ Original post ]

    Version 0.4.6 is now available!

    Greetings!

    This update generally contains polishing improvements. One of those things is making sure any size Siphos can be heard as we want them to be heard. That is why we have a system to limit concurrent sounds effects played at once which helps not playing unnecessarily large amount of Flak shots or poison applications. Otherwise we hit concurrently played sound limit which basically mutes some other distinct sounds. We had this system in place for a while now and try to apply these limits to mostly zooid effects which are usually played on skill activations at once.

    All obstacles are now made out of hand-traced circles instead of polygon colliders. That gives physics system some "direction" in which to resolve deeply overlapping obstacle collisions with zooids or nutrition. This means that zooids and food should no longer get permanently stuck in rocks. This also brings a little performance optimization to obstacles which are more rounded and can be made out of smaller amount of circles. Several circles are faster to calculate physics with than polygon shapes with many points.

    One thing we have constantly seen new players do is to try ungrowing zooids in growth mode by dragging them away from their Sipho. This now is possible - we want to have as smooth first experience as possible. It works by checking distance to Sipho zooids and if it's further from closest zooid than X it enters "release to ungrow" mode. It also works by dragging zooids onto growth side-bar.

    It is no secret that we are experimenting with new zooids. Some of you might have seen our Tweets or sneak-peek development images in our Discord server. For more hints, we have left-in changes to those zooid prototypes in the change-log. Check it out:

    Version 0.4.6

    • Fix renderer clones not being cleaned up
    • Add RendererCloner effect utility and use it for Greaser zooid
    • Fix Buff Manager keeping reference of removed buff effect
    • Add onCreated event to FollowingEffect
    • SwarmSpawner critters no longer auto-attack, instead you have to command them with a skill.
    • Reduce sprayer shot frequency slightly
    • Update UI-Default shader to engine version 2018.4
    • Range stat increases projectile lifetime instead of speed
    • Move food consumption logic away from physics callbacks to custom fixed update to avoid GC allocs
    • Add Fixed Update event to Siphonophore
    • Avoid some NaNs in twister pull logic
    • Add greaser zooid prototype which increases range of neighboring zooids
    • Remove digits after percent comma and use bullet points to list buffs in Zooid Descriptions
    • Separate Consumable pull stat from Range stat
    • Add non-expiring flag to buffs. Improve buffed zooid tooltips with stats applied and buff duration
    • Do not clear all buffs when reapplying stat buffing zooid - fixes too low amount of stacks for early applied buffs
    • Allow using development zooids in built games if they are requested specifically by ID
    • Move flashbang zooid to development folder, marking it as development zooid
    • Remove collider-disabled rocks and leave only their lower rock parts in Underwater boss battle
    • Ungrow zooids when they are dragged far away from connecting zooids or are dragged on growth sidebar
    • Set zooid to not Alive when it's being ungrown
    • Limit Advena poison spray concurrent sounds to 2
    • Limit concurrent energy powerup audio players to 2
    • Limit concurrent movement powerup audio players to 2
    • Make shooting zooids play audio through AudioPlayer and limit their simultaenous count
    • Allow playing AudioPlayer manually
    • Move mine explosion audio player to mine explode effect and limit simultaneous count
    • Add circle colliders to plant obstacle
    • Disable new colliders for rocks in Underwater boss level
    • Do not save decorations, deep rocks and whirlpools in any level
    • Do not save decorations in underwater level and spawn more food
    • Make eggs always drop something useful
    • Don't save whirlpools spawned by level end whirlpool spawner
    • Add flag that allows not saving grid spawner spawned objects
    • Use multiple circle colliders instead of polygon colliders for all obstacles. Improves performance and overlapping collisions
    • Fix non player zooids not getting damaged highlights



    [ 2019-08-01 10:48:32 CET ] [ Original post ]

    Version 0.4.5 is here!

    Greetings!

    This update brings rendering performance optimisations to Sipho!

    These improvements were long overdue. Sipho was started in Global Game Jam 2017 which required various "quick to do" fixes for the game to run, no matter how, just to be done in time. We have re-written many parts of it since then, but we did not re-write rendering because we did not know how we are going to render all those zooids. Since then game has solidified and we have become more confident in our workflow, knowing how things are made-up in the engine and what can be sacrificed for performance.

    To not get too technical on this post, I am going to be writing up a separate post about current rendering in Sipho. Quick explanation is that we used to render sprites and their outlines one after another. That made CPU talk with GPU for every object on the screen at least twice, each frame.
    - Render Spike base outline here - says CPU
    - Okay - replies GPU
    - Now render Spike base here
    - Yeah - GPU
    - Now render Spike tip outline there
    - steamfacepalm
    [...]

    And all this conversation for 20 of your spikes.

    CPU is usually slow at talking to GPU and one would want to make the CPU bother GPU as little as possible. One of techniques is batching sprite meshes to a single large mesh and rendering that. But our shaders rely on local vertex positions and many additional parameters like health or animation speed. That makes batching sprites in Unity engine hard.

    Worry not, there is other rendering technique is called instancing. It takes one mesh and tells GPU do render it multiple times in a single "sentence":
    - Render these 20 Spike outlines, here is a list of positions and parameters for each one - confidently says CPU
    - You got it - replies GPU


    This has improved Sipho rendering performance on CPU by about two times. If GPU does not support instancing, it will fall back to old system of having consecutive calls for each image. Worst case scenario for this type of rendering is many different sprites being rendered at once. Imagine Frakir with about 500 unique zooids just to get back to where we were with performance. We would love to have that many unique zooids!

    Oh and we had a sneak update few weeks ago. It had hot-fixes for our input system changes. Check out our history of changes for these versions:

    Version 0.4.5

    • Disable outlines for invisible rocks in Guardian boss lair
    • Make mine poison a bit more visible
    • Also fix energy leech and muck consumable pull
    • Limit leech tip position lerp velocity which might fix AABB errors
    • Fix eater food pull scaling - forgot to adjust some zooids and power to fit Range stat
    • Fix grappling hook line being invisible
    • Cleanup some UI
    • Don't use placeholder icons that are nowhere else used to prevent them from being included in builds
    • Fix claw top being rendered below blades
    • Circular fade-in to growth mode for decorations
    • Add ZWrite control to environment shader to fix bone ball lower pats hiding outlines
    • Flower petal lower sprite sorting layer
    • Fade-to-zooid-color zooid connectors in growth mode
    • Make zooid outline hashes consistent
    • Make deep objects render correctly
    • Force render sort order for all environment objects
    • Offset sprite animation according to world position
    • Aquarium spawn ghosts now use tight meshes to display atlassed ghost sprites
    • Make decorations work with instancing
    • Use tight sprite mesh in UI buttons that might draw atlased sprites
    • Support flipping in instanced zooid outline shader and fix Claw outline
    • Make all outlines render explicitly before their original sprites
    • Remove unusued trail material from pusher effect as it produced drawcalls
    • Make projectiles work with Zooid shader instancing
    • Remove unused _ColorBrightness from zooid shader and make mines compatible with instanced rendering
    • Remove unnecessary transform.position call in graphics connector
    • Set spike background connector sorting order to be unique so backgrounds get batched
    • Fix animated materials not animating through overrides
    • Use instancing for zooids and remove zooid sprites from atlases to preserve local UVs
    • Create copies of Zooid material to allow instancing
    • Use instancing for zooid shaders
    • Rename Zooid shaders to better reflect their purpose
    • Add an achievement prototype for beating the game without building a single weapon zooid
    • Rename Zooid Highlight material to Zooid and use it instead of Zooid Nohighlight
    • Don't error out if EnvironmentObject has no SpriteRenderer
    • Add Zwrite control to Zooid shader
    • Use non-legacy sprite atlases
    • Improve gameSave to allow saving arbitrary struct/classes inside a dictionary. We no longer have to add any game save fields for anything
    • Set packing tags for all zooid sprites
    • Add base outlines to all zooids
    • Inherit sorting order of zooids and improve outline
    • Collect outlines at the base of graphics rather than from parent
    • Use separate multiple outline objects to define outlines for zooids. Update some zooids to this system
    • Game save now saves a Dictionary for generic serialization purposes
    • Use non-legacy sprite packer settings
    • Revert tight sprite packing as it breaks UI ghost rendering
    • Set scale of obstacles in Start as well because OnEnable is too early for just spawned objects
    • Make all obstacles batchable - group into atlases, use separate EnvironmentOutline object to render growth mode outlines
    • Enable batching and remove outline passes from environment shaders
    • Add outline shader for environment outlines
    • Add Environment Alien Rocks and Outlines render sort layers
    • Setup outline renderers for Alien Rocks
    • Scale Rock outline object instead of setting property block of scale when available
    • Disable Sorting Group for spike
    • Put Alien rocks into atlas
    • Enable batching for No Highlight shader
    • Add renderer for Alien outlines
    • Separate Outline pass from main highlight shader.


    Version 0.4.4
    • Recreate globalSettings file in case we fail reading json
    • Fix a bug where the in-game options menu would open and instantly close in the same frame when pressing Esc
    • Allow closing the game menus with the cancel button
    • Fix a bug where rebinding would instantly succeed with the key that initiated the rebinding process
    • Added M4 and M5 buttons to the string beautifier



    [ 2019-07-16 16:01:26 CET ] [ Original post ]

    Control changes in Version 0.4.3 are now available!

    Greetings!

    This update comes with one little feature that we think will help navigating level ends - a new sense, a bio sonar!

    It will be shown where hunting down each victim matters the most - at level ends, in boss fights and also in Aquarium. It will display enemies as red bars and nutrition as green ones. Sonar should help to feel and see beyond borders of the screen.

    Internally we have introduced a Range stat which controls range of all zooid abilities. In future, we will be adding zooids and/or powerups, abilities that change stats and enables having more varied playstyle. In this version, range can be seen in zooid tooltips.

    Our Input System backend has been completely changed. That means we are going further to support controllers and any kind of input devices. That is now noticeable in main menu and ingame menus as we have added full keyboard/controller support in those cases. The bad news is that existing control binds in options menu will be reset and will have to be re-bound.

    In future patches we will be tackling Growth mode and Aquarium mode inputs as well as adapting movement controls to new inputs. Currently Auto Turn and Tank movement types are playable, however we have not tweaked them up to quality we prefer. Ironically, Twinstick movement types will still be following mouse, thus will not work with controller input well. Default skill binds are still designed to for mouse + keyboard controls which we will have to fix as well for controller-only players. Let us know how you expect to control your creature colony and which buttons you would like to use for skills in comments below!

    And a little distraction from our request above - full version changelist! We left some of internal changes in for the curious:
    Version 0.4.3

    • Add movement type report to Death and LevelEnd analytics
    • Allow selecting Zooid to keep with Up/Down input axes
    • Display negative stats in Zooid descriptions too
    • Fix buffs not applying when there is no zooid type filter
    • Generalise filtering buff targets by ZooidType in Buff Manager
    • Head selection keyboard/controller support. Growth button to toggle tutorial
    • Stats should be immutable structs
    • Remember last active UI elements and select them when opening menus. This allows keyboard/controller menu navigating
    • Fix input errors when the globalSettings file doesn't exist and fix issues with overwriting default bindings
    • Fix saveWasJustLoaded retaining an invalid state when restarting the game
    • Tweak Main Menu labels and make buttons properly select
    • Add helper script that draws distance lines
    • Use circle colliders on Bone ball obstacles instead of polygon colliders
    • Add support for multipler colliders on Environment Object
    • Disable occlusion check for Sonar
    • Fix some Zooid layers not being set to Zooid
    • Chill down whirlpools with their particle pulling
    • Make Object spawner skill zooids and poisonous zooids scale with Range
    • SkillUI uses pretty key strings
    • Fix errors when loading a game save with the old bindings
    • Fix errors when loading globalSettings with the old binding data
    • Make Leeches use Range stat
    • Undo the zooid selection UI work for a better merging experience
    • The new input system obviously needs to have physics, xr and vr. At least it's not in-app-purchasing.
    • Correct gamepad start button path
    • When rebinding, consume all input for one frame after succeeding/cancelling the rebinding (avoid accidental menu closing etc.)
    • Added a menu toggle button that is intended to remain static and not be changed by the user
    • Add an input locking mechanism that allows ignoring all GameKey inputs
    • Rearrange InputManager for better sanity
    • Add Zooid Range stat to description
    • Make Pusher work with Range stat
    • Volter uses Range
    • Make Sniper, Flak and development weapons use Ranged stat
    • Don't revert to defaults if you can't resolve a button, use the previous binding path and show it as best we can
    • Added a method to tell if a gamepad is used instead of the mouse
    • Halve claw range influence as Range is better understood as diameter rathern than radius of damage
    • Scale claw with Range stat
    • Make Grabber use Range stat
    • Make Spike weapon use Range stat
    • Rename Food Pull stat to Range
    • Fix food sonar indicators remaining visible
    • Add SonarController which controls when Sonar is visible - during end of Campaign levels, always in boss fights and Aquarium
    • Scale Muck animation with animator speed
    • Make Sipho sonar indicators fade in and out
    • Some form of input key beautification started
    • Fix incorrect defaults for selecting zooids to grow
    • Fix a bug where resetting to default controls did not persist between playthroughs
    • Skills now work with the new unity input system
    • Start work towards moving skill bindings over to the new system
    • Don't remove device name when serializing unless we can substitute it with something
    • Keep track of binding paths all the time, not just when serializing - needed when the controller gets unplugged
    • Load saved bindings
    • Make sure to invert the needed keys every time you resolve a binding
    • Invert left/right stick key down and left buttons, solve all the problems without editing any unity input stuff
    • Create an input settings asset and make buttons less sensitive
    • Hack in a fix for stick.down/left not working
    • Override the unity input system and push it to version control
    • Fix default binding arrays not being filled with stuff, whoops! Added functions to get default ButtonControl arrays
    • Gamedev, now with 50% less garbage, go green!
    • Serialize controls as generically as possible. Controller has default bindings and can sort of be used
    • Start using strings to resolve default controls in order to avoid serializing a bunch of null controls instead of their actual expected bindings
    • Work towards serializing bindings
    • Work towards selecting a zooid to grow with the keyboard
    • You can now cycle the zooid groups with menuNext/Prev buttons
    • Work towards selecting the zooid to grow via gamepad
    • Fix rebind UI exceptions because apparently Keyboard.current is null on the start of the game
    • Hide the dialog UI in gameplayUI because it hides everything else
    • Reworked input handling to not use the InputAction thingies, added default controller bindings, added some new bindings for menu navigation


    [ 2019-06-20 20:59:40 CET ] [ Original post ]

    Version 0.4.2

    Hi everyone,

    We are releasing a hotfix build for growth issue that has been introduced in last patch.

    It appears that scaling physics time is required for stable fade-in to growth mode. It wouldn't manifest as destructive explosion but actually leave the physics world in a different state than portrayed in game when having entered growth mode. This would result in weird Sipho deformations when ungrowing parts and inconsistent placement of new parts. This is now fixed.

    We have reverted changes for this exact case while leaving kill-slowdowns deterministic. Best of both worlds it appears.

    Some additional changes have sneaked in that would have been introduced in later patches. Reacting to your feedback, we have partially tweaked Vagorian breed. Check out full changelist for details:

    Version 0.4.2

  • Fix bug in The Matrix 2
  • Select Dialog button only when it's shown rather every frame
  • Optimize Matrix2x2 accessors, speeding up deformable
  • Still change fixedDeltaTime when pausing the game - deformable needs to fade-to target positions
  • Disable Wind package
  • Buff Peapod health to 6 and make it half as slowing as expected
  • Killed bombs explode at half range with half damage
  • Slow down Burstopod weapon animation so it is only visibly ready when actually ready and make it scale with skill speed
  • Use Particle System Force Fields to move ambient particles instead of Wind Zones
  • Disable many unused built-in packages - this time for real



  • [ 2019-06-05 07:39:00 CET ] [ Original post ]

    Version 0.4.1 is now available and future plans

    Greetings!

    Following a Vagorian release we took our chance to dive down to tech behind Sipho and upgrade our Unity engine version from 2017.4 to 2018.4. That means we are now able to use year's worth of improvements.

    One of new engine features is the new Input system which we are going to use to implement controller support. We will first focus on basic support such as movement direction rebinds for controller. That should reach you in future updates. Then we will start improving experience with hotkey-based controls of our UI. Navigation hotkeys will have to be implemented for menus, growth mode and aquarium spawning. In the end, we would like to have game playable on any kind of input setup.

    Content will not be forgotten - there will be more new zooids in the future. We have yet to decide if they will come as a new breed or as breedless zooids. New breed would mean a new area is required as there can only be one Wanderer. Breedless zooids would be added to the drop pool, possibly made available after completing a special challenge. Let us know what you prefer!

    As for today's matters, we have improved stability of kill slow-downs which should not result in explosive physics simulation at a cost of loss of precision of real-time time as opposed to game-time. Game-time precision stays deterministic which possibly makes more sense as kill slowdowns is rather eye-candy or juice rather than gameplay-impacting mechanic.

    Per one of our user's request we have added size control to Aquarium spawn system which will allow spawn solid objects and decorations in various sizes. For that extra unleashment of creativity!

    Version 0.4.1

    • Disable many unused built-in packages
    • Quick fix for ambient particles to have same behaviour as in 2017.4
    • Do not change fixed delta time when changing time scale. This should fix explosive physics instabilities caused by time slowdowns
    • Use icon instead of text to control spawned object size
    • Fix flower prefab scaling
    • Allow changing size of spawned objects in aquarium
    • Upgrade to Unity 2018.4 version:
    • Touch all prefabs
    • Bump project settings
    • Enable threaded physics
    • Fix Spike error when ignoring dead targets
    • New project settings files
    • Update package manager manifest
    • Image effect API update
    • Bump project version
    • Remove privacy plugin - it's now handled through Analytics package


    [ 2019-05-29 20:16:59 CET ] [ Original post ]

    New Breed in 0.4.0 is now available!

    Specimen of this mysterious breed have been sighted in all inhabited areas. We have called them Vagorians.


    They have a utility zooid called Twister that creates small swirls which pull in and carry objects over distance. These swirls merge together in size and strength, becoming capable of moving significantly large objects or even Sipho colonies. We suspect this zooid might have been used as a long distance colony transport.


    Vagorian colonies are held up with Peapod zooids which seem to be smaller than typical structure zooids. They allow more compact zooid growth and require less nutrition to sustain. Other colonies which adapt these zooids can become a real threat to all of living marine life.


    Burstopod zooids are used for offence and defence. They release an enclosed shell filled with high-pressure unknown substance. The shell breaks with great force, damaging all creatures within small radius.


    For local travel Vagorian colonies use Drifter zooids. They provide great colony turning force, but are less effective while strafing. They might have evolved to withstand or embrace great turning forces of swirls and whirlpools.

    Our simulations for Aquarium have identified Vagorian environment as highly unstable. Their optimal environment is expected to be found somewhere between different areas where strong currents flow. It is littered with fragments of destroyed habitats brought in by strong currents flowing through.

    Version 0.4.0

    • Make ambient particles get destroyed on all collisions except for obstacles
    • Handle when there are no Layouts available for level wealth
    • Fix incorrectly inverted ifs in Enemy Spawner
    • Fix swirls not appearing over lower rocks
    • Rename vagorian whirlpools to swirls
    • Add Zooid ID upgrading
    • Twister skill icon and name update
    • Updated vagorian head ui icon
    • Burstopod skill description updated
    • Cheapie renamed to peapod
    • Vagorian head description
    • OneOfEach achievement now awarded for having zooids from 4 different breeds (including vagorian)
    • Updated some vagorian descriptions and names
    • Undo accidental Burstopod id change
    • Added a Vagorian enemy sipho that drops 7 DNA on death
    • Add a vagorian breed unlock achievement
    • Vagorian Eater twister graphics
    • Make Vagorian mover sprite larger
    • Vagorians are now automatically spawned through all the levels
    • Crafted a bunch more vagorians
    • Don't allow using skills when in level transition
    • Fix all layouts that use Vagorian structure
    • Vagorians should not be forced to stay in the level after it ends
    • Vagorian part balance
    • Randomise rotation of explosion effects
    • Make Vagorian structure 50% of normal size
    • Enemies get annoyed by running away from dangerous things so they just attack
    • Normalise vagorian mover size
    • Added a simple vortex shader
    • Remove vagorian mover energy bonus
    • Proper stacking logic
    • Add extra drops list for Sipho death
    • Implement buff stacking
    • Make Current poolable
    • Add various Vagorian Layouts
    • Prevent ear pain
    • Change Burstopod sounds
    • Add Vagorian support for Head selection
    • Add a Burstopod explosion effect
    • Correctly scale zooid regrowth ghosts
    • Remove lingering prefab
    • Change how currents look. Tone down Vagorian aquarium environment ambient particles to not clash with currents particles
    • changed Vagorian color
    • Make Alien aquarium use correct background prefab
    • Add Vagorian Aquarium
    • Forgot to push Vagorian mover
    • Experiment with directionality - make Sea mover very bad at turning whole sipho and Vagorian good. Also tweak their movement powers
    • Make Vagorian skills cost 30 energy
    • Balance vagorian weapon and utility - effective, but expensive utility and many small bombs
    • Make bombs have HP and set it to 2
    • Fix bombs not registering kill statistics
    • Added a zooid size setting, for scaling UI ghosts
    • Vagorian head material
    • Adjust ghost previews according to zooid scale
    • Adjust Burstopod launch animation and skill icon
    • Make vagorian movers and head animate
    • Enable mipmaps for Vagorian sprites. Change structure scaling to fit collider. Adjust connector placement
    • Vagorian breed uses new sprites
    • Treat projectiles as an obstacle if far away from target. Always face target when in Attack state
    • Treat all mines and bombs as Projectiles. Make projectiles collide. Why haven't we had mines as projectiles before?
    • Report saved unknown zooid IDs to log
    • Tweak twister. It now shrinks while having an object to pull and will gradually absorb smaller twisters instead of instantly
    • Underwater level now spawns a single vagorian enemy with the new layout selection system
    • Add the ability to select enemy layouts based on the level wealth
    • Update disabled zooids to also contain buff managers
    • Add an enum for layout selection when spawning enemies
    • Push missing meta file
    • Attempt to balance twister to synergise with bombs and projectiles
    • Reduce time to live of projectiles to accomodate for lifetime per velocity increase
    • Make twister swirl force omniclockwise - always increase velocity of objects inside
    • Rotate projectiles according to their velocity. Add significantly more life when they're over top speed
    • Move vagorians out of development
    • Start tracking the progress of new breeds
    • Add a new "Vagorian" breed. It should be the wanderer breed that has no homeland


    [ 2019-05-15 22:18:40 CET ] [ Original post ]

    Development Update and Version 0.3.5

    Dear Parasite Designers,

    We are happy to announce an updated of 0.3.5 version! This will hopefully be last minor update in 0.3 phase as we are working on the new breed in parallel. As you might have noticed, we are experimenting with two-week release cycle which keeps the updates flow. All of this means that the new breed is coming in two weeks!

    One of the things we're seeing is that Queen boss seems to take a toll on many player's lives. Buginis breed is brittle, but deadly. That is why we have placed several powerups in the way to Queen itself to give a little encouragement for you to engage.

    We have noticed that procedurally grown Siphos do not plan well enough their growth and get blocked by growing non-structures all around their perimeter. We have addressed this by allowing them to ungrow Zooids to enable themselves to grow further. Procedural growth is not what we have focused on in development, but if it proves to be interesting for you, let us know what would you expect from it.

    Aquarium object multi-spawning should be more convenient and less ridiculous. We have limited rate at which multi-spawns happen over time. That fixes Multiple spawns at the same spot, but makes "drag fast to spawn many" break. To address that spawn rate is increased when mouse pointer is moving faster. So the first Aquarium experience of spawning many many many nutrients is still there.

    Version 0.3.5

    • Add additional powerups to Queen area to guide players to a fight
    • Make environment spikes less deadly
    • Limit Aquarium multi-spawn by time, distance and size of spawned object. Also make frequency independent on framerate
    • Fix non-highlight shaded zooids becoming dark when being color blended. Also remove unnecessary color brightness property and use HDR colors instead
    • Ungrow zooids when procedural growth gets stuck
    • Limit how many Heal and Stunned status effects play at the same time. Fixes game getting muted at large Sipho encounters
    • Extend audio player to support limiting audio plays over time



    [ 2019-04-30 17:18:13 CET ] [ Original post ]

    Version 0.3.4 release and near future plans!

    Hello everyone!

    We are happy to produce another update that improves quality of underwater life aspects.

    You may wonder how do we decide to fix these random unrelated to each other things. We have a long backlog of changes that we want to do. This list has been gathered over time by just playtesting Sipho, by seeing someone else play live or through help of Youtubers and by reading your feedback. Some small things that require little attention shift are perfect for "getting into the development zone" before starting to work on larger things. Working on new features requires to have whole game source code "loaded up into the brain" which these small tasks help to achieve. Some of these tasks are also experimental implementations of new Zooids...

    ... which we are going to use to design a new breed! We currently have an exotic new breed in the works. It will feature four unique Zooids and will be available to learn about in all currently existing areas. We are tweaking new Zooid skills to be as versatile and synergetic as possible with other breeds without being too powerful.

    Version 0.3.4

    • First level enemies won't dash and be annoying easy targets
    • Dash skill now dashes forward even if the player is not already moving
    • Make projectiles last longer if they're at their top speed
    • Don't zoom the camera when mouse is over UI elements
    • Fix Buginis ambience volume depending on player's position
    • Re-enable faster Zooid growth by not recreating Layout with each zooid addition. Also fix lingering ghost issue after adding new zooids fast way
    • Explicitly add BuffManager to each zooid prefab instead of adding the component in runtime. This slightly improves zooid growth performance


    [ 2019-04-17 12:19:18 CET ] [ Original post ]

    Version 0.3.3 is now available!

    Hi everyone!

    A week has passed since Aquarium release and we cooked up a new version of Sipho.
    This update has a new feature - ability to share Layouts through text string. They can be exported and imported in Layout Browser window in Aquarium. This is a small feature we wanted to make to encourage creativity and display your ingenuity in Sipho-craft.


    We have also added more tooltips to Aquarium UI to help understand it better, added auto-spawned enemy size control to Aquarium and many more little touches of polish. See the whole list below:
    Version 0.3.3


    • Add change movement type and rotate zooid in growth hotkeys
    • Fix missing tutorial toggle
    • Expose melee, ranged, movement powers to Zooid tooltips. Also display skill description
    • Make Layout UI button sizes consistent
    • Strictly control selection of multiple Layout entries in the browser
    • Add a null check for growing from a layout
    • Sipho name updated when changing the layout
    • Re-tweak enemy spawner settings
    • Give exact amount of nutrition needed for regular level enemy Layouts
    • Fix Passive and Reactive enemies being too aggressive
    • Refresh available zooids when opening Layout selection menu in Aquarium so available layouts are always up-to-date
    • Add tooltips to Aquarium player UI
    • Add tooltips to Aquarium Enemy menu
    • Make initial Aquarium enemy settings to be less aggressive and 50% smaller than player
    • Cancel dragging when un-setting mouse click action. Fixes spawning new object after last spawn was cancelled during dragging
    • Add import/export layouts as text capability to Layout browser
    • Fix zooid skills activating while in aquarium build mode
    • Add enemy nutrition scale option to Aquarium


    And a little gift for our readers, a layout string to test-out importing:
    eNqlml2LWzcQhv9KOddjodG39q53vSkUctGLEso2MYlpaoeNUxqW/e8d0fb42GeP9I4LXhw2yTMfkkajV3qe9sfz02H/ZXr45Xk6vJ8eph/2j+9//f7TYX+caPp8+nI4H07H6eF5+mt62FljLU3f5E/VcNnv8gtNj8cPn/bTg0/yN8f94cPH305PjccUyTly/u0L/ct+c376+u789WnfMVDdPwaaqQudyw3dkqMYKEYNnU2xEJ3Jk2NyQUN3JhWI7kgcTxSzhu6N/BeE7okzefkUBX4r76tRtSSOS+o1o7qV9hU8UiYnsyYp4FtZX8ETFYqWIivgW0lfwTNVcuK8JufBhADBC7GlkChoJkw0HhtRcbySt8SaxOy2nF9Nx0AseZdP1eC3vF+v1Ews7ldKTsNPxoGVoJD8S8lZUqUnG4vVAnE+yOAypUWt+fH05/5pXMWsKemCrrdVBuTNNV1qgN3GWS1ud81z+U7gVdVeBrwiohHDwKQF9kcExS2rTte/ogX2/UNxy8XZ9Y+tlth3EObt4BQGNbHvIszDk4gOy1XR6S8Uq0YOas0C+PP+8fPpiGx6qedjVROvgfVe3rKh6HqY1cS+hzBvbtb6vKjmjSKGiTvQRdYDRz7iSHigvR7ZDxsHgpObs544TCTOXHZTfWbVMweRV3XBHewxRdfnVexU1prISPLbouojiylYm50CpUTZUVb12dVkj/EjpUzFUVGd51lGjzEDiWTtiDdZNQDMJlTMQKZUSdJZdJqBM3KYhgyI+5ZyoKw62LM3cuaFDFTKTEUOsjoDwTA2yM19OYMnOW9GdFnNM3TQ+8LAy5QZEDNMnIdwQIRrySWlfWJmPXHUvCmYy6nbP+hU/egMmVk9hYZIvAGZC3N/+1ieulHiaJNTMOfyO/Ay6YlDL3HmpcYO3Cx3IId+KqBzJR002vYO5PA0YFU1ORqL7YtS8dm2ipzlR5GL2cCgf7LxDuawz7NRmY2CbeICljRUYm6CJV4JZwMjgaHokWMVRNfRJJMzmIwiSXDEXuZIUOmfnE3Cmg7JshjxxE6+vW6SFxMDaESi4CAG5DuoOmSuJoBScYuCZf44MeJUbbKzxv93GhnYkCBYlqsXW0GVLceGC2ZDYmi6t2ujoppbzhmbMBsSg7jDvg1KVdqoAbMhMbCsZSc2nKqldd4Uh9mQGOTsxV5y5nW5CiaDY95iaPOqjXv7wTvT5TLsFxF2MHS5IgZQWK68zM4xNMHQeaqMoXBhvozbEIrroMvJ0N1AFMjFOukiFaEvSkgfmfSTaYQM+kk/Qjq8NVlumv3WhHGF8GoDG1AVIuG8mYypeHN2Ke1jKq7sXQrtmIprey4aPzeSLi6o1nfWE0y9hnIs/wO62Gm6fbQm/MUu3GfmOybViBnvmP4jpr9joY6Ymi5w6zp/1TDLJk2hUNB0NFt3+bdwTzL9WgPLKvjrAvJqX5F2koJ8NAerLfV47bm0lNKxes17py3p+BYuzV0i2UOC6snQlm58Sxe/5ZMoeXD7gS9J4YYLvCOFeaCiCm+4sLwGE3EREG40UNWXYdkK1NbweghLazgS1hTxCgsKnzgQvYhjNXDcUmgqxtZF0GoCUSlU5chmNcfzzWugW7nSU6lUPVXNYXPzDuj2hY54LnuYbZqgRu/ZvAJavzUU55nkYFI1B/JNOXP92tBSlb1M+jy2QWfhdYlwbUHcjySLgAO6J+AXJQU9i+H3ORU9MeKKY3VqZL/q4kDwYgwPGry7K7A0Dt9meD1xeJmBM+GLh1L1zH7kCiJ4y1BZTxw+EFPtDllgUPmQqiGVI0pHLN+qR8Wbwv26RLVuvvXF7a2+ysSWov5KGMIPUgSTfGdVqrYE9VdsSJpCllS1WDQ2riSQgY1WyIvwxZbqju1KsRzYkBhkBXMUG0llYym6DGxIDFH27tTGpOpsXPT0roUWgXQGUSyoXttfiTz9KFoEUWZvkowlTYezpaa/YqKF0CaVJCy3BQKfSuY1Pjo4wURU/AzoMQdWaAPaaMAyckS3XFjrjk5NHJ4XcSZ+d4BHjl9ywOOjuI2BZ9HVbjZgwo9RFBJ6wNsYXEEP8KlZIaAH/JE2rp8H/C05Lp9H1kNHygbrgx8gFaGjgjQ+RLAejU8lWI7Gp/zm5Yb3pVPsUOjNhYl/BflWfvf4h/zt9NPpcDx/++7N+fDu9+nlb987+R0=


    [ 2019-04-02 20:23:09 CET ] [ Original post ]

    Aquarium update has been released!

    We are pleased to announce the release of our first major update: The Aquarium! This is a new sandbox-type game mode, unlocked after defeating The Queen boss. In Aquarium you can:

    Create the most wicked creature by using all of the parts youve encountered.
    Starting breeds will become available after unlocking them in Campaign mode - by collecting their DNA. Extra zooids are automatically added if you have ever adapted them. Aquarium has no limit of how many zooids you can have - anything you have acquired in Campaign mode stays and you can grow as large as you reasonably wish.

    Make your own twisted valleys or deadly traps.

    Aquarium is about being creative in any kind of way. We have added functionality to spawn and delete any object encountered in the game. Create beautiful arenas or mind-bending labyrinths - everything will be saved.

    Build an army of friends and foes, cloning your very own creature layouts.

    Test your strategies against your own creations. Create and manage your saved Sipho Layouts, then spawn them as enemies or friends - see what works the best! In the future we will allow exporting sharing layouts with others - your creations will live forever.

    Changes to Campaign
    We also have some changes to the main game mode. Since it did not have a name, it does now - Campaign. Campaign and Aquarium levels are now saved - that means you will always come back to the same world after saving the game. We have also finally gotten rid of built-in launcher, so the game starts immediately. Resolution can be changed in Graphics menu. Growth mode button default has been changed to TAB which can be reset or rebound in Gameplay Options menu.

    Remember - you can unlock Aquarium by clearing out the Queens lair. The world is your oyster. Its time to play.

    And a full changelist for all new things:


    • Update tutorial text to show correct default keybind for growth mode
    • Fix tutorial toggle disappearing
    • Display correct keybind to open Growth mode in gameplay UI
    • Disclaim that non-twinstick movement types are suboptimal
    • Fix not being able to spawn stuff in aquarium lol
    • Add explanation how to unlock breed in campaign mode when not starting in it
    • Add soundtrack to main menu
    • Show dialog box when unlocking Aquarium mode
    • Lock Aquarium behind second boss achievement
    • Before saving objects that are going to be unloaded, make sure they belong to the correct chunk
    • Rename "No Layout" to "Select Layout" in Aquarium Enemy UI
    • Make Player Aquarium settings to be shown in Growth mode. Add Grow From Layout button
    • If no Layout validator is provided assume they are all valid
    • Move invalid Layout browser entries to the end of the list
    • Make Aquarium UI appear on top of Growth UI
    • Validate Layouts and report bad ones on load
    • Don't validate layouts when player is dead
    • GameSave should only be loaded if you are actually loading the game, not respawning
    • Fix tutorial scene getting loaded twice
    • Serialize Layout angle as integer
    • Do not serialize Zooid type in Layouts
    • Name Aquarium scenes appropriately
    • Add Aquarium zones for each breed
    • Make Aquarium inventory smaller so it fits with text
    • Change pixel ratio of food icons so they fit to actual foods
    • Don't scroll development menu when mouse is outside of it
    • Sort poolables in development menu by their name
    • Fix bad pixel borders of plant tree which were visible in Aquarium spawn mode
    • Allow few more characters - _ . in Layout names
    • Pre-warm growth panel to prevent it from popping when opened for the first time
    • Auto-set layout asset names. Use Vector2 instead of Vector3 to serialize Layout data
    • Show only manually saved Layouts in Aquarium
    • Autosave only if Layout has changed
    • Make Siphonophore Layouts comparable
    • Save Autosaved layouts in separate directory. Handle multiple directories
    • Enemy spawners now use in-game saved layouts
    • Inherit velocity for all mines and bombz, nerf mine launch velocity
    • Rename SpawnObjectSkill to LaucnObjectSkill, add velocity inheritance
    • Spawned objects inherit zooid velocity
    • Rename layout files when renaming layouts
    • Do not load already loaded layouts when refreshing database
    • Handle scaled prefabs when spawning in aquarium better
    • Hide cost text if growth element is very small
    • Use hologram shader for zooid ghosts
    • Turn off pixel perfection for dead zooid ghosts to prevent them from jittering
    • Make growth bar scale down when zooids do not fit
    • Rotate tick decoration instead of everything else
    • Properly scale spawn effects for scaled objects
    • SpawnObjectSkill can now pass zooid stats to the spawned object, phaboom bomb affected by ranged stats
    • ObjectSpawnerSkill can now spawn more than one object
    • Replaced MineLayer with SpawnObjectSkill
    • EnvironmentObject no longer extends poolable, instead Poolable is expected to be a separate component
    • Automatically save the player layout in the campaign, for future Aquarium use
    • Move victory screen to CampaignScene
    • Make sure only one building menu is active at a time instead (either growth or aquarium).
    • Make growth sidebar scroll vertically
    • Use actually used decoration Icon for Aquarium menu
    • Add object despawn effect
    • Make Aquarium preview ghost non-pixel-perfect so it doesn't jitter when moved
    • Update preloaded shader variant collection to include all recently changed shaders. Fixes Decorations not fading out
    • Enable mipmaps for most sprites and set appropriate bias. Do not import alpha channel for non-transparent background textures
    • Use separate material for food container bottom and set it up so it doesn't fade out when close to player
    • Re-combine plant flower sprites to get better resolution. Enable mipmaps for it
    • Add spawn objects effect
    • Support creating poolables with scale parameter
    • Add a random Layout name generator
    • Rename blueprints/sequences/creations to Layout
    • Lower volume of Pusher and Leeches
    • Add Layout validity check for non-existent Layouts
    • Don't play ambience in Head selection
    • Set Year in main menu to 2019
    • Tone down enemy aggressiveness in Aquarium
    • Make Aquarium background margins larger
    • Don't drag Aquarium background when multi-spawning
    • Add Aquarium Multi Spawn game keybind
    • Made death transition a lot more smooth in Aquarium
    • Add Sipho Name support to head selection, death screen and growth mode
    • Fix extra zooid selection reporting bad selection when first coming to head selection
    • Prettier Sipho name panel
    • Fix autoscrolling scroll view spazzing out when on element is selected, but input tries to scroll away from it
    • Hash Wars: Optimize spawner function hash
    • Oh damn again with this
    • Game saved in a different thread, so as not to lag while doing file IO
    • Do not allow using Layouts with unowned zooids
    • Add faction names
    • Don't drag camera when dragging Aquarium objects
    • Spawn Aquarium objects with previous rotation if they weren't dragged this time
    • Allow naming Layouts only with letters and numbers
    • Re-use growth manager to control camera in Aquarium mode
    • Click+drag to rotate objects when spawning them in Aquarium
    • You can click+drag to rotate the Aquarium preview ghost
    • Allow naming Layouts in Growth mode
    • Use Layout name when saving Layouts
    • Dialiog UI should only steal focus when active
    • Fix enemy spawning not working (hide the shame) - P.S. This still ended up in release notes
    • Added a naive Aquarium build mode preview ghost
    • Tab now defaults to opening Growth mode. ` to open Aquarium mode
    • Confirm button closes dialog box
    • Do not play 5 ambient tracks at the same time in Main Menu
    • Use ESC to close Aquarium menu and growth mode
    • Update Layout when growing initial head to prevent empty saves
    • Show faction counts and selected Layout name
    • Allow deselecting Layouts
    • Ambient sounds for each environment
    • Make Aquarium effect cover whole screen
    • Add enemy spawn nutrition slider
    • Add decorations as separate spawn category to Aquarium
    • Change Aquarium mode more quickly
    • Add decoration eraser
    • Fade out decorations when player swims nearby
    • Add non-delayed player position global shader property
    • Don't try to create an instance of TimeMaster when quitting
    • Also spawn enemies near other siphos when loading the game
    • Don't move an enemy to the player when loading the game
    • Grow enemies instantly when loading them
    • Mouse follow selection scroll in EnumUI dropdown
    • Make fullscreen option a toggle instead of dropdown
    • Hide resolution dialog by default
    • Add Resolution selection to graphics options
    • Make Default sprite shader compile with instancing
    • Use toggles for Image effect options
    • Unify colors in Options menu. Add selection highlight
    • Now featuring SerializedEnemySpawner from dantes dentistry
    • Some work towards getting enemies to save
    • Add Egg to Aquarium spawn UI
    • Remove Whirlpool spawner from Aquarium
    • Aquarium mode change sound
    • Egg is now an env object
    • Add Aquarium background
    • Enable instancing on Zooid connectors
    • Allow draw-call-batching water ripples
    • Tweak Aquarium UI colors so selection highlight is gray and always visible
    • Allow UI element to decline becoming active element. Fixes entering bad state in growth mode when picking zooids that can't be grown
    • Handle null Layout when spawning enemies
    • Make Layout selection take up most of vertical space
    • Fix issues with saved objects not being updated with newer saves
    • Save current and unloaded chunks to the gamesave. Respawn from save instead of the seed.
    • Make Layout selector canvas pixel perfect. Tweak selections
    • Display Layout value with icon. Add add Layout button
    • Allow renaming Layouts
    • Add Layout browser and use it for selecting Aquarium spawn Layout
    • Added a turret to Aquarium
    • Added a grindstick to Aquarium that can grind
    • Don't bug out when saving after deleting some objects
    • You can load all the available Layouts and delete a specific Layout
    • You can now save Layouts
    • Make sure that the target directory exists before writing a GameFile
    • Do not remove ZooidUIOverlay on zooid death as it does get removed on structure change
    • Have separate spawn buttons for different types of Siphos
    • Fix leech error spam when zooid gets ungrown
    • Prevent from navigating Aquarium menu when selecting a thing to spawn
    • Don't leave Aquarium spawn toggles selected when closing their menu
    • Add auto Scroll Bar scrolling to Aquarium UI
    • Don't disable scroll view target so it updates scrollbars correctly
    • Add scroll bars to Aquarium menu
    • Delete saves only in Campaign game mode. Add separate gameplay logic script for Campaign
    • Automatically regrow quickly if nutrition is unlimited
    • Don't die in a fire if the object that we want to save has been destroyed. Throw a useful warning instead!
    • Don't rely on any specific order of events when trying to spawn loaded objects
    • We now save and load player spawned objects in Aquarium
    • Fix issues when trying to load an unavailable adapted zooid
    • Fix a bug with skill UI ghost images lingering on the screen when dragging with a right click
    • Add basic enemy sipho spawning
    • Fix errors when dying in growth mode. Make sure growth UI resets when main sipho changes.
    • Fix a bunch of potential issues by always checking for the newest mainSiphonophore instance
    • Add precise control of how many clips can start at the same frame. Default is any
    • Make unlock effect not play two sounds
    • Bring back powerup names
    • Powerup sounds
    • Player respawning should now work without any issues.
    • Add eraser
    • Make version text larger
    • Disable leech playing audio on grow
    • Fix leech not dealing damage
    • Make enum selection drop-down based instead of click-to-change
    • Allow setting enemy agressiveness from Aquarium menu
    • Display Aquarium menu tooltips
    • Use empty consumable icon for poison pill
    • Add metadata to all environment objects
    • Give buffs names. Hide buffs that have no names
    • Retain player's Layout and update ghosts when respawning player
    • Use toggle group to prevent selecting multiple spawn options
    • Keep player parameters after changing sipho
    • Keep respawning player after first respawn
    • Handle Main Sipho change in growth menu
    • Use tooltips for selecting spawn items and use mouse right-click to close Aquarium menus
    • Fix a bug where saving the game after defeating a boss would prevent other bosses from spawning
    • Don't throw exceptions when showing nutrition tooltip of a dead sipho
    • Only show game over screen on the campaign game mode
    • Hide Aquarium zooids panel when breed in unavailable and hide zooids already present in selected breed
    • Disclose where you can get more Aquarium zooids
    • Drop DNA only in Campaign mode
    • Add shell created effect for Sea structure
    • Scale Heal effect with zooid size
    • Add heal skill effect
    • Add support for launch effects for Mine Layers. Add Muck mine launch effect
    • Sync up Zooid Unlock effect with new sound
    • added few part sounds, health powerup, new part pickup sounds
    • Add Adapted zooids to player on Aquarium load
    • Add possibility of AI controlling the player in Aquarium
    • Ignore unlimited nutrition when calculating player's wealth
    • Display Aquarium zooids in Aquarium Head Selection
    • Oh god did we call Flak skill "Furts" all this time?
    • Do not give extra nutrition to Aquarium enemies
    • Add unlimited nutrition toggle to Aquarium
    • Achievements now listen for in game events and give achievements based on that instead of being plastered all over the codebase
    • Control enemy count instead of spawning on/off in Aquarium
    • Add Aquarium Poison pill
    • Don't load game scenes multiple times when starting up
    • Scale Aquarium UI with UI scaling option. Rename some elements. Use component-driven approach
    • Make locked Aquarium tooltip less verbose
    • Apply transition effect after postprocessing so it fully fades to black in main menu
    • Make orange button text scale down and add margins
    • "New X" instead of "Start X" in Head Selection menu
    • Lower food search range in head selection so siphos don't try to get food from other zones
    • Add corals to sea template
    • Tidy up head entry environments and spawn their proper settings
    • Add game mode text up top in head selection
    • Deactivate head selection on game start
    • Make head selection heads closer to each other
    • Don't do takeover effect when loading game
    • Prioritize Layouted breed for load sipho
    • Hide tutorial toggle when starting Aquarium or loading game


    [ 2019-03-26 22:27:03 CET ] [ Original post ]

    Version 0.2.2 is now available!

    Hello!

    While working hard on Aquarium, we had some bugs and balance issues. We've fixed them and bundled up for a small update. On the Aquarium side, one of the things we are working is spawning custom Siphos. Just look at this swarm go!


    And here is the list of changes for the update:
    Version 0.2.2


    • Increase leech skill energy usage from 6 to 7
    • Fix unnecessary scrollbars appearing in options menu
    • Fix a bug where saving the game after defeating a boss would prevent other bosses from spawning. Thanks for the report, PugMasseur!
    • Change "Zooid Added" message to "Zooid Adapted"
    • Fix Camera View Offset Sensitivity being always rounded down to 0%, 100% or 200%
    • Fix a bug where certain enemy blueprints were preferred for enemy spawning in Freeroam


    [ 2019-01-21 20:11:58 CET ] [ Original post ]

    Version 0.2.1 is now available!

    Happy new year!

    Just after rolling over to the next year we would like to share a small update. While working on Aquarium we had some chances to find some issues and do a little balancing act. Changes are listed below:



    Version 0.2.1

    • Balance and optimize Muck. Add sound to explosion
    • Muck effect now stacks
    • Add link to Discord in main menu
    • Select random zooid if none is selected on breed change
    • Spawn zooid unlock only when boss battle ends
    • Make Play Again button work
    • Disable hidden UI elements. Fixes quitting game unexpectedly
    • Decrease leech's skill energy cost from 8 to 6
    • Decrease spike's max damage from 6 to 5
    • Increase spike's damage interval from 6 to 9
    • Increase spike's velocity requirement for max damage from 8 to 12
    • Better way of checking if growth has completed initial growth for Frakir. Fixes Frakir staying in growth state and being unkillable


    [ 2019-01-02 14:36:44 CET ] [ Original post ]

    A Glimpse Into the Future

    Happy holidays!
    We would like to share what we have been working on.

    Aquarium mode
    Aquarium will not be limited to just drawing smiles with nutrition. Some of the features that will be available in new mode:

    • Unlimited growth
    • All adapted parts made available
    • Endless mode
    • Spawn your own power-ups and nutrition
    • Spawn hostile and friendly siphos


    Don't like others bumping into you? Just make some spikes!
    Our goal is to allow your play out different scenarios before diving into dangerous depths. For some it will be a training course, others will be able to carefully plan and test out combinations of adapted Zooids. It caters to creative side of things without constant pressure. This will also allow to play out harder encounters than the base game offers.


    [ 2018-12-21 08:07:00 CET ] [ Original post ]

    Version 0.2.0 is now available!

    We are proud announce a new extra-featured build. It is also a development milestone for us which marks a new Version 0.2.x era.

    Starting Early Access we have promised to listen to your feedback. To not compromise existing balance and wanting to give a little bit of strategy between runs, we have implemented ability to keep a zooid after death!

    This will allow to have a little bit more creative freedom in the main game mode by allowing you to strategically select a zooid to keep from previous run. New synergies can be explored this way without making the game too easy. Breed selection menu will now also display starting zooid loadout and plan ahead:


    Implementing this feature has allowed us to make some under-the-hood changes to allow us affect game settings more easily. And it might be that little push that will help you to finally defeat Frakir and his minions.

    Other thing we wanted to do even before launching to Early Access, but did not want to risk regressions, was to re-balance movement. There were some cases in early stages where an enemy would be faster than the player with several movers. Now movers have a lot less drag so movement should feel more responsive allowing you to create more interesting builds.



    Together with aforementioned major changes, check out the full list:

    Version 0.2.0:

    • Increase gaps in Twisted Narrows
    • Juice up zooid pickup effect
    • Show adapted zooids in death screen
    • Do not use impossible zooid placements for head selection siphos
    • Give tank movement some love
    • Damp siphonophore turning if there's high angular velocity
    • Increase spike velocity threshold for full damage
    • Display extra zooid in starting zooid panel
    • Fix cursor escaping the game in multi-screen setups
    • Added a pacifism achievement that can be achieved by finishing a level without killing anyone
    • Show available zooids in selection panel
    • Add Adapted zooid selection
    • Randomly select zooids to stun
    • Fix Sizzler not stunning when there are a lot of zooids around
    • Make heads have more mass and drag. Make movers have less drag and mass. Make siphos less deformable
    • Make Spike weapon have less drag as it already gets slowed down by it's tip
    • Make grappling hook less abusable with pushers
    • Don't error out when player has all zooids in inventory
    • Kill dead zooids around zooid unlock pickup


    [ 2018-12-04 21:00:18 CET ] [ Original post ]

    Version 0.1.8 released!

    Hello everyone!

    It has been a crazy week after release and we are really happy about reception of Sipho. We have got loads of feedback from around us which will help us polish the game on all rough edges.

    Some notable changes are increasing free spaces in areas later in the game. We got reports of navigating in those areas with a larger Sipho was hard, which was not intended. Such closed areas feel nice when Sipho just big enough to fit through, but later levels provide so much food that Sipho can be pretty wide and become easy prey if it gets stuck. To allow enjoy the game in any size we have increased passages and open areas in Buginis and Cra'Than areas.

    Tutorial has been improved by removing lots of flavor text and leaving only most important information. Grasping a lot of information for the first time is a lot to ask, so we had to distill information to easy to understand highlighted sections. This was a also a good time to update Dash icon together with tutorial images. So skill bar has gotten some love too - all skills are now represented by their zooids or things they drop.



    We have fixed several stability issues which interrupted play sessions. Game no longer will get stuck entering growth mode while entering boss fight. Game will not be saved when quitting, which in some rare cases resulted in player getting saved to the "void" which is an empty area. We have also potentially fixed a freeze on longer plays and if that still happens - let us know.

    We also had version 0.1.7 in Beta [staging] branch, but wanted to do some testing before making it public. For those who are not using Beta [staging] branch both version changes are relevant:

    Version 0.1.8

    • Don't save game outside of gameplay scenes
    • Dive button chargers dive instead of diving instantly
    • Fix zooid overlap exploit
    • Larger spaces in later zones
    • Moved zooid pickup to zooid effect layers so it's more visible
    • Make Enemies react to poison


    Version 0.1.7
    • Lower environment spike damage and add chip effect
    • Make boss minions not chase player if it's outside battle area
    • Make reward drop radii narrower
    • Add more robust system for locking controls and cinematics. Refactor Gameplay scene loader to not use coroutines. This makes all kinds of transitions nicer
    • Do not async load levels - fixes level loading after player has been allowed to move, resulting in stuck positions
    • Don't save game when Sipho is dead
    • Have area text controller in separate canvas
    • Report error when loading area with no indices - will help us catch level load issues more easily
    • Assert that we are saving valid area
    • Make transition effect appear after postprocessing so it would properly fade to black
    • Tweak Buginis boss battle activation position
    • Add correct Frakir audio
    • Return false if there are no spawners to update
    • Fix reward UI sometimes erroring out on game exit
    • Do not enter boss battle while game is paused
    • Don't allow cheesing Frakir boss so easily and enrage early
    • Make bone minions less predictable
    • Destroy blueprint asset after saving it
    • Simplify tutorial text and update images
    • Remove italics in skill description and show energy usage as yellow text
    • Rotate dragged skill as well
    • Add movement skill icon
    • Make tutorial text appear on top of decorations
    • Set correct icons for skills
    • Tweak skill bar looks
    • Report game version to analytics


    [ 2018-11-21 20:18:08 CET ] [ Original post ]

    Sipho is now available in Early Access!

    We are glad to announce that Sipho is finally available for everyone to enjoy!

    After almost two years in development, we are very excited to finally have a game we are proud to share.

    It all began in 2017 Global Game jam with idea of creating an underwater creature game, where your shape and actions mattered. After we had a demo, we felt we have created something interesting as we could just spend time looking at the game play itself. Over the time we have refined core of the game and improved looks and feel. We wanted underwater feel and have a good control in it. We have added more parts to the game and we wanted them to matter and act well together with other parts.



    The creation process is not stopping, but rather accelerating. By listening to your Early Access feedback we will be able to tailor the game by your needs.

    One common request we had from our testers was a Sandbox mode. After polishing and preparing Sipho for Early Access release we will now be able to start working on it. It will be called Aquarium, as it is more thematically fitting than Sandbox and will feature gameplay not limited by gamey win/lose constraints.

    Another short term goal is to add full support for Joysticks as we believe games should be as accessible as possible. Currently game controls can be bound to joystick buttons, but some aspects of the game, like growth are not well fit for that use. We will work to make it feel as good as playing with mouse and keyboard.

    Grab a build and let us know what you think!


    [ 2018-11-13 18:29:55 CET ] [ Original post ]

    Sipho development blog

    Hi folks! We're here to give you some insights on what we've been doing.

    Sipho has been in development for a year and a half now and we feel like we're getting close to release. Currently we're working on sprinkling the top levels of polish and adding the few missing bits and pieces of content.



    One of our major concerns was teaching all the game systems and controls to new players. To that extent we've been reworking and improving the game tutorial to feature step-by-step instructions that gradually familiarize new players to the game. We hope this will allow people to quickly jump into the game.

    We're also working on adding some new and unseen zooids into the mix. One of these is the grappling hook - it will allow attaching to enemies from afar or even navigating the world by grappling to nearby surfaces. Another new zooid that will be featured in the full game is the energy leech. While it does no damage, it saps the energy of foes while boosting it's own colony. The energy leech should combo very nicely with melee range skills and allow using expensive skills more often.



    Lastly, we're working on improving and rethinking our level bosses. We want them to be a fun challenge - not too easy, but also beatable with a certain playstyle. We want to avoid forcing players to build in a specific way just to be able to beat the bosses, so this is a tough balancing act.

    We're also constantly iterating and adding new art assets to Sipho, trying to nail that creepy underwater aesthetic. One of the new sprites is the egg sack that replaces the previous art for our nutrition container. Now you're chewing up eggs for nutrition, yum!



    We hope that this update has been informative. Keep an eye out for more updates!

    Yours, team Sipho.


    [ 2018-07-15 19:00:22 CET ] [ Original post ]