The Dink Network

How to successfully unfreeze Dink?

November 28th 2016, 08:23 AM
dragon.gif
Herbie
Peasant He/Him Poland
 
Hi, Everyone, this may sound like a noob question, but I am seriously having problems with it. I know that to unfreeze Dink with the unfreeze(1) command I have to enter the console by pressing alt+c, the problem is... for me it is not working. I even downloaded the latest Freedink version with Dfarc 3, but still-nothing. I can only enter the debug mode by pressing alt+d, but it doesn't allow me to input commands. Any advice? What can it depend on? The OS? Some OS settings? The keyboard settings? Even computer type? I'm completely out of ideas...
November 28th 2016, 08:36 AM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
I've never heard of alt-c bringing up the console.

I know that you can bring up the console by making a key script like so

//key-67.c 
//C key
void main
{
show_console();
wait_for_button();
kill_this_task();
}


The only problem is that once Dink is frozen you can't call key scripts.
Dink being permanently frozen has always been a problem where you need to restart the game from my experience. If there is a way, I'd like to know it.. would've saved me many headaches
November 28th 2016, 09:22 AM
peasantmp.gif
Skurn
Peasant He/Him Equatorial Guinea duck bloop
can't flim flam the glim glam 
that's a freedink thing, apparently.

welcome to the new age?
November 28th 2016, 09:24 AM
dragon.gif
Herbie
Peasant He/Him Poland
 
So it's a quadrature of the circle-type issue...

Recently I was discussing this problem in the context of The Black Skull D-Mod, where the game constantly freezes at certain points, like for example talking to the wizard for the first time or even earlier while examining the sign near Dink's pub.

During that discussion scratcher wrote me this:

"Ahh, the freeze bug, the most classic bug. =)

Does it always happen with the wizard, or only in certain conversation options? I think I got further in the game than that, although it's possible I used the console to do it. (In FreeDink, you can hit Alt+C to open the command console, then type unfreeze(1) to give control back to Dink)."

And later:

"Make sure you're actually launching Dink with Freedink, ie. in DFArc, go to Edit->Options and check that the 'game program name' field says freedink.exe instead of dink.exe.

Pressing LeftAlt+C in the game should make a number with a white background appear in the bottom-left corner, after which you can type in DinkC commands (like unfreeze(1))."

The problem is that I never made it actually work, that number never appears and I cannot type the commands, even while using Freedink as a base program for the game.
November 28th 2016, 09:27 AM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
It didn't work in my version of FreeDink (Win10) either.

Here's a rather janky way of solving any freezing issues.

I've made a script you can either spawn or attach to a key. This will unfreeze Dink periodically (every 20 seconds or so) and disable itself after about 5 minutes. You could tweak it to make it last indefinitely, but I wouldn't recommend it. Making it togglable is possible but would be more complicated and probably involve globals which we don't want to mess with to keep it flexible to use across all DMODs.

Here's the catch. It could potentially break cuts-scenes and let you do all sorts of weird stuff with DMODs. Being able to move around when you're supposed to be frozen is 100% not considered by DMOD authors so use it at your own risk. Also, you have to use this preemptively as you can't do anything when you're already frozen

//unfreeze script
void main ()
{
script_attach(1000);
say_xy("`%Unfreeze script enabled",-195,0);
int &runxtimes;

nofreeze:
&runxtimes += 1;
say_xy("`%&runxtimes / 15",-260,20);
wait(20000);
say_xy("`%<Unfreeze>",-240,0);
unfreeze(1);
  if (&runxtimes < 15)
  goto nofreeze;
  
say_xy("`%Killing Unfreeze Script",-195,20);
wait(0);
kill_this_task();
}


November 28th 2016, 09:50 AM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
You need to download the unreleased version 109.0 to use the console. It can be found in Beucs tmp place. It's freedink-109.0-bin.zip.

I haven't encountered any bugs or nuisances with 109 and it runs very smooth on Windows 10. So it's not Windows 10 that's causing issues for you.
November 28th 2016, 09:54 AM
dragon.gif
Herbie
Peasant He/Him Poland
 
How do I exactly use this script? Let's say that coding isn't my strength

I know what you mean about the cutscenes... it makes me worry if using it in The Black Skull would not crash the whole game, because the moment in which the game freezes actually IS a cutscene.

By the way, I don't remember what D-Mod it was but I once met a situation in which I actually was able to move during a cutscene. Dink was still saying what he was supposed to, but I could just walk around, I only couldn't leave the screen which was acting like there was a screen lock.
November 28th 2016, 10:23 AM
slayer.gif
rabidwolf9
Peasant He/Him United States
twitch.tv/rabidwolf9 
@Quiztis
Holy batcrap, I wonder how many other problems that will solve for me. Someone should get that updated on TDN. I'm so out of the loop.

@Herbie
You would have to take that code and make it into a script - just a text file saved as the .c file type - and save it in the story folder of your DMOD directory. Then you can use spawn("script.c") to spawn it, or name it a key command.

Seriously though, just update your freeDink to the one Quiztis says. The ctrl+c console in the latest version of freeDink renders it obsolete since it works even when Dink is frozen.
November 28th 2016, 10:53 AM
dragon.gif
Herbie
Peasant He/Him Poland
 
I knew about that 109 version, but when I replaced the program files and tried to run Dfarc I received that notification:

Invalid --refdir option: C:\Users\Uzytkownik\AppData\Local\Freedink/dink/graphics and/or C:\Users\Uzytkownik\AppData\Local\Freedink/dink/tiles are not accessible.
November 28th 2016, 11:21 AM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
Happy to help, rabidwolf. Wonder if beuc still works on it.

I would recommend uninstalling and reinstalling Dink 1.08 then download the new Freedink and put it in the directory you installed Dink 1.08. Also make sure that Freedink is selected as the Dink application in Dfarc.

Last time I checked, Windows uses only backslashes for file paths and that is not consistent in the error message.
November 28th 2016, 12:11 PM
pq_cthunik.gif
GOKUSSJ6
Peasant He/Him Poland
Everyone should get a pizza for free in each week. 
This is the 1st time i've heard that there is a verison of FreeDink with Developer Console in it. Gonna check this out.

edit: Holy smokes, this is awesome, there are some limits but i've managed to create ducks in one intro scene at Dinkgon Warrior.
November 28th 2016, 12:30 PM
dragon.gif
Herbie
Peasant He/Him Poland
 

Thanks a million lot! I reinstalled Freedink in a brand new location, replaced the program files and... I UNFREEZED Dink in The Black Skull! No more crashing D-Mods!
November 28th 2016, 03:55 PM
dragon.gif
Quiztis
Peasant He/Him Sweden bloop
Life? What's that? Can I download it?! 
That's sweet man, happy dinking!