Skip to content

Argent Forge 1.2.1

Choose a tag to compare

@Xcommand Xcommand released this 18 Oct 10:22
· 28 commits to master since this release

Argent Forge 1.2.1

A LANGUAGE file written as a spreadsheet. That's the shape a modern port uses for its own strings:
one line per string, one column per language, thirty of them inside one file. The Language
Constructor opens it now, on the rules it already had.

The port's own language.csv as a table: four of its thirty-one languages on screen, and the rows nobody has translated standing quiet

What opens

  • The dropdown picks the file as ever. Over a table like this Additional asks which of its
    languages to put beside the first one, because thirty columns at once is nobody's idea of a table.
  • A cell the file left empty is a language that hasn't got the string, which is exactly what the
    engine reads: the game falls back to the source text. The column shows that text quietly, and what
    you type goes into the empty cell rather than into a second line for the same string.
  • A line break inside one of those cells is written there as a real newline, where a mod's own lump
    writes the two characters \n. The table shows the marker either way and gives the file back the
    spelling it uses.
  • default is an ordinary column: read it, edit it. Filter, which marks a row as belonging to one
    game, is read and left where it is.

What it doesn't do yet

  • Add new language won't add a language to such a file. There a language is a column of the header
    rather than a block to open, and writing one means touching every line of the table.
  • The Menu Constructor's preview resolves a $KEY through the default column, so a port's strings
    come out in English whatever language you picked there.

Why it was slow until now

Reading a table of two thousand lines cell by cell cost fourteen seconds per redraw. The reader keeps
an index by label and the file's own list of languages now, and the same table redraws in a tenth of
a second.

Checked before the build

Over the port's whole table, 1 743 400 bytes, 33 columns, 2369 lines: read, edited and written back
with nothing lost beyond the cell that was edited; one edit moves one field and no other; an empty
field fills in place; a new line taken back out leaves the file byte for byte what it was. The same
checks run on a slice of that file kept in the tree, so they don't need anyone's mod folder.

Carried from 1.2.0

Two things went wrong in that build and were fixed the same night, in the archive that went out under
the 1.2.0 name. The Menu Constructor's language dropdown showed a file while the window still thought
none was picked, so a new $key was refused without a word; and its preview read the language once,
when the window opened, so a translation typed in the table kept showing its old text. A key typed
into an empty field now takes its own name as the text rather than nothing.

Guide

Translating a language
grew a section on the spreadsheet shape, including the two limits above.

Get it

argentforge_1.2.1_win64_portable.zip below: unpack the folder anywhere and run ArgentForge.exe.
Nothing is installed and no file is written beside the exe. It keeps its own settings folder, so an
existing SLADE install is untouched, and Settings > Extra Features > Integration pulls an old
SLADE configuration across once. Needs 64-bit Windows.