mirror of
https://github.com/jkdansereau/goldeneye-pc-port.git
synced 2026-10-23 15:52:42 +02:00
Fixes: - D565: AI awareness no longer follows two player render settings. Fog distance is floored at 100 (below it the shortened clip hid guards from AI on-screen checks); the D466 gameplay fog cull is rescaled to the game's own FOV (identity at defaults). - D566: Steam Deck Game Mode no longer shows the on-screen keyboard at launch (SDL text input stopped; screen-keyboard hint off). - D567: opening PC Options from the front end with a pad no longer drags the game's crosshair to the top-left corner. Docs and site: - README News/Status/Features/controls brought up to date; the unpublished v0.4.1 work is folded into v0.5.0 everywhere; stats to v0.5.0. - Release notes reordered: player-facing highlights first, finding labels and verification at the bottom. - Site status rewritten; favicon is now the exe icon (make_icon.py writes docs/favicon.ico). - ROADMAP: AI review results, update-check follow-up, stale rows closed. Verified: Windows + Linux builds; Windows pixel gate Surface 1 PASS; Deck build deployed for the maintainer's Game Mode checks.
33 lines
1.5 KiB
Markdown
33 lines
1.5 KiB
Markdown
---
|
||
title: Input and aim
|
||
description: How the GoldenEye 007 PC port maps keyboard, mouse and modern controllers onto the N64's controller, including mouse aim.
|
||
date: '2026-10-05'
|
||
modified_time: '2026-10-05'
|
||
---
|
||
|
||
## Input and aim
|
||
|
||
`port/src/input.c` maps **SDL2 keyboard, mouse and gamepad** events into the
|
||
N64's own controller structs, so the game's input code runs unmodified.
|
||
|
||
**Mouse aim** is modelled on the *GEPD* mouse-injector behaviour that the 1964
|
||
"GoldenEye/Perfect Dark Edition" bundle used — an **independent
|
||
reimplementation** of that behaviour (not derived code), credited to its
|
||
author in the README. It comes in two styles, the N64's own aim feel or a
|
||
centered FPS-style, with per-device sensitivity, smoothing and Y-inversion.
|
||
|
||
**Controllers:** modern pads get a dual-stick layout, deadzones,
|
||
sensitivity, southpaw, trigger thresholds, Rumble-Pak vibration, and
|
||
PlayStation/Nintendo button names. **Everything is rebindable** — keyboard,
|
||
mouse and each controller — in the F10 options overlay. Split-screen needs one
|
||
controller per extra player.
|
||
|
||
**Control style** offers **Ext** (this port's scheme) or **Original**, the
|
||
game's own N64 styles 1.1–2.4, chosen per seat. New profiles start with
|
||
**Look ahead** off (it fights mouse look) and **Crouch** on Toggle; the
|
||
game's own Look up/down row was removed in favour of **Invert look** on the
|
||
Mouse and Controller pages.
|
||
|
||
*More: [internals](internals.md) §7 (input & saves); the aim model's
|
||
provenance is the D194 lineage in `port/src/input.c`.*
|