May 2012 challenge: “Mad Science”
Richard James - Lab Escape Day 1
Posted by RichardJames on 2012/05/06 12:23
Looked at the theme and decided to do a top down action puzzler game. You are a mad scientists creation and are trying to escape the laboratory. Can you avoid the obstacles and solve the puzzles in order to gain your freedom?
- Built some framework for code
- Decided on screen resolution and tile sizes
- Penciled some sprites
- Looked at some puzzle aspects
- Investigated configuration files and level formats
4X - Planning and more planning
Posted by richard on 2012/05/06 12:13
As hinted at by the title of our entry we're doing a 4X game.
Not the beer. That there is a dead herring.
We spent most of today fleshing out some plans we already had for the game. The data model got some initial love and is settling down. The interface between client and server is forming. The user interface ... well, I'm using Kivy this time around so I'm figuring out my way around some of its interesting implementation. There's some neat ideas in there...
Not the beer. That there is a dead herring.
We spent most of today fleshing out some plans we already had for the game. The data model got some initial love and is settling down. The interface between client and server is forming. The user interface ... well, I'm using Kivy this time around so I'm figuring out my way around some of its interesting implementation. There's some neat ideas in there...
The Cure - Day 1: Success!
Posted by ChipX86 on 2012/05/06 11:42
I can't adequately put into words how much I've been looking forward to PyWeek this year. I was so excited about both the Mad Science and Secret Lair choices that I couldn't decide which to even vote for. I think, though, that this will turn out quite well.
This is my second PyWeek, and I learned a lot from the last one on what to do and what not to do. So far, I think I've had a pretty strong start.
My game is named "The Cure." Without going into too much of the plot, my game is about an unexpected outbreak resulting from a promising cancer cure. It's caused people to go out of their minds as they hallucinate and attack whoever wanders by. You're the scientist who worked on the new cancer drug, and it's you vs. the world now.
It's an overhead-style game, making use of variations of the First Seed Material graphics sets.
So far, I have a working game engine with camera controls, basic animation, level loading, a custom level editor, and very rough AI.
I can't believe how fast today has gone, but it's been a great start. I'm really excited for tomorrow :D
Once screenshots are unbroken on pyweek.org, I'll put something up.
This is my second PyWeek, and I learned a lot from the last one on what to do and what not to do. So far, I think I've had a pretty strong start.
My game is named "The Cure." Without going into too much of the plot, my game is about an unexpected outbreak resulting from a promising cancer cure. It's caused people to go out of their minds as they hallucinate and attack whoever wanders by. You're the scientist who worked on the new cancer drug, and it's you vs. the world now.
It's an overhead-style game, making use of variations of the First Seed Material graphics sets.
So far, I have a working game engine with camera controls, basic animation, level loading, a custom level editor, and very rough AI.
I can't believe how fast today has gone, but it's been a great start. I'm really excited for tomorrow :D
Once screenshots are unbroken on pyweek.org, I'll put something up.
M.A.D. Science - Day One - New idea
Posted by BlueDragon on 2012/05/06 09:27
This morning I woke up with a new idea!
The previous one was a vague idea about making some weird species escape from the lab of a mad scientist - those specimen would move on their own but you could somehow provide hints to help them find the way across a maze or some kind of difficult terrain.
The new idea comes from the fact that as Ernie pointed out, MAD can also stand for Mutual Assured Destruction.
So this is the incipit of my game:
"It's 2099 and the world is on the edge of a new World War. Nations strive for control of the last resources remaining on Earth. However, everybody knows that fighting an all out war with super-nuclear, plasma and graviton bombs would only bring one obvious outcome: mutual assured destruction (M.A.D).
Thus, War will be fought by single robots - each nation having its champion fighting for her.
Robots fight on their own, without external guidance, powered by artificial neural networks.
No human involved in fighting, no human will be hurt... only robots.
These robots are known as M.A.D. Robots.
As the leading scientist in your country, you will have to design and assemble the most clever and powerful robot and beat all the rest."
The game will let you design your own robot, by assembling various parts, e.g. sensors, guns, movement parts (e.g. legs or wheels) and so on.
One core feature of the game is that once you design your robot, it will fight on its own.
The robot will really have an artificial neural network deciding its action - training the neural network and deciding some its properties will be part of the game.
Every fight is 1 country vs 1 country (1 robot vs 1 robot) on a best of 5: if you win 3 times on 5 you conquer that country, earning resources.
More resources means you can build better parts for your robot, including better neural networks.
-------
So far the idea looks good (to me) but there are going to be a few challenges:
- having the robot fight on its own could be boring, especially if it fights badly
While I'm absolutely newb at graphics in general, I will try to include as many special effects as possible to make the battle entertaining.
- it could turn out to be impossible to train the neural network to fight in a nice way
- training neural networks can easily involve a lot of processing power. Having to wait 20 minutes with cpu @ 100% before your robot is trained and ready to fight would be no good.
-----
Enough talking, let's now dive into some code.
Oh, and I just started Chronolapse ( http://keeyai.com/projects-and-releases/chronolapse/ )
The previous one was a vague idea about making some weird species escape from the lab of a mad scientist - those specimen would move on their own but you could somehow provide hints to help them find the way across a maze or some kind of difficult terrain.
The new idea comes from the fact that as Ernie pointed out, MAD can also stand for Mutual Assured Destruction.
So this is the incipit of my game:
"It's 2099 and the world is on the edge of a new World War. Nations strive for control of the last resources remaining on Earth. However, everybody knows that fighting an all out war with super-nuclear, plasma and graviton bombs would only bring one obvious outcome: mutual assured destruction (M.A.D).
Thus, War will be fought by single robots - each nation having its champion fighting for her.
Robots fight on their own, without external guidance, powered by artificial neural networks.
No human involved in fighting, no human will be hurt... only robots.
These robots are known as M.A.D. Robots.
As the leading scientist in your country, you will have to design and assemble the most clever and powerful robot and beat all the rest."
The game will let you design your own robot, by assembling various parts, e.g. sensors, guns, movement parts (e.g. legs or wheels) and so on.
One core feature of the game is that once you design your robot, it will fight on its own.
The robot will really have an artificial neural network deciding its action - training the neural network and deciding some its properties will be part of the game.
Every fight is 1 country vs 1 country (1 robot vs 1 robot) on a best of 5: if you win 3 times on 5 you conquer that country, earning resources.
More resources means you can build better parts for your robot, including better neural networks.
-------
So far the idea looks good (to me) but there are going to be a few challenges:
- having the robot fight on its own could be boring, especially if it fights badly
While I'm absolutely newb at graphics in general, I will try to include as many special effects as possible to make the battle entertaining.
- it could turn out to be impossible to train the neural network to fight in a nice way
- training neural networks can easily involve a lot of processing power. Having to wait 20 minutes with cpu @ 100% before your robot is trained and ready to fight would be no good.
-----
Enough talking, let's now dive into some code.
Oh, and I just started Chronolapse ( http://keeyai.com/projects-and-releases/chronolapse/ )
Ecliss Entertainment - Ethical Differences - Day 1
Posted by DOZO on 2012/05/06 07:56
I'll be cross-posting these journals to both my own blog, which badly needs the content, and the PyWeek web site.
I was busy most of the evening, so I didn't plan on getting much done tonight after the announcement - just some basic planning, or in other words, the content of this blog post. As the small number of themes in the voting this time gave me a chance to come up with some ideas ahead of time, I already had the essence of a game well in mind. I've been playing an online card game quite a bit lately - though I'd rather not mention which one - and I thought mad science would express itself perfectly in a similar strategy game where one constructs 'cards', or rather machines, on the fly. Perhaps you'll recognize the inspiration, or perhaps I'll put enough of a spin on things to make it gentlemanly theft, not boorish borrowing.
The game will take place in a series of rounds in which both players construct machines beforehand and place them upon their respective fields. Here's a mockup of the field layout:
Machines can be placed in slots. Slots Alpha and Beta are the front line and will protect the slots behind them from being directly targeted, while Slots Delta, Gamma and Epsilon are more secure but have the disadvantage of having to pass power through to Alpha and Beta. The goal of the game is to disable the other player's generator.
The effectiveness of machines is limited by <b>power flow</b>. In addition to all all of one's machines being limited by the total sum of power the generator can produce, individual machines are limited by the power supply and demand of their components.
Each machine is built upon a base, which draws a small amount of power itself and determines the speed, power supply, and lifetime of that machine. The speed determines the order in which machines take effect during a round, the power supply limits the components that can be attached, and the lifetime determines how many rounds it will last if not destroyed.
Example bases are:
N0F1-NG Special Component Housing - Power Draw 1, Speed 5, Lifetime Unlimited, Power Supply 5
1SHOT Temporary Mount Point - Power Draw 0, Speed 10, Lifetime 1, Power Supply 3
HVDU-T Advanced Frame - Power Draw 1, Speed 2, Lifetime Unlimited, Power Supply 7
EC0 High-Efficiency Chassis - Power Draw 0, Speed 4, Lifetime Unlimited, Power Supply 4
Components may fall into the categories of attack, defense or utility and determine the effect(s) of a machine. A defense component is all but necessary, as without one a machine will be destroyed if it takes any damage whatsoever. Some example components are:
Z4PPR High-Energy Laser - Power Draw 2. Deals 3 damage to a machine in an opposite enemy Slot.
SPRKR Tesla Coil - Power Draw 4. Deals 1 damage to a machine in a random enemy Slot.
BR1CK Armor Plating - Power Draw 0. Absorbs 6 damage throughout its existence.
A3GIS Shield Generator - Power Draw 1. Absorbs 4 damage; capacity regenerates after every round.
H4LT EMP Emitter - Power Draw 3. Prevents a machine in an opposing enemy Slot from acting this round.
3RS Salvager - Power Draw 2. Sends a component from the junkyard back to your components bin.
To explain the above, in typical card game terms, the components bin is your deck- where you draw from each turn to keep your hand full- and the junkyard is your graveyard- where parts of machines go after they are destroyed. I'm thinking hand size will be 10 and the total components available to you will be 60. Still considering whether to have bases and components be drawn separately, so that you always have a base when you need one - I'll probably playtest both before deciding.
I think that's most of the basic gameplay laid out. I'm going to tentatively call the game "Ethical Differences", and have a story in mind inspired by Stanislaw Lem's The Cyberiad, but for this story is definitely way down there at "if I have time to spare" priority.
I'll probably go ahead and start prototyping tomorrow - I was planning to tackle art and music beforehand, but this would be playable enough even with crude placeholders, so there's no need to work on aesthetics first. I guess I'll be using Python 2.7 and PyGame so that nobody has any trouble running my entry. I wanted to be on the cutting edge with pysfml2, but I can't even get it to function on Windows.
Good luck with your own games!
I was busy most of the evening, so I didn't plan on getting much done tonight after the announcement - just some basic planning, or in other words, the content of this blog post. As the small number of themes in the voting this time gave me a chance to come up with some ideas ahead of time, I already had the essence of a game well in mind. I've been playing an online card game quite a bit lately - though I'd rather not mention which one - and I thought mad science would express itself perfectly in a similar strategy game where one constructs 'cards', or rather machines, on the fly. Perhaps you'll recognize the inspiration, or perhaps I'll put enough of a spin on things to make it gentlemanly theft, not boorish borrowing.
The game will take place in a series of rounds in which both players construct machines beforehand and place them upon their respective fields. Here's a mockup of the field layout:
Machines can be placed in slots. Slots Alpha and Beta are the front line and will protect the slots behind them from being directly targeted, while Slots Delta, Gamma and Epsilon are more secure but have the disadvantage of having to pass power through to Alpha and Beta. The goal of the game is to disable the other player's generator.
The effectiveness of machines is limited by <b>power flow</b>. In addition to all all of one's machines being limited by the total sum of power the generator can produce, individual machines are limited by the power supply and demand of their components.
Each machine is built upon a base, which draws a small amount of power itself and determines the speed, power supply, and lifetime of that machine. The speed determines the order in which machines take effect during a round, the power supply limits the components that can be attached, and the lifetime determines how many rounds it will last if not destroyed.
Example bases are:
N0F1-NG Special Component Housing - Power Draw 1, Speed 5, Lifetime Unlimited, Power Supply 5
1SHOT Temporary Mount Point - Power Draw 0, Speed 10, Lifetime 1, Power Supply 3
HVDU-T Advanced Frame - Power Draw 1, Speed 2, Lifetime Unlimited, Power Supply 7
EC0 High-Efficiency Chassis - Power Draw 0, Speed 4, Lifetime Unlimited, Power Supply 4
Components may fall into the categories of attack, defense or utility and determine the effect(s) of a machine. A defense component is all but necessary, as without one a machine will be destroyed if it takes any damage whatsoever. Some example components are:
Z4PPR High-Energy Laser - Power Draw 2. Deals 3 damage to a machine in an opposite enemy Slot.
SPRKR Tesla Coil - Power Draw 4. Deals 1 damage to a machine in a random enemy Slot.
BR1CK Armor Plating - Power Draw 0. Absorbs 6 damage throughout its existence.
A3GIS Shield Generator - Power Draw 1. Absorbs 4 damage; capacity regenerates after every round.
H4LT EMP Emitter - Power Draw 3. Prevents a machine in an opposing enemy Slot from acting this round.
3RS Salvager - Power Draw 2. Sends a component from the junkyard back to your components bin.
To explain the above, in typical card game terms, the components bin is your deck- where you draw from each turn to keep your hand full- and the junkyard is your graveyard- where parts of machines go after they are destroyed. I'm thinking hand size will be 10 and the total components available to you will be 60. Still considering whether to have bases and components be drawn separately, so that you always have a base when you need one - I'll probably playtest both before deciding.
I think that's most of the basic gameplay laid out. I'm going to tentatively call the game "Ethical Differences", and have a story in mind inspired by Stanislaw Lem's The Cyberiad, but for this story is definitely way down there at "if I have time to spare" priority.
I'll probably go ahead and start prototyping tomorrow - I was planning to tackle art and music beforehand, but this would be playable enough even with crude placeholders, so there's no need to work on aesthetics first. I guess I'll be using Python 2.7 and PyGame so that nobody has any trouble running my entry. I wanted to be on the cutting edge with pysfml2, but I can't even get it to function on Windows.
Good luck with your own games!
Master47 - A rough game idea for "Mad Science"
Posted by Master47 on 2012/05/06 07:12
GAME IDEAS
The mad scientist has to carry different test tubes to a huge bowl to mix all things together
into a nice mess.
There are many different types ot test tubes and also they contain different liquids and
subtances.
Some of them contain substances that make the glass REALLY HOT, other make it REALLY COLD.
The colours of these substances are as follows:
RED
YELLOW
BLUE
GREEN
PURPLE
BROWN
BLACK
Now, a mad scientist, especially this one, has so many ideas in his head, that come and go, this
is obivous.
He is mad about trying out different amounts of substances and mixing them all together to see
the output of his so beautiful work.
And that is the exact problem. An idea of a _receipe_ comes and goes, because the scientist has
so many thoughts.
GAMEPLAY:
The scientist has an idea of a receipe to try:
RED 200ml
BLUE 100ml
GREEN 500ml
This is a recipe. The user now has to mix these things together. His tasks is to get the correct
amounts of each liquid or substance and pour it into the big mixing bowl.
If successful, he gets points, other, he doesn't get any.
The mad scientist has to carry different test tubes to a huge bowl to mix all things together
into a nice mess.
There are many different types ot test tubes and also they contain different liquids and
subtances.
Some of them contain substances that make the glass REALLY HOT, other make it REALLY COLD.
The colours of these substances are as follows:
RED
YELLOW
BLUE
GREEN
PURPLE
BROWN
BLACK
Now, a mad scientist, especially this one, has so many ideas in his head, that come and go, this
is obivous.
He is mad about trying out different amounts of substances and mixing them all together to see
the output of his so beautiful work.
And that is the exact problem. An idea of a _receipe_ comes and goes, because the scientist has
so many thoughts.
GAMEPLAY:
The scientist has an idea of a receipe to try:
RED 200ml
BLUE 100ml
GREEN 500ml
This is a recipe. The user now has to mix these things together. His tasks is to get the correct
amounts of each liquid or substance and pour it into the big mixing bowl.
If successful, he gets points, other, he doesn't get any.
Master47 - Pytweek - Day 1
Posted by Master47 on 2012/05/06 06:53
I just came home at 23:30 from my grandparents yesterday. I was really excited about Pyweek and could not wait and stay up for the relevation of the theme of this Pyweek. At 1 o' clock during the night I checked this site and "uhhh"... disappointment.
Then I knew why I had to wait another hour: "In Germany, we have the MESZ!" That means UTC + 2 hours.
So I had to stay awake another hour. So I read a book and listened to some music while waiting. 3 minutes before 02:00 I refreshed the this page quite often ( sorry! ). I just couldn't wait for the theme relevation.
It is 02:00...'ctrl + r'...it is "Mad Science".
And with the theme chosen, I could happily go to sleep to think about game ideas.
Then I knew why I had to wait another hour: "In Germany, we have the MESZ!" That means UTC + 2 hours.
So I had to stay awake another hour. So I read a book and listened to some music while waiting. 3 minutes before 02:00 I refreshed the this page quite often ( sorry! ). I just couldn't wait for the theme relevation.
It is 02:00...'ctrl + r'...it is "Mad Science".
And with the theme chosen, I could happily go to sleep to think about game ideas.
Eihli's PyWeek 14 Solo Entry - Day 1 progress and thoughts
Posted by eihli on 2012/05/06 06:17
I started off sketching ideas for about 30 minutes and tried to organize what objects I'd have and how everything would map out on screen.
The storyline is you are a mad scientist who's Frankenstein experiments have backfired. Now you have to combine ingredients to throw at your creations to defend yourself and your lab.
Random ingredients will pop up on the lab table above (in front of) your character. The effect of the ingredients depends on what you pick up. You can adjust the range that you throw them.
I spent about an hour playing around with py2exe, pygame2exe, and the skellington-2.3 package. I probably should have spent more time messing with those things before the competition started. Had other more interesting projects on my plate though.
I am using a lot of the code from the example games that shipped with pygame as a base for building from. I wouldn't have been able to get as far with the sprites as I've gotten if I had just been reading the pygame docs.
I copied the sprite layout from the aliens game from the pygame examples.
Spent a couple hours trying to figure out why my background sprites were getting drawn over my foreground sprites on occasion.
What you see below is a 7x7 grid of sprites. The ingredient affects will apply to those sprites and affect any zombies that are colliding with that grid sprite.
Ok that's enough back to coding.
The storyline is you are a mad scientist who's Frankenstein experiments have backfired. Now you have to combine ingredients to throw at your creations to defend yourself and your lab.
Random ingredients will pop up on the lab table above (in front of) your character. The effect of the ingredients depends on what you pick up. You can adjust the range that you throw them.
I spent about an hour playing around with py2exe, pygame2exe, and the skellington-2.3 package. I probably should have spent more time messing with those things before the competition started. Had other more interesting projects on my plate though.
I am using a lot of the code from the example games that shipped with pygame as a base for building from. I wouldn't have been able to get as far with the sprites as I've gotten if I had just been reading the pygame docs.
I copied the sprite layout from the aliens game from the pygame examples.
Spent a couple hours trying to figure out why my background sprites were getting drawn over my foreground sprites on occasion.
What you see below is a 7x7 grid of sprites. The ingredient affects will apply to those sprites and affect any zombies that are colliding with that grid sprite.
Ok that's enough back to coding.
m. a. d. - Map Projections and more Bugreports
Posted by Ernie on 2012/05/06 05:40
Now i drew the map.
I'm using Peirce quincuncial projection because it looked interesting. Objectively it's a bad choice because distances are very improper but however it's not important because it wont be realistic either way.
I'm getting Server-Error 500 messages again when i'm trying to upload something. It was only fixed for a short period of time. Would it help if i change my entry title to something normal? Sorry for the inconveniences i put you in by using weird letters, Richard! ;-)
Also i apologize for those misplaced images in my first diary entry. My browser has some SVG bugs so that i didn't saw them.
I'm using Peirce quincuncial projection because it looked interesting. Objectively it's a bad choice because distances are very improper but however it's not important because it wont be realistic either way.
I'm getting Server-Error 500 messages again when i'm trying to upload something. It was only fixed for a short period of time. Would it help if i change my entry title to something normal? Sorry for the inconveniences i put you in by using weird letters, Richard! ;-)
Also i apologize for those misplaced images in my first diary entry. My browser has some SVG bugs so that i didn't saw them.
Zombie Science! - A new idea and some progress.
Posted by Keon on 2012/05/06 05:29
The new idea is similar to the pole one in that you return to a place where you where humiliated in your childhood and get revenge, only now it is basketball. So, day 1 I have some nice working walking around. Since screenshots are broken, I put the image up here.