Catapult
Catapult copied to clipboard
[Question] Does the launcher support adding custom fonts into the game?
I was under the impression it was possible to add custom fonts into the game, and may have assumed Catapult would be able to semi-streamline that, yet putting font files into the folders doesn't really seem to be showing up any new fonts on the launcher? I've tried putting it in both the upperlevel font folders and the lowerlevel with no luck. Perhaps I'm not understanding how custom fonts work in this?
Yes, I've run the game before, as I've heard that generates something related to fonts. I've run the game many times. I've run CDDA a lot but have been recently been using Bright Nights.
You can't have your own fonts show up in the launcher. It uses a predetermined set of built-in fonts, for which it knows the correct parameters (width
/height
), so that you only have to assign the font size
, and you don't have to get the font files and put them into a specific location yourself.
This is what makes this feature of the launcher easier/more streamlined compared to in-game font settings. Most of this automation would not be possible with user's own fonts. I guess, the only thing that could be streamlined in this scenario is setting the font name, but then the launcher would also have to have a way of setting font width/height... Instead I opted for maximum ease of use at the expense of choice.
So, to use your own fonts, you will have to set them up manually. Put them in dda/current/font
(or bn/current/font
) and add their filenames to dda/current/config/fonts.json
. Really, this isn't much worse than what the launcher could do for you in these circumstances.
P.S. What fonts are you interested in? I might add them, if their licenses are suitable.
I have two fonts to suggest: consolab and WHITRABT.
Not sure about the licenses though.
@qrrk I did actually put my custom font in data\font
and updated the fonts.json
config manually but I noticed after a version upgrade I lost my font files in the data\font
directory, they didn't get copied/migrated to the new version.
It would be nice if catapult moved all fonts in the directory, not only the ones Catapult knows about.
EDIT: Actually, I just noticed that it also didn't copy the custom soundpack I installed manually.
@KurzedMetal Try putting them in (game_root)/font
and (game_root)/sound
instead. Catapult considers the directories in data
to be reserved for built-in assets and tries not to mess with them.
I see, thanks for the tip, will try.
BTW, I agree with the OP, "white rabbit" is an awesome monospace font for overmap I've been using it for years. If you can add it would be great.
This its the official page, it's free even for commercial use (MIT license): https://squaregear.net/fonts/whitrabt.html
I was mainly looking to play around with a lot of monospace fonts I found on Google Fonts to find if any look good enough on my low-resolution monitor.
I wouldn't want you use that energy to fenagle with any of those fonts on my account. But I have to admit the screens @flexoo posted look dang good. I'd be curious to see what the overmap looks like.
However, considering I did get an answer for how the launcher font-picker works, shall I close this issue? Or if I'm unavailable to close as I plan on vacation soon, I won't gripe if the qrrk closes. <3
Ah I forgot the overmap, here you go:
Happy vacation
@RabblerouserGT Let's keep it open for now. I still haven't checked into the fonts @flexoo suggested.
@KurzedMetal Try putting them in
(game_root)/font
and(game_root)/sound
instead. Catapult considers the directories indata
to be reserved for built-in assets and tries not to mess with them.
This changed with #45.
Put the custom fonts in userdata/font
and reference them from userdata/config/fonts.json
with a relative path starting from the root of the game data (i.e. current
). For example:
{
"typeface": [ "../userdata/font/consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ],
"map_typeface": [ "../userdata/font/consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ],
"overmap_typeface": [ "../userdata/font/whitrabt.ttf", "../userdata/font/consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ]
}
I hope this helps.
reference them from
userdata/config/fonts.json
with a relative path starting from the root of the game data (i.e.current
).
You need not specify any paths, just the file names. As long as they are in userdata/font
, they will be found.
Yup that works. Thanks for the correction.
{
"typeface": [ "consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ],
"map_typeface": [ "consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ],
"overmap_typeface": [ "whitrabt.ttf", "consolab.ttf", "data/font/Terminus.ttf", "data/font/unifont.ttf" ]
}