Skip to content

Add and use Threadbare-themed tiles for tilemap and platforms#54

Merged
manuq merged 5 commits into
mainfrom
threadbare-tiles
Nov 26, 2025
Merged

Add and use Threadbare-themed tiles for tilemap and platforms#54
manuq merged 5 commits into
mainfrom
threadbare-tiles

Conversation

@wjt
Copy link
Copy Markdown
Member

@wjt wjt commented Nov 26, 2025

There is a desire to skin this game to match the Threadbare style and so form part of the broader lore of that game.

At the same time, I want to preserve the ability to swap back to the Kenney tiles (of which we have 4 rather nice sets) so that learners can switch to a more neutral, non-pixel-art style if that suits.

So, starting from the tiles in https://github.com/endlessm/threadbare-origins-inkdrinker/, I modified them to have slopes etc. that match the Kenney ones. I was mostly successful but at a certain point decided to just make a small change to the main scene:

Old New
Screenshot from 2025-11-26 11-36-05 Screenshot from 2025-11-26 11-36-21

and with this change the new tiles swap in quite nicely:

image

wjt added 5 commits November 26, 2025 11:41
To date this game has used generic assets (from Kenney's Platformer Art
collection). We now want the game to be Threadbare-themed.

Add new tiles and a corresponding tileset, identical to tileset-a.tres
except for the texture.

Visually, the tiles are *almost* interchangable with the 4 sets already
in the game. but the two variations of slopes are identical to each
other (unlike in the Kenney tiles, where one has straight lines and the
other wavy), and a couple of the others don't quite work.

But it is easy enough to adjust the scene to be compatible with either,
in a future commit.

I took the tiles from
https://github.com/endlessm/threadbare-origins-inkdrinker/ but modified
them to be more compatible with the Kenney tiles. They are in turn
derived from the same tiles in Threadbare. In Threadbare those assets
are under CC BY-SA 4.0 but since Endless Access owns the copyright on
them we can use them in this more liberally licensed project without
issue.
The main scene's TileMapLayer is actually an instance of a tiny scene
which is an empty TileMapLayer node with its tile_set. I believe this is
so that the "reset" button beside the tile_set property on the instance
in the main scene gets you back to the default, rather than to a `null`
tileset (breaking the scene).

In commit 5222a38 ("Replace deprecated
TileMap with TileMapLayer"), for unknown reasons I set
use_parent_material = true on the TileMapLayer scene. This was not
intentional, and it has no effect that I can see. Unset it.
The new Threadbare-themed tileset is almost, but not quite, compatible
with the Kenney tilesets. In cells (5, 2) and (6, 2), the Kenney
tilesets have "left and right edges of platform superimposed on
background", but the Threadbare tileset has "right and left (sic) edges
of half-tile platform with rock beneath" (i.e. more like (5, 1) and (6,
1), but with rock. The rocks don't join neatly to the grass-on-dirt
tiles used in the rest of the tileset.

But (5, 2) and (5, 3) are only used for the platform directly under the
flag, and even with the Kenney tiles they don't quite look right - they
don't join properly to the slope to the left.

Replace these with regular "top of platform" tiles, so that the tilesets
can be swapped without issue.
As noted in the comment, this project doesn't use Git LFS and I think
it's probably best to keep it that way. But while working on assets it's
really convenient to have the .aseprite file in the asset directory next
to the exported file(s).

Add such files to gitignore to prevent accidentally committing them.
@wjt wjt requested a review from a team as a code owner November 26, 2025 11:46
@github-actions
Copy link
Copy Markdown

Play this branch at https://endlessm.github.io/moddable-platformer/branches/endlessm/threadbare-tiles.

(This launches the game from the start, not directly at the change(s) in this pull request.)

Copy link
Copy Markdown
Contributor

@manuq manuq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you did a great job with the tiles! Having a distinction at the surface of the platform (grass here) is so important in platformers. The fabric tears is a nice touch too!

The props (fungus, rock, bush) don't work quite well for a side view to me. But not your fault! Unfortunately they would need to be redrawn.

@manuq manuq merged commit 242bead into main Nov 26, 2025
6 checks passed
@manuq manuq deleted the threadbare-tiles branch November 26, 2025 12:48
@wjt
Copy link
Copy Markdown
Member Author

wjt commented Nov 26, 2025

@wjt
Copy link
Copy Markdown
Member Author

wjt commented Nov 26, 2025

Aseprite file for the tiles, btw:

tiles-threadbare.aseprite.gz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants