Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411423 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 18, 2024, 03:18:28 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperArt (Moderator: JWK5)REXPaint, an ASCII art editor
Pages: 1 [2]
Print
Author Topic: REXPaint, an ASCII art editor  (Read 25676 times)
Kyzrati
Level 10
*****



View Profile WWW
« Reply #20 on: March 31, 2014, 02:27:09 PM »

Wow, nice! Thanks for dropping by to post these. I like the idea of the clouds on the map Wink

How far along is the game? Just at the mockup stage right now for someone you'll eventually be making?

This is a fantastic piece of software, thanks very much for working on it (and to everyone who worked on earlier versions). I'm amazed at how polished it is.

REXPaint is not based on the other few ASCII programs floating around out there, though the interface does have some similarities in organization. In fact, others have a few features that mine doesn't, so for some users they could be worth checking out, though none are as polished as REXPaint overall--I like polish because I need a powerful and efficient tool for my own work Wink

I plan on continuing to release new versions as I have time (and need the features). Also, if you have anything you need I also consider requests.
Logged

Pishtaco
Level 10
*****


View Profile WWW
« Reply #21 on: March 31, 2014, 10:27:52 PM »

REXPaint is not based on the other few ASCII programs floating around out there, though the interface does have some similarities in organization. In fact, others have a few features that mine doesn't, so for some users they could be worth checking out, though none are as polished as REXPaint overall--I like polish because I need a powerful and efficient tool for my own work Wink

I plan on continuing to release new versions as I have time (and need the features). Also, if you have anything you need I also consider requests.

Sorry for the misunderstanding (and thanks again). One tiny issue - if I want to change the font size with ctrl + pageup/pagedown,  I need to release the ctrl key and press it again. It doesn't recognize it if I keep it held down.

I'm working on the game now. There's the beginnings of a devlog here. I started it for the 7drl challenge, and am hoping I can keep it as a short project.
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #22 on: March 31, 2014, 10:36:46 PM »

I've known about that particular issue for quite a while, and seeing as I forgot why I didn't fix it last time, I suppose it's time to look at it again Wink I really should find a workaround to solve whatever's causing that!

Thanks for the link, I'll be checking it out.
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #23 on: April 29, 2014, 03:43:09 AM »

After finishing hundreds of pieces of art last month then suddenly doing none this month after moving on to other parts of my game, I had to scratch the ASCII art itch and created this:

Organic Mainframe
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #24 on: August 26, 2014, 07:29:44 PM »

For anyone who wants to play with palettes and fonts from legacy systems, those resources are now available for download (compatible with earlier versions of REXPaint--they don't come with the program).

Palettes from Atari 2600, Apple II, Commodore 64, NES, Sega Master System, ZX Spectrum, and more:


Fonts from Aquarius, MSX, Phillips VG 5000, ZX81, and more:


New version of REXPaint coming soon.
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #25 on: September 01, 2014, 09:55:48 PM »

New version is ready for download! (R9/beta v0.99)
Notes here.
Download here.

Quite a few improvements:
* NEW: Image-wide single-color swapping (Shift-LMB in palette window)
* NEW: Scroll image up/down with Shift-Wheel
* NEW: Switch between current/previous image with Ctrl-Tab
* NEW: Separate undo history maintained for each image, making simultaneous editing of multiple files easier
* NEW: Expanded undo support to include image resizing and layer manipulation (all possible edit actions can now be undone)
* NEW: Active layer and layer hide states are now stored for inactive images
* NEW: Set default image dimensions and background color in config
* NEW: Optional hex input/output in color picker
* NEW: Palettes/skins/configs can now specify hex color codes (in addition to RGB/HSV/named colors)
* NEW: Duplicate image names are allowed, provided each image is located in a separate subdirectory
* NEW: Images with changes are auto-saved after a certain duration (interval set in config)
* NEW: Left/Right arrows skip to previous/next directory in image browser
* NEW: File browser supports directory collapsing/expanding (click on folder name)
* NEW: Ctrl-Left/Right collapses/expands all subdirectories
* MOD: Cutting from bottom layer auto-fills area with default image background color (used to be transparent)
* MOD: Set-swap palette color command changed to Alt-LMB
* MOD: Grid resolution command changed to Alt-Wheel
* MOD: Image-wide glyph swap command changed to Shift-LMB (to match new color swap command)
* MOD: .xp files now begin with an internal format version number (will retroactively auto-update old files)
* MOD: File browser extends to full window height when config dimensions are greater than default
* MOD: Create image in image browser subdirectory command changed to Shift-LMB
* FIX: Palette color moving works again (borked in R7 by glyph swapping implementation)
* FIX: Failure to load an image could crash file browser
* FIX: Two mixed-line ASCII codes were inversed (only affected flip-paste orientation)
* FIX: Significant optimizations when processing massive images (render performance equivalent to small images)
* FIX: Undo/redo functionality was failing for image-wide glyph replacements in multi-layered images
* FIX: Undo/redo updates image unsaved changes indicator when applicable
* FIX: Copy tool retains transparency of content selected from non-base layers, rather than converting it to black on paste
* FIX: Skipping to previous directory in image browser via key command (Left/Ctrl-Up) selects first contained image rather than last
Logged

Trihook
Level 0
**



View Profile
« Reply #26 on: September 06, 2014, 02:54:32 PM »

Any word on supporting fonts with more than 255 chars?
Logged
Kyzrati
Level 10
*****



View Profile WWW
« Reply #27 on: September 06, 2014, 03:09:00 PM »

It's likely, but I would consider that a "major" feature and not one that I (currently) need myself so the time until implementation is up in the air.

Not to be selfish or anything, but only a couple people have asked for this, and REXPaint is developed as an in-house tool that I happen to have made available for public use, so I'm more inclined to add whatever I need to get the job done, or feature requests that don't take as long to add.

Unlimited character support may be available... next year? Probably in a post-1.0 update. If more people show up requesting it I will move it up in the time frame.
Logged

surt
Level 7
**


Meat by-product.


View Profile
« Reply #28 on: September 06, 2014, 04:10:55 PM »

Tried this under wine: looks nice but is unusable as it runs smoothly for two seconds then freezes for half a second and repeats. Weird.  Huh?
Logged

Real life would be so much better with permadeath.
PJ Gallery - OGA Gallery - CC0 Scraps
Kyzrati
Level 10
*****



View Profile WWW
« Reply #29 on: September 06, 2014, 04:22:08 PM »

Definitely weird, since Wine users have reported for years that the engine runs smoothly. I don't have Wine myself so sorry that I can't test it out, but it's likely something to do with the particulars of your setup.

Unless of course I made some change in this most recent version and just haven't heard from anyone else about it yet Wink Windows users have been reporting only good things--Linux is a pretty small share of the users. In any case, thanks for the report!
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #30 on: May 30, 2015, 08:37:23 PM »

No new release of REXPaint yet, but I've set up a new discussion board for REXPaint users over on my new forums. They're brand new (just opened with the launch of my new game, Cogmind), so it may take a little while for users to trickle in. Just mentioning as it will become an alternative and more inclusive avenue for discussion in the future. (RP users have been spread out over a lot of different forums...)
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #31 on: July 28, 2015, 12:30:22 AM »

I've posted an in-depth guide to how I use REXPaint for roguelike development--mockups, art, prefabs and more--including specific techniques and plenty of reference images. Check it out here.
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #32 on: November 13, 2015, 08:13:04 AM »


REXPaint is a pretty mature tool now, and a ton of people are using it, so it's about time it got its own home on gridsagegames.com.

I've retired the old blog and REXPaint now officially belongs to the world of Grid Sage Games. Updates will continue when I have the time, and in fact the move to a new website is part of preparation for the symbolic "1.0," to come soon.

The new site's content is similar to the original blog, but prettier, easier to navigate, and comes with some extras.

On the main page you can see a recording I made while mutating my old organic mainframe piece to show off some of REXPaint's features:
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #33 on: December 21, 2015, 07:35:29 PM »

After more than two years since its inception, REXPaint has finally reached 1.0 :D

More fonts, cellwise HSV tweaking, layer locking, options menu, and more!

Full release notes and demo images can be found on the dev blog here.

The full REXPaint 1.00 (151220) changelog:

* NEW: Added more CP437 fonts (greater range of image zoom/scale options): 14x14, 18x18, 20x20
* NEW: Cellwise HSV color shifting of both foreground and background (interval controlled in options)
* NEW: Info window shows palette/art foreground/background color values under cursor, either RGB or HSV (toggle with 'q')
* NEW: Rect/Copy tools can show area dimensions directly on the canvas (toggle via "RDim" button, or Ctrl-d)
* NEW: Lock individual layers to prevent accidental modification ("Lck" button, or Shift-1~4)
* NEW: Hold Alt while cursor hovering over a palette color to highlight all uses in image (akin to glyph highlighting feature)
* NEW: Options menu (the 'O' button at the bottom, or F2)
* NEW: Program settings changed while running are saved/remembered for next time, without requiring cfg modifications
* NEW: Exiting while image(s) have unsaved changes requires confirmation (can be disabled in options)
* NEW: Reset image location to top-left corner via Enter (centering switched to Ctrl-Enter)
* NEW: Ctrl-RMB copies the uppermost visible cell at that position in a multi-layered image (working w/reference layers, etc.)
* NEW: Premade Arne32/Arne64 palettes available from the website resources page
* MOD: Enhanced 16x16 CP437 font's relative proportionality with other fonts
* MOD: Image dimension limits increased from 999x999 to 2500x2500
* MOD: Removed Undo/Redo buttons to save space (use ctrl-z/y instead)
* MOD: Autosaving now inactive by default (must set desired interval value in options)
* MOD: Layer delete button changed from "Del" to "X"
* MOD: Palette/color swaps only operate on unhidden layers
* MOD: Changes to layer hide/unhide/active states no longer count towards the unsaved progress indicator
* MOD: Different cfg format, now that options are available from within REXPaint itself
* MOD: Change skin keyboard command switched from F2 to F3 (also now accessible directly from options menu)
* MOD: License in README file more explicit about commercial use of images
* MOD: Removed backwards compatibility with pre-R9 .xp images (2013 format), which were converted by 0.99r9 build (2014)
* FIX: One mixed-line glyph in the square 10x10 CP437 font was 1 pixel off
* FIX: Reversed NW/SE directional canvas scrolling via numpad
* FIX: Using the mouse to select a value box in the color picker required an extra key press before detecting input
* FIX: Creating a new image copied the view offset of the image currently open, rather than resetting it to (0,0)
* FIX: Image browser couldn't collapse subdirectories at a depth of three or greater
* FIX: Copy-paste of lone transparent cell on layer 2+ crashed editor (Note: RMB-copy faster for this purpose, anyway!)
* FIX: Cellwise drawing off edge of image without releasing LMB damaged undo history, which could crash if accessed
* FIX: Could attempt to draw multi-cell objects to parts of a large image shifted under the tools area, leading to UI issues
* FIX: Typing a grave character at the end of a text entry would crash the font renderer
* FIX: Crash on running without an enabled audio device (now no such device required)
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #34 on: May 01, 2016, 09:08:34 PM »

A bunch of other devs have been making cool stuff with REXPaint, so I took a day after releasing the latest Cogmind Alpha to throw in a few of the easier features on the TODO list (sorry, the tough stuff will have to wait until Cogmind is done!).

The full REXPaint 1.02 (160502) changelog:

* NEW: Image shifting with wrapping (Ctrl-Arrow/Numpad or Ctrl-Shift-Arrow/Numpad for single layer)
* NEW: TXT file importing (conversion to .xp format) supported via command line (see manual Appendix F)
* NEW: Partial PNG image importing (conversion to .xp format) supported via command line (see manual Appendix G)
* NEW: Fill tool includes second mode for 8-directional search
* NEW: Unlimited font size regardless of resolution limits--NOT ideal usage, implemented by request (see "unlimitedFontSize" in cfg)
* FIX: One line junction glyph in the 8x8 CP437 font misaligned

Some of the new features in action:


An imported txt file.


Shifting an image, with content wrapping to the other side.

I also included this experimental tool I was playing with earlier this year, though I wonder if anyone else will actually get any use out of it Tongue...

Importing a .png screenshot from ADOM into an editable .xp format.


Another from Brogue.

Also, if you haven't seen it before, the gallery is now filled with impressive work Smiley
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #35 on: June 19, 2018, 04:39:11 PM »

REXPaint v1.04 is released!

Changelog:
  • NEW: Selected glyph's ID shown in Apply box, along with the glyph itself (activate in options menu)
  • NEW: ID for glyph currently under cursor in selection box can be shown directly to the right (activate in options menu)
  • NEW: Swap foreground/background colors across entire image (Shift-Alt-w)
  • NEW: Copy entire active layer to clipboard (Ctrl-Shift-c)
  • NEW: Arrow keys for glyph selection now wrap around to opposite side
  • NEW: Undo/Redo functionality also accessible via simply z/y as hotkeys (ctrl optional)
  • NEW: Limit application of specific RGB channels in foreground and/or background (Shift-Alt-r/g/b and Ctrl-Shift-Alt-r/g/b)
  • NEW: File browser can be set to ignore specified paths ("ignorePath" in cfg)
  • NEW: Option to use basic CP437 characters instead of UTF8 for txt output ("txtOutputUTF8" in cfg)
  • NEW: Can now override the normal autodetection for font bitmap color keying ("fontKeyColorOverride" in cfg)
  • NEW: F2 hotkey opens rename dialogue for currently selected image in browse mode
  • NEW: Better input support for very long filenames
  • NEW: Currently selected filename in browse mode also expanded to full length if longer than available width (not only on mouse hover)
  • NEW: PNG importing now assumes direct pixel-to-cell conversion if no cell dimensions appended to filename (see manual Appendix G)
  • NEW: Manual's .xp specification explicitly states that the 32-bit character is stored as little-endian
  • NEW: Checks for newer version on startup to show a notification (toggleable in options)
  • MOD: Brought back Undo/Redo buttons
  • MOD: Locking a layer no longer prevents the copy tool from being used on it
  • MOD: Hotkeys for switching between HSV color shifting modes now require Ctrl modifier
  • MOD: Options hotkey changed to F3
  • MOD: Cycle GUI skin hotkey changed to F4
  • MOD: "Base Image Path" and "Exports to Base" removed from options menu (still available in REXPaint.cfg)
  • FIX: Crash if moving caret too far before visible section of filename dialogue box when filename length exceeded box's width
  • FIX: Crash when using fill tool on very large and open images
  • FIX: Foreground colors on a non-black background color output to PNG would have their RGB values changed by +1 for any channel the background color used
  • FIX: Browse mode hotkeys for toggling all folders would simultaneously shift-wrap currently open image
  • FIX: 14x14 CP437 character 147 slightly misaligned (extra pixels)

For feature demos and other info see the main release announcement on the forums.

REXPaint is now also available on itch.io :D
Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #36 on: August 02, 2020, 06:54:45 PM »

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 itch.io.

Regarding the new extended font support, here's the relevant excerpt from the manual:
Quote
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, 07:29:43 PM by Kyzrati » Logged

Kyzrati
Level 10
*****



View Profile WWW
« Reply #37 on: January 09, 2024, 08:54:45 PM »

Progress on Cogmind has recently led to numerous engine improvements (and a few bug fixes), so combined with feature request patches from the past few years we're getting an official release for the new and improved REXPaint!

Big items this time around include autoscaling of font bitmaps, .gpl (GIMP) palette support, and even better .ans (ANSI art) support--for the first time REXPaint can automatically import a format other than its own!

First, the full changelog...

REXPaint 1.70 (240110) changelog:
  • NEW: Support for automated upscaling of font bitmaps (see manual under Custom and Extended Fonts)
  • NEW: .ans file automated importing and conversion (ANSI art)
  • NEW: .gpl (GIMP) palette support
  • NEW: Ctrl-v during active file naming dialog or Text tool pastes text from system clipboard (single line only)
  • NEW: Reopening REXPaint recalls the last glyph index and brush foreground/background color in use
  • NEW: Remap all layer colors to closest from current palette (Shift-Alt-p, or Ctrl-Shift-Alt-p for all unlocked layers)
  • NEW: Added full list of valid color names to skins.xt file for reference
  • NEW: Command line support for creating new image files (see manual Appendix H)
  • NEW: Command line support for opening REXPaint with specific image selected (see manual Appendix H)
  • NEW: Command line support for exporting specific image as PNG (see manual Appendix H)
  • MOD: .ans export format optimized for reduced file size
  • MOD: C:DDA image exports now also reference custom Unicode glyph assignments in cases where users may want a custom font layout besides CP437
  • MOD: Updated installation instructions with new MSVC DLL download location
  • MOD: Manual Appendix H rewritten to encompass multiple types of command line options
  • MOD: Manual Appendix I changes official C:DDA font reference to reflect switch from Unifont to Terminus, provided on website Resources page
  • FIX: Reloading all images via Browse window blocked further mouse interaction with some popups like Resize window
  • FIX: Potential rare crash due to multithreaded logging
You can download REXPaint here, and note that as of 1.04 it's also available on itch.io.

.ANS Importing!

While REXPaint has had .ans exporting for many years and could therefore be used to create traditional ANSI art, only art created from scratch using REXPaint's native format could be used to do this. Now .ans files can be imported as well!

Simply drop any .ans files into the /images/ directory structure, and on startup if REXPaint does not see any corresponding .xp files by the same name, it will automatically convert them for editing access. Although REXPaint only edits .xp files directly, you can re-export to .ans at any time. Original .ans files remain unchanged unless you choose to overwrite one with an export.

REXPaint will import and view .ans files even when ANSI mode is not active, though properly exporting to .ans again would require that mode to be active as usual. (Note: REXPaint strips SAUCE metadata when it converts .ans to .xp, and therefore does not contain any on export, either.)

Animated .ans files are beyond the scope of REXPaint and ignored--only static ANSI art is compatible.

Here is a demo of .ans conversion:



We've had text and image file importing for a while, but those are more fiddly, while this automated feature was a much bigger production. I spent a while researching the format in order to enable imports, and as a result was also able to optimize REXPaint's .ans exports to reduce the resulting file size.

(Note that one of these optimizations involves giving "cursor" instructions to skip over empty space, but if you're intending to use REXPaint's .ans exports with Discord's ```ansi feature, know that Discord's implementation of ANSI is pretty terrible and incomplete so you'll probably have to set the new ansOutputNoCursorShift cfg option to make images containing that sort of empty space compatible over there.)

Some other new features in action

Import .gpl (GIMP) palettes, for example from here, by dropping them into the data/palettes directory:




Have a tiny font that you want to increase by a whole number scaling factor? No longer do you have to manually create a separate set of bitmaps for it! Just add a new line in the font configuration file and let REXPaint do the rest:




The system clipboard can now be used to copy-paste text from another program into REXPaint's text entry tool (although this currently only supports a single line of text):




The UI will recall the glyph and colors in use when last closed, if possible:




Over a decade since the first release and REXPaint is still going :)

I've still got lots more planned, including huge features, but, you know, when I get to it :P
Logged

Pages: 1 [2]
Print
Jump to:  

Theme orange-lt created by panic