Repository navigation
Releases: SysopNetwork/Fracture
Releases · SysopNetwork/Fracture
Release list
Fracture v1.0.0
First release: the complete core game — a persistent tile world with daily
midnight evolution, exploration and first discoveries, camp building, resources,
workers and passive production, weather and seasons, a research track, a trading
post, player raiding, a server chronicle with daily news, a Fame leaderboard,
in-game sysop tools, and a freely sysop-editable message file (every dynamic
value is a named text variable).
Changed
- Every dynamic value in the message file — names, amounts, costs, coordinates,
the weather — is a named text variable (FRA_FAME,FRA_TARGET,
FRA_WX, ...) substituted by the host wherever it appears in the text,
replacing the positional%s/%ldprintf tokens. Sysops can therefore
reword, reorder, repeat, or drop any value when editing message text without
breaking the module — previously the token order had to match the code's
argument list exactly. World size and the day's weather and season are
computed live, so they are always current wherever the text mentions them.
New source pairTVARS.C/TVARS.H; message names, types, and order are
unchanged. - The main menu and the compact command bar were rebuilt as aligned grids. The
full menu is now two columns (half its former height) and lists U
Upgrade; the compact bar is a four-column grid with every tab starting at a
fixed column, its rows themed — world, camp, progress/rivals, then help/exit —
instead of the old ragged 4/4/4/2 wrap that left Board and Upgrade dangling.
Message names, types, and order were preserved, so the numbering is unchanged. - The location/map screen and every command prompt gained consistent spacing: a
single blank line after the location header, after the legend, and before the
menu. The menu itself now carries the leading gap, so the separation is uniform
on every screen. - Raid targets (
A name) now match case-insensitively, so a rival's name need only
be spelled right, not cased right (A himmeyfindsHimmey). - The status screen (
T) and the how-to-play text now show the real configured
world size (N x N) instead of a hardcoded value. - A new player's camp/home tile is charted on first entry (and when an
out-of-bounds player is relocated home), so it is never shown as "unknown" —
previously visible after the world was grown past its original size. - The screens were widened to use the full 80-column display: banners, rules, and
the menu tab bar now span ~74 columns (was 52), the tabs are spread out, and the
status and camp screens gained a blank line above and below their fields. Message
names, types, and argument order were preserved. - Visual overhaul: every player-facing screen was restyled in a consistent
shaded block-art ANSI look (CP437░▒▓█banners and gradient rules,▐▌
half-block menu tabs, a fixed cyan/white/yellow palette). The main menu,
welcome, status, camp, location header, news chronicle, and weather line now
share one visual language. Message names, types, and argument order were
preserved, so no code changed and no rebuild is required (the host recompiles
the.MSGto.MCVat startup). The.MSGis now generated from
TOOLS/GENMSG.PY. Sysops can still reword the
human-readable text. - The midnight cleanup routine now advances weather and seasons alongside the
world's terrain evolution, and logs a second audit-trail line naming the new
day's condition and season (summaryFracture's skies have turned). - The boot-time audit-trail entry now has personality: the console summary reads
Fracture's here. Act impressed.with detail
Fracture v1.0.0 Hold my juicebox.(was justFracture). A second line,
By SysopNetwork, follows it (each line carries the audit trail's own
date/time stamp). - The midnight world-evolution audit entry got the same treatment: summary
Fracture reshuffled the world, detail
N unexplored tile(s) reborn in the dark while you slept.(the count keeps it
verifiable).
Fixed
- A sysop
! resetcould later crash the door with a Btrieve duplicate-key error
(status 5) onFRACHIST.DAT. The history file resumed its sequence counter from
the physically-last record, which stopped matching the highest sequence once the
reset began deleting entries, so a later insert reused an existing key. The next
sequence number is now derived from the true maximum key by scanning the file,
which is correct regardless of physical layout and self-heals an affected file on
the next open. - The host's output more-prompt (
(N)onstop, (Q)uit, or (C)ontinue?) could
interrupt the game's own full-screen redraws for users with a short screen-pause
length, because the line counter carries across screen clears. The module now
runs nonstop while a player is in the game and restores their setting on exit,
logoff, or hangup, so screens no longer page mid-draw. - Pressing Enter at the main prompt drew the menu — and the
Choose:line —
twice. The empty-input case now relies on the single shared prompt redraw like
every other command path. - The first-time welcome (
FIRSTM) was being wiped immediately by the main
menu's screen-clear, so it never showed. The menu no longer clears the screen
itself (the entry message clears instead), so the welcome — and the new
arrival quips — now display above the menu. - A player whose stored position (or camp) fell outside the current world
bounds — which happens when the world size changes after they have started —
was stranded: the local map rendered blank and movement was blocked, though
other actions still worked. The main routine now brings such a player home
(re-founding an out-of-bounds camp at the map center) on entry. TheWLDSIZ
help text was corrected to describe how changing the size affects an existing
world.
Added
- Ten more sysop options, exposing balance values that were fixed in code:
Fame rewards (FAMEDISCfor first discoveries,FAMEBLDper camp tier
built,RADFAMEfor a winning raid), action costs (TRAVAPper tile
travelled,SRCHAPper search), the worker recruit cost (WRKCWOOD,
WRKCFOOD), the camp tier required to raid or be raided (RADMIN), and
the sizes of the news view and the Fame leaderboard (NEWSMAX,BRDMAX).
The raid screens now name the required camp tier — and the raid-win Fame —
from the live settings instead of fixed text. In the configuration editor
all options appear under a single "Fracture: configurable options" section
and all message text under a single "Fracture: module text" section (the
editor shows one grouping per level per file). - In-game sysop tools (
SYSOP.C/.H): live administration gated by the BBS
SYSOP key, reached from the main prompt with a hidden ! command that is
invisible to players.! find <name>shows a player's full record;! set <name> <field> <value>edits Fame, Action Points, resources, camp or research tier, or
position;! ap <name|ALL> <n>grants Action Points;! wipe <name> YESdeletes
a player;! reset CONFIRMwipes every player, regenerates the world, and clears
the news. The two destructive commands require a literalYES/CONFIRMtoken,
and names match case-insensitively. Admin output usesprfonly, so no
message-file entries were added. New data helperspl_wipeall,pl_ap_all,
pl_leaderboard,wld_reset, andhist_clear. - Fame leaderboard: F shows the top explorers by Fame, the caller marked with
their rank beneath. It reads the roster and sorts in memory, and costs no Action
Points. Listed in both menus (the compact bar also now surfaces the existing
U Upgrade command). - Batch travel:
<dir> [R] [count](e.g.W R 3) walks several tiles in one
direction, optionally searching each, stopping at the world edge or when Action
Points run out, then redrawing the map once with a one-line trip summary (tiles
charted, Fame, resources gathered, Action Points spent). A plain single step is
unchanged. - How-to-play screen: ? now opens a one-page guide — the world, how Action
Points work, what each command does, and that Look, Status, Help, and the Board
cost no Action Points. (Previously?only reprinted the command list.) - Player raiding (
RAID.C/.H): the first player-versus-player interaction.
A lists raidable rivals (players who have built past a Tent, with their camp
tier and Fame); A name raids one. The clash rolls each side's camp tier plus
research plus a die, the defender favored on home ground; win and you carry off a
sysop-set share of the target's resources (capped by your storage) plus Fame, lose
and the Action Points you spent are the cost. Both raider and target must have a
Cabin or better, so newcomers are safe and can neither raid nor be raided. A raided
player sees a "RAIDED!" notice on their next login. No new data file (the raid
counter reuses a spare record byte). Sysop options:RADOPT(on/off),RADCOST
(Action Points per raid, default 5),RADLOOT(percent looted on a win, default
25). - Research track (
RESEARCH.C/.H): a five-tier knowledge ladder (Untrained →
Sharpened Tools → Field Survey → Logistics → Master Craft) that permanently
improves how a player plays. Each tier raises gather yield (up to +100%) and, from
the Logistics tier, shaves an Action Point off travel. K shows the research
bench (the whole ladder with your tier marked and the next tier's cost); K R
advances one tier for a scaling resource cost (Wood and Stone, Metal from tier 2).
The tier is stored in a spare byte of the player record, so there is no new data
file and existing players start untrained. Sysop optionRSCHOPT(on/off). - Trading post (
MARKET.C/.H): a server-wide exchange for turning resources into
Fame and back. M shows the post — a sell and buy price per resource (each
weighted by scarcity: Metal ×3, Food ×2, the rest ×1) and ho...