Killing Floor

Killing Floor

282 ratings
Gimli That Axe! - Achievement Fix
By Leeson
This guide will explain how you can unlock the broken Gimli That Axe! achievement. Allowing you to unlock it if you meet the achievement criteria.
If you have any questions about anything in the guide be sure to leave a comment and I'll try get back to it.
24
5
4
   
Award
Favorite
Favorited
Unfavorite
Read before starting
This method is approved and endorsed by moderators of AStats and 100pAG.
Find more achievement fixes here

Make sure to remove the hosts file line in Step 1 after unlocking the achievement so that the Steam client doesn't have any issues.

Downloads
Python Script: pastebin.com/raw/zdBuivnN (save as Gimli.py)
Requirements: pastebin.com/raw/DUG59zU0 (save as requirements.txt)
or
Compiled exe:
mega nz/file/TuAHxIqb#ZDwXxl5W3J9IGIVjYKPYLJd8YztXHJw_dwXvw00RHJ0

You only require the python script + requirements or compiled exe for Step 2 not all three. With the compiled exe you have to trust me that it's clean which is why I also provided the python script so you can run it directly from the script itself instead. Some slight steps are provided in Step 2 of how to do that.
Step 1 - HTTP Server for steamproxy-script.pipiskins.com
This step is required as it tells Windows to redirect any requests made to the Steam web api address to instead use the local server we will be running. This will allow us to send back to Killing Floor a response of the Steam web api that the game can parse correctly.

Open your favorite text editor as administrator.
Open the hosts file located at C:\Windows\System32\drivers\etc\hosts in the text editor.
Note that 32-bit text editors may not be able to see the etc directory inside drivers, so you might need to type that manually.

Add this line to the bottom of the file:
Save the hosts file. Make sure it doesn't get saved as hosts.txt; that won't work.

MAKE SURE TO REMOVE THE ADDED LINE FROM THE HOSTS FILE WHEN YOU ARE DONE WITH GETTING THE ACHIEVEMNET
Step 2 - Run the HTTP Server
Theres two options for this you can either run the compiled exe of the python script, or you can directly run the python script with python. The only difference between the two is that you can easily see the source of the python script but not of the exe.

Python Script
  • Have python 3 installed.
  • Install the requirements of the script with the command py -m pip install -r requirements.txt in a command prompt at where requirements.txt is saved.
  • Run the script in a command prompt at the scripts location with the command py Gimli.py
The command syntax of py might be different depending on how your python enviroment is setup. You can try other variants such python or python3. I recommend looking up any console errors if you get them.

Compiled Exe
  • Double click to run.

Running either will output into the command window this:
Bottle v0.12.18 server starting up (using WSGIRefServer())... Listening on http://localhost:80/ Hit Ctrl-C to quit.

If you see this then you can move on. If you get any errors here leave a comment and I'll try assist.
Step 3 - The Achievement
MAKE SURE TO REMOVE THE ADDED LINE FROM THE HOSTS FILE WHEN YOU ARE DONE WITH GETTING THE ACHIEVEMNET
Firstly make sure your profile privacy is set to public and wait a minute or two if it wasn't already. This is as the Steam web api won't be able to check if you've unlocked the tied achievement in Dwarfs F2P.

Now with the hosts file addition, and the local server still running you can earn the achievement!
Load up the game and start up a singleplayer match. When you select a class and spawn the achievement should unlock if you meet the critera. This should happen within 1-10 seconds of spawning.

To meet the critera you need to have unlocked the Not-a-war-hammer Achievement in Dwarfs F2P.
https://store.steampowered.com/app/213650/Dwarfs__F2P/
What's actually happening
  • An entry to the hosts file is made for redirecting Steam api queries to your local machine which the local server will pick up when running.
  • The python script / compiled exe runs the local web server that'll handle the api request that KF makes.
  • Upon spawning into a KF match the game sends a query to the Steam api which the local server handles.
  • The local server sends the request it retrieves off to a python web server I have on Heroku. This web server queries the Steam api with the original request from KF and formats the Steam web api response in a way that the game can parse correctly.
  • The local server then receives this formatted response from the web server and sends it back to KF to read.

Here's a visual representation of the above.
Request tree: KF -> Local server -> Heroku server -> Steam api
Response tree: Steam api -> Heroku server -> Local server -> KF

Compared to without the fix.
Request tree: Kf -> Steam api
Response tree: Steam api -> KF
Heroku Script
- Not part of the guide for fixing the achievement. Purely for individuals wanting to self host this portion and future longevity. -
Putting this here so that if in the future my Heroku app goes down others can host there own and update the local script so the fix keeps working. Though I don't plan on it happening anytime soon.

Here's my web server script file that the local server queries and gets a request from for sending to KF.
Gist: https://gist.githubusercontent.com/ItsMeLeeson/b45a068ed0b7efb6d3f5be0b53a412a8/
Pastebin: https://pastebin.com/raw/sZSfNtPv
91 Comments
snips 15 May @ 11:01am 
can confirm the exiledcoalition server cykotitan posted works, got it instantly <3
cykotitan 28 Nov, 2024 @ 1:03pm 
There are currently two options

1. (easiest) Join 74.115.172.134:7713 (ExiledCoalition Achievement Server)
Source: https://steamproxy-script.pipiskins.com/app/1250/discussions/0/4520009742925946549/
Source: https://steamproxy-script.pipiskins.com/sharedfiles/filedetails/?id=2697119097

2. (advanced) Set up your own local dedicated server using a new steam account (SteamCMD apparently requires login now?)
SteamCMD guide: https://killingfloor.fandom.com/wiki/Dedicated_Server_(Killing_Floor_1)
Custom Mutator for Gimli Achievement: https://steamproxy-script.pipiskins.com/sharedfiles/filedetails/?id=2208764392 (files: System\KFGimli.u and System\KFGimli.ucl)
cykotitan 28 Nov, 2024 @ 10:34am 
gimil.herokuapp.com is down, Heroku removed free plans and someone will have to host that Heroku Python script themselves

see https://help.heroku.com/RSBRUH58/removal-of-heroku-free-product-plans-faq
Drunk Link 5 Oct, 2024 @ 5:53pm 
step 2 is indecipherable for me. exe is no longer available. and I can not connect to 209.126.8.123:7713

is there anything I can do without resorting to SAM?
Mado4SXT 1 Aug, 2024 @ 9:29am 
server doesnt work as I cannot join or fails to connect
ollympianwarrior 17 Sep, 2023 @ 2:11pm 
I dont know why but it didnt work, then i did what @Thechugg7 did and joined the server with the IP: IP: 209.126.8.123:7713 and it worked:)
SaiVi 8 Jul, 2023 @ 3:51am 
don't work :c
VenomBurn 26 Jan, 2023 @ 12:44pm 
I have this achievement in Dwarfs... but didint get in kf
Thechugg7 7 Jan, 2023 @ 2:34am 
This didn't work, however, not using this method at all and joining this IP: 209.126.8.123:7713
Worked!
Jet Black 26 Nov, 2022 @ 11:24am 
Works, super quick if you already have the achievement in Dwarfs!

:steamthumbsup: Good Guide