Okay, I think I have a workaround, if I don't .convert() any images, 
and modify the palettes from the surface itself, it seems to work 
fine, hopefully I can get unconverted surfaces to blit properly 
though, it seems that sprites have no issues blitting, its just plain 
surfaces which wont blit.
On Sun, Aug 15, 2010 at 10:00 PM, Thiago Chaves <shundread@xxxxxxxxx 
<mailto:shundread@xxxxxxxxx>> wrote:
    Have you seen this?
    http://www.pygame.org/docs/ref/display.html#pygame.display.set_palette
    If that's not the missing piece in your puzzle, then it's time for you
    to start posting sample code and images so we can reproduce your
    issue.
    -Thiago
    On Sun, Aug 15, 2010 at 10:12 PM, John Anderson
    <corporalmustard@xxxxxxxxx <mailto:corporalmustard@xxxxxxxxx>> wrote:
    > I actually have one, but I would like if it were possible to
    alter which
    > palette entries are used by pygame in real-time, what it seems
    happens when
    > I .convert() an image, it loses it's unique palette data and
    just uses the
    > basic pygame palette, but if I don't convert it, it makes it
    difficult to
    > blit images and adds extra performance issues which might be a
    problem
    > later.  The weird thing is that when I choose not to convert the
    images, it
    > seems to make no difference, the sprites just seem to use
    whatever indicies
    > they want anyway, is there some parameter in convert i dont know
    about, or
    > is it my display setup?
    >
    > On Sun, Aug 15, 2010 at 10:01 AM, Thiago Chaves
    <shundread@xxxxxxxxx <mailto:shundread@xxxxxxxxx>> wrote:
    >>
    >> You need an image editor that gves you an easy way to keep track of
    >> the color index of your palettes. =)
    >>
    >> -Thiago
    >>
    >> On Fri, Aug 13, 2010 at 6:32 PM, John Anderson
    >> <corporalmustard@xxxxxxxxx <mailto:corporalmustard@xxxxxxxxx>>
    wrote:
    >> > yes, I have, unfortunatley that still doesnt mean I can
    specify where
    >> > the
    >> > colours are placed on even the sprite's palette.  For
    example, I have a
    >> > particular sprite with a slightly coloured outline, in the
    sprite's
    >> > palette,
    >> > entries from 0 - 15 are empty, and the outline is entry 16. 
    I'm not
    >> > even
    >> > sure where any of the other colours are, and that position
    might change
    >> > with
    >> > an excess of differently coloured sprites on screen, or
    worse, even
    >> > disappear entirely.  What I would like to do is have the
    palette fill
    >> > from
    >> > the bottom, or preferably from a specified index with new palette
    >> > entries
    >> > loaded from .gif files, rather than try and find a close
    approximate
    >> > colour
    >> > on the existing palette, is this possible to do without
    changing the
    >> > surface
    >> > implementation in pygame, or even SDL?
    >> >
    >> > On Fri, Aug 13, 2010 at 4:59 AM, Thiago Chaves
    <shundread@xxxxxxxxx <mailto:shundread@xxxxxxxxx>>
    >> > wrote:
    >> >>
    >> >> Have you looked at the palette functions on surfaces?
    >> >>
    >> >> http://www.pygame.org/docs/ref/surface.html#Surface.get_palette
    >> >>
    >> >> -Thiago
    >> >>
    >> >> On Thu, Aug 12, 2010 at 8:56 PM, John Anderson
    >> >> <corporalmustard@xxxxxxxxx
    <mailto:corporalmustard@xxxxxxxxx>> wrote:
    >> >> > Hi, I was wondering if it was possible to force an 8-bit
    colour
    >> >> > sprite
    >> >> > to
    >> >> > use a very particular set of palette entries, like say,
    Sprite A uses
    >> >> > colour
    >> >> > indicies 0 - 16, and Sprite B uses 17 - 32.  As it stands,
    pygame
    >> >> > automatically assigns the colours in a sprite to the
    closest colour
    >> >> > on
    >> >> > the
    >> >> > main palette, meaning that it is very hard to predict
    which colours
    >> >> > are
    >> >> > where, and thus makes palette swapping a nightmare, is
    there any way
    >> >> > around
    >> >> > this?
    >> >> >
    >> >
    >> >
    >
    >