LABDSTUDIOS

GPC scripts
for NBA 2K.

Cronus Zen and Titan Two. Release windows you can retune whenever needed.

Game
NBA 2K27
Devices
Zen · Titan Two
Status
Pre-launch

What this is

Game
NBA 2K27
Devices
Cronus Zen, Titan Two
Consoles
PS5, Xbox Series
Language
GPC
Tested against
Patch 1
Retune cadence
Every patch
Scripts
2 in validation

Profile based auto rhythm timing.

The rhythm is timed for you. You shoot, the script holds through the gather and cuts the input inside the window, so the part that usually comes down to feel is handled.

Every window is stored against a profile, because the spread between the fastest and slowest jumpshot on a roster runs to roughly 40ms and one global number cannot cover that.

Free throws and your go-to shot run on windows of their own, alongside the automatic timing rather than folded into it.

Devlog →

Capability

What's in the builds

Each item is on the on-screen menu. Scroll to see the code behind it.

  1. Green release

    Holds through the gather and cuts the input once you are inside the window. It reads from one named constant, so retuning after a patch comes down to a single edit.

  2. Per-player profiles

    Eight stored windows, because measured across a roster the spread between the fastest and slowest jumpshot runs to about 40ms, which is nearly three frames and well beyond what one global value can cover.

  3. Free throw timing

    A fixed release on its own button, where the window stays identical possession to possession and there is nothing to be gained from leaving it to feel.

  4. Go-to shot

    Your signature jumpshot gets a stored window of its own, recalled the moment you shoot it, so the shot you live on is the one tuned most precisely.

  5. VC farming

    Banks VC unattended through normal gameplay. The idle nudge drifts its interval on purpose, since a perfectly regular input is the easiest possible pattern for anything to spot.

release.gpcGPC
define GREEN_WINDOW = 612;   // ms, Patch 1
define JITTER       = 11;

if (get_val(SHOT_BTN)) {
    held_for += get_rtime();

    if (held_for >= GREEN_WINDOW - JITTER) {
        set_val(SHOT_BTN, 0);
    }
}
profiles.gpcGPC
int window[8];
int slot;

// recall the window for the active jumpshot
// rather than reusing one global number
tuned = window[slot];

if (event_press(MENU_NEXT)) {
    slot = (slot + 1) % 8;
}
freethrow.gpcGPC
if (event_press(FT_BTN)) {
    hold_ms = ft_window;
    combo_run(free_throw);
}

combo free_throw {
    set_val(SHOT_BTN, 100);
    wait(hold_ms);
    set_val(SHOT_BTN, 0);
}
goto.gpcGPC
// the shot you actually live on
int goto_window;

win = is_goto ? goto_window
              : window[slot];

if (held_for >= win) {
    set_val(SHOT_BTN, 0);
}
farm.gpcGPC
define IDLE_NUDGE = 232000;
define DRIFT      = 9000;

idle_ms += get_rtime();

if (idle_ms >= IDLE_NUDGE + drift) {
    idle_ms = 0;
    drift   = (drift + 2600) % DRIFT;
    combo_run(Nudge);
}

Featured

Scripts

In validation against the live patch. Not for sale yet.

Everything in the store

Release status

Status

Current targets. The table updates when they move.

ScriptDeviceStateTarget
DUD ALPHACronus ZenLiveTBC
DUD VC BLACKTOP v1Cronus ZenLiveQ4 2026
DUD MYNBA v1Cronus ZenIn validationIn testing
Titan Two portTitan TwoIn developmentQ1 2027