blob: 050aac9d89ac61bd6193a6fa86466947823eeacc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
  | 
# gsctool
```
  ________________________  ____  __ 
 / ___/ __/ ___/_  __/ __ \/ __ \/ / 
/ (_ /\ \/ /__  / / / /_/ / /_/ / /__
\___/___/\___/ /_/  \____/\____/____/
                 
```
Simple `GSC` script loader and dumper for the `PC` version of `Call Of Duty: Black Ops 1 (T5)`.
[`https://journal.lunar.sh/2023/gsctool.html`](https://journal.lunar.sh/2023/gsctool.html)
To load the demo `GSC` plugin, copy `gsctool` to the game's root directory.
This demo will give you a `raygun` on spawn in `SP` zombie mode. 
* `GSC` dumps are written to `gsctool/cache`.
> Note: This project is intended to be a starting point for more advanced `GSC` modding.
# Instructions
Run: `git submodule update --init --recursive` to clone submodules.
Then build project using the provided `makefile` in `WSL` (`Windows`)
and inject resulting `DLL`.
The compiler used for this project is [`tcc`](https://github.com/lunarjournal/tcc) (`Tiny C Compiler`).
> Note: You can modify and hot-reload `GSC` scripts while `Black Ops` is running by quiting
the level and starting it again.

Files:
<br/>
* `gsctool.h` - `GSC` loader definitions.
* `gsctool.c` - `core` implementation.
* `offsets.h` - `T5` function `offsets`.
# Dependencies
* [`cdl86`](https://github.com/lunar-rf/cdl86) - `x86_64` detours library.
* [`miniz`](https://github.com/lunar-rf/miniz) - `zlib` library.
# Signature
```
+---------------------------------------+
|     .-.       .-.       .-.           |
|    /   \     /   \     /   \     +    |
|         \   /     \   /     \   /     |
|          "_"       "_"       "_"      |
|                                       |
|  _   _   _ _  _   _   ___   ___ _  _  |
| | | | | | | \| | /_\ | _ \ / __| || | |
| | |_| |_| | .` |/ _ \|   /_\__ \ __ | |
| |____\___/|_|\_/_/ \_\_|_(_)___/_||_| |
|                                       |
|                                       |
| Lunar RF Labs                         |
| https://lunar.sh                      |
|                                       |
| Research Laboratories                 |
| Copyright (C) 2022-2024               |
|                                       |
+---------------------------------------+
```
  |