<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: SPR - Sprite File</title>
	<atom:link href="http://rolaboratory.ximosoft.com/file-format/spr/feed" rel="self" type="application/rss+xml" />
	<link>http://rolaboratory.ximosoft.com</link>
	<description>Ximosoft's Tool Development</description>
	<pubDate>Sat, 31 Jul 2010 03:57:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
		<item>
		<title>By: Tsurai</title>
		<link>http://rolaboratory.ximosoft.com/file-format/spr#comment-6335</link>
		<dc:creator>Tsurai</dc:creator>
		<pubDate>Mon, 25 May 2009 14:00:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.aniemule.com/ragnarok_blog/?page_id=22#comment-6335</guid>
		<description>The fourth Byte is the Alpha value of the RGBA color table. It tells how much transparency will be used</description>
		<content:encoded><![CDATA[<p>The fourth Byte is the Alpha value of the RGBA color table. It tells how much transparency will be used</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DrDaxxy</title>
		<link>http://rolaboratory.ximosoft.com/file-format/spr#comment-6319</link>
		<dc:creator>DrDaxxy</dc:creator>
		<pubDate>Fri, 24 Apr 2009 19:53:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.aniemule.com/ragnarok_blog/?page_id=22#comment-6319</guid>
		<description>What's the fourth byte per color in the palette for? Is it transparency? I don't need to implement it in my program because it's just for character sprites, but I'd still like to know.</description>
		<content:encoded><![CDATA[<p>What&#8217;s the fourth byte per color in the palette for? Is it transparency? I don&#8217;t need to implement it in my program because it&#8217;s just for character sprites, but I&#8217;d still like to know.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ViteFalcon</title>
		<link>http://rolaboratory.ximosoft.com/file-format/spr#comment-6196</link>
		<dc:creator>ViteFalcon</dc:creator>
		<pubDate>Thu, 05 Feb 2009 21:19:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.aniemule.com/ragnarok_blog/?page_id=22#comment-6196</guid>
		<description>The header is not AC it's SP... plus the offset seems to have changed. It's like

0 	Header 	2 	bytes 	char 	AC
2 	Major version 	1 	bytes 	Byte
3 	Minor Version 	1 	byte 	Byte
4 	Images Count 	2 	bytes 	Integer 	Nº of images contained
6 	Unknown int 	2 	bytes 	Integer
{
 	Size X 	2 	bytes 	Integer 	Size of field
 	Size Y 	2 	bytes 	Integer 	Size of field
 	Frame Len 	2 	bytes 	Integer 	Length of field data
 	Frame Data 	Frame Len 	bytes 	Byte 	Image Data compresed in RLE version
}
- 	Palette 	1024 	bytes 	RGB 	256 color palette

Atleast that's what I've found when I was trying to make a parser for SPR file.</description>
		<content:encoded><![CDATA[<p>The header is not AC it&#8217;s SP&#8230; plus the offset seems to have changed. It&#8217;s like</p>
<p>0 	Header 	2 	bytes 	char 	AC<br />
2 	Major version 	1 	bytes 	Byte<br />
3 	Minor Version 	1 	byte 	Byte<br />
4 	Images Count 	2 	bytes 	Integer 	Nº of images contained<br />
6 	Unknown int 	2 	bytes 	Integer<br />
{<br />
 	Size X 	2 	bytes 	Integer 	Size of field<br />
 	Size Y 	2 	bytes 	Integer 	Size of field<br />
 	Frame Len 	2 	bytes 	Integer 	Length of field data<br />
 	Frame Data 	Frame Len 	bytes 	Byte 	Image Data compresed in RLE version<br />
}<br />
- 	Palette 	1024 	bytes 	RGB 	256 color palette</p>
<p>Atleast that&#8217;s what I&#8217;ve found when I was trying to make a parser for SPR file.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BadPacket</title>
		<link>http://rolaboratory.ximosoft.com/file-format/spr#comment-19</link>
		<dc:creator>BadPacket</dc:creator>
		<pubDate>Wed, 24 May 2006 00:05:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.aniemule.com/ragnarok_blog/?page_id=22#comment-19</guid>
		<description>Ximosoft, the image information is incorrect and should look more like this:

{ Image (Header offset +14)
10 - Size X - 2 bytes Integer - Size of field (LB HB format)
12 - Size Y - 2 bytes Integer - Size of field (LB HB format)
14 - Len Data - 2 bytes Integer – Length of field data (LB HB format)
16-(16+Len Data) - Frame data*
}
*Frame data are actual image pixels with values referencing the indexed colors in the palette except when they have a value of “00” (the background color index). When background pixels are encountered the next pixel will either be another background pixel if “00” or the count of the number of time to repeat the display of the background pixel if not “00”.  This is done to achieve some level of compression. Example:

A0 00 05 B0 = A0 00 00 00 00 00 B0 (00 x 5)
A0 00 00 B0 = A0 00 00 B0

Compression runs left to right and can span more than 1 row, so do not be surprised to see background pixels drawn at the end of one row extending beyond the end of the row and wrapping to the next. Only background pixels can be compressed.

Also, the first color in the palette is always the transparency color in case you did not know that. I was going to post this on the eAthena forums, but I figure it makes more sense here since you are the file format repository.</description>
		<content:encoded><![CDATA[<p>Ximosoft, the image information is incorrect and should look more like this:</p>
<p>{ Image (Header offset +14)<br />
10 - Size X - 2 bytes Integer - Size of field (LB HB format)<br />
12 - Size Y - 2 bytes Integer - Size of field (LB HB format)<br />
14 - Len Data - 2 bytes Integer – Length of field data (LB HB format)<br />
16-(16+Len Data) - Frame data*<br />
}<br />
*Frame data are actual image pixels with values referencing the indexed colors in the palette except when they have a value of “00” (the background color index). When background pixels are encountered the next pixel will either be another background pixel if “00” or the count of the number of time to repeat the display of the background pixel if not “00”.  This is done to achieve some level of compression. Example:</p>
<p>A0 00 05 B0 = A0 00 00 00 00 00 B0 (00 x 5)<br />
A0 00 00 B0 = A0 00 00 B0</p>
<p>Compression runs left to right and can span more than 1 row, so do not be surprised to see background pixels drawn at the end of one row extending beyond the end of the row and wrapping to the next. Only background pixels can be compressed.</p>
<p>Also, the first color in the palette is always the transparency color in case you did not know that. I was going to post this on the eAthena forums, but I figure it makes more sense here since you are the file format repository.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
