Skip to content

rage 0.17.0

Choose a tag to compare

@VIRUXE VIRUXE released this 20 Sep 00:32
· 13 commits to main since this release

The first release since v0.13.0 under the new name: the binary is rage, built on the published rpf-archive 0.10, rage-formats 0.1 and rage-render 0.1 crates. rage update keeps working from any installed build; see "Upgrading from rpf-cli" in the README if you still run rpf.

rage plot — a top-down plan of an interior (0.17.0)

rage plot <input>... -o plan.svg draws a floor-plan of an MLO from whatever it is given: a FiveM resource folder, loose .ytyp/.ymap/.ybn/.ydr/.ynv files, or a vanilla interior by archetype name through the game index (rage plot v_bahama -o plan.png).

  • Rooms coloured and named, portals on the doorways (exterior ones dashed), props as labelled dots, collision floors and walls underneath, navmesh polygons on top.
  • Grid with world-coordinate ticks, scale bar, north arrow, legend and a caption that says where the placement came from.
  • --floor-z Z or --z-range LO,HI draws one storey; a warning tells you when rooms stack.
  • --layers picks layers; --labels names portals and props; --marker x,y,label pins points.
  • PNG, JPEG, WebP or SVG by output extension. The SVG keeps labels as text and embeds the mesh layers as an image.
  • Only the interior's own collision is placed through the MLO instance; vanilla world-space .ybn chunks in the same folder are drawn where they are. Escrow-encrypted models are counted and skipped. When a .ytyp stores room boxes as unpositioned half-extents, room footprints are estimated from props and portals.

rage navmesh plot is gone; it prints a pointer to rage plot. The game index is now format 5 (interiors, their placements and collision names); an old cache rebuilds itself, and rage index build is about 7% slower.

Since v0.13.0

  • Renamed from rpf-cli to rage-cli; the resource parsers and the renderer moved to rage-formats and rage-render.
  • rage navmesh: info, cell, export, ybn-obj, build and rewrite to inspect, fetch, export, generate (from collision, carving placed props out of the floor) and round-trip navmesh cells.
  • rage screenshot: external texture dictionaries resolved through a game-wide index (gtxd parent chains, resident dictionaries as a fallback); the camera frames the dominant geometry island.
  • The index ranks archives base → update → DLC so later packs override earlier ones.