Jump to content

Batman Dark Knight Wip


85vett

Recommended Posts

  • Replies 80
  • Created
  • Last Reply
  • Content Provider

No ramps yet but some other detail work done today.

 

At this point all I need is some good plastics pics.  Got a few in my inbox but hoping playerone has those in his redraw file.  That would save some time otherwise I'll have to start piecing things together.

 

1409374714.jpg

Link to comment
Share on other sites

  • Content Provider

UW,  I was playing with the crane animation and am currently using createball and changing the x,y co-ordinates as the crane rotates.  Do you know an easy way to detect ball collision?  We could use that to trigger the crane switch if the vel impact is high.  

 

'Create ball once

Set CraneBall = CraneKBall.Createball
CraneBall.Z = 35
 
As the crane moves, update the location of ball and spring
CraneBall.X = cos(CurrAngle*3.1415/180) * 430 + CraneStartX
CraneBall.Y = sin(CurrAngle*3.1415/180) * 430 + CraneStartY
PrimSpring.X = CraneBall.X
PrimSpring.Y = CraneBall.Y

 

With the separate ball, I can make the ball shake/jitter when the crane comes to stop.  And its collidable even while it is moving.  Just need to figure out how to detect the collision with it.

Link to comment
Share on other sites

  • Content Provider

That is a really good idea for the ball on the crane. The collision is the hard part.

I'd have to look at the ball to ball collision code to see how it determines collision.

If we couldn't figure out how to determine collision through the collision engine. I would suggest using a series of triggers along the ball path that you would enable/disable as the ball animates through the path.

You would probably need triggers at the stop points of the crane anyway to determine the scoring hits.

If I remember the rules correctly.

I'm at work right now so I can't have a look at the ball collision engine. But I think that would be the best place to start.

I'll have a look when I get home

Link to comment
Share on other sites

  • Content Provider

Just looked at the ball collision code. To be honest, the code is a little above my head.

Personally, with my limited coding and math skills, I would probably just create a series of triggers slightly bigger then the crane ball covering the path of the ball on the crane.

Have them enabled/disabled as the ball moves along the path.

When a trigger is hit determine the force, play a collide sound based on the force and either pulse the switch or not.

along with your shaking animation

Maybe rascal can chime in on this.

He is the master ball manipulator

Link to comment
Share on other sites

  • Content Provider

We are on the same page.  I tried to use the NewBallID routine on it but not its not allowing it to be used.  Maybe because I am not kicking the ball out, just moving it around.  If I can get that working then yes I could add a hook in the B2B collide routine to detect it.  Yes triggers would work

 

We shall see what Rascal has to say... 

Link to comment
Share on other sites

  • Content Provider

Watching the video here, 

, it looks like there is only like 5 or 6 places where the crane stops and can be hit to register. So I would just have transparent round targets with collision enabled popup in those areas when the crane stops over them. Then make the crane ball a primitive and throw a little wiggle on it when the target gets hit. You can even check the ball speed when it hits and decide if it was solid enough to register as a hit or just a glancing tap like it is in the video at one point.

 

Actually, after thinking about it, you probably do want the crane ball to be a ball and not a primitive, because you want the collision physics of the ball all the time. Not to measure the hit, but so you don't get a ball rolling through it when the crane is moving. The invisible wall targets can be a little bit bigger then the ball, so they register the hits in those 5 or 6 places where the crane stops.

 

To get the crane ball to follow the end of the crane fluidly might be tricky. I think you can use the code I used for the corkscrew to make a curved path for the crane ball maybe. Instead of the loop going y and z as in the corkscrew you would go y and x with no z to make a curve.. 

Link to comment
Share on other sites

  • Content Provider

I already have the crane ball movement smooth, so that is not a problem.  I can popup the invisible target at the 5 locations - I will put this in now.  The question is whether we should allow the crane to register the hit while it is still moving to the location.  This would either mean getting the b2b collision working to detect the hit, or a series of invisible targets across the entire path to detect hits.  

 

Question for you:  Can I assign a newballid to the ball if it is still in the kicker and I am moving it around by modifying the x/y co-ords.  Or does the ball have to be in play (i.e. kicked out of the kicker for) for the B2B engine to track it:

 

Sub CraneBall_init

'Create ball once

Set CraneBall = CraneKBall.Createball
CraneBall.Z = 35
End Sub
 
'As the crane moves, update the location of ball and spring
Sub CraneBallTimer_Timer
CraneBall.X = cos(CurrAngle*3.1415/180) * 430 + CraneStartX
CraneBall.Y = sin(CurrAngle*3.1415/180) * 430 + CraneStartY
PrimSpring.X = CraneBall.X
PrimSpring.Y = CraneBall.Y
End Sub

 

I am unable to assign a ball id to it.  Not sure where I should call it in the script for the crane ball 

Link to comment
Share on other sites

  • Content Provider

The problem is that while the ball is in the kicker it has no velocity and I think the ball collision vbs relies on watching the ball change velocity in order to know that they collided. It's the sudden change of velocity that shows that the two balls hit (at least that is how I think they coded that). The rolling ball will bounce off the kicker held ball, but the kicker held ball will not move at all or change it's velocity from the collision.

 

Questions: Doesn't the hit the crane ball event change depending on which stopping point it is on at the time? If so wouldn't somewhere in between be a non-registering spot anyway?

 

Nice job on the cos and sin script, that is what i used for the corkscrew loop too.

 

You already set a ball ID to it when you Set CraneBall = CraneKBall.Createball. It's ID is CraneBall.

Link to comment
Share on other sites

  • Content Provider

I scripted the 5 droppable walls at the 5 target locations, so I have it working.  

 

The Crane ball when hit triggers swicth 85 regardless of the location of the Crane.  So theoretically you should be able to trigger sw 85 while the crane is in motion.   We can add more droppable walls and raise them as the crane is sweeping across the playfield if we want to emulate this.  (I will check if sw85 hit registers a Scarecrow target hit while the crane motor is running to see if this is worth doing)

Link to comment
Share on other sites

  • Content Provider

Found them all, I'll upload them and send you a link in a pm soon

I'll put my last build in there also feel free to use any of the script just give me and unclewilly some credit.

This table is pretty much finished but IMHO it's way out of date using very old inefficient methods compared to today's standards so I don't really want it published

I see you must have an older version of my dark knight as you are using the old apron with the oversized plunger hole :) I remember unclewilly worked his butt of making that bat ramp and bat mobile work at the time with the limitations we had

Table is looking great, keep it up

Link to comment
Share on other sites

  • Content Provider

Appreciate it.

 

Yes, UW and I spoke before.  I'm using the bat mobile ramp on the left that moves and the joker spinning walls scripting as those were a pain and there was no need to recreate the wheel there.  I just took the images for them all and cleaned them up a bit.  Also started with the plastics from that version as well but will update them with the high res ones you have now.   Everything else on the table should be new.

Link to comment
Share on other sites

  • Content Provider

version 1 has been uplaoded (pending admin approval).  Has a VP 9.9 version and physmod5 version.

 

Please post any bugs found in the support topic.  Hopefully there wont be any ;-)   Once I get the High res plastics and have time to add them in I'll update the table.  Figured ya'll would prefer to play it now vs wait for them.

 

1409952378.jpg

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...