Author Topic: Bowling balls and bowling pins.  (Read 2399 times)

It would be really cool if someone could make a bowling bowl as an inventory item that could actually work. Here is how I think it should work. When you have the ball in your hand and you hold down left click, you should see a regular bowling throwing motion, this could either use default animations or a custom animation. If you throw it too soon, it will slam to the ground rather than sliding. If you throw it too late, the bowling ball will go really slow. But if you time it just right then it will go fast. Maybe if you throw it only a little late, you can get a medium speed out of the ball. There should also be different modes of the ball that you can toggle using right click and the client gets notified of what mode it is by displaying text using the command of bottom text. The three modes that you can toggle should be left curve ball, straight ball, and right curve ball. The speed of how much it curves in a direction should be calculated by how fast the ball is going. The projectile of the ball should look exactly like the item you hold in your hand. When you throw the ball, the bowling ball you have in your inventory should be gotten rid of and a projectile should be created next to your blockhead's hand so it would seem like you are throwing the ball. The projectile should have strong gravity since bowling balls weigh so much. The projectile should keep it's speed at the same rate until the ball is destroyed. It should be 5 or 10 seconds until the ball is gone automatically by the decay rate. There should be different colors for the bowling ball, so players can have a nice selection of colors to choose from.

The bowling pins should be easier to make. Just make it a 1x1x(the height for the pin should be 3, 4, or 5) brick that is a white pin with a red stripe on it. You could also make it that the paintcan can change the stripe color to the color you selected to paint the pins. Pretty much how the bowling ball is going to smash the pins is by using the fakekill brick event before the bowling ball hits the pins. So make sure that the bowling pins can easily be knocked over when fake killed aswell.

What do you think guys? Is this possible to make in Blockland? Have any thoughts or ideas to add? Make sure to post below guys! :)

I'm up for modeling and doing the pin brick.

Edit: A vehicle would work better for the ball. Anyone know if you can modify the torque of a vehicle with a script? Adding velocity shouldn't be a problem.
Edit2: Port says: setVelocity and setAngularVelocity. Two models coming up in a jiffy. OP has a nice idea but the usual two meter method is easier to create and use. Meter graphics coming up!
« Last Edit: February 19, 2013, 02:23:33 PM by Demian »

Edit: A vehicle would work better for the ball. Anyone know if you can modify the torque of a vehicle with a script? Adding velocity shouldn't be a problem.
How would a vehicle be better for the bowling ball? How can you hold a vehicle in your hand or spawn a vehicle once you release the ball from your hands? Also wouldn't a server go slow with a lot of vehicles while if you make a lot of projectiles, it doesn't go as slow right? Just wondering about those questions. :)

How would a vehicle be better for the bowling ball? How can you hold a vehicle in your hand or spawn a vehicle once you release the ball from your hands? Also wouldn't a server go slow with a lot of vehicles while if you make a lot of projectiles, it doesn't go as slow right? Just wondering about those questions. :)
You hold an item in your hand and once you click it a power meter comes up, click again and a torque meter comes up, after the last click the image is unmounted from your hand and a vehicle is spawned from your hand with the velocity and torque you specified with the meters. The vehicles would need be automatically destroyed after 10 seconds for example. If you used projectiles you could only knock over one pin at a time since projectiles can't have collision boxes.

After further thinking I can't actually think of a way to determine which pins you hit. If the pins are bricks the vehicle would bounce off the first pin it hit. If you fake kill the pins practically every throw would be a strike besides how would you determine which pins you hit if the bricks are already fake killed?

You hold an item in your hand and once you click it a power meter comes up, click again and a torque meter comes up
Will those use built-in GUIs or custom GUIs?

After further thinking I can't actually think of a way to determine which pins you hit. If the pins are bricks the vehicle would bounce off the first pin it hit. If you fake kill the pins practically every throw would be a strike besides how would you determine which pins you hit if the bricks are already fake killed?
Would there be any way to make the vehicle not bounce and just continue at the same speed if the pins aren't fake killed? While if the pins are fake killed, does raycasting not work on them anymore?

You can do this with OnProjectileHit, NamedBrick, FakeBrickKill, but events would make it look bad

Ok what about 1 brick before the bowling pin and it's a floor brick, has an onVehicleTouch event that triggers the fakekill to the pin next to it. That way there is no problem to it and you can keep count on what pins are knocked down by the same onVehicleTouch event. But the real problem is, did anyone fix the onVehicleTouch events yet? I think they got crapped-on or something because they have a lot of bugs to them.

Will those use built-in GUIs or custom GUIs?
I don't think you can have any custom bitmaps as GUIs without a client sided add-on. Shame.

Would there be any way to make the vehicle not bounce and just continue at the same speed if the pins aren't fake killed?
No.

You can do this with OnProjectileHit, NamedBrick, FakeBrickKill, but events would make it look bad
Only if you make the vehicle constantly fire projectiles forward which is just stupid.

Ok what about 1 brick before the bowling pin and it's a floor brick, has an onVehicleTouch event that triggers the fakekill to the pin next to it.
Clever, that would work if the event wasn't broken.

Clever, that would work if the event wasn't broken.
Create a trigger around the pin and package onEnterTrigger to fakekill it.

Create a trigger around the pin and package onEnterTrigger to fakekill it.

this guy

THIS GUY RIGHT HERE

the problem is that pins have to knock pins down too
therefore fakekill -> no

we have pins.
check siba's dump.

the problem is that pins have to knock pins down too
therefore fakekill -> no
Impossible

Since physics are client-side, you couldn't really make a game out of this since A: People with physics off won't see it, B: There's no way to detect on the server where a pin landed, and C: Everyone else can see the pins fall in different ways.

The projectile should have strong gravity since bowling balls weigh so much.
That isn't how gravity works. It's also not how projectiles work because a projectile's gravity setting only goes from 0.0 to 1.0.

Since physics are client-side, you couldn't really make a game out of this since A: People with physics off won't see it, B: There's no way to detect on the server where a pin landed, and C: Everyone else can see the pins fall in different ways.
It doesn't matter that physics are client-sided that much and you don't have to make the pins fall on each other either. It could be a certain amount of bricks that are close to the pins that the bowling ball vehicle touches to detect which pins fall. The events would take randomizing into play on what pins fall but in a reasonable way so it would look good and some bricks may trigger the best randomized outcomes. If someone could make a event that allows onVehicleTouch again in some way or another, this could work. Plus about the everyone won't see the same thing, on servers that try to do bowling, they could recommend that everyone uses the same physics settings. If a client chooses not to then it's their fault and they will miss out on the physics.

If someone makes the onVehicleTouch events work or in other ways to see if a vehicle is at a certain spot to trigger events, it would be cool if the vehicle could transfer over it's variables using VCE somehow, stuff like speed and rotation. That way you can detect through events what pins should fall, maybe even without having to use randomized events.