Skip to content

gw-preservation/network-logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Guild Wars network logger

This project builds a .dll file to be placed alongside your Guild Wars executable (Gw.exe). It will then be automatically ran in by the game client. By saving network data between the game server and your client you are able to keep a permanent copy of every aspect of network-related gameplay with 100% accuracy. This is the best type of data for understanding how the game runs.

How does it work?

Once you choose a character to play it starts logging to disk network activity between the game server and your client, in your Guild Wars documents folder. It is only able to log network messages to/from the game server, and as such, cannot log any credentials.

The files produced are stored in your Guild Wars documents directory (like "C:/Users/User/Documents/Guild Wars/") starting with "network-log" and ending in .raw. A new one wit a unique name is produced each time Guld Wars is ran.

Downloading

Head to the releases section to find the latest official version.

Building

The project is written in C, and designed to be compiled with either tcc on windows (or linux with wine!), or cross-compiled using mingw from a linux host.

In the tcc/ folder, there is a fully up-to-date version TinyCC (0.9.28rc).

This means you should only need to run build.bat to compile the .dll file. It should compile extremely quickly. Linux users can run build.sh instead.


If you want to update, or build the C compiler yourself:

  1. get latest published version from https://download.savannah.gnu.org/releases/tinycc/. this will be used to build the newer version.
  2. go into the folder of the source code of the version of TinyCC you want to build and run:
cd win32
build-tcc.bat -c <path_to_downloaded_tcc\i386-win32-tcc.exe> -i out/
  1. overwrite any files in the tcc folder in this repo with the contents of out/