Author Topic: Ready Made: Bullet Shockwave  (Read 14767 times)

0 Members and 3 Guests are viewing this topic.

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Ready Made: Bullet Shockwave
« on: February 29, 2008, 10:53:14 am »
Script Name: Wave();
Script Description: Creates a customizable wave of bullets
Original Author(s): Avarax
Core Version: 2.6.3




Some wave shapes and combinations I came up with, while experimenting with the parameters.



Code: [Select]
Wave(X,Y,Direction,Offset,Radius,Speed,Power,RoomPerBullet,Radiation: single; Bullettype,Bulletcount,Owner: byte);
This procedure creates a greatly customizable wave of bullets based on geometrical calculations and the parameters you give it. Feel free to implement it into your script, but give credit ;)

Here's an explanation of the parameters:

X,Y - Starting position of the wave (the coordinates refer to the middle of the wave)
Direction - The wave's flight direction measured in radiant. You can calculate the direction from point A to point B with the Aim() function I added to the below link.
Offset - How far away the wave is from the starting XY coordinates on creation.
Radius - The radius of the wave in relation to its theoretic centre. Less radius means more curvyness.
Speed - Travel speed of the wave.
Power - The power multiplicator of the created bullets.
RoomPerBullet - How far away is from each other is each bullet forming the wave?
Radiation - A higher value makes the wave spread in a more circleish shape as it moves along. A Radiation of 0 makes it spread linear. A Radiation of 1 equates a full circle spread. Negative values can look quite funky :) (the knife pic uses some negative radiation)
Bullettype - Bullettype of the created bullets
Bulletcount - Number of bullets forming the shockwave
Owner - Owner of the bullets


NOTE: To create effects like in the pics above, you'll have to use Wave() multiple times.



Code with Aim() function[/size]
« Last Edit: February 29, 2008, 10:54:55 am by Avarax »
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline rumpel

  • Camper
  • ***
  • Posts: 410
Re: Ready Made: Bullet Shockwave
« Reply #1 on: February 29, 2008, 12:43:08 pm »
omg thats damn hot
gj avarax

edit:// yeah Hallo liebe Pornofreunde xD
banned.

Offline Mr

  • Inactive Soldat Developer
  • Soldier
  • ******
  • Posts: 166
Re: Ready Made: Bullet Shockwave
« Reply #2 on: February 29, 2008, 02:59:19 pm »
Yay nice pic and nice script *install* :D

// EDIT:

can you give an exampe xD ?
« Last Edit: February 29, 2008, 03:00:55 pm by Mr »

Offline xmRipper

  • Soldat Beta Team
  • Flagrunner
  • ******
  • Posts: 742
    • Personal
Re: Ready Made: Bullet Shockwave
« Reply #3 on: February 29, 2008, 03:15:55 pm »
Awesome script but need an example.
Co-Founder / CTO @ Macellan
Founder Turkish Soldat Community

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Ready Made: Bullet Shockwave
« Reply #4 on: February 29, 2008, 03:55:09 pm »
Dang, this looks 100x better than the last "Ready Made" thing you made that makes circle-type thing that I can't remember the name of :P

Do you remember what all or most of the parameters were in the cool negative radiation value effect?

Offline danmer

  • Camper
  • ***
  • Posts: 466
  • crabhead
Re: Ready Made: Bullet Shockwave
« Reply #5 on: February 29, 2008, 04:52:58 pm »
mehehe =P
Nice math ;)

Gotta include this in an effects pack if one will ever be released xD

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Ready Made: Bullet Shockwave
« Reply #6 on: March 01, 2008, 05:00:08 am »
Ok... some examples:

Effect of an upcoming skill in MiracleMod called "Magmabreath" with simplified parameters. Becomes bigger as you move faster.
Code: [Select]
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))+0.27,60,100,2.7+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))+0.18,55,90,2.6+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))+0.09,50,80,2.5+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),45,70,2.4+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))-0.09,40,60,2.3+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))-0.18,35,50,2.2+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY'))-0.27,30,40,2.1+(abs(GetPlayerStat(ID,'VelX'))+abs(GetPlayerStat(ID,'VelY')))*1.4,40,5,0.7,5,4,ID);



Negative radiation wave. It will only look really cool and curvy in the first few moments, then it will kinda turn itself inward and back outside to proceed like a usual wave.
Code: [Select]
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),10,100,13,40,3,-0.8,13,20,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),30,80,13,40,2.8,-0.8,13,20,ID);


Some sort of lightning beam:
Code: [Select]
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),20,35,19,100,1.9,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),30,35,19,100,1.95,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),40,35,19,100,2,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),50,35,19,100,2.05,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),60,35,19,100,2.1,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),70,35,19,100,2.15,0,14,5,ID);
Wave(GetPlayerStat(ID,'X'),GetPlayerStat(ID,'Y'),Aim(0,0,GetPlayerStat(ID,'VelX'),GetPlayerStat(ID,'VelY')),80,35,19,100,2.2,0,14,5,ID);



If you use a lot of bullets combined with a rather high RoomPerBullet and a small Radius, you can also create bullet circles like "cages" around a player. Cluster fragments are great for this.
« Last Edit: March 01, 2008, 05:03:04 am by Avarax »
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Ready Made: Bullet Shockwave
« Reply #7 on: March 01, 2008, 05:09:28 am »
I just love bullet things like this :P

EDIT: I'm learning german at school, does that 'Hallo, Liebe Pornofreunde' translate into 'Hello, favourite pornofriend'? (i'm just guessing)
« Last Edit: March 01, 2008, 05:12:05 am by chutem »
1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline Laser Guy

  • Veteran
  • *****
  • Posts: 1679
Re: Ready Made: Bullet Shockwave
« Reply #8 on: March 01, 2008, 05:11:57 am »
I copied the sccript into text editor and saved as a PAS file... made a folder called Wave in the Scripts folder and moved the Wave script into wave folder... And it doesn't work :(
Text goes here...

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Ready Made: Bullet Shockwave
« Reply #9 on: March 01, 2008, 05:13:35 am »
You need to call up the function, i.e. in an onplayercommand have it check the text for, say, /wave and then make it do a wave() with desired settings
1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Ready Made: Bullet Shockwave
« Reply #10 on: March 01, 2008, 05:19:51 am »
"Hallo, liebe Pornofreunde" translates into "Hello, my dear Pornfans" or something like that :)
It's a phrase used in an 80's advertisement for some porn, used in this fine house tune by Finger & Kadell. Text is quite funny if you're able to translate it ;Q
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Ready Made: Bullet Shockwave
« Reply #11 on: March 01, 2008, 05:22:31 am »
Oh i got confused with Lieblings.
1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline Mr

  • Inactive Soldat Developer
  • Soldier
  • ******
  • Posts: 166
Re: Ready Made: Bullet Shockwave
« Reply #12 on: March 01, 2008, 06:52:08 am »
I just love bullet things like this :P

EDIT: I'm learning german at school, does that 'Hallo, Liebe Pornofreunde' translate into 'Hello, favourite pornofriend'? (i'm just guessing)

Hello, dear pornofriends

Offline Laser Guy

  • Veteran
  • *****
  • Posts: 1679
Re: Ready Made: Bullet Shockwave
« Reply #13 on: March 01, 2008, 06:56:33 am »
You need to call up the function, i.e. in an onplayercommand have it check the text for, say, /wave and then make it do a wave() with desired settings
No Idea what u talking bout, screens plz?
Text goes here...

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Ready Made: Bullet Shockwave
« Reply #14 on: March 01, 2008, 07:34:50 am »
Something like this, so you have a command with which you can activate the wave.
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host

Offline Laser Guy

  • Veteran
  • *****
  • Posts: 1679
Re: Ready Made: Bullet Shockwave
« Reply #15 on: March 01, 2008, 08:57:13 am »
Did as u told and nothing...
Text goes here...

Offline Boblekonvolutt

  • Soldier
  • **
  • Posts: 222
  • "YOU are a CAR."
Re: Ready Made: Bullet Shockwave
« Reply #16 on: March 01, 2008, 07:23:20 pm »
I copied the sccript into text editor and saved as a PAS file... made a folder called Wave in the Scripts folder and moved the Wave script into wave folder... And it doesn't work :(
What about the Includes.txt file?

Offline chutem

  • Veteran
  • *****
  • Posts: 1119
Re: Ready Made: Bullet Shockwave
« Reply #17 on: March 01, 2008, 08:29:48 pm »
The one attached should work, just put it in a folder (name doesn't matter) and make sure you put Includes .txt in it aswell
1NK3FbdNtH6jNH4dc1fzuvd4ruVdMQABvs

Offline Laser Guy

  • Veteran
  • *****
  • Posts: 1679
Re: Ready Made: Bullet Shockwave
« Reply #18 on: March 02, 2008, 11:54:33 am »
I copied the sccript into text editor and saved as a PAS file... made a folder called Wave in the Scripts folder and moved the Wave script into wave folder... And it doesn't work :(
What about the Includes.txt file?
Ahh, you reminded me, I didn't have one :P
Text goes here...

Offline Avarax

  • Veteran
  • *****
  • Posts: 1529
    • Official Hexer & MMod site
Re: Ready Made: Bullet Shockwave
« Reply #19 on: March 02, 2008, 04:04:26 pm »
geez...
I like to have one Martini
Two at the very most
Three I'm under the table
Four I'm under the host