Are variables of type real leaking memory?

Insanewarlock

Active Member
Reaction score
2
Tutorials about leaking say that everything except for integers is leaking. I have 3 arrays (sized 10) which are being updated every 0.30 seconds and also when specific script is triggered by player. It's being updated using previous value (example: set x=x+0.1). I think if that was leaking my game would start glitching in few minutes after starting the game so what should I do?

If it's leaking I can't destroy the value of the variable because I need to use it the next time when periodic event triggers my script, so is my script useless?
 

Slapshot136

Divide et impera
Reaction score
471
If it's leaking I can't destroy the value of the variable because I need to use it the next time when periodic event triggers my script, so is my script useless?

which tutorial in particular? I thought reals were OK...

either way, if you are re-using the variables, then you aren't leaking them.
 

afisakov

You can change this now in User CP.
Reaction score
37
which tutorial in particular? I thought reals were OK...

either way, if you are re-using the variables, then you aren't leaking them.
Reusing variables prevents leaks?
I thought I had to remove location every time it is set...
Does this mean I can just keep setting it to new values without needing the RemoveLocation(udg_tempgroup) line?
 

Slapshot136

Divide et impera
Reaction score
471
Reusing variables prevents leaks?
I thought I had to remove location every time it is set...
Does this mean I can just keep setting it to new values without needing the RemoveLocation(udg_tempgroup) line?

leaks are when both the old value and new value are stored, but the old value can no longer be accessed or is no longer useful - this would normally be done for you for primitives (int, and I believe reals as well), but not for "complex" things like unit positions, thus you need to explicitly destroy them before re-assigning them. by re-using, I mean that you can read from it as much as you want without causing any use (re-using the same value), even if it is a unit position or similar.
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
Reals dont leak, dont be ridiculous.
Booleans and Strings dont leak either. Units dont leak, doodads dont leak, items dont leak, item-types dont leak, etc etc.

There are only very few things that actually leak, its the same things that can be destroyed/removed.
Points, Regions, Special-Effects, that kind of stuff.
 

Insanewarlock

Active Member
Reaction score
2
I have special effect which will be created three times (at most) in the game, so I can ignore that right?
And btw does this leak?
Trigger:
  • Set RealVar_X = (Facing of UnitVar)

Or this:
Trigger:
  • Action
    • Unit - Remove UnitVar from the game
    • Set UnitVar = (Trained unit)
 

Accname

2D-Graphics enthusiast
Reaction score
1,462
As I said, real and unit variables dont leak.

A leak is if there is an object residing in your memory which is never freed up. Reals are not objects and thus they dont leak. Units are objects, but they are freed up when they die in the game, so no leak here either.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top