Tool Leak Check v3

Im_On_56k

Hm...
Reaction score
116
*There will be a new version coming out soon with some additional features as well as detection for some leaks I missed.

can this check every possible leak?
I want to say yes, but right now I'm sure there are some leaks that are not being detected. The only way for me to fix that is for people to report any leaks not being detected that they know of.

What? No colors?
With colors, I can see better.
(and prettier)
There are colors in the new version coming out soon. No worries :)


Anyway, the only Player Group leak it actually detects is Convert Player To Player Group (ignores all others). It would also be nice if it could detect if the mapper tried to destroy (All players) and warn that it's a very bad idea to do that.
It should detect Covert Player to Player Group or at least the test I have done has detected it.

Code:
call DestroyForce(GetAllPlayers())
Code:
Player Group - Remove all players from (All players)
Is either of those the code you are talking about? I haven't used WE in quite a long time.

I also recommend that you get rid of the suggested fix thing.
A lot of people completely rely on this fix as the ultimate and only solution while they often don't know how to use it ("where is the Set MyLocation action?") or can sometimes be wrong due to a bug/improper use (in conditions for instance).
Instead you can just make it say, for example, "Unit Group Leak, click here for more info" where clicking would result in a window with information on Unit Group leaks and a couple of examples on how to remove them (and possibly a link to emjlr3's tutorial) showing up.
I have set the default option for showing suggested fixes to off. I have also made it display a warning when turning it on.

At the end of the scan I have also made it display a link to some Memory Leak tutorials.
 

0zaru

Learning vJASS ;)
Reaction score
60
Any assing of a force to all players and then cleaning(I think that cleaning) the force or destroying it will cause AllPlayers to dissapear.
 

FhelZone

Have a drink of a nice cold mellowberry juice!
Reaction score
103
Nice new interface, I should get my self one, maybe you should change the title to your own though.
 

SFilip

Gone but not forgotten
Reaction score
634
> It should detect Covert Player to Player Group or at least the test I have done has detected it.
Yes, but what I'm saying is that it doesn't detect any other except for that one. Try All Players Of Control for example.

> Is either of those the code you are talking about?
No, more like something like this:
Code:
Set MyPG = (All players)
Player Group - Pick every player in MyPG and do (Actions)
    Loop - Actions
        // anything here
Custom script:   call DestroyForce(udg_MyPG)

It also doesn't detect whether you actually destroyed/removed a variable, but I can't think of an accurate way of checking this (those Location variable not removed things in the previous version were really annoying).
However you may want to make it report something if the mapper reassigned a variable before destroying:
Code:
Set loc = (Center of (Playable map area))

// any number of actions here
Unit - Create 1 Footman for Player 1 (Red) at loc facing Default building facing degrees

// variable reassigned, but there is no Custom Script that removes it, display a warning
Set loc = (Random point in (Playable map area))
 
N

NuBy

Guest
Sounds very good for me since I am lazy, problem is the program doesn't open for me :eek:
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
To I'm_On_56K:

I can't run the program. How come everyone can run it, but I can't?
 

Sooda

Diversity enchants
Reaction score
318
> How come everyone can run it, but I can't?

What operation system are you using? Maybe you are missing some kind of a base environment, what is required by that program to run properly?
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
I'm running on Windows XP, SP2, Traditional Chinese.

And what environment should I required to have?
 

Romek

Super Moderator
Reaction score
964
I too, can't run the program.
I double click on Leakcheck.exe, and the error sound plays, but no error shows.

When i try to run in compatibility with Windows 2000 or any other Windows as a matter of fact, i get the error message:

'Component 'COMCTL32.OCX' or one of its dependencies not currently registered: a file is missing or invalid'

I've never used leak check, so I was just curious to see if it'd find anything in my map :D
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
To I'm On 56K:

Some questions:

1. While the executable file for non-VB users hasn't been out, should I have to use Leak Check v2?
2. Is Leak Check v3 for RoC only, TFT only, or both?
 

PurgeandFire

zxcvmkgdfg
Reaction score
509
It works fine for me. I tried it on Vista. Just extract the files and double click the application file.
 

Im_On_56k

Hm...
Reaction score
116
New version updated. Yes I know I am terrible at sticking to something :)

- New version includes newest leak definitions which means it will detect more leaks then previous versions.

- A variable removal detection which is in beta stage.

- Colors! You will see what I mean.

- Suggested fixes is turned off by default as it can provide incorrect information.

- There are also some additional features you may or may not notice but I will not list them as they are minor.

Go to my first post to download the updated version. Overwrite all files if you are extracting to the same location.

I am planning on releasing the source code still, I just haven't got around to commenting everything yet - but it is coming.
 

Insane!

Shh I didn't edit this, go away.
Reaction score
122
ERROR said:
Componet 'COMCTL32.OCX' or one of its dependencies not correctly registered: a file is missing or invalid

it pops that up when i try it
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
Bug:

Code:
Starter Death
    Events
        Unit - A unit owned by Player 1 (Red) Finishes construction
        Unit - A unit owned by Player 2 (Blue) Finishes construction
        Unit - A unit owned by Player 3 (Teal) Finishes construction
        Unit - A unit owned by Player 4 (Purple) Finishes construction
        Unit - A unit owned by Player 5 (Yellow) Finishes construction
        Unit - A unit owned by Player 6 (Orange) Finishes construction
        Unit - A unit owned by Player 7 (Green) Finishes construction
        Unit - A unit owned by Player 8 (Pink) Finishes construction
        Unit - A unit owned by Player 9 (Gray) Finishes construction
        Unit - A unit owned by Player 10 (Light Blue) Finishes construction
        Unit - A unit owned by Player 11 (Dark Green) Finishes construction
        Unit - A unit owned by Player 12 (Brown) Finishes construction
    Conditions
    Actions
        Set finishbuilding[(Player number of (Triggering player))] = True
        Set typeofBuilding[(Player number of (Triggering player))] = (Unit-type of (Constructed structure))
        Unit Group - Pick every unit in (Units owned by (Owner of (Triggering unit)) of type Wisp) and do (Unit - Remove (Picked unit) from the game)

Says "Subscript out of range"

I think it's the Unicode problem.


Picture:
91370940ku2.png
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
Bug again:

Code:
Setup Dialog
    Events
        Time - Elapsed game time is 0.10 seconds
    Conditions
    Actions
        Unit Group - Pick every unit in (Units in (Playable map area) matching ((Unit-type of (Matching unit)) Equal to Wisp)) and do (Unit - Remove (Picked unit) from the game)
        Game - Display to (All players) for 5.00 seconds the text: Game Mode is now be...
        Wait 1.00 seconds
        Dialog - Change the title of DIA to Game Modes
        Dialog - Create a dialog button for DIA labelled Original
        Set DIAbut[1] = (Last created dialog Button)
        Dialog - Create a dialog button for DIA labelled Incomes
        Set DIAbut[2] = (Last created dialog Button)
        Dialog - Show DIA for Player 1 (Red)

That's the original trigger. It somehow shows this one.

70840202hz5.png


I really don't know what is wrong with it.
 

Im_On_56k

Hm...
Reaction score
116
I am not sure what bug you are pointing out to me.

It will help if you show the text it is showing by moving the horizontal scroll bars to the left on both text boxes.

If you are trying to say it's not scanning the trigger you want it to - you have Always Copy on which means it will keep replacing the text in the input text box to the text on your clipboard. Turn that off. Otherwise you are going to have to explain to me more what bug you are trying to show me.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
The bug is right there in front of you. See that Chinese characters?

Those =/= "Wisp".

I don't know why. It didn't copy it correctly. Those words doesn't look like "Wisp" at all.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Howdy
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top