as the title says. what i meant with distoying file sise was making new sprites for everything and recollor that, i alredy tried stencil, shaded and addshaded render styles all wielded not so good resoults. these beeing recollord pixels while the original sprite still is reconiseble i wanted to make monsters that get stronger and stronger as time went on.
edit: more info
how to make recolord actors without distroying file sise
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.
-
okidoki
- Posts: 19
- Joined: Wed Oct 22, 2025 1:05 pm
- Preferred Pronouns: No Preference
-
Enjay
-

- Posts: 27550
- Joined: Tue Jul 15, 2003 4:58 pm
- Location: Scotland
Re: how to make recolord actors without distroying file sise
Have you tried using translations? They can be used to map specific colours in a sprite to different colours. If it's a monster that has a lot of colours in the same range/area of the game palette, it's pretty easy to set up a translation for them. If they have lots of different colours from all over the palette, then it's trickier (but doable). e.g. the pinky demon, because most of its colours are contiguous in the palette, is quite easy to set up with a translation to get it to be pretty much any colour you want.
Try the attached. It is about as small as you can get in a mod - but it will make all the pinkies a sort of teal/cyan colour. I just threw it together in a couple of minutes, so it could maybe do with a bit of tweaking, but the concept is clear enough. I did it in DECORATE because I think you prefer that format?
Using the colour remap feature of Slade is a good way to do translations, especially if they are complicated ones with lots of colour ranges. Use it to generate the translation that you want and then (before closing the dialogue) copy the resulting string into your DECORATE. After you close the dialogue, don't save the translation to the sprite because that will permanently change your sprite.
Try the attached. It is about as small as you can get in a mod - but it will make all the pinkies a sort of teal/cyan colour. I just threw it together in a couple of minutes, so it could maybe do with a bit of tweaking, but the concept is clear enough. I did it in DECORATE because I think you prefer that format?
Using the colour remap feature of Slade is a good way to do translations, especially if they are complicated ones with lots of colour ranges. Use it to generate the translation that you want and then (before closing the dialogue) copy the resulting string into your DECORATE. After you close the dialogue, don't save the translation to the sprite because that will permanently change your sprite.
You do not have the required permissions to view the files attached to this post.
-
okidoki
- Posts: 19
- Joined: Wed Oct 22, 2025 1:05 pm
- Preferred Pronouns: No Preference
Re: how to make recolord actors without distroying file sise
hello again, i was wondering if theres any way i can recolor sprites on runtime like for example an imp that changes its color the closer it is to death
-
Enjay
-

- Posts: 27550
- Joined: Tue Jul 15, 2003 4:58 pm
- Location: Scotland
Re: how to make recolord actors without distroying file sise
Yes, you can apply different translations. If you look at the introduction on the Wiki translation page, it talks about how to do it.
I have never used a TRNSLATE lump myself, but that can be used via DECORATE or ZScript in combination with A_SetTranslation. So, you'd possibly use some state jumps (with A_JumpIf checking health) and jump to a state that changes to a translation defined in TRNSLATE.
If it is meant for specific monsters on a map, you could use ACS to get their health and monitor it, and change translations as their health drops. You'd use CreateTranslation to define your translation in ACS and Thing_SetTranslation to apply it.
I have never used a TRNSLATE lump myself, but that can be used via DECORATE or ZScript in combination with A_SetTranslation. So, you'd possibly use some state jumps (with A_JumpIf checking health) and jump to a state that changes to a translation defined in TRNSLATE.
If it is meant for specific monsters on a map, you could use ACS to get their health and monitor it, and change translations as their health drops. You'd use CreateTranslation to define your translation in ACS and Thing_SetTranslation to apply it.