How to get the "Gift Grab" achievement (Working 2026 | Easiest Way)
First, a thank you and a Youtube Link.
Without his videos, I wouldn't have been able to make this steam guide and youtube video on how to get this achievement working easy! Andrew, if you see this guide or my youtube video, shoot me a message and I'll gladly add you as a contributor.
Opening/Creating your Script Directory
First, you need to open up your Counter-Strike: Source game files. This can be done easily from your Steam library by: Right-Clicking "Counter-Strike: Source > Manage > Browse Local Files.
From here, open your "cstrike" folder, and then create a folder titled "scripts". Inside of that folder, create another new folder titled "vscripts".
After this is done your directory should look like this:
\steamapps\common\Counter-Strike Source\cstrike\scripts\vscripts
Creating/Downloading the Necessary .nut Scripts
As of right now, I have a m*diafire link running that i may struggle to keep updated as time goes on for the two scripts you will need for this. (Linked in the description of my video because steam removes them)
IF this link is expired, you can use a resource like Ch*tGPT to generate your .nut files completely for free. Here's how:
Copy and paste the following prompt(s) into Ch*tGPT (one at a time) for each .nut script. It will g*n*rate you a downloadable file, that you will put in your vscripts folder.
gift_grab_achievement.nut
Hi! Can you help me create a file named gift_grab_achievement.nut using the following content?
if ("GiftGrabAchievement" in this)
GiftGrabAchievement.clear();
::GiftGrabAchievement <-
{
IsGiftGrabEventActive = function()
{ // Returns true if the gift grab event is active.
return NetProps.GetPropBool(Entities.FindByClassname(null, "cs_gamerules"), "m_bWinterHolidayActive");
}
SetForceGiftGrabEvent = function(bool)
{
NetProps.SetPropBool(Entities.FindByClassname(null, "cs_gamerules"), "m_bWinterHolidayActive", bool);
}
OnGameEvent_round_freeze_end = function(params)
{
if (!GiftGrabAchievement.IsGiftGrabEventActive())
{
printl("THE GIFT GRAB EVENT IS INACTIVE. ACTIVATING...")
ClientPrint(null, 3, "\x07FF3F3F" + "THE GIFT GRAB EVENT IS INACTIVE. ACTIVATING...");
GiftGrabAchievement.SetForceGiftGrabEvent(true);
}
if (GiftGrabAchievement.IsGiftGrabEventActive())
ClientPrint(null, 3, "\x05" + "THE GIFT GRAB EVENT IS ACTIVE");
}
}
__CollectGameEventCallbacks(GiftGrabAchievement);
I'd like the file provided as a downloadable .nut file, not just text. Please generate the file and give me a direct link to download it. Thank you!
==========================================
mapspawn.nut
Hi! Can you help me create a .nut file titled mapspawn.nut that contains this line exactly:
IncludeScript("gift_grab_achievement")
I'd like it provided as a downloadable file, not just text. Please generate the file and give me a direct link to download it. Thanks!
After you have downloaded your .nut scripts,your vscripts folder should look like this:
Getting the Achievement To Pop
You will know if you have done everything up to this point correctly if you get this green message in game:
After that, eliminate bots until you collect 3 gift drops, which will look like this:
Finally, the achievement should pop after you collect three gifts!
Thank you!
-sam
Beat Counter-Strike: Source's achievements?
Flex it — let your friends know you pulled it off.
This guide was created by its original author on the Steam Community. Are you the author and want it removed? Request removal.