"No turning ice" problem

The perfect one step solution for creating Ice/Sliding Mazes in both Reign of Chaos and The Frozen Throne. It is the only decent system around and it even works in RoC, is lagfree, perfectly optimized, fast and reliable. The included TerrainKill feature frees you from the tedious task of creating a thousand kill-regions.
User avatar
3ICE
Admin
Posts: 2629
Joined: Sat Mar 01, 2008 11:34 pm
Realm: Europe
Account: 3ICE
Clan: 3ICE
Location: Hungary
Contact:

Re: "No turning ice" problem

Unread post by 3ICE »

manstie wrote:I swear it's impossible to make a unit unable to turn on a certain ice. Impossible!
The Hive Workshop can't help me out with it :(
How did swmpmoele do it!?
You have a contradiction there. "I swear it's impossible to make a unit unable to turn on a certain ice." and "How did swmpmoele do it!?" now if swmpmoele was able to do it, then it is definitely possible to do.

But yes, War3 has it's limitations.

My guess is, swmpmoele (whoever he is...) used an old, laggy sliding system, which works with locations instead of coordinates. The lag the system generates prevents the player from clicking fast enough.

If only you could link to a map in particular so I can deprotect it and tell you the solution... I'm still not a mind reader you know.
Last edited by 3ICE on Mon Jul 13, 2009 1:50 am, edited 1 time in total.
Reason: +quote
ImageImageImageImageImage
Image
ImageImage

User avatar
manstie
Posts: 310
Joined: Wed Jun 17, 2009 9:27 am
Account: manstie
Location: Perth, Australia
Contact:

Re: "No turning ice" problem - SOLVED!

Unread post by manstie »

Well, 3ICE
I have found the solution! (I can't believe that you didn't know how to fix it, although you probably did... it's one of those things about you wanting me to do it myself, right?)
And that solution is easily added onto your sliding system!

All I did was add an if/then/else to the bottom of the Slide trigger just before: set u=null

Code: Select all

    if(t==udg_Slide2)then
        call SetUnitTurnSpeedBJ( (u), 0.0 )
    else
        call SetUnitTurnSpeedBJ( (u), 0.5 )
    endif
    set u=null
endfunction
Huzzah!
Image

User avatar
3ICE
Admin
Posts: 2629
Joined: Sat Mar 01, 2008 11:34 pm
Realm: Europe
Account: 3ICE
Clan: 3ICE
Location: Hungary
Contact:

Re: "No turning ice" problem

Unread post by 3ICE »

You are using BJ functions? Fail!
ImageImageImageImageImage
Image
ImageImage

samtre
Posts: 82
Joined: Thu Nov 27, 2008 6:43 am

Re: "No turning ice" problem

Unread post by samtre »

I thought in one of the triggers, it said: "Disable this trigger to turn off Steering."

Wouldn't it be better if you just make ALL the ice un-steerable?
I didn't try editing any of the triggers, but if 3Ice's system's steering is based on the unit's turn speed, I might have found a solution, in GUI, that is....

If it is, mine would be like this:
If a certain unit is on a certain ice, turn rate change to 0.01, or 0.00, haven't tried it in triggers as I have only did in unit editor...zzz
Disabling the turning when leaving the terrain, or you could set a Region, when you leave it resets your turning speed, and enters changes to 0.00 or 0.01

If I'm wrong, then I'm sorry on interrupting in your arguments... I'm just trying to help.....

User avatar
3ICE
Admin
Posts: 2629
Joined: Sat Mar 01, 2008 11:34 pm
Realm: Europe
Account: 3ICE
Clan: 3ICE
Location: Hungary
Contact:

Re: "No turning ice" problem

Unread post by 3ICE »

I wasn't aware that my system depended on turn rate of units. But it does, at least in realistic mode.

EDIT: I never understood turn rate. I set it to 0 and the units turned fine, I set it to 1 and units turned fine. What the fuck does it do? (The value is min 0, max 1, average 0.5)
ImageImageImageImageImage
Image
ImageImage

User avatar
manstie
Posts: 310
Joined: Wed Jun 17, 2009 9:27 am
Account: manstie
Location: Perth, Australia
Contact:

Re: "No turning ice" problem

Unread post by manstie »

3ICE wrote:You're using BJ functions? Fail!
What's so bad about them? I'm just converting some GUI to JASS then adding it to your sliding system. Of course I don't know how to write Jass :!: BJ = Blow Job Functions :shock:

I think it is how fast the unit turns around?
But :shock: at when its at 0 it still turns..?
I think an example would be Custom Hero Line Wars, I noticed that the pack horse takes a huge time to turn around and sometimes walks around in a circle to try and turn 180 degrees.
samtre wrote:I thought in one of the triggers, it said: "Disable this trigger to turn off Steering."
At the first post:
Manstie wrote:If you mass click in a different direction while on the unable-to-steer ice, it can kind of turn a bit (I noticed this on polar escape as well). Is there a way to fix it?
3ICE also followed point out to us that even when sliding the units still have the ability to move around.


3ICE, take a look at this; the turn rates from 0.5 to 3 look almost exactly the same, but 0 is different.
Attachments
Manstie's Different Turn Rates.w3m
Find out what the different turn rates are.
(16.19 KiB) Downloaded 582 times
Image

User avatar
3ICE
Admin
Posts: 2629
Joined: Sat Mar 01, 2008 11:34 pm
Realm: Europe
Account: 3ICE
Clan: 3ICE
Location: Hungary
Contact:

Re: "No turning ice" problem

Unread post by 3ICE »

manstie wrote:BJ = Blow Job Functions :shock:
Blizzard Jass. They are just wrapper functions to real natives. Take a look at this:

Code: Select all

function SetUnitTurnSpeedBJ takes unit whichUnit, real turnSpeed returns nothing
    call SetUnitTurnSpeed(whichUnit, turnSpeed)
endfunction
From this, everyone can see that if we removed those two letters B and J, our code would run faster. Most BJs just call a native with the same parameters. BJ functions are useless and should not be used. (Some people use CustomDefeatBJ and similar functions, because they don't understand how they work. Some BJs span a hundred lines. Not many has patience to read them all so they accept the crippled speed at which they run.) And I agree with you, this name choice really sucks. :twisted:
manstie wrote:I think an example would be Custom Hero Line Wars, I noticed that the pack horse takes a huge time to turn around and sometimes walks around in a circle to try and turn 180 degrees.
Pack horse's turn rate is 0.01, a value which is not allowed in the world editor by default. Catapults move like this too.
manstie wrote:3ICE, take a look at this; the turn rates from 0.5 to 3 look almost exactly the same, but 0 is different.
Interesting. Will edit this post after testing is done.

EDIT:
Why did you leave in one empty trigger? :D
Renaming the peasants to their corresponding turn rates was a clever idea.
But 0.0 actually has 0.1! Always double check everything to avoid such errors.
Could have used more between 0.1 and 0.3, probably a 0.25 too.
I hope everyone realizes that this is percentage-based, so 0.1 is 10%, 0.5 is 50% and 3.0 is 300%.
You should have imported my sliding system so we could test how this all affects sliding.
There is still much change going on between 0.5 and 0.9 though.
The {0.01 ; 0.99} interval is important. {0} remains untested and the purpose of {1;3} is not yet understood.

All in all, thank you. Now we all know everything about turn rate.

EDIT2:
manstie wrote:but 0 is different.
There is no 0.
ImageImageImageImageImage
Image
ImageImage

User avatar
manstie
Posts: 310
Joined: Wed Jun 17, 2009 9:27 am
Account: manstie
Location: Perth, Australia
Contact:

Re: "No turning ice" problem

Unread post by manstie »

That's silly, why make 2 different types of jass (talking to blizzard) when one is them jass, and the other is more efficient...
Off Topic Question: How do you make an error message? (e.g. "That unit is already at full Health")
Image

User avatar
3ICE
Admin
Posts: 2629
Joined: Sat Mar 01, 2008 11:34 pm
Realm: Europe
Account: 3ICE
Clan: 3ICE
Location: Hungary
Contact:

Re: "No turning ice" problem

Unread post by 3ICE »

Yay! You called GUI silly. (Even if you don't yet realize it.) That means I successfully converted you into a JASSer. Because you already see the bloat that GUI is, it will be hard for you to use it ever again.

And to explain that above statement: The BJ functions were made as a 'layer' of JASS for GUI to access. I can think on many valid reasons why Blizzard decided to create the BJ functions. Whenever we talk about BJ functions in JASS, we mean the functions that are used by GUI. (Well, most of the time anyway.)

And the other question: Error messages are silly, just display it as normal text. (Or if you must do useless things instead of focusing on improving your map... Vexorian's SimError is first result on google.)
ImageImageImageImageImage
Image
ImageImage

User avatar
manstie
Posts: 310
Joined: Wed Jun 17, 2009 9:27 am
Account: manstie
Location: Perth, Australia
Contact:

Re: "No turning ice" problem

Unread post by manstie »

Lol... Vexorian...

Do you think your better than him? :roll:
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 56 guests