A kitten-herding, queue-management entropy-em-up strategy and automation game.

VEV

VEV is a non-violent strategy and automation game in which you are tasked to clear the land of particles in the shortest possible time.

Objective

A fixed number of particles will spawn into the land through white holes which dot the world, your task is to corral the unruly lot into deconstruction facilities which convert the particles into energy and (in some cases) yet more particles, which additionally then need further deconstruction.

Mechanics

There are six deconstruction facilities available, each accepting a different trio of particle types and producing a different amount of energy and output particles for each type. Refineries are in addition to the deconstruction facilities, these will collect ore and provide an additional source of income to get you started. All buildings can be upgraded using energy to increase their throughput.

Strategy

The main strategy in VEV revolves around a balance between the number of deconstruction facilities, their queue length, upgrade level, and how the facilities are interconnected together to automate particle deconstruction cascades - while also handling the new fresh particles produced by the white holes.

The white holes and all deconstruction facilities can set a destination for each particle type they produce, spawned particles will automatically go to this destination. Deconstruction facilities can additionally specify an overflow location, all particles which try and enter the facilitie’s queue when it is full will instead divert to the overflow location. This allows the chaining of a larger number of facilities with shorter queues to improve throughput. But note that cyclic loops are not allowed, if a particle gets redirected back to a facility it has already been rejected from, it will just hang around the entrance to the queue, and probably wander off.

VEV

Download and Source Code

VEV is written in Java with libGDX and is available on Itch.io, Google Play, and Github under the MIT licence.


Get it on Google Play

VEV on GitHub
Download VEV_v1.jar (Linux, Mac, Windows)
Download VEV_v1.apk (Android)
Download VEV_v1.zip (Windows)

Why VEV?

VEV stands for Vacuum Expectation Value. In quantum mechanics, the lowest possible energy state of a system of particles is not zero, even as the temperature tends to zero Kelvin. This is similarly true for quantum fields, from where the term VEV derives.

The VEV of the electromagnetic field is measurable experimentally via the Casimir effect, and the VEV of the Higgs field is known to be large due to a process called electroweak symmetry breaking.

In reality (unlike in this game…), it is not possible to extract or otherwise harness the energy stored in this ground state.

VEV

Development

The original idea behind working title Project Destructor was to create a time-reversed real time strategy game. In this original form, infantry units would emerge un-killed from battlefields on the map. The player would be tasked with directing these units back to barracks from which they could be un-trained, and finally the resources which were freed during the un-training processed would have to be un-mined back into the ground. The game would be complete when a fixed number of units were un-trained, all barracks were un-built, and all resources were un-mined.

Significant changes were made to this initial design in the interests of gameplay as the project progressed.

  • The battlefields concept shifted to the white holes found in the final version, the infantry units became small bouncy particle sprites. The particle’s small, uniform size and bright colours helps distinguish-ability when many thousand are rendered at once.
  • The particle’s and their decay chains initially followed the possible decays of real life subatomic particles, but this was abstracted away to decay chains which instead give more interesting optimisation choices to the player.
  • The queuing system was added as it introduces an interesting trade off mechanic between small queues (cheaper and quicker to build, but more likely to either overflow or empty out) and longer queues (more expensive and longer to build, less likely to overflow or empty, but a smaller number of buildings with long queues reduces the overall throughput). This didn’t fit well with the time-reversal mechanic, why would particles need to queue after having been created in a time-reversed universe?
  • The game’s goal under the time-reversed mechanic was to de-construct all particles and de-construct all building and then have zero energy. The player could have as many buildings as they wanted, but each would add more energy to their total when the building was ultimately de-constructed. This, on top of the particle de-construction energy, would need to be un-mined and deposited back into the ore fields.

This zero-energy goal wasn’t fun. The game already slows down somewhat towards the end as the final (time-reversed: first) particles are corralled into their buildings. If they player has too many buildings to de-construct at this point in the game, they would then have to simply wait while the large amount of remaining energy that past-them used to obtain such an expansive base was deposited as ore into the ground, with no possible user-input. This created a long and boring wait to finish the game.

Removing the time-reversal mechanic does away with the primary idea which this project was originally exploring, but it also solves both the queuing problem and the end game problem. It now makes sense why particles need to queue to enter a deconstruction building, and lets the game end the moment that the last particle is de-constructed. It also results in the game shifting to using a more traditional currency model, with early game energy mined from resource patches and mid-late game resources obtained primarily from particle de-constructed in the existing facilities, allowing for expansion.

I still think the proper time-reversal gimmick could make for an interesting game mechanic, where your current actions are “free” but must be financed at some point in the game’s past (the player’s future) in order to preserve cause-and-effect. The ability to speed up the passage of reversed time (for example) would help to alleviate the long-wait problem described above. But it is ultimately not the way that VEV evolved though its development process.

Cheats

Cheats are enabled by pressing F1 in game. They are accessible in the android build only if an external keyboard is connected. Cheats are accessed with the following keys:

  • U: Toggle UI visibility.
  • M: Toggle music.
  • B: Step through debug render layers.
  • BACKSPACE: De-construct selected particles.
  • C: Add 9,000 Energy.
  • N: Spawn 100 particles.
  • R: Increase particle spawn rate.
  • G: Spawn all remaining particles instantly.
  • F: End game.

Credits

Framework: libGDX.

Ben Ruiji: A*.

Buch: Colony Sim, Match-3. SpriteFX: Plants, Lightning. Paweł Pastuszak: VisUI.

Chris Zabriskie: Is That You Or Are You You?, Divider, CGI Snake (CC-By-V4)

Steve Matteson: Open Sans (ApacheV2). Peter Hull: VT323 (OFL).

tix99: squeak toy (CC0). FxKid2: Cute Walk Run C (CC0). Mark DiAngelo: Blop (CC-By-V3). man: swoosh 1 (CC-SamplingPlus-V1). http://soundbible.com/308-Large-Thump-Or-Bump.html Mike Koenig: Shooting Star (CC-By-V3). Raclure: Affirmative decision chime, Cancel chime (CC0). waveplay_old: Short Click (CC0). Planman: Poof of Smoke (CC0). MATTIX: Retro Explosion 5 (CC-By-V3). pel2na: Two Kazoo Fanfare (CC0). Selector: rocket launch (CC0). doorajar: DirtShovel (CC-By-NC-V3). visual: Industrial Bass 1 (CC0). cameronmusic: pulse 1 (CC-By-V3).