|
V3: A few questions... Displaying 1-12 of 12 total.
1
CrazyAznGamer
|
I have a few questions:
1.Is there any way to filter the color of the chrs during runtime (So that I can achieve multiple enemies from not too many chr files)? Most rpg's just modified the color of the enemies to signify what type it is.
2.What would you think would be the standard in verge for chr resolution in a 640x480 resolution game?
3.Is there any way in MapEd to paste a bunch of tiles at the same time in the same order they were copied in? (like if your grass took four tiles, you would be able to copy and paste them)
Posted on 2005-02-03 17:12:13
|
Overkill
|
1. Yes. However, very hackily done. Go to compo.tomt64.com and take a look at The Quest for Colours. Or, if you're lazy, click here! Our compo used critter.vc to do all the hacky color swap fun. As you can see, colour swap isn't for novices, or at least in the way we did it.
2. 32x64 is probably a good bet. Or somewhere around there. You might want characters a bit shorter than 64 pixels, not sure.
3. The clipboard copies a segment of the map for pasting. Lay down the tiles with the brush, select the clipboard, hold SHIFT and drag. Now, happy pasting. If you want to paste even bigger segments, just hit SHIFT and drag over after you paste the small pattern a few times.
Of course, Tatsumi was supposed to add 'arrange tile' things that allowed you arrange small tiles into bigger selections and lay down the 'arrangements' all at once. But I don't see that any time soon.
Posted on 2005-02-03 17:30:59
|
CrazyAznGamer
|
Dude, sweetness.
Thanks bunches.
Posted on 2005-02-03 20:12:03
|
Omni
|
I also think Gayo made a color shifting library that would quickly alter loaded pictures, but I don't know the name or the link myself.
Posted on 2005-02-03 21:56:55
|
CrazyAznGamer
|
Is there any way to change the chr file directly, or do you have to do something complicated like blitting dolls with HookEntityRender?
Posted on 2005-02-04 20:09:14
|
TomT64
|
If you just want to change colors, I suggest tinting of some kind. I don't think V3 has any way to generate and blit alpha blended images, so you probably should just make all the different colors and put them into the CHR file. Then you can paper doll them all you want.
Posted on 2005-02-07 01:13:01
|
Overkill
|
Hrm. One way you could do the filtering, and a lot simpler than the way we did, is as follows:
//recolored_image=RecolorImage(image, CF_GREY, 0);
int RecolorImage(int img, int color_filter, int lucency)
{
int img2= DuplicateImage(img);
int sil = DuplicateImage(img);
int tempimg = DuplicateImage(img);
RectFill(0,0,ImageWidth(img2),ImageHeight(img2),RGB(255,0,255),img2);
//Silhouette crap.
RectFill(0,0,ImageWidth(sil),ImageHeight(sil),0,sil);
Silhouette(0,0,RGB(255,255,255),img,sil);
//Colorfilter crap
SetLucent(lucency);
ColorFilter(color_filter,tempimg);
SetLucent(0);
//Make the magenta (transparent) areas be unaffected by the colorfilter.
AlphaBlit(0,0,tempimg,sil,img2);
FreeImage(sil);
FreeImage(tempimg);
//Return the pointer to the new image.
return img2;
}
Posted on 2005-02-07 09:21:13
|
CrazyAznGamer
|
Can you do something like this to tint the chr?
void TintedDollRender(int entity, int color)
{
int tdr_xh = entity.x[entity] - xwin;
int tdr_yh = entity.y[entity] - ywin;
BlitEntityFrame(tdr_xh, tdr_yh, entity, entity.frame[entity], screen);
SetLucent(50);
Silhouette(tdr_xh, tdr_yh, color, entity.frame[entity], screen);
SetLucent(0);
}
void BlueDollRender()
{
TintedDollRender(entity, RGB(0,0,255));
}
HookEntityRender(entity, 'BlueDollRender');
Or does that not work?
Posted on 2005-02-09 22:35:16
|
rpgking
|
That should work fine. Did you try it out yet?
Posted on 2005-02-13 21:29:27
|
Overkill
|
Quote: Originally posted by CrazyAznGamer
Can you do something like this to tint the chr?
void TintedDollRender(int entity, int color)
{
int tdr_xh = entity.x[entity] - xwin;
int tdr_yh = entity.y[entity] - ywin;
<b>BlitEntityFrame(tdr_xh, tdr_yh, entity, entity.frame[entity], screen);</b>
SetLucent(50);
<b>Silhouette(tdr_xh, tdr_yh, color, entity.frame[entity], screen);</b>
SetLucent(0);
}
void BlueDollRender()
{
TintedDollRender(entity, RGB(0,0,255));
}
HookEntityRender(entity, 'BlueDollRender');
Or does that not work?
I think you just need to modify the tinter a tiny bit and it will work.
void TintedDollRender(int entity, int color)
{
int tdr_xh = entity.x[entity] - xwin;
int tdr_yh = entity.y[entity] - ywin;
int img = NewImage(ent width, ent height);
/*
You know, except kind of write in the math to
get the actual entitity size, and not just
hotspot size.
*/
BlitEntityFrame(tdr_xh, tdr_yh, entity, entity.frame[entity], img);
SetLucent(50);
Silhouette(tdr_xh, tdr_yh, color, img, screen);
SetLucent(0);
FreeImage(img);
}
Posted on 2005-02-14 06:57:34 (last edited on 2005-02-14 06:58:13)
|
Interference22
|
Quote:Originally posted by overkill
2. 32x64 is probably a good bet. Or somewhere around there. You might want characters a bit shorter than 64 pixels, not sure.quote>
I'm using 64x64 frames, which are useful to have if you want to do lying down animations, sword swinging etc. A width of 32 can be too little to work with.
Posted on 2005-02-15 03:50:57
|
mcgrue
|
Quote:Originally posted by Interference22
Quote:Originally posted by overkill
2. 32x64 is probably a good bet. Or somewhere around there. You might want characters a bit shorter than 64 pixels, not sure.quote>
I'm using 64x64 frames, which are useful to have if you want to do lying down animations, sword swinging etc. A width of 32 can be too little to work with.
Posted on 2005-02-15 09:06:25
|
Displaying 1-12 of 12 total.
1
|
|