Sunday, 22 December 2013

My Game - Part 7 - (dev. log.) - design plans for Meemo's Planet

Yes, thanks to the GMC's (Game Makers Community's) help, I've decided on a name suggested by one of the fans to be "Meemo's Planet".

Then thanks to my good friend Nico Loubser whom helped me with conceptualising the game design specification better, I can now share my current thought in more detail where I think the game should go in this post. When there area alpha/beta/final keywords next to a paragraph heading it then means when I plan to implement the feature.

Please note that any of this can change at anytime, I will see if there are any wiki type addons for this blog, then it will be easier to keep an up to date design specification.

So here it is, be sure to let me know what you think?

Game Design Plans:
Meemo’s Planet:
Independent game developed by Morne Booysen, Boysano Indie Gaming
From August 2013.

Goal Idea:
Clean up the earth left behind by humanity.  Restore the earth and maybe have life return.
In the beginning the robot itself is also polluting the environment.  As a player improves the robot, and builds units to recycle things he starts seeing the earth becoming clean, and life slowly returns.

How to achieve this:
  • Clean up junk, recycle, craft into better items
  • Defeat monsters and bosses
  • Improve yourself by crafting and slotting better equipment
  • Build machines/tools to help you clean the earth

Biomes/Areas: (alpha)
Currently the game can already create randomised world maps based on a grid system, which then also easily allows for generating and interacting on these zones or areas in terms of creating specific plants / garbage / enemies / pollution levels /any objects…this creates a defined and characterised biome.


The Robot:
The players character in the game called Meemo.

Robot Abilities: (alpha)
  1. Collecting junk and cleaning:
This is mainly for collecting resources for crafting.
  1. Crafting:
Create new items to improve yourself and your base.
  1. Fighting:
Fight off enemies and loot their corpses for useful items.  A player can take on stronger enemies as you improve yourself. Stronger enemies will spawn depending on what player does in the game.

Robot consumables: (alpha)
  1. Oil:
Oil is used to lubricate the engine, wheels and gearbox.  Oil is used up when the player moves about.  It becomes unusable and would cause a spill if it is not recycled. Oil is in fact a pollutant so its use will be limited, until it can be replaced it will probably be more a quirky irritation.
  1. Power:
Power is supplied by batteries or later by other resources. The resource is not used up but is rather depleted in most cases.  A player must then replace the item or recycle it, by recharging it or using it in upgraded crafting.  (Maybe: Un-recycled items would have to be stored or discarded but this would cause environmental damage.)
Having fully charged power (batteries health bar) will restore physical health (hearts health bar).
Empty power will reduce oil and then battery (health bars) over time, and when physical health bar depleted the robot dies and drops its loot.
  1. Physical Health (Armour):
Armour is your only defense against physical damage.  Improving your armour will allow you to take more damage before you are destroyed.  Heavier armour might give you better protection but would in most cases be heavier so would cause you to use more power.  A force field would protect you even more but would consume power.

Robot Components: (Equipment major slots) (final)
1.                  Armour:
This is your main defense against attacks.  In the beginning it is physical armour like wood, metal, Kevlar, etc.  Later a power shield could protect you for a time until you run out of power or it gets destroyed.
2.                  Engine:
The engine is what gets you around and what powers your weapons and other on-board equipment.  It can be upgraded to be more efficient.  This uses oil to prevent engine failure. See Engine Upgrade for more detail.
3.                  Power source:
Batteries, solar, or nuclear, etc.
4.                  Weapon:
In the beginning this is a physical weapon that you hit an enemy with.  With upgrades come more powerful weapons that can be physical or energy weapons.   See Weapon Upgrade for more detail.  (some weapons is not effected against some enemies.  See Enemies for more detail.

Robot Engine Upgrade: (Equipment semi slots) (Final)
The engine is made up by different units.
·         Main engine unit
This is the main engine that supplies power to the wheels, weapons and other equipment.  A more powerful engine would result in more power to other equipment but it would need more power.
·         Oil filter
The engine, gearbox and wheels need oil to function.  Oil is used up but becomes unusable, and since it has speed (agility) impact it must be replaced eventually.   If the oil is not replaced or recycled it would cause a spill that damages the environment.  A better oil filter results in a longer time the oil can be used.
·         Gear box
A better gearbox will result in better engine efficiency and less need for oil.


Enemies: (alpha)
Enemies are mostly area dependent.  When the player moves to a new area (biome) to get new ingredients by exploration, recipes and to clean up the rest of the world, he is also faced by new enemies and challenges.
  • Junk monsters
Normal mobs hiding in piles of trash.
Type: Physical
Strength: Up to medium (depending on size)
Weakness: Physical damage
  • Oil enemies
  • Acid enemies
  • Electrical enemies

Weapon Upgrade (final)
  1. Physical weapons
Upgrade this to give more physical damage against certain enemies.
  1. Energy weapons
Some enemies are not affected by physical damage.  An energy weapon consumes a lot of power but is more effective against some enemies, but also more dangerous to others since it could charge instead of hurt the enemy if you use it wrongfully.
  1. Projectiles
Sometimes it’s better to stay away from enemies.  Projectile weapons might not be very accurate or cause a lot of damage but you stay out of harms way.


The Base:
Base Abilities: (beta)
The base components are crafted as normal and placed in a certain location a Player selects as his base. Note these machines needs to be crafted first. This can be for example:
  1. Storage Facility & Base Power generation (beta)
The base can collect energy and store it for later use.  This can be for example by solar or wind power.
  1. Recycle Facility (beta)
As the player uses resources he is actually also causing pollution to a certain extent.  Improving the recycle capability to reuse items such as batteries for example will eventually reduce this pollution completely.
  1. Research Center: (beta)
This computer accesses fragment from the internet left behind.  Because the data is so corrupt, it takes time for the computer compile files.  This is where a Player can get new recipes.

Base Power generation: (beta)
The purpose of this machine is to supply power to the base.  The more other machines there are the more power they would require.   Different types of power generation should be made available with each one upgrade-able.  Suggestions:
1.       Steam generation:
This is the first power unit you get.  It needs to be close to a water source?  This causes pollution so affects the player negatively.  Junk collected can be burned here so a player must collect junk to fuel this unit.
Level 1: Base unit that burns junk and cause pollution.
Level 2: Can use coal for more power generation, but more pollution.
Level 3: Carbon filter makes it pollute less.
2.       Nuclear:
If a nuclear source is available it can be used in this unit.  Last much longer than coal and once in a while generates a concentrated waste that has to be disposed of.
3.       Solar and wind:
This is the only unit that generates power and no pollution.  Is expensive and the power output is low.  Can be upgraded to be more efficient.
Risk: Maybe different power generation and pollution attracts certain mobs. (beta)

Recycle machine: (beta)
The purpose of the recycle machine is to recycle unwanted material into useful material and to make dangerous polluting waste material safe. The machine can be upgraded to be able to recycle more advanced material or recycle things more times and faster.  Upgrade level suggestion:
Level 1:  Normal junk i.e. unusable items collected while “cleaning” is made into blocks or crafting materials that can be used to build a base. Up-cycling…
Level 2:  Oil and batteries can be recycled, back to base components, or neutralised.
Level 3:  Maybe some shells (ranged weapons).
Level 4:  Nuclear waste management
Note:  This machine can be build early in the game but would take time to level up. 

Research Machine: (final – low priority, game focuses on experiential research instead of forced research)
The purpose of this machine is to give a player unique recipes.  The more the machine is upgraded the faster research will take place and the more advanced the recipes that can be found.  It is also could potentially help the player unlock recipes he/she has not yet figured out. Upgrade level suggestion:
Level 1:  Recipes for example armour, basic weapons, etc.
Level 2:  Recipes for Power and Base units.
Level 3:  Recipes for Advanced power and base units.  Base defense units.
Level 4:  Recipes for Robot helper units.
(NOTE: these recipes can still be implemented without the research machine in any case.)

Area classification / Difficulty scaling ideas: (Final)
What limits a player going from level to level?  Maybe a Pollution Level?  This can be an area which is so polluted or contaminated that the player receives damage when he enters the area.  He needs to upgrade his armour, wheels and/or shield to go into the area.  In the new area there will be stronger mobs and higher level loot which is required to build the higher level recipes.
  1. Areas pre-defined if fixed world size.
  2. If unlimited sandbox world, then distance from origin increases difficulty.
  3. If tower defense game style, it can be level wave based system.
  4. Combination of the top systems also possible.


Tuesday, 19 November 2013

The game: My Game Part 6 - (dev. log) : My games WIP topic

Hi Friend,
it has been a really productive month for me in terms of development on this game and exposure to the outside world. I decided to start a WIP project topic on the official game maker community forums, which has really showed a positive response from the community. It also is helping me significantly to get more people testing my game and help me find bugs to improve it by their suggestions. For all people helping me out there, I'm really grateful! 

Also this topic post is the reason I found my first sound engineer, whom was so impressed by the project that he was willing to work on it for free until the day it is published...really nice when success breeds success. So I think the model of proving to people first that you are serious with a demo, and progress is the way to go instead of just spamming the internet with team requests of your idea. Ideas float in the air, so make sure to start as soon possible to make your ideas into real products or demos.

So yeah, now the game demo sounds are also improving, with a rather cool retro pew pew atmosphere.

I have done so much in terms of the game development that it will be easier for you to follow my WIP topic, where I will also maintain the latest demo for the time being. 
Here is that link now:

Will you please go try out the latest demo there, the inventory system is working so much better now and the crafting chest inventory also works...as soon as my game engine runs smooth with no bugs, I need to add light effects for day/night cycle and then can focus more on game goals and giving a sense of direction for the player...

On a personal note, I joined an awesome shared work space, where freelancers and business start-ups are joining and sharing the same office space. It is really exciting and productive, and get me to a schedule to focus more. So let us hope this improves the productivity even more...I do recommend this to anyone rather than working alone from home.

Thanks for reading this, I appreciate your time and feedback!

Friday, 8 November 2013

My Game - Concept Art pieces

This is just to make it easier to show on other forums via a direct url link:
Meemo First Concept art for Idle stand, in same retro style as the game...


Meemo Concept animated in the game, in correct style (i think).


A screen capture of when game room starts, with crafting chest working

Thursday, 7 November 2013

The game: My Game Part 5 - (dev. log) : 1st Game Demo

I finally got the game to a very basic point where you can play test some of the first features,
well at least it beats a video and is still smaller in size, ha ha!

Here is a Dropbox link to the first ever game demo, of this game I'm making in 2013.

MyGame Demo1

Any positive or constructive criticism is welcome and I will try to answer all your questions,
but please be respectful and refrain from overly negative criticism since this is still very early in development and pre-pre-alpha. Yes that means this is a work in progress (WIP). Hmm maybe time to create a WIP topic on the game maker community forums at GMC.

I fixed too many little bugs and things to mention, so here is just a copy and past of what is on my todo list:

Game Name: ???????
Genre: Robot Survival with Crafting as main mechanic!

STUFF to remove at game publish:
Cheats, etc
+ oControl STEP event, test
+ all TEST scripts, first set TEST constant = 0 to switch off.
+ any dead commented code clutter
+ use more scripts
+ optimise code, remove nested loops and make individual tests

CONTROLS:
MOUSE - control whole game with mouse!!!
Maybe shortcut selection keys for Inventory, just to move around.
Like <C> opens and closes Crafting.
F12 - restart whole game
Esc - exit whole game

+ NEXT STEP:
+ COMBAT:
- Add Player ATTACK animation (swipe, something basic for now, can add more layers later)
- Add Player ACTION animation  (small swipe when looting, crafting, etc.)
- Add sndEnemyHurt
- Add sndEnemyDie
- Add check to spawn enemies, when few left, check in oControlCycles
+ HUD display:
- Add indication when dmg/health or increase/decrease affects Player gPwr/gOil/gHP
+ Add enemies:
- Add oEnemy "Hungry Hoover" and "Radioactive Snail"
+ Add world map
+ Add character equipment items, and slot system
+ Add oEnemy Boss like, or mini-Boss.

+ BUGS:
- MEDIUM: Crafting: If inventory full, then oProduct lost (drop it to ground!)
- LOW : at game start gSelected = -1; so dragging craftbox dissapears, until first item looted.

+ IMPROVEMENTS:
- Consider making more sprites for sHeart and sOil and sBattery on HUD to show more smaller changes in Player stats

+ MECHANICS:
A few things, which is still a must for basic engine mechanics:
1. Place-able objects made from crafting. So you can place a new crafting box, or chest or machine on the game floor, etc.
5. Finish Crafting Recipe and Chest for materials sections, which currently is not crucial, that is why the empty grey placeholders are there.

++Crafting:
- Player begins with craft box in his inventory (which allows C-button to craft anywhere) {to close C again, or right-click}
- if Player drops box, then he can only craft near it in that zone


++ Create Recipe engine (BASIC) but streamlined.
- Player upgrade slots (limited slots) for batteries and solar panels, tools, addons etc.
- Scrapping of items for basic mats
- Add clouds in same block pixel style and alpha transparent
- Add day/night cycle easily with alarms which changes GAME_STATES, animations! Light effects via more surfaces

+ FEATUREs:
- Tooltip bubble could also auto adjust in size maybe in y-direction, if required, but not yet.
-  Recipes only work on specific spot or mats placement on craft table!! Lower priority than content now.
- Crafting: Allow to keep stack on Mouse (visible) and add multiple items to Craft table or other places (maybe with right click?) instead of 1 by 1.
- RECODE: Crafting: Recipes: Available Recipe Symbols (Case sensitive) (etc. BUT RATHER RECODE TO TAKE STRINGS of ANY length)

++ ADD Mats & Craft Items:
+++ Mats:
- Wood / Cans / Screws /
++++ Speudo Mats:

+++ TOOLS:
- Metal: Screwdriver (rod + pipe)

+++ POWER:
- Solar Panel


HOW TO PLAY:
Use <mouse left-click> to travel and select items
<mouse left-click HOLD> to drag items, and release to drop


GENRE:
Survival, crafting game

PLOT:
Wall-e

Mechanics:
SURVIVE!
fun?
different enemy puzzles?

Constraints:
- 2D art Pixelated
- Fixed world map size (doesnt grow like minecraft)
- Flat World
- Single Player
- No seasons, only Day and Night like Minecraft
- Alpha = 1x character player
- Beta = 3x character players



Thursday, 31 October 2013

The game: My Game Part 4 - (dev. log)

Hi Friends,
I finally got around to do my first video of this game: my robot survival indie game which you can see below...

The game is not nearly where I hoped it would be already, but that said it is really rewarding to see this video myself and that I have some progress to show you today! There is currently only 1 enemy, more to come...

Please view it and leave some comments and thought you have on the game and where you think it should go to make it fun, and maybe different from existing games, after you watch this video. My apologies for poor video sound quality, this is my first ever video I make online also!

With no further ado...

My next steps planned, include:
+ All metals restore physical health += Hearts
- New Recipe: 1xZink + 1xCopper = 1xAlloy
- Copper +5% / Zink +10% / Alloy + 20%
- Add Zink / Copper as drops to oEnemy = oRazorMole
- Add oEnemy OilSquid and AcidSquid!!!
+ Add enemies:
- OilSquid - drops Oil for restoring Oil
- AcidSquid - drops Acid, for making and charging batteries to full.

In the actual game, there wont be so many full batteries and acid, etc drops lying about most will have to be scavenged from other robot enemies and crafted... 

Please leave your impressions now in the comments of this indie game, made with GameMaker Studio, by me aka Boysano.

Thanks for watching!

Edit: Hmm I see there are many other video with games called RoboCraft...so if you can help me think of a better name that is unused for my game please let me know in the comments as well? This is also why I edited all my articles and removed the RoboCraft name, until I find a unique name which is also fitting.

Thursday, 17 October 2013

The game: My Game Part 3 - (dev. log)

I didn't get much time to do a proper video demo, which I promise will come some time soon; when I feel the timing works, but I will at least give you some screenshots so you can better understand my progress...

Figure 1: Basic game view, with Meemo in middle of screen.

From fig.1 you can see the basic retro 2D graphics, which is very pixelated, but at least I can produce some of my own art to keep the project going at a decent pace. Since I have not yet found an affordable artist, and also since I realised the industry is such that you need to prove your game first before people want to help. Funny enough, then people may even do it free if their interested. I am lucky though that the robot art (Meemo) was done for free since the artist decided to rather start his own game now also. Which was cool of him! So 90% of the rest of the graphics I did myself, and as I go along I'm redoing all the stuff or using public domain assets in order to keep it legal and call this my own game.

Then I took the extra week to trash out many bugs, so many, and now I can say crafting and the whole current game is bug-less, yay for Doom! That includes collision checking with player movement I finally added successfully as well. Meemo will move to the goal the mouse sets with left-click, avoiding solid objects. Also looting of world objects, to gather or farm resources for crafting materials is proximity based and looks and feel better. I've added a basic DAY/NIGHT timer - still not sure if I will fully implement this though.

Figure 2: Preview of crafting Table pane (working).

I've also added the Hearts (physical damage indicator) and integrated the oil drops with movement and robot speed, as well as now the robot battery power auto depletes depending on efficiency...so later it is easy to upgrade if needed. 

So what is next?

A few things, which is still a must for basic engine mechanics:
  1. Place-able objects made from crafting. So you can place a new crafting box, or chest or machine on the game floor, etc.
  2. Add materials in game to scavenge to replenish battery power and oil, basic survival needs. 
  3. Add the first enemy robot.
  4. Re-Theme complete game content to fit fallout/world in waste setting, with almost no living or growing fauna or flora...
  5. Finish Crafting Recipe and Chest for materials sections, which currently is not crucial, thats why the empty grey placeholders are there.


Thanks to my friend, Nico, whom visited and gave me some good ideas and input: I will probably consider making the big tree or something a home base, which will be attacked in waves by enemies. Then you need to defend it, as you progress with crafting. Crafting from mats from mobs and exploring and scavenging. Nico had a cool concept for enemies, or boss enemies, which requires the player to figure out how to defeat them in a specific way. Almost like a puzzle to win battles or fights. I like it, will obviously require much more work if each one is very different from other mobs...but lets see where we get in this year.

Overall I'm really happy with my progress, I also wrote out a whole game spec for the graphics requirements, or art images and sizes. So if any of you pixel artists are interested in helping ( for free) I can share it with you via email. Just send me the request. At the moment the first version (alpha) will be non-commercial. If I'm so lucky to get a following I will ask for support in form of art, and donations. Then if still people want more and I have time left, I can release a paid version with expansion content or something. Don't hold me to this, just ideas floating around.

Thanks for reading, please leave a comment if you have any input or ideas now that you have seen some screenshots. In time and when I manage to get Camtasia studio to make/record video's I will do so of the game...



Tuesday, 24 September 2013

The game: My Game Part 2 - (dev. log)

Last time I said I will discuss my plan for crafting and permanent death of the character considerations; like the game Don't Starve has, but I should start with my current development progress...

Game development progress:
I'm really excited about the fact that I managed to code a working Inventory system with drag and drop. You can drop items to the world, it manages stack size limits and if your Inventory is full it will leave the items on the ground. On top of this (after re-coding 3 times in GameMaker Studio) I figured out how to make it all work and interactive using the draw_gui() event instead of the normal draw() event, which is just awesome. Now my GUI (graphical user interface) or HUD (human user display) of the Inventory and player robot power source and oil source moves with the view window as the player moves, without any "jitters"!! Something it seems a lot of people on the GMC forums also struggle with. Then, also the robot player (Meemo) has floating text comments he makes for actions, as well as I added a tool-tip bubble for giving the player information on items in the Inventory if he hovers over that with the mouse. The mouse is used as a global movement and actions control, even though I do have arrow keys for testing this game will only use the custom mouse for its main control actions. Since it will be a relatively slow game (adventure) pace it should not be an issue or too overwhelming using just a mouse for all the controls. I believe the casual Gamer should enjoy it.

I also managed to squash a few bugs, or all that I know if...trying to keep it polished and clean as I go before I make the mistake of adding to many features too fast on weak or sloppy code base.

In other news:
My new artist just completed the first movement sprites on Meemo and then quit! since he over lanced his free. So I'm on the lookout yet again for a low pixel count pixel artists, for 32px by 32px spritesheets. If you are interested in this game idea, please email me at mornebooysen@gmail.com with subject: "Robocraft - pixel artist".

Whats next:
Crafting - oh yes I think all crafting should be done in one display or popup and not over multiple screens. As well as the crafting itself will be like an achievement system by allowing you to memorize recipes as soon as you first craft them to unlock it. Then in future you do not have to remember it, but just select the recipe to see an image low alpha overlay on your crafting table of what to place on it to craft it again. It will work without having to select crafting recipes also obviously. A little automation which I think will make the game more fun and easier to play, than say Minecraft's method where you always have to remember it.


Thoughts:
Why I think perma-death is punishing players. I think it is a mechanism that should be part of a game's difficulty setting and not permanent main game mechanic since it is very punishing and alienates so many players from experiencing full game content. There are so many way's to reward correct game play and to make cost of not "surviving" high but not kill all game progress like in Don't Starve game. Perma-death can still be there for bragging rights! So in my game I will probably let you only lose stats or upgrades, if you lose specific power levels in your robot. See higher tier machines or and upgrades will require more power and thus also better power sources.

Next time I will give you a screenshot of the pre-pre-alpha game, remember then I don't have a graphics artist. Hmm maybe a video will work better to display the mechanics I have complete. It is a bit early still to show a tech demo...lets see how it goes.

If you read this, I thank you and please do leave a comment or +1 google like so I can have a bit of encouragement.

Regards,
Boysano