Ninja Target Practice

Hey, all! I am making a game quite similar to those midway games at carnivals where little cards pop up and you have to shoot them, except for the fact that I am making a little twist on it- you are throwing shuriken in a dojo instead! I had some sweet Asian folk music, but the file was too large, so I took it out. I think this game will be loads of fun. I am currently working on the menus and levels

I was also wondering if there was a way to modify the rotation on the shuriken so that they do not look like they are floating when you aim down.

Thanks- YA

EDIT: 3/21/10 - Also, a BIG thing I’m trying to handle right now are the collision bounds for the cards. It seems that they only go down when the shuriken hits the card’s center. I tried all different kinds of collision bounds, but none of them worked. Any suggestions?

EDIT: 3/22/10 - I’ve made some updates including a clock and a finish screen. I’ll have to handle the high score charts later, and as for now I’m most concerned with getting the card’s collision bounds and point system up and running.

EDIT: 3/26/10 - I’ve gotten a point system set up, so now I would like to focus on the collision bounds of the cards. As you can see, I have posted a test file for download along with the current version of the game so people can see my dilemma… Happy blending! - YA

EDIT: 3/26/10 #2 - I’ve fixed the card’s collision bounds, but now, if you try to take down the second card, it doesn’t even sense the collision. I dunno why. I reapplied the Scale & Rotation to Object Data & checked to see if collision was turned on for the face- it was. So what’s up? (You can see my problem in the latest download)

EDIT: 4/1/10 - Man! That took a while! But I have finally figured it out! Now the only thing I have to do is create a couple menus, then the levels. Thanks, everybody, for the help! I’ll keep you guys updated. Since the card fix didn’t change the game that much, I’ll wait until I achieve more to update the file. I took out the test file for the cards, since it is not needed.

EDIT: 4/1/10 #2- Alright! I got the stars to thunk on the wood, but I’m having a bit of trouble-
I have one mesh that I used radiosity and texture painting for the lighting. This mesh has MANY faces. I also have another that has very few that I would like to bake the textures to. But when I bake using selected to active and texture, it does not work. I select the complicated mesh, then the simple one (on the last layer in the file), and hit BAKE. But it doesn’t work.
Are there different parameters I should use?

(most recent download) (2.8 mb)

Attachments



you can fake motion blur by having the same object duplicated several times and then made slightly see through, then parenting the see through versions to the original, and putting them on different slow parents
e.g. duplicate you shuriken 3 times, make them all about 30% transparency then set them all to slow parent, one with a time offset of 1, another with time offset of 2 then the last with time offset of 3
that way you get see through objects, trailing slightly behind the original and it gives the illusion of motion blur!

or use a 2d filter :slight_smile:

Alright!

BTW, I think the first problem I should tackle is the point system. The points graphic is on an overlay scene… Is there any way I can still get the card to send a message to it? Or do I have to do a Python thing? If so, how do I refer to objects in different scenes in Python?

I think when you miss, the shurikens should stick into the wood with a hollow thunk.

Edit: You could create a score counter in GameLogic.globalDict.

Sweet idea! I’ll look into that…

I have little to no experience with GlobalDict. Could someone point me to a tutorial or two?
(I’m putting in a cool little violin solo, played by yours truly;))

When I do this: I get a syntax error. How can I fix it?

import GameLogic



cont = GameLogic.getCurrentController()



go = cont.sensors['point']



GameLogic.globalDict["points"] = 0



if go.positive == True:

	GameLogic.globalDict["points"] = GameLogic.globalDict["points" = ("points" + 1)]

	print(points)

hellllooo?

You’ll probably get a swifter response to questions by posting in the support forum. No need to be rude.

Why does everyone use Prez Gorge Bush in their shooter games? Lol…

Looks good anyway

here’s about 20 reasons, all compiled into one video.

ooh, and my favorite!

BTW, could this be moved into the support section?

Just start a new thread in the support section and link to this one.

Alright! Can do!

OMG!! im ripping my pants off laughin at these GWBush videos lol!!!
Thanks man !

haha your very welcome!:wink:
But, seriously, I would like some help… should I restate my questions in a cleaner post, or should I just edit the beginning one?

hello young apprentice… i think you have to write it like this

if go.positive == True:

    GameLogic.globalDict["points"] = GameLogic.globalDict["points"] + 1
    print(points)

oh and you should move the initial variable

GameLogic.globalDict["points"] = 0

to another python controller
if you run the script with it then it will just reset “points” back to 0

wierd game btw :confused:

@mattline

you can fake motion blur by having the same object duplicated several times and then made slightly see through, then parenting the see through versions to the original, and putting them on different slow parents
never thought about that :eek:

Thanks! I’ll try that out!

It seems that when I run this: I get a key error on line eight, which is the

GameLogic.globalDict[“points”] = ‘’

line. If this is a dictionary, then shouldn’t I assign it a key and refer to the key to get the value then modify it?

That is why I think I’m getting a key error, but I could be wrong…:yes:

so what’s up with it?

import GameLogic



cont = GameLogic.getCurrentController()



go = cont.sensors['point']



if go.positive == True:

	GameLogic.globalDict["points"] = GameLogic.globalDict["points"] + 1

	print(points)

you have to set the initial value first… thats why i told you to include it in another python controller
^^

oh and your printing it wrong

 print GameLogic.globalDict["points"]

here :wink:

press space to create an initial value of zero

Attachments

plus1.blend (130 KB)

funniest game ever lol michael jackson is here