Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - logFarm

Pages: 1 2 [3] 4 5 6
Meta Automata :: game / Meta Automata prototype :: 0.13
« on: Tuesday 2016-March-01 04:30:40 PM »
version number: 0.13 (prototype)


- now reads from .obj files exported from Blender

added a few very-low-poly trees and clumps of grass


Speak soon

Meta Automata :: game / Meta Automata prototype :: 0.12
« on: Monday 2016-February-29 04:34:05 PM »
version number: 0.12 (prototype)


- MENDED: player lost their opportunity to collect their
mission-completed reward after stepping away from the
mission terminal

- MENDED: fences connected to other (phantom) fences on different maps

- MENDED: enemies own all machines, their screen flashes and
disappears very quickly

- MENDED: turret bullets can stay in the air and fly off in orbit

- MENDED: move to second map, save, restart game, load, move to first
map result: parasites instantly win

- MENDED: turrets and fences are not loaded when loading from saved

- MENDED: tunnel entrances were in the same place on all maps

- permits are saved and reloaded from save file


0.12 (prototype) uploading as I type

Speak soon

Meta Automata :: game / Meta Automata prototype :: 0.11
« on: Sunday 2016-February-28 05:02:40 PM »
version number: 0.11 (prototype)


- parasites have a single spawn point as per game's story; they spawn
from a tunnel entrance

the tunnel entrance is represented by a black image on the floor

if the player walks on to the tunnel entrance and presses:

left-control + return

they will be transported to another map

there is a yellow-ish tunnel entrance on maps (after the first map)
that allows the player to traverse backwards to a previous map

so the tunnels are a game mechanic allowing the player to explore
different maps

previously visited maps will maintain any machines already
constructed on them but a player's inventory will only be updated
with more stuff made by machines that exist on the map the player is
currently visiting

- parasites will only spawn if there are parasite-owned or deactivated
machines on that map

so if a player has control of all machines on a map then parasites
will not spawn

however, since bird-machines lay new deactivated machines (where oil
exists) it is likely that deactivated machines will eventually appear
so if the player wants a parasite free map they need to keep an eye
on their mini-map's grey dots and on what bird machines are doing

parasites also only spawn if their spawn countdown = 0

- save file name is now: meta_automata_saved_game

and is currently saved in the user's home directory (Windows users
do have home directory)

F2 to save
F5 to load


Speak soon

Meta Automata :: game / Meta Automata prototype :: 0.10
« on: Thursday 2016-February-25 05:14:25 PM »
version number: 0.10 (prototype)


- tuning game variables, looking for the 'fun'

- player 'level', blue number amongst the other numbers on the right

- player levels up (wins) when they either:

- complete all missions
- control all machines, hack (if necessary) and activate
- dismantle all machines, hack (if necessary) and dismantle

in the event of all parasites dying or being killed, then the
player receives a bonus but does not level up

- placement cursors will switch off after 5 seconds of idle
so if you have a placement cursor but have not placed anything
within 5 seconds then the placement cursor will disappear

it will reappear when you press the appropriate key

placement cursors can be switched off at any time by pressing the
escape key

- minimap objects can be toggled on and off by pressing the M key


Feedback is very welcome

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.09
« on: Wednesday 2016-February-24 04:23:30 PM »
version number: 0.09 (prototype)

- everything can be sold:

- approach the shop
- open the inventory
- press tab to select an inventory item
- press left-control + return to sell the selected item

inventory pages and selected items are navigated with: [ ]
(square bracket keys)

- Tulip Coins are saved to the save file

- look up and look down (left and right shift keys) have been removed
this will be taken care of with mouse control (mouse control is not
yet implemented)


Feedback is very welcome.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.08
« on: Tuesday 2016-February-23 05:03:49 PM »
version number: 0.08 (prototype)


mended :: crash :: show inventory description, update inventory by adding
          or removing an item

mended: incorrect number of turrets when loading from save file

PART: remove cap on number of spawning parasites

mended: turrets weren't being damaged

- save to file player energy

- performance improvement

- battery blueprint, build battery :: press B key, navigate with: [, ]

- batteries are added to the inventory

  - parasite loot adds batteries to player's inventory
   activate a battery for extra energy:

   - I key for inventory
    - navigate with: [, ] to find the inventory page with a battery
   - press tab to highlight inventory items
   - navigate inventory items with: [, ]
   - select the battery
   - press: left-control and return (together)

- updated item desriptions

- loot does not automatically add to player's energy if the loot
  contains a battery, instead the battery is added to player's


Available from indieDB and

Feedback welcome.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.07
« on: Monday 2016-February-22 05:39:28 PM »
version number: 0.07 (prototype)


F2 - save game state
F5 - load game state

save file: homeDirectory/

- mended :: crash when loading from a save file

- mended :: inventory turret and fence counts were inaccurate when
loading from save file

- mended :: player was left hanging in the air if they were ontop
of a block when the parasites win

- mended :: after loading a saved game, flags were not displayed above machines

- save player location and rotation

- multiple repair robots were not moving


- deactivated and parasite owned machines appear as grey dots and are
always visible on the minmap

- player owned machines appear as orange dots

- repair robots appear as green dots


0.07 has been uploaded to indieDB and

Feedback welcome.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.06
« on: Sunday 2016-February-21 06:44:06 PM »
Uploaded a version that will save the game state.

F2: to save the game

F5: to load the saved game state

Currently, the saved file is:

/home directory/

It will be saved in the game directory eventually but for now it's saved in the user's home directory. Windows does have the concept of a home directory. Used forward slashes here simply because that's what I use but the game deals with file separators in a platform specific fashion.

It's a bit buggy. For example if you lay some fence posts, save the game state, close and reopen the game, then load the saved game state, the player ends up with an inventory full of fence posts plus those deployed by loading the the save file.

Also some item properties are not preserved, For example the repair robot's time-to-death is not saved but is reset when the save file is loaded.

Catch you tomorrow hopefully and feedback is always welcome.

Best regards.

PS. forgot to update README.TXT

Meta Automata :: game / Meta Automata prototype
« on: Saturday 2016-February-20 05:22:31 PM »
Spent today working on saving a game state and reopening it.

The game now does this pretty damn quickly now.

There's are a few more properties that need to be saved so I haven't uploaded a new version today.

I'll upload a version tomorrow that can save and reopen a game state.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.05
« on: Friday 2016-February-19 04:53:05 PM »
version number: 0.05 (prototype)


- buying and selling has been added

previously everything was free, now the player has to have the funds to
buy things

walk up to a shop (block with pink tulip flag)

press the E key

options for both buying and selling things will be displayed

- the amount of Tulip Coins a player has is displayed on right of the

currently the player is given 500 Tulip Coins to get started


New version uploaded to indieDB

Feedback is very welcome.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.04
« on: Thursday 2016-February-18 04:53:25 PM »
version number: 0.04 (prototype)


- inventory page number count was incorrect

- unplaced machines can be laid with the U key
  a placement cursor is displayed

  for this prototype the player is given 5 unplaced machines,
  otherwise they are awarded or built

- show unplaced machines in inventory

- when all turrets are deployed, the icon is removed from the
  inventory, same goes for fence posts

- turret options flicker

- bird machines will now only lay new machines where oil is or
  once was

- when a new level starts, including when the player loses, their
  energy storage is reset IF it's too low

- when a new level starts, IF the player does not have a repair
  robot then one is added

- player-win screen is displayed when all parasites are destroyed

- links are destroyed when enemies walk through them

- fences and links are destroyed if a machine is laid on top of them

- player owned machines always appear on the minimap


New version uploaded to indieDB

Feedback is very welcome.

Best regards

Meta Automata :: game / Meta Automata prototype :: 0.03
« on: Wednesday 2016-February-17 04:14:54 PM »
version number: 0.03 (prototype):

- player can win by owning all machines

- images are displayed when the player or parasites wins

- after upgrading a machine, machine options are displayed

- placement cursors (no longer) turned red in anticipation of a
bird-machine laying a machine which was confusing

in the future the bird-machine will re-check where they are
laying their machines or a newly laid machine might destroy
whatever else is occupying that space

- items are removed from player's inventory when a missions is

- if player has a mission but parasites win the level then that
mission is reset but other completed missions for that level are

- (added in 0.02) a red counter on the game GUI indicates how many
machines the parasites currently own

the black number to the left is the total number of machines
... which was inaccurate because it only showed the number of
un-owned machines; that has been corrected

- right bracket when inventory is displayed, allowed the user to
display an empty page; confusing so it's no longer possible to page
to an empty inventory page

- inventory page numbers are shown: 1 / 2


New version uploaded to: indieDB

Feedback is very welcome.

Best regards

Meta Automata :: game / Prototype updated
« on: Tuesday 2016-February-16 05:43:52 PM »
Version 0.02, second prototype of Meta Automata has just been uploaded.

Link posts are green when connected to a standalone machine.
Link posts have a redish colour if they are about to reseed.
Link posts spark when they spark a substation into life.

Parasites will win a level if they own all machines.


Created a bunch of videos that aren't as long-winded and random as my first 27 minute epic.

Videos and latest videos can be found on:

Meta Automata :: game / Prototype
« on: Friday 2016-February-12 12:28:44 PM »
For download, video and screen shots please see this page:

A 3D, 'resource domination' game.

The title of this post describes the current state of the game (February 2016). Game mechanics only. Objects that appear in the 3D environment are there simply to test mechanics, they wont be the finished geometries.

There are three ways to complete a level:
1. dominate all machines, the big brown blocks
2. kill all the parasites
3. complete all missions offered by that level's mission terminal, a block in the game

Machines can be configured to make different things for example, energy which is almost essential.

Parasites will spawn and attempt to own or destroy the machines. Once a parasite owns a machine the player will then have to hack it (hold H key) to get access. The number of parasites that spawn is dependent on the number of machines the parasites own.

The player can surround machines with fences which repel or destroy parasites. Fences require energy and the player has a limited number of them. Machines can be configured to make fences but machines use energy. More energy is used when parasites are zapped by fences.

The player requires permits to start a machine. The player is given a single permit for each type of machine controller when they start. Extra permits are currently awarded when missions are complete.

In order to configure multiple machines to, for example, generate energy, the player can link machines by pressing the L key. Blue links will be added to the environment. By placing many links close to each other the player can link another machine BUT that other machine must have the correct 'controller' mechanism. For example, if the player has configured a machine to generate energy, then pressing the L key will display a link placement cursor. Pressing the L key again will place a link into the game. A chain of links can be connected to another machine if the other machine is capable of being set to generate energy.

Machines can be dismantled by holding down the X key. Once dismantled the controllers from the dismantled machine will appear in the player's inventory. The controllers can be added to other machines to upgrade their capabilities.

Many things including controllers can be purchased in-game using the in-game currency: TulipCoins

TulipCoin is a tongue in cheek play on BitCoin. Tulips were once a valuable commodity.

The economy has not been implemented yet so the player can purchase things from the shop for free.

When a level is complete (killed all parasites, completed all missions or dominate all machines) a new level will start. Currently this means:
- all of the players configured machines remain
- more machines are added to the environment
- parasites start again, 4 are initially added to the game
- a player's repair robots are reborn so their life countdown starts again

General Discussion / Computer Game Specific Programming Language
« on: Sunday 2016-January-03 08:26:39 PM »

I found a video on Jonathan Blow's youtube channel:

it's called: A programming language for games

(Warning: Jonathan Blow youtube videos have an unexpected amount of
self promotion)

A programming language designed specifically for the computer game
industry is an interesting idea but after consideration,
quickly becomes brittle and impractical if not just pointless.

Here's a budding computer game developer's point of view.

Modern programming languages need an IDE

All modern programming languages have a collection of Integrated
Development Environments that speed up the process of software
development with that language.

These IDEs highlight typos and syntax errors. They have features to
speed up the creation of Graphical User Interfaces, where buttons and
check boxes, etc can be dragged and dropped and arranged without the
software developer typing a single line of text. IDE's have evolved
this way because industry required lots of software controlled by
Graphical User Interfaces.

A new computer-game-specific programming language, more than any other
type of programming language, will require an IDE for programming game
things that can be dragged and dropped and easily manipulated for efficient
computer game development but for the IDE and language to survive
an industry must adopt it.

Game Engines

Inside every computer game there is a piece of software that can be
referred to as the Game Engine. It's the game's brain. It refreshes
the computer screen, it displays all the pretty computer graphics, it
spawns enemies and other players and reacts to inputs such as the
keyboard, mouse or controller.

Computer game developers can create their own Game Engine or rent one
from people in the industry, such as: Unity3d and Unreal Engine

I use the term 'rent' because:

- the game developer never owns the Game Engine

- the game developer has to hand over a portion of every sale to the
  Game Engine people

Proprietary (rented) Game Engines have their own set of instructions
that give programmers access to the clever workings inside the Game
Engine. Collectively these instructions are called an API.

- rented Game Engines often come with their own programming
  language, built in, for game developers to use

- and they also allow the game developer to use other popular
  industry standard programming languages to access their API

The creation of their own programming language and the creation of an
API designed to be used by other popular programming languages does not
just happen, both take years to build. Years !!

A new computer-game-specific programming language would not work
with Unity3D or Unreal Engine until-after these game engine business
invested a huge amount of time and money to make it work with their API
but why would they when their game engines already work perfectly well
with their own and other industry standard programming languages?

The mortality of programming languages

New programming languages arrive and are forgotten at a surprising
rate; initially gaining brief enthusiasm but unless big businesses
(plural) adopt them they are left unmaintained and become useless.

Even when massive technology businesses adopt or invent new
programming languages, those businesses can't force developers to
stop using what they are already comfortable with.

All businesses are in 'it' for one reason: to make a profit

A new programming language will not be adopted by an industry unless
it solves or mends problems that are too costly or too time consuming
to be patched using the current crop of industry standards.

This makes the idea of creating a whole new industrial standard
programming language for a specific corner of the computer industry
ridiculous because there aren't any problems which the current crop of
industry standard programming languages suffer that prohibit the
rapid development of computer games.

In fact the opposite is true.

Object Oriented Programming

Object Oriented Programming does something quite amazing and fun, it
allows the programmer to think of software problems in terms of
physical objects or conceptual blocks.

For example a game character can be declared as a GameCharacter object
where attributes like strength and speed are all definable.

The fun part is that we can create a single BaseCharacter and then
build all other characters based on it. Good, bad and ugly game
characters will have their own features subtly changed but all will
inherit base features from the BaseCharacter class.

Further more WingedEnemies can be based on (extend) BaseEnemies which
in turn extend the BaseCharacter class. Same goes for FlyingFriendly
objects that also extend the BaseObject but have subtle differences
such as run, fly, fight, etc. This extending and branching from base
objects and subtly changing their gubbings is also known as:
polymorphism (worth looking up if you have the time)

From a game design perspective being able to conceptualise and program
game things in real world terms is a great benefit.

There are many Object Oriented programming languages in use and they
can all be used to make computer games.

Virtual Machine

Jonathan Blow dismisses the idea of a Virtual Machine presumably
because he perceives them as a dampener to a computer program's
ability to run speedily.

The game MineCraft uses the Java Virtual Machine. I point this out
because if speed really is an issue then MineCraft users could run
into performance problems any time now.

A benefit of a Virtual Machine is its security layer checks a computer
program before it runs, preventing it from doing something malicious.

Another benefit is that the game developer only has to write their program
once, it will then run on all computers that have that type of Virtual Machine
so a single program will run on Apple, Linux, Windows and even Unix
computers without the developer having to make any changes;
cross platform.

Cross platform obviously reduces the cost of development since only a
single version of the game ever needs to be maintained.


Jonathan Blow is an outspoken and influential voice in the Computer
Games Industry. His views carry weight but I don't think creating a
dedicated computer-game-specific programming language is a good idea.

I believe we already have programming languages that meet the
challenge of enabling game developers to rapidly build computer games.

Virtual Machines allow the game developer to write and maintain a
single software, knowing it will run cross platform.

Pages: 1 2 [3] 4 5 6