Any way to tell to what an error code is referring to?

O.A

Quantum physics rules
Reaction score
29
Hi, i've been recently getting crashes and memory errors in my map. It simply says "memory could not be read" and has 3 codes in it. Is there anyway to check what they are referring to?

Exception: 0xC0000005 (ACCESS_VIOLATION)
The instruction at '0x026DA672' referenced memory at '0x00000008'
The memory could not be read

I googled and all the answers i found were "patch it", i have the latest patch, and i'm pretty sure this is a problem within the map.
 

O.A

Quantum physics rules
Reaction score
29
Some more information; i just tested some things and it seems the crash is brought on by various strange reasons. First, there is a trigger that adds a level to neutral heroes every time my own hero levels up, and this causes a crash (but not always), and then, when i kill a certain number of units (player units) it crashes, every time.
 

thorhunter

You can change this now in User CP.
Reaction score
32
You probably messed something up in triggers, there are countless reasons why this may pop up. Try shutting down your triggers to find which one causes it or when the error occurs (at map intialization or randomly, if it's random and doesn't occur frequently, it's gonna be hard)
 

Imp Midna

Active Member
Reaction score
52
some Pointer is accessing the memory 0x00000008 (obviously). Memory regions that are that high are not allowed to be touched as they usually dont belong to the process.
The 8 comes propably because the game is trying to read (could not be read) the propably third element of a structure (at least the one with the offset 8) using a nullpointer (which is pointing to 0). Makes sense if you can programm, but sounds kinda weird if you cant i guess.

Translated into Warcraft, that means that you were trying to read an attribute of a structure (anything with multiple attributes, like an array (multiple ints), a string (multiple characters), a unit (health, speed etc etc), a timer (what every attributes that one has), a location (x,y,z), a doodad (kind, angle, position), a trigger (actions, conditions, the bool saying if its activated) and many other things i propably cant think of right now), but couldnt find this objekt (for example cause the unit was removed, the location was destroyed, the timer wasnt initialised, the trigger was destroyed, because you asked him to get player number 1337 etc etc). WC now cant find the object in the process memory, getting a so called null-pointer, a pointer (an integer saying where to find the object) which contains a 0. As the Adress 0 (or in long form, 0x00000000) can never be read, writen or executed (heavy system related stuff in there), a null-pointer usually states "this object doesnt exist", but some functions from Warcraft seemingly ignore this warning (such as creating player 1337) while others dont. What you got there is a function that ignores the null-pointer warning and simply treats it as if the object really was there (leading to warcraft beeing punched into its face from the operating system for trying to steal some candys).

What can it be? Well, as i explained, everything that has to do with complex data types (namely everything you can put in a hashtable). Try to isolate the crashes as good as possible. Not that it doesnt has to be a deleted object, it may also be the cause of a badly written function on blizzards side (for example, resuming a not-started but existing timer will crash the game). Thing that comes to my mind thinking about that is giving a unit (a non-hero) a tome, took me ages to find that out.
 
  • Like
Reactions: O.A

O.A

Quantum physics rules
Reaction score
29
I managed to isolate one of the crashes, which happened when trying to add attributes and 1 level to neutral heroes slightly after map startup, i still don't get why this happens at this point, since basically the same trigger adds attributes and a level to the same neutral heroes everytime Player 1's hero levels up (after lvl16) and it works fine.

And killing player units (non-neutral hostile but computer controlled), the crash happens everytime after killing a few of them, but no triggers are linked to this, so i can't think of any reason why this happens either.

And to top it off, all of the triggers have been working since the beginning off this map, and none of this has ever happened. One day when i added a few triggers, my map initialization triggers stopped working, and now all of this is happening. The map ini triggers work now, but these random or nonrandom problems still occur sometimes, and i seem to keep finding new ones, so it seems a pretty desperate fight to fix the map anymore.

I was wondering if this could simply be sheer excess of everything in the map? My object editor says about 800 units total (i started adding neutral hostiles by triggers when the 512 limit was full), 1400 triggers and 600 variables. I have also modified the map bounds twice when i ran out of room, if this could have anything to do with it?

The tome thing i figured out a while back and made sure no non-heroes can pick up powerups. Thanks for all the answers so far.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      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