Today's update includes a minor fix for a bug impacting a load game scenario.
It also includes our first proof-of-concept work for cross-project code sharing of unity-dependent code ;)
Thanks, Chani.
======== 1.16.3 * fix bug where loading a game that was saved in MGL during PLAY caused transition logic to fail * refactor project to use common unity library project
Update 1.16.2
Hey Everybody!
Today's change contains an update to the game's engine & some bug fixes.
Thanks, Chani.
======== 1.16.2 * add console command "list" to List items * add console command "gimme" to Add item(s) to inventory (during PLAY only) * add console command "use" to Use an item (during PLAY only)
1.16.1 * fix bug where buying back treasure items sold costs half of what they were sold for * fix bug where save game process wasn't finished before growing a new maze
1.16.0 * update Unity 2020.3.25f1->2021.3.2f1 * update materials & lighting (we get real-time shadows for point lights again!) * fix bug where sometimes items didn't get destroyed after being picked up * fix bug where sometimes player avatar was spawned multiple times
Ra Ra Ra!
Hey Everybody!
After over a year since our last update, we're publishing a new update for Prismatic Maze today!
The change includes a complete overhaul of our underlying state engine, a complete redesign of the mini-map system, the addition of a playback system with pace controls for maze growth and bug fixes.
You probably won't notice a lot of difference after this change, even though a ton of the back end systems were completely torn apart and rebuilt. The game should play a little smoother and faster, especially during maze creation.
Thanks, Chani.
------- 1.15.8 * add console command: pop * fix bug where Player was sometimes unable to pickup Pigment heart after saving during PLAY * fix bug in console commands that take screenshots which sometimes took screenshots with console open * fix bug where unhandled exception was thrown by Ghosts when saving while PowerPellet was active
1.15.7 * improve debugging for save errors
1.15.6 * fix an issue that prevented finishing maps due to not spawning dead Pigment creatures
1.15.5 * add console commands: sql, backup * fix bug in upgrade database script that was preventing execution on mac
1.15.3 * fix bug that caused some tile subtype data to not get updated when position was not changed * prevent spawning multiple explorers at once * detect db version downgrades & gracefully fail loading newer-than-supported versions
1.15.2 * fix bug caused by asynchronously saving state while simultaneously starting new map creation (MGL->CreateNewMaze) * minor update to last entry in update log
1.15.1 * hide map creation playback controls when map isn't visible * redesign map creation playback controls w/ fast-backward icon & gradient slider * store/load map creation playback controls in game config * fix bug in create new map menu that was leaving step name empty when it should be "Ready" * sort ingredients in blueprint info menu
1.15.0 * enable debugging of library code * fix error in ghost chase logic * prevent multiple loading scenarios caused by spamming menu buttons
1.14.6 - Paternity Update I * rollup of updates since 7/9/2020 * full redesign of data access layer * update minimap to dynamic texture * add maze generation playback controls * bug fixes
This is a polish update, in which we make improvements to menu and scene transitions. Not to be outdone, Pigments started showing their heartbeat through their lights...
Smoothing Things Out
Menus now transition smoothely after redesigning our menu system.
Menu transition logic has been redesigned to avoid frame stuttering and transition animations make interacting with the menus more fluid.
Scene Transitions
This is a thing we've wanted to do for a long time.
When transitioning to or from Playing mode, we've added scene transitions.
For our first big transition, we're building a completely new maze to fill the screen in a classic top-down 2d view. When a transition is triggered, we're walking the new maze from start to finish, following each branch and revealing tiles along the path. Once the transition is completed, the same path dissapears on a similar traversal.
The scene transition maze uses the same logic that Pigments use to grow mazes inside themselves. It's completely new each time and for most transitions it'll only be visible for a second or two.
So... good luck solving that ;)
Pigment Heartbeat Revealed
Pigments seem to have gotten used to the Explorers, as their lights have started lighting up smoothly instead of abruptly like before.
The lights also seem to be pulsing in a pattern that we think is the Pigment's heartbeat.
Baby on the Way!
Coming up next month, our first child will be born! We're so excited!
Thanks, Chani.
------- 1.12.3 - Smooth Operator Update * show Pigment heartbeat with light intensity * add Scene Transitions with fade-to-black & recursive backtracker * update save indicator animations, adding fade-in and fade-out * update wall light animations, adding fade-in * streamline ui during scene transitions * add menu transition animations * unblock ui thread during new map creation * remodel menu lifecycle
This update adds trees to empty spaces, converts Christmas effects into an Easter egg & completely revamps the rendering pipeline affecting colors, lighting, shadows.
Meanwhile, we're working towards an iOS release for the game.
New Content
Some time ago, we added empty spaces to maps - something like dropping some sand into your petri dish.
Pigments decided to celebrate this with decorations for Christmas, and after the holidays some seeds were left over. This caused trees to spring up in their places.
It seems that the Pigments affect what types of trees grow in these areas now. Primary colors seem to be pretty normal deciduous & conifer trees but Orange and Purple are a little bit stranger and Black seems to kill its trees outright.
Updated Content
The trees came with a full rework of the rendering pipeline... This change affects colors, lighting and shadow effects throughout. Most of these changes should be pretty small, but it touches almost everything.
We switched our updating scheme from date-based to Semantic Versioning & exposed the version number on the main menu. The new versioning scheme conveys a bit more information than the date did since the it is easily comparable and contains info for major, minor and path versions.
We also fixed some bugs ;)
In Progresss
Working towards an iOS release up to this point mostly involves infrastructure work. Going forward, it'll also involve redesigning the inputs, options, menus, cameras, transitions and meta-game-loop.
We're also working on a Campaign Mode that should improve game progression. Look forward to seeing more of that in the near future :D
Thanks, Chani.
------- 1.11.4 - Foliage Update * add Trees to Empty Tiles * update project for Universal Rendering Pipeline * add background image to bootstrap menu * update door logic to prevent re-spawning Explorer when interacting with doors * switch to semantic versioning
Since the last update, we've been working on adding support for MacOS. We are releasing our first Mac build on Christmas Eve :D
If you already have the game on Steam, you will be able to install it on your Mac using Steam. If you have been unable to play the game because you only have a Mac, now is a great time to buy it as it is on sale during Steam's Winter sale.
To celebrate the holidays, we also added Snow and Christmas decorations!
We've also updated the game logo ;)
Next stop, iOS!
Thanks, Chani.
----------
20191224 - Christmas Update * add support for MacOS! * add Snow* fill empty tiles with Christmas Flair
Happy Halloween! Happy Steam Sale! Enjoy some Happy Ghost Hunting!
A lot has happened in the last month :)
In-Game Updates
We set up a feature to show in-game patch updates early on in the month, but it kept spitting out what looked like some kind of feedback information. We tuned that until it resolved into words.
It looks like there is some kind of conversation going on. We filtered it down to show in the game - looks like some kind of task summary?
Here is what it said a few days ago: Experiment continues. Our task is introduction of caution. We teach Pigment play time. Pigment learns grow monster, birth monster, decay. Enter Ghost. Ghost learns loyalty, modality, vulnerability, off, patrol, chase, eat Explorer. Explorer learns death. Explorer finds power, inverts relationship. Explorer learns eat Ghost. Ghost learns death, fear, retreat, caution. Explorer learns liberate.
It seems to be a description of the work we did this month, only some things are out of order and it sounds like juffo-wup. Still, it means we don't need to write our own updates, right?
Besides, we can't seem to get them to stop. When we remove them they sort of echo back into place.
Ghosts
Ghosts are our first moving autonomous creatures! We are so proud! They are born from Pigments, more when maps are baked longer.
Ghosts roam their mazes in the darkness, disliking any light. They chase and eat Explorers, who drop what what it was carrying for another to pick up later.
Luckily, another Explorer enters the maze when one dies. Explorers can use an item to become empowered for a short time, causing Ghosts to flee or be consumed if caught.
Explorers are no longer alone. The darkness has become dangerous. Proceed with caution.
SUMMARY
This month was a lot of fun. Much more subtlety and complicated behaviors needed to be modeled for the Ghosts in their present form. It felt like one behavior led into another until it seemed like it was shaped right. Makes us curious as to the source of this pull.
Thanks, Chani.
----------
20191031 - Halloween Update * add in-game update log * life updates * advance time in Ecology Engine simulation state during PLAY * Pigments * teach them to act during PLAY * teach them to Liberate area when seed is taken * teach White Pigment to Liberate area when all tiles are seen by Explorer * teach them to Decay when they die * teach them to grow monsters during Growth, birthing them during PLAY * Ghosts * add Ghosts * teaching them to Patrol * teach them to Chase & Kill the Explorer * teach them to Retreat when Explorer has Empowered effect & Die when caught * teach them to turn-off-lights * add Items * Tombstone, dropped by dieing Explorer, consuming its body on pickup * Power Pellet, conveying Empowered effect * Ghost Essence, dropped by dieing Ghost * minor updates * enable selling Treasure items * update Explorer to look brighter in dark areas * update Maze Tools on Creating Maze menu to scale items to fit * bug fixes * update Merchant Buy tab to re-evaluate ability to purchase again after a purchase * update light placement logic to avoid placing light on same tile as Door * prevent re-triggering XRayVision from WhiteOut when white area is Liberated
In the last month, we've been seeing Pigments begin contracting Darkness. This affliction somehow blots out the sun within their territory and causes them to grow lamps and consumable light items.
Meanwhile, an Item Merchant has been attracted to the coins and set up shop in between mazes.
Teaser
[previewyoutube="IRImClotOvo;leftthumb"]
Darkness & Light
Over the last few months, we've watched the mazes created by Pigment creatures get richer. Until recently, there hasn't been any down-side to letting maps bake longer because the longer they grow, the more coins and items they seem to acquire.
Meanwhile, the little boxy creatures we've been using to explore the mazes started tracking its time and steps. It also acquired the ability to invoke temporary status effects.
Apparently, the Pigment creatures have acquired a similar ability, but in contrast to the Explorer's Speed effect it looks like they're getting sick... During the growth period, if a Pigment fails to grow for a while or are stopped from growing fast enough due to space constraints, they come down with an affliction called Darkness. This seems to be a reaction to our experiments with longer bake times, since allowing Pigments to grow long enough in a limited area ends up limiting their growth eventually.
Darkness somehow prevents sunlight from reaching into the Pigment's territory, causes them to grow lanterns and light-emitting consumable items like Candles and Torches. Luckily, the Explorer is able to use these items to emit its own light! As soon as this started happening, the Black Tower area went completely dark and refuses to grow lanterns, so those items are especially useful.
It seems that illnesses like Darkness are not the only result of the increasing yield from our Pigment growth experiments... All the coins and new items have attracted an Item Merchant, who set up shop in between mazes.
The Item Merchant has placed a value on each item relative to gold coins and is selling a most of the items we've discovered so far. It will purchase items at half the price it sells them for and allow buying back any items sold at cost.
We don't know where it came from, where it gets its inventory or what it does with the coins, but we're very happy it came along. Along with providing a convenient means to get useful items like Blue Pill, Speed or the new Candles or Torches, converting unused items to coins has been very helpful in keeping our toolkit stocked.
We recommend picking up a Map from the Merchant. Up to this point, we've found Maps reliably in the White areas of mazes. By purchasing and equipping it as a Tool we've been able to start maps with it, greatly improving our experiments.
[table][tr][td][/td][td][/td][/tr][/table]
SUMMARY
This has been a very interesting month in our experiment!
Although we're concerned that both the Explorer and Pigment creatures have developed something akin to the ability to contract illnesses, we're excited to see how their evolution continues...
Thanks, Chani.
----------
20190923 - Darkness Update * add Item Merchant to Stage Select * add Darkness & Light * make Pigment creatures vulnerable to Darkness effect if they fail to grow for too long during map creation * standing on dark tiles blots out the sun * place lights in dark mazes along walls & on doors * project light from Avatar via new Candle & Torch items * update items * make Blue Pill acquirable on finishing a maze * make Map work as an Equippable tool * add active effects that are invoked/removed manually rather than via burndown * update telemetry
This is a much bigger update than many of the previous ones,
and it introduces some exciting new game mechanics including Consumabel Items and Active Effects!
This enables some things we've been working towards for some time.
Items in the game were originally only used as ingredients for new maps, but the intention was always to add more items over time.
Our philosophy with items was to follow the things should do things principle and make each item actually do something significant.
In order to do that, we needed to lay a lot of groundwork and build systems to enable the types of behaviors we wanted to play with.
Consumable Items
This update introduces Consumable Items, which can be activated from the Item Description menu by hitting the 'use' button.
Consumable items are more numerous and much more common than ingredients.
Most of these items are grown by Pigment Creatures as they mature and such items are hidden inside those creatures' mazes.
In the future, you'll be able to purchase items of various types using Coins in the Stage Select menu as well as acquire them in various ways besides finding them in mazes.
Active Effects
Active Effects are (usually) temporary effects that can be triggered in a bunch of different ways, such as by equipping certain Tools or consuming Consumable Items.
You can now see which effects are active, as well as their remaining time in a burndown panel in PLAY mode.
You can also see which effects are triggered by a given item in the Item Info panels.
In the future, we plan to use Active Effects for things like hazards and buffs and map modifiers ;)
New Items!
In keeping with the things should do things principle, this update adds four new items: Speed, Blue Pill, White Out & X-Ray Goggles.
Speed
Speed is one of the earliest effect-based items we planned to include, so we're really happy to finally get it into the game.
Speed is gown by Pigment Creatures as they mature and is one of the most common consumable items.
Using it triggers a 30s speed boost along with a glowing trail.
Blue Pill
Blue Pill is a Consumable Item that is found somewhere in the White area in every maze.
Using the Blue Pill triggers a 3 second effect that takes you out of the Maze and into the Stage Select menu when it expires.
The Blue Pill is Transient, which means you don't get to it with you when you solve the maze.
It is also a Tool, so if acquired in other ways it can be equipped in the Stage Select menu and access it in any maze.
Also, it's a fun reference ;)
White Out
White Out is a Tool that can be found in the Black Tower in some mazes of size 32x32 or larger.
This is a really cool one - it's an equippable item that triggers an effect when you step on the starting tile that reveals all the white tiles.
Along with X-Ray Goggles, this is one of two pathfinder-based items in this update.
The pattern of revealed tiles used by White Out follows the same corridors used by the player, taking walls into account.
Watching the pattern as it is revealed can provide hints as to how the maze is laid out.
X-Ray Goggles
X-Ray Goggles is a relatively rare consumable item that is grown by Pigment Creatures as they mature.
Along with White Out, this is one of two pathfinder-based items in this update.
When activated, all tiles on the map are revealed in a pattern that expands outward from the point where it was used, ignoring walls and colors.
Capturing Steps and Alive Time
We've been working towards capturing a meaningful Score mechanic for some time.
Towards that end, some time ago we started capturing completed maps & with this update we begin tracking steps taken and time spent in the maze.
You can see how many steps you've taken and the time spent on the Victory menu when you solve the maze.
In the future, these values will be displayed on the Map Info panel in Stage Select when looking at the maze in the Load menu, we'll add some calculation to compare your steps/time vs. optimal on a given map and steps/time will be rolled up to an aggregate score.
Also, some features we're planning for the September update will rely on and play with these things... can't say too much on that yet but it should be pretty cool.
User Interface Improvements
To go along with the big changes above, we made a lot of incremental user interface improvements.
The inventory controls now scale item images much better and don't overflow anymore.
Inventory controls sort more logically - ex. coins sort in order of value and seeds/keys sort with primary colors before secondary colors.
We added a generic tooltip feature and used it for mouseover tooltips on items in inventory menus as well as item type and effect icons in item description menus.
The Save button has been added back to the Stage Select menu.
There is now an 'Easter Egg' section in the Options Menu (only visible off the main menu), so time-based easter eggs can be played with.
Item stacks can now be picked up all at once by holding shift when clicking on them in the Inventory menu or halved by holding ctrl.
You can now see Item Types in the Item Info panels.
Item types were always used behind the scenes, but they weren't exposed to the player until now.
Item types include:
* Transient - cannot be taken from the Maze in which they were acquired
* Ingredient - used in map recipes to customize new maps
* Tool - can be equipped to activate a persistent effect
* Treasure - valuable and collectable
* Consumable - can be activated once and are used up by doing so
We made great progress in August and we're really looking forward to what we have planned for September!
Stay tuned ;)
Thanks,
Chani.
----------
20190828
* add consumable items
* add Active Effects and effect burndown during PLAY
* add item type icons to item info panel
* add Effect info to item info panel
* track Steps and Alive Time during PLAY, displayed on Victory menu
* add Blue Pill item, dropped in white area
* add Speed item, grown by Pigments
* add X-Ray Goggles item, grown by Pigments
* add White-Out item, added randomly to Black Pigment on large maps
* add Item Info panel to Stage Select
* add Save button to Stage Select
* add mouse-over tooltips
* add toggle for easter eggs in Options off of Main menu
* sort items better
* scale item images better in inventory lists
Coin Update!
Prismatic Maze is now in Latvian!
May the streets be paved with Coins!
Hey Everybody!
With this update, Pigment Creatures now generate Coins as they grow & spread them out inside their Mazes.
Players can pick up coins like other items in the Maze, adding them to their collection upon completing the Maze.
Coins are part of a growing lists of collectible Treasure items.
Coins come in five denominations - Iron, Copper, Silver, Gold & Platinum.
Each Pigment is born with variable DNA traits.
The Prosperity trait controls how likely they are to generate coins each time they grow.
As they get older, they generate higher denomination coins.
Coins are also a form of in-game currency that will be used in various ways in future updates.
Hello Latvia!
Also, our friend Pēteris Lediņš has translated the game into Lativan!
Steam doesn't even have a language selection for Latvian, but maybe they will at some point :)
The localization process has been an interesting lesson in languages, especially in what does and does not translate easily.
Humor, wordplay & quotes especially are difficult to translate well.
Thinking about future translation really helps clarify how you plan to present or display text.
Thanks so much to all of our translators; you guys are awesome!
Automatic Updates and Versioning Saves!
Hopefully, nobody is going to see this when they play the game, but it's a super cool feature :)
I'm going to go into this in much more detail in another post, so this is the short version...
Prismatic Maze stores a lot of the stuff in long term state, on disk in a file-based database format.
As features are added or changed with updates over time, the shape of various things in long term state data saved and the details in data itself may also change.
At any given time, a new game could be created and played through using the shape of the data at that time without worrying about versioning it.
But, a save game that was created some time ago could also be revisited after some significant changes had been made.
The ability for the game engine to load a save game that is in an older format than the current one is potentially tricky.
To address this, lots of things that get saved are versioned and I use a few different patterns to describe, detect and update versioned data in the game engine.
In this update, I finally added a robust database schema updating system that automatically brings older saved files up to the current version.
Prior to this update, I had to be very cautious about what could be changed in order not to break support for loading older saved game files.
New Monthly Update Cadence!
When Prismatic Maze was first released, I did updates pretty frequently in the first week, addressing immediate issues found at launch.
Following that, I put out weekly updates for the first month & bi-weekly updates for the second and third months.
This update marks the first update after a month since the previous.
The main reason this one took longer was personal.
My wife and I took a vacation and renewed our vows for our Anniversay.
Also, I needed to spend some time taking care of home stuff.
Those two things knocked out close to three weeks, during which I was unable to work on the game.
That said, I think a monthly cadence is a good one going forward.
It lets me work on bigger things and allows updates to have more content and make more significant changes.
It reduces publishing overhead, which easily takes a full day with each release.
It allows time to experiment and explore new ideas or address other personal things without getting anxious about the next update (work life balance, ya'all).
It reduces messaging spam for players, giving enough time between updates to feel like returning to see what the new update does worth the effort.
So, for the next while, I'm planning to put out updates on a Monthly cadence.
Lots of cool things in the coming months, I'm super excited to share them with you ;)
Thanks,
Chani.
Screenshots:
----------
20190725
* add Latvian localization
* update Pigment creatures to spawn coins in hallway positions during growth cycle
* add automatic update features for map files
* filter time items in new maze recipe based on map size (prevent smaller maps from adding larger time items)
See blog post for more details & images:
http://www.badmonkeylove.com/prismatic-maze-update-20190725