Grid Sage Forums

Grid Sage Forums

  • July 13, 2024, 01:36:22 AM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  


LINKS: Website | Steam | Wiki

Author Topic: REXPaint 1.50 Released! (now supports more than 256 char tilesets, and more)  (Read 5189 times)


  • Administrator
  • True Cogmind
  • *****
  • Posts: 4334
    • View Profile
    • Cogmind

REXPaint has a new update, and we're going all the way to 1.50!

This release combines all of the cumulative feature request patches released on the forums over the past couple years, and most importantly includes what was originally planned to be a 2.0 feature: unlimited character bitmaps! Custom fonts are no longer limited to CP437's 16x16 grid, and can add as many rows as you like to include additional glyphs or otherwise expanded tilesets--lots and lots of room for especially the gamedev REXPaint users out there ;)

REXPaint 1.50 (200803) changelog:
  • NEW: Support for more than 256 glyphs in a single font (scroll with wheel or PgUp/Dn)
  • NEW: Adjustable wheel-based extended glyph scrolling ("glyphScrollRowCount" in cfg)
  • NEW: Manual provides additional information about extended custom fonts and tilesets
  • NEW: Multi-layer support for Copy/Cut/Paste tools, use 'd' and Shift-d to adjust the desired operational depth
  • NEW: Full layer copy (Ctrl-Shift-c) obeys current multi-layer copy depth setting as well
  • NEW: Cycle images while in Paint mode using Ctrl-Up/Down
  • NEW: Reload all image files via Ctrl-Shift-r or the Browse window's "R" button
  • NEW: Batch export of all .xp images to PNGs supported via command line (see manual Appendix H)
  • NEW: Export to format used for art in Cataclysm: Dark Days Ahead (Ctrl-j) (see manual Appendix I for more info)
  • NEW: Toggle transparent cell visibility with 'n' (only shows current layer)
  • NEW: Switch between two different preset transparency visualization color schemes (editable in skins.xt) (hotkey Shift-Alt-n)
  • NEW: Manual explicitly states that alternative paste modes affect the results of any copy action
  • NEW: Manual explicitly states that custom fonts always treat index 32 as a space, regardless of what the bitmap contains there
  • MOD: Font config for custom fonts requires specifying the number of columns and rows present in each bitmap font
  • MOD: Options menu Default Image Background (applies to new images, expansions from resize, layer 1 areas) now defaults to transparent instead of black
  • MOD: Holding Alt while cursor hovering over font glyph highlights matching glyphs across a layer using a different style rather than simply flashing them
  • MOD: "Shift all layers in indicated direction" hotkey changed to Shift-Arrow/Numpad
  • MOD: Color Shift Mode hotkey changed from Ctrl-h/s/v to Shift-h/s/v
  • MOD: Keyboard's Pause key no longer has an effect
  • FIX: Canvas-sized image created on opening also obeys Default Image Background setting
  • FIX: Version check functionality restored after an unexpected server change broke the previous connection system
  • FIX: Using separate fonts for GUI and art was not compatible with the new selected glyph preview in the Apply box
  • FIX: Optional glyph hover ID display was off by one
You can download REXPaint here, and note that as of 1.04 it's also available on

Regarding the new extended font support, here's the relevant excerpt from the manual:
Although the default number of rows in a font bitmap is 16, and that is the largest number REXPaint will display at once, fonts with additional rows are supported, essentially allowing space for an "unlimited" number of glyphs in an image. Simply specify the proper number of rows available for the relevant art font in _config.xt and it will be loaded normally (16 columns is still a requirement), then you can use PgUp/Dn or the scroll wheel (with cursor in the glyph area) to see and use glyphs beyond #255. The mouse scrolling rate can be adjusted in REXPaint.cfg via glyphScrollRowCount. If any art fonts have more than 16 rows, the font window will display numbers at the top right indicating the number of rows currently above and below the current view. To make it easier to use large tilesets, by default right-clicking on an image glyph to select a glyph currently outside the viewable glyph window does not automatically scroll the view to show it unless you right-click on the same selected glyph a second time, though you can overide this behavior and have it always scroll immediately by setting glyphSelectAlwaysAutoscrolls in REXPaint.cfg.

For those of you updating your install from a previous version in which you're using custom fonts/tilesets, note that due to the new expanded character support, the format of fonts/_config.xt has changed a bit, requiring you to explicitly list the number of columns and rows in each font file. See the default install's included version for the proper formatting.

Some of the new features in action

Playing with a custom extended tileset (specifically Kenney's 1-bit pack).

Using explicit transparency mode to visually isolate layers from one another.

Ctrl-Up/Down cycling through images in Paint mode.

Multilayer copy/paste.

Enhanced glyph usage highlighting.

Exporting art to the JSON format used by Cataclysm: Dark Days Ahead (CDDA).

Happy painting/designing/mapping/developing!
« Last Edit: August 02, 2020, 09:29:52 PM by Kyzrati »
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon


  • Unaware
  • *
  • Posts: 10
    • View Profile

Whoa this looks neat, congratulations on the new release ! I'm especially happy about support for larger fonts.


  • Administrator
  • True Cogmind
  • *****
  • Posts: 4334
    • View Profile
    • Cogmind

Thanks :D

And yeah it's definitely been the biggest user request for years now, but as a decently big expansion I'd intended to leave it for 2.0 when I could build it together with a new UI. Then recently one day I decided to go for it anyway "just to see what it might take," and ended up powering through it so we ended up getting early as 1.5!
Josh Ge, Developer - Dev Blog | @GridSageGames | Patreon