Fixed: Weapons whose trigger had flag "analog rate of fire" now read how far the trigger is pulled: fully for mouse/keyboard, the actual pressure for a controller trigger. Before they never fired.
source/input/input_abstraction.c
source/input/input_abstraction.h
source/game/player_control.c
Fixed: Weapon spawn orientation on Custom Edition maps. Multiplayer weapons and items now spawn facing the way the map places them, as in Halo PC.
source/game/game_engine.c
Added: PC vehicle set. There's a new PC option in the vehicle set list, between Gun Turrets and Custom. A team set to PC gets every vehicle the map places, as in Halo PC. On Custom Edition maps that means every placement whose spawn flags name the gametype.
port/assets/menus/ce/strings.xml
port/linux/game/menu_functions.c
source/game/game_engine.h
source/game/game_engine.c
Added: Start LAN, internet and split screen games alone. A game with one machine and one player can now start. Pressing start alone begins the countdown, others can join while the game is in progress, and the lobby no longer says it's waiting for another machine or player.
source/networking/network_server_manager.c
source/interface/ui_widget_game_data_input_functions.c
- input.h: struct key_stroke ascii_code is a char (January stores NONE as
-1; XINPUT_DEBUG_KEYSTROKE.Ascii is CHAR); edit_text.c drops its (byte)
cast on the NONE test and stays 5/5. Measured board-wide over all 24
includers: 0 regressions.
- input_xbox (27/27): _input_get_device_states with indexed gamepad and
button loops and a MIN tick clamp (park reopen);
_input_update_keyboard_devices with a short key-code loop and uncast
ascii ternary (park reopen)
- _structure_test_pill2d (624 B, previously unwritten): left/right offset
line tests via point_from_line2d and the nearer collision
- _find_turning_point: normalize2d/point_from_line2d/set_real_vector2d
replace hand-expanded helper math
- _structure_visibility_build_surfaces_traverse_leaf: the static
bounding_rectangles_intersect returns short through one result (park
reopen)
Rejected: _first_person_weapon_update (removed NULL guards, UB hold).
Follow-up: _path_test_pill_endpoint_near_wall_ok_bit is file-local in both
path_smoothing.c and path_structure_bsp.c; its owner is path_structure_bsp.h.
Stable diff: 0 regressions; parks 226 -> 223.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Wave w3d batch 1 (the structural retarget: census the frame, the [ebp+/-N] slots
and the relocations before proposing any shape).
- action_vehicle _action_vehicle_evaluate_seat (+976): the unit called
vehicle_specific_definition_get through a C4013 implicit declaration; including
its genuine owner units/vehicle_definitions.h fixes the call, and January's
single-exit shape puts the three seat points in the taken branch's own block
instead of behind an early return.
- input_xbox _input_update_analog_button_state (+48): park reopened and removed.
- effects _effect_allowed_by_environment and _effect_generate_particles: coupled
A8 callee/caller re-baseline, ZERO credit. Both are now January-exact in padded
size (and relocation count for the caller) and stay parked and fuzzy; the
remeasures carry dated evidence in config/parked.json.
Full ninja, parks 277 active / 0 stale / 0 invalid, stable diff vs
scratch/claude250k-start.json: gained 3 / 1,824 bytes, regressions 0; fake scan
0 leads.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Wave w2 landing, adversarially verified. park reopens: _input_abstraction_update. Full ninja build and per-function stable_verdicts sweep: 0 regressions. 1 park(s) removed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* misc changes and additions
formatting changes and add structs/constants for terminal work
* match write_to_error_file and add error_global_data
* console work
* requested changes
* terminal work
100% match all terminal functions
* Formatting
---------
Co-authored-by: punpckhdq <121350336+punpckhdq@users.noreply.github.com>