• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

SaveGameCacheBJ – Trigger function does not exist in database

Status
Not open for further replies.

Rui

Rui

Level 41
Joined
Jan 7, 2005
Messages
7,550
Problem
Many of you who have campaigns under progress, or have tried to open an old campaign recently, might have noticed the Warcraft III World Editor now crashes upon loading with the following error:
Trigger function does not exist in databse: SaveGameCacheBJ


Causes
This happens because Blizzard seems to have accidentally deleted the trigger action «Game Cache - Save» when implementing hashtables (since these were introduced on patch 1.24, those who have not yet upgraded to the latest patch will not run into the error mentioned above).It seems the file that lists all the GUI triggers no longer recognizes «Save Game Cache» as a valid action, thus making you unable to open up the maps.

Solutions
The items below are NOT steps to be followed by order. Each of them are possible solutions for the problem previously described.
  • Use World Editor Unlimited (WEU) to open the campaign. WEU is an add-on to the ordinary World Editor and does NOT limit your access to the normal World Editor, so you will still be able to access it after installation.
    After opening up WEU, load your campaign and the maps that use the «Save Game Cache» action, and delete these actions. After that, the regular World Editor should be happy about loading the campaign.

  • Use WinMPQ (or another MPQ tool) to extract, from Patch.mpq, a file called TriggerData.txt (find UI/TriggerData.txt). Open it in your favorite text editor. Go down to "// Game Cache Actions" and add the following under it:
    SaveGameCacheBJ=0,gamecache
    _SaveGameCacheBJ_Defaults=GetLastCreatedGameCacheBJ
    _SaveGameCacheBJ_Category=TC_GAMECACHE
    Save the file. Make sure you're saving it as just plain text. Open up your Warcraft III folder, and create a new folder called UI if it doesn't exist already. Move your edited TriggerData.txt to that folder. If a file with the same name exists already, you might want to back it up instead of overwriting.
    Thanks to RazorclawX, from Campaign Creations, for supplying this information.

  • Switch back to version 1.23, load up your map, remove all game cache triggers and export the trigger data (open the Trigger Editor, click «File» on the upper tab and then «Export Triggers»). Close your map without saving, upgrade to patch 1.24, open up the map on WinMPQ, remove a file called war3map.wtg, and close WinMPQ. Open up the World Editor and your map, and import back the triggers (Trigger Editor, «File», «Import Triggers»). {»Wc3C source}


Additional notes
If you have got another solution for this problem, please post in this thread and describe it with exactitude and accuracy.

EDIT: Since the thread auto-closing system has already locked this thread, please send me a private message to report a new solution or an error in the information here given.
 
Last edited:

Rui

Rui

Level 41
Joined
Jan 7, 2005
Messages
7,550
Yes, I suppose we can state that you don't need the entire game cache triggers removed. I think I meant to modify that little part earlier.
About the script trick, I'm not sure. When your triggers are compiled, they are already turned into JASS. If that function is missing, writing it in code won't help, most likely.
 
Status
Not open for further replies.
Top