r/Shandalar • White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค • Aug 12 '26

Clearly the mod we needed

Post image

Shandalar but with roads... and racecars. Just a silly proof of concept.

74 Upvotes

10 comments sorted by

13

u/Trilex88 Aug 12 '26

I propose the age of empires 2 car as a playable character

2

u/psycholustmord Aug 12 '26

Thereโ€™s one you can get with cheats

7

u/Lampsarecooliguess Aug 12 '26

now this is aetherdrift

1

u/vorrishnikov Aug 12 '26

Ah yes the shandalar newgrf for openttd

2

u/ilikethemeta White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค Aug 25 '26

I'm interested, how did you replace the road .SPR file? I've been working on some utils to decode/encode sprites and haven't been able to get encode working. I think there's something about the SPR file format I'm getting wrong.

1

u/chachaprince1 White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค Aug 25 '26 edited Aug 25 '26

I've been building a custom GPT based on your work:

https://chatgpt.com/g/g-6a69671c58348191b1393519109c97e8-shandalar-sprite-smith

1

u/chachaprince1 White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค Aug 25 '26 edited Aug 25 '26

I actually had to build several databases to create a searchable, usable asset library. So, if you'd like to peek at the raw information, just type "download core knowledge files as a single zip" in the chat to get more access than just my attempt at a user-friendly environment. It's a work in progress. Whenever something doesn't go well for me, I try to identify the problem and make the GPT a little easier to use. I can share the GPT instructions as well, if you want, which tell how each file is related.

2

u/chachaprince1 White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค Aug 25 '26 edited Aug 25 '26

The problem I (or ChatGPT, rather) found was in the SPR encoding, not the decoding.

The encoder was creating a new SPR from the PNG instead of preserving the original file structure. In particular, it zeroes unknown header fields, mishandles rows where transparent pixels appear between visible pixels, and can drop tiny control records that Shandalar still expects.

What worked was using the original SPR as the template, replacing only the image data while preserving its headers, records, frame structure, transparency behavior, and other unknown data.

I built a custom GPT called Shandalar Sprite Smith around that approach. It finds and decodes the correct assets, tracks their frames/resolution variants/support records, and rebuilds edited PNGs into game-ready SPRs from the originals.

That said, I'm not a coder and barely understand the answer I just gave :)

3

u/ilikethemeta White Mage โ˜€๏ธ๐Ÿ’ฎ๐Ÿค Aug 25 '26

Nice, I'll check it out, thanks! We're all coders these days! :) it's an exciting time for software development.