What is the funniest camouflage combination?
#UPDATE: about 10% of camouflages are not showed even if selected. Please replace the configuration file myframes.py with this one: http://pastebin.com/YAhBWHcp (thanks to cyhawk) in order to make all of them visible.----------------
So this is our final submission for this pyweek.
I spent all the day to solve a problem with the shop screen, and still didn't find a solution...
As you will see, the game needs still a lot of improvements, but at least it should not crash.
The game probabily is not well balanced... so if you run out of money, you can cheat by pressing F12 to enter debug mode and have unlimited funds.
Obviously the funniest part of the game is to see the camouflage output, mixing all the objects you can find. We hope you will enjoy the game.
Here is an extract from the README.TXT
HOW TO PLAY THE GAME:
You have to smuggle goods between the two countries.
Your goal is to buy the rainbow rose and give it to Mercedes.
Right click around the map to move.
Buy camouflages and goods in every shop (top-left side of the shop screen)
Sell goods in every shop (bottom-left side of the shop screen)
Wear the camouflages you bought (right side of the shop screen)
Then use your van and click on the country you want to go.
Pay attention to the guard at the border gate...
Every good you own increases your suspect bar.
Every camouflage you wear increases the camouflage bar.
To pass the check point, you have to click when the clock hand is in the green section:
if you hit the green part, your camouflage increases. If you reach 100, you pass.
if you miss the green part, you lose your camouflages and the suspect bar is increased.
(log in to comment)
Comments
http://pastebin.com/YAhBWHcp
And I got an exception when trying to cross the border with no cash (a hentai magazine, a banana and cigarettes were exactly $33).
Traceback (most recent call last):
File "run_game.py", line 3, in <module>
gamelib.main.main()
File "gamelib/main.py", line 144, in main
currentLevel=createLevel(nextLevel,animations,inventory)
File "gamelib/main.py", line 58, in createLevel
currentLevel=levels.Gate(nextLevel,screenSize,animations,inventory,debugOn,musicOn)
File "gamelib/levels.py", line 1278, in __init__
GameLevel.__init__(self, currentLevel, screenSize, animations, inventory, debugOn, musicOn)
File "gamelib/levels.py", line 465, in __init__
Level.__init__(self, currentLevel, screenSize, animations, debugOn, musicOn)
File "gamelib/levels.py", line 35, in __init__
self.initialSetup()
File "gamelib/levels.py", line 1297, in initialSetup
self.clockDelta=0.005*max(1,math.log(self.inventory['money'],10))
ValueError: math domain error
I've pasted the fixed myframes.py here: And I got an exception when trying to cross the border with no cash (a hentai magazine, a banana and cigarettes were exactly $33).
Traceback (most recent call last):
File "run_game.py", line 3, in <module>
gamelib.main.main()
File "gamelib/main.py", line 144, in main
currentLevel=createLevel(nextLevel,animations,inventory)
File "gamelib/main.py", line 58, in createLevel
currentLevel=levels.Gate(nextLevel,screenSize,animations,inventory,debugOn,musicOn)
File "gamelib/levels.py", line 1278, in __init__
GameLevel.__init__(self, currentLevel, screenSize, animations, inventory, debugOn, musicOn)
File "gamelib/levels.py", line 465, in __init__
Level.__init__(self, currentLevel, screenSize, animations, debugOn, musicOn)
File "gamelib/levels.py", line 35, in __init__
self.initialSetup()
File "gamelib/levels.py", line 1297, in initialSetup
self.clockDelta=0.005*max(1,math.log(self.inventory['money'],10))
ValueError: math domain error
Regarding the math exception... it is raised by log(0) :-\
The speed of the "clock" at the border is logaritmic dependent from your dollar amount value - more money you have with you, more difficult it will be. So this exception is raised when you have exactly money=0. Unfortunately I didn't noticed it...
I don't have the pc to test it now, but replacing line 1297 with this should work fine:
self.clockDelta=0.005*max(1,math.log(max(1,self.inventory['money']),10))
Otherwise try to save always at least 1 dollar before going to border gate. In case you find yourself with 0 money, you can still sell some stuff you bought, even if you'll lose some money by selling goods in the same country you bought, since the are paid something like 75%.
Additional note I forgot in the readme: goods are paid something like 130% in all the shops of the other country, except for one particulat shop where it is paid around 200% (every good has its own high value shop).
File "run_game.py", line 3, in <module>
gamelib.main.main()
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/main.py", line 144, in main
currentLevel=createLevel(nextLevel,animations,inventory)
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/main.py", line 54, in createLevel
currentLevel=levels.Mexico(nextLevel,screenSize,animations,inventory,debugOn,musicOn)
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/levels.py", line 1206, in __init__
City.__init__(self, currentLevel, screenSize, animations, inventory, debugOn, musicOn)
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/levels.py", line 510, in __init__
self.addShops()
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/levels.py", line 777, in addShops
self.locations[shop]=self.addObject(objects.Shop(self.getAnimations(shopFilename),[self.shopSize*shopSizeX,self.shopSize*shopSizeY],self.placementList[index],shop))
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/objects.py", line 226, in __init__
GameObject.__init__(self, images, size, topleft)
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/objects.py", line 82, in __init__
self.loadFrame()
File "/home/isis/Arbeitsfläche/PyWeek-13-finals/ForkedTail_PW13/camouflage_v0.9/gamelib/objects.py", line 102, in loadFrame
self.image=pygame.transform.scale(self.images[self.currentAnimationName][self.currentAnimationIndex], self.size)
TypeError: integer argument expected, got float
--- camouflage_v0.9_fixed/gamelib/levels.py 2011-09-28 21:27:49.000000000 +0200
+++ camouflage_v0.9/gamelib/levels.py 2011-09-19 01:11:52.000000000 +0200
@@ -774,7 +774,7 @@
index=0
for shop in self.listOfShops:
shopFilename,shopSizeX,shopSizeY,shopCamoufs,shopGoods,shopOptions,highValueGoods=shopList[shop]
- self.locations[shop]=self.addObject(objects.Shop(self.getAnimations(shopFilename),[int(self.shopSize*shopSizeX),int(self.shopSize*shopSizeY)],self.placementList[index],shop))
+ self.locations[shop]=self.addObject(objects.Shop(self.getAnimations(shopFilename),[self.shopSize*shopSizeX,self.shopSize*shopSizeY],self.placementList[index],shop))
for camouf in shopCamoufs:
self.locations[shop].listOfCamouf.append(camouf)
for good in shopGoods:
DeprecationWarning: integer argument expected, got float
self.image=pygame.transform.scale(self.images[self.currentAnimationName][self.currentAnimationIndex], self.size)
ilseppia on 2011/09/19 13:32:
We realized that last image of each category is not showed because of an error in the myframes.py configuration file. Here you can download the correct file.These are the camouflages affected by this bug:
rosary, surf, Groucho hair, nose ring, Groucho mustache, chinese eyes, cigar, clown make-up, redneck shirt, Darth Vader
Then, here some nice camouflage combinations: