Warcraft III resources & community, 2003–2006 · archived

Physics Engine

4.46 / 5 (13)
Submitted by U.VSystems2,041 downloads17 KB
Screenshot
Screenshot
A basic physical simulation I did for fun.

It has no specail purpose, and it`s hardly good for anything - but I still think it`s nice.



ENJOY!!
File Name
Physics Engine v1.01.w3x
Author
U.V
Download

Comments

35
:D :D :D Speedball is based on this^^ i like Speedball.
NICE! i'll use it for my next map, it's exactly what i need!

100000000000/10 :D :D :D
WICKED!!
Is there a way to let the ball fall down on the lower side of the map? If yes, it would be a way to a flipper-map. :D
OMG I LUV IT 50/1
Wow... that's really, good for you there Darkness[TDA]... Anyway, about that football and dodgeball map, (already been done >.< )
Again, it's very nice.
A lot of poeple don't seem to know this (though it's almost obvious) you can go to *Edit->Convert to Custom Text* in the trigger editor to turn your triggers into JASS, I wouldn't recommend using it on anything but spells and especially not on triggers that call to Run or turn on a trigger, unless of course you say *Call ( Func_myVar )* or something.
As I've heard, JASS helps eliminate memory leaks, that may work >:-)
Use World Editor Unlimited which can be downloaded from this site, to avoid any further memory leaks. It allows you destroy unit groups and the like using GUI! :)
A cool thing and a 4/5 from me this is because the engine doent have any special use on maps.

Nantuko_Husk

Edit: Yeah right why dont u make a football game with this engine it would be far the best!
Ah! The Lag! It burns!

Yea it lagged alot on my comp, then again 800mghz and a Nvidia GeForce 2 weren't meant to run war3 ^_^

Otherwise great job, I loved it and I might steal it to make a decent dodgeball map.

5/5 for...
Complicatedness (complex i think is the word)
Usefulness
Effort
I used this to make this little multiplayer game:

Physics Engine Tournament

In fact it is your engine + multiplayer + damage + some little specials.
Hope you like it.
First Update:
most of the leaks are now fixed :wink:

i still need help in finding out how to fix one more case of leaks. who ever knows JASS and is willing to help me, plz send me a PM or something.
thx
do not despair, people!
my new, non-leaking version will be upload soon :wink:

@gadzy:
it does leak on your (probably super-strong :P) computer...
uhm... U.V.... it doesnt leak on my pc.... (if they dont mean the waiting time for close game o_o)

*if u want to use it for football u should make the ball neutral.. or make the football teams allied :!:
:twisted:
5/5 it is so cool!
Not bad...
Impressive... I must say that when I tested it, I was simply amazed. But then, I saw that you used several regions. Instead, you might try to track doodads and even units like for the Shuriken ability. Anyway, 5/5 for the impressive effect though it isn't useful at all.
just add in the custom script line. Dont be anti jass. If you have the power to use jass, then hold it by the reigns and take a ride.
point/unit group/ect. removal can be done only with JASS + i dont use JASS = my spells leak - what can i do? :roll:

no offese taken
No offence but every map u have done all ways has memory leaks in.....
Good can be usefull for football map or stuff like that
there's only 1 way to remove a point..... with JASS - and that's where being a pro about triggers ends 8)
and i though you were a triggering pro...
so i do have to put it in a variable, right?

EDIT:
ok, i got how it's done!!
i shall now start working on the not-leaking version! :)
thank you! today you've tought me something new (and important)
Cool system, I can see some cool uses for it. A bowling map for example.

You can delete the point by using last created. After you delete the point, it will no longer be available for use (obvious).

//leak
set loc1 = Location(1,1)
set loc1 = Location(1,1)
call RemoveLocation(loc1)
call RemoveLocation(loc1)


//No leak
set loc1 = Location(1,1)
call RemoveLocation(loc1)
set loc1 = Location(1,1)
call RemoveLocation(loc1)
@ctb
1. next time you do something like this, reduce the font size :roll:

2. how do i remove a point?

EDIT:
ok - ive found a way to remove a point.
just have 1 question: can i remove a 'last created point', or do i have to put the point in a variable and remove the variable?
The worst leak is where I marked in the text (notice that the most of the leak is caused by points that isn't removed):
Movement
Events
Time - Every 0.01 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to Num, do (Actions)
Loop - Actions
Unit - Move Ball[(Integer A)] instantly to ((Position of Ball[(Integer A)]) offset by Speed[(Integer A)] towards Ang[(Integer A)] degrees), facing Ang[(Integer A)] degrees
XXXXLEAKXXXXUnit Group - Pick every unit in (Units within 50.00 of (Position of Ball[(Integer A)])) and do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Picked unit) Not equal to Ball[(Integer A)]
(Picked unit) Not equal to Mountain King 0007 <gen>
Then - Actions
XXXXLEAKXXXXSpecial Effect - Create a special effect at (Position of (Picked unit)) using Abilities\Weapons\GryphonRiderMissile\GryphonRiderMissileTarget.mdl
Special Effect - Destroy (Last created special effect)
XXXXLEAKXXXX Set Ang[(Custom value of (Picked unit))] = (Angle from (Position of (Picked unit)) to (Position of Ball[(Integer A)]))
XXXXLEAKXXXXSet Ang[(Custom value of Ball[(Integer A)])] = (Angle from (Position of Ball[(Integer A)]) to (Position of (Picked unit)))
Set Speed[(Custom value of Ball[(Integer A)])] = ((Speed[(Custom value of Ball[(Integer A)])] / 2.00) - ((Speed[(Custom value of Ball[(Integer A)])] / 2.00) mod 1.00))
Set Speed[(Custom value of (Picked unit))] = Speed[(Custom value of Ball[(Integer A)])]
Set Anim_Speed[(Custom value of (Picked unit))] = (20.00 x Speed[(Custom value of (Picked unit))])
Animation - Change Ball[(Custom value of (Picked unit))]'s animation speed to Anim_Speed[(Custom value of (Picked unit))]% of its original speed
Set Anim_Speed[(Custom value of Ball[(Integer A)])] = (20.00 x Speed[(Custom value of (Picked unit))])
Animation - Change Ball[(Custom value of Ball[(Integer A)])]'s animation speed to Anim_Speed[(Custom value of Ball[(Integer A)])]% of its original speed
XXXXLEAKXXXXUnit - Move Ball[(Integer A)] instantly to ((Position of Ball[(Integer A)]) offset by 60.00 towards Ang[(Integer A)] degrees), facing Ang[(Integer A)] degrees
XXXXLEAKXXXXUnit - Move Ball[(Custom value of (Picked unit))] instantly to ((Position of Ball[(Integer A)]) offset by 60.00 towards Ang[(Custom value of (Picked unit))] degrees), facing Ang[(Integer A)] degrees
Else - Actions
Do nothing
Dude, If you put this and a ragdoll engine together, you should be made a Blizzard Employee!

I Encourage you to try! 8)
thanks for looking at my triggers before commenting about them..... unlike others i could mention 8)
Trigger work is jeEnyus!
@ItzaHexGor, Dr.Nitro
lol, dont tell it to me - i know my triggers.
tell it to them 8)
Kind of cool, parts can be used for power-smash type spell or something. I looked at your triggers and didn't notice any memory.
I think that its pretty good... I don't know what practical uses it has, but I didn't find any memory leaks...
Really cool but i think 2 that leaks too much anyway i give it 4/5
and where exactly does it leak?
Pretty cool but leaks too much. 4/5