Author |
Message |
CaptainPoopface Newbie
Joined: Dec 16 2008 Posts: 17 Offline
|
Posted: Sun Jan 04, 2009 12:11 pm Post subject: Custom bomb trajectory |
|
|
|
|
I would like to do some unusual things with bombs. For example, let's say I want to make a bomb appear as if it fires from the side of the ship, 90 degrees from the ship's facing direction.
When the player fires the bomb, suppose I detect the packet for bomb firing. Using the player's velocity and rotation data, velocitize a bot or fake player to send a new bomb packet in the sideways direction. Is this feasible? Is there a way to give the shooting player the credit (bounty and kill) for the bot's bomb kills?
The central idea here is that you detect the player's firing event to velocitize a new bomb in a new direction. I can think of many other excellent applications (for example, if you give the bomb a very short alive time and repeatedly velocitize a new bomb as the old one expires, you can make bombs that accelerate, decelerate, seek enemies, travel in a circle, etc.). But I'd like to know if the fundamental idea is sound. |
|
Back to top |
|
|
Bak ?ls -s 0 in
Age:25 Gender: Joined: Jun 11 2004 Posts: 1826 Location: USA Offline
|
Posted: Sun Jan 04, 2009 12:13 pm Post subject: |
|
|
|
|
the fundemental idea is sound. although if you want the player to get credit for the kill, the player will flicker on other people's screens since you'll need to fake a packet with him facing a different direction. _________________ SubSpace Discretion: A Third Generation SubSpace Client |
|
Back to top |
|
|
Dr Brain Flip-flopping like a wind surfer
Age:38 Gender: Joined: Dec 01 2002 Posts: 3502 Location: Hyperspace Offline
|
Posted: Sun Jan 04, 2009 12:43 pm Post subject: |
|
|
|
|
To reduce flicker, you could send the bomb packet 1 tick into the past, while still sending the fire packet (minus the bomb) at its normal time stamp. You'll have trouble with the player seeing things correctly on their screen though.
A *mirror style solution is pretty easy to accomplish with fakes, but the player won't get the kill credit. _________________ Hyperspace Owner
Smong> so long as 99% deaths feel lame it will always be hyperspace to me |
|
Back to top |
|
|
tcsoccerman Server Help Squatter
Age:31 Gender: Joined: Jan 15 2007 Posts: 694 Location: Atlantis Offline
|
Posted: Sun Jan 04, 2009 12:51 pm Post subject: |
|
|
|
|
you can always track the fake kills and give kill credit to the right player. |
|
Back to top |
|
|
Snrrrub Novice
Joined: May 29 2008 Posts: 37 Offline
|
Posted: Sun Jan 04, 2009 1:33 pm Post subject: |
|
|
|
|
If you're doing this via an ASSS module, you can spoof the weapon source to be the player that fired the original bomb. That way, the accounting will also be correct.
I should mention a caveat with your general approach:
The initial bomb fired by the user will still show up and be active (if you filter it server-side, it'll only show up on the firing player's screen but it will still show up). If you're okay with that, it seems like you're good to go.
-Snrrrub |
|
Back to top |
|
|
Samapico No, these DO NOT look like penises, ok?
Joined: May 08 2003 Posts: 1252 Offline
|
Posted: Sun Jan 04, 2009 1:40 pm Post subject: |
|
|
|
|
Would there be a way to cheat that problem with the BombAliveTime? _________________ (Insert a bunch of dead links here) |
|
Back to top |
|
|
Dr Brain Flip-flopping like a wind surfer
Age:38 Gender: Joined: Dec 01 2002 Posts: 3502 Location: Hyperspace Offline
|
Posted: Sun Jan 04, 2009 3:39 pm Post subject: |
|
|
|
|
Samapico: No, because BombAliveTime applies to all of the bombs in the arena. It can't be made to apply to just one bomb. |
|
Back to top |
|
|
CaptainPoopface Newbie
Joined: Dec 16 2008 Posts: 17 Offline
|
Posted: Sun Jan 04, 2009 4:37 pm Post subject: |
|
|
|
|
I think I prefer tcsoccerman's idea of tracking kills and giving credit to the proper player (does that mean I have to muck around with SQL?). Dr. Brain, it seems like your point defense does this correctly as well (in Hyperspace).
I would rather avoid flickering of the source player. Instead, a fake player could be given an invisible ship and could be teleported and velocitized as necessary to create the desired bomb motion.
Another workaround for disappearing the source player's regular bomb is to give him L1 bombs and make those invisible with 0 damage, or very short alive time. However, if you are "animating" a fake bomb using a series of velocitized bombs with short alive time, will they still have accurate collision as if they were a single bomb? It seems like you would have to dovetail the events carefully to avoid time gaps (possibly creating moments of double damage), and an object traveling faster than a ship and sending a lot of data sounds like a recipe for lag discrepancies. Is that right?
--
One of the main applications I have in mind for this is simulating true angled walls. A module would detect if a bomb has crossed the endpoints of an angled wall, and then velocitize a bomb at the proper angle of reflection. We could finally get proper bomb bounces from walls that are not purely horizontal or vertical. (Maybe similar ship bounces could be simulated with a series of moveto's?) |
|
Back to top |
|
|
tcsoccerman Server Help Squatter
Age:31 Gender: Joined: Jan 15 2007 Posts: 694 Location: Atlantis Offline
|
Posted: Sun Jan 04, 2009 4:56 pm Post subject: |
|
|
|
|
The only problem is that it will show "Player a killed by fake player" as well. :/ |
|
Back to top |
|
|
Dr Brain Flip-flopping like a wind surfer
Age:38 Gender: Joined: Dec 01 2002 Posts: 3502 Location: Hyperspace Offline
|
Posted: Sun Jan 04, 2009 8:16 pm Post subject: |
|
|
|
|
CaptainPoopface wrote: | Another workaround for disappearing the source player's regular bomb is to give him L1 bombs and make those invisible with 0 damage, or very short alive time. However, if you are "animating" a fake bomb using a series of velocitized bombs with short alive time, will they still have accurate collision as if they were a single bomb? It seems like you would have to dovetail the events carefully to avoid time gaps (possibly creating moments of double damage), and an object traveling faster than a ship and sending a lot of data sounds like a recipe for lag discrepancies. Is that right? |
The primary problem isn't lag, but rather knowing when a bomb has detonated (and when to stop relaying it along its course). |
|
Back to top |
|
|
|