Jump to content
IGNORED

Drawing levels - Best tool(s)?


Recommended Posts

I didn't realize that tool could be used for backgrounds. Is it possible to draw an image in say, Promotion, and then convert it to something the Intellivision would understand? If I knew the proper screen resolution and had access to the Inty's color palette that is.

 

Edited for spelling.

Edited by ColecoGamer
Link to comment
Share on other sites

Any suggestions on using a paint program like Promotion for drawing backgrounds, and then converting those images into something the Intellivision will understand? Is there a tool available that is capable of doing this?

 

I've searched the forums, but so far I haven't found anything. I'm new to Inty development, as you can tell. I'm just trying to get all the tools I need to make the learning process a bit easier. Thank you in advance!

Edited by ColecoGamer
Link to comment
Share on other sites

  • 6 months later...

You can draw your whole level in a Paint program, just make sure tile repeat consistently, pass this thru IntyColor and it will generate a big file that you can show part by part with the SCREEN statement.

Hi Nano,

 

I apologize for bumping this old thread. Since my new question is pretty similar to the last one here, I decided not to post a new thread.

 

I would like to start coding my sprites to see how they animate. Thing is, I’m lost about what tool I should use to import my sprites (in PNG format?) and converting them into the proper format for the Intellivision. Would I also use IntyColor for this process or something else?

 

Thank you in advance for your response! :) (And thank you to anyone that may respond!)

Link to comment
Share on other sites

Hi Nano,

 

I apologize for bumping this old thread. Since my new question is pretty similar to the last one here, I decided not to post a new thread.

 

I would like to start coding my sprites to see how they animate. Thing is, Im lost about what tool I should use to import my sprites (in PNG format?) and converting them into the proper format for the Intellivision. Would I also use IntyColor for this process or something else?

 

Thank you in advance for your response! :) (And thank you to anyone that may respond!)

Hi.

 

You can use IntyColor to process your sprite sheets.

 

However I find far easier to code sprites directly in IntyBASIC using BITMAP statements. It's almost like drawing with text.

 

Check the example game2.bas included with distribution.

  • Like 1
Link to comment
Share on other sites

Hi.

You can use IntyColor to process your sprite sheets.

However I find far easier to code sprites directly in IntyBASIC using BITMAP statements. It's almost like drawing with text.

Check the example game2.bas included with distribution.

Thank you for responding, Nanochess. I use a sprite program that can export my work into any format (i.e. PNG, BMP, etc), and I was hoping there was a tool available that would take those image files and turn them into BITMAP data. You mentioned that Intycolor would work, though. Is there anything I should look out for when using Intycolor for converting my sprite sheets (i.e. issues, etc)? I just want to make sure that I am prepared going in. :) Edited by ColecoGamer
Link to comment
Share on other sites

Hi, I posted not long ago software + source of an utility that converts pictures (bmp, png, etc) to IntyBasic BITMAP:

http://atariage.com/forums/topic/169024-programming-resources/?p=3914583

 

For Princess Lydie I created a custom converter: 20x24 (double y: BG and FG) images using the Intellivision 16-color palette. The utility then creates RLE compressed data, and the IntyBasic decoder figures out which cards to use (corners and if it needs inverted FG/BG cards). If you think the source will be useful, I might include it in the next release of the game, it's C#/.NET but Windows-only (uses WPF).

Link to comment
Share on other sites

Hi, I posted not long ago software + source of an utility that converts pictures (bmp, png, etc) to IntyBasic BITMAP:

http://atariage.com/forums/topic/169024-programming-resources/?p=3914583

 

For Princess Lydie I created a custom converter: 20x24 (double y: BG and FG) images using the Intellivision 16-color palette. The utility then creates RLE compressed data, and the IntyBasic decoder figures out which cards to use (corners and if it needs inverted FG/BG cards). If you think the source will be useful, I might include it in the next release of the game, it's C#/.NET but Windows-only (uses WPF).

Thank you! You really made my day with your response and by providing a link to your utility!

Link to comment
Share on other sites

Thank you for responding, Nanochess. I use a sprite program that can export my work into any format (i.e. PNG, BMP, etc), and I was hoping there was a tool available that would take those image files and turn them into BITMAP data. You mentioned that Intycolor would work, though. Is there anything I should look out for when using Intycolor for converting my sprite sheets (i.e. issues, etc)? I just want to make sure that I am prepared going in. :)

If you want to use IntyColor, you should export your sprite sheets to BMP format.

 

Also you should make sure that sprites are together (no space between), I've seen you're using 8x16 sprites, then if (for example) you have 5 sprites your bitmap should size 40x16 pixels.

 

You should use the -a option to not replace similar cards.

 

The -d option to process sprites as 16 pixels high.

 

The -b option to generate IntyBASIC data.

 

And the -i option to generate data as visible BITMAP statements instead of DATA.

  • Like 2
Link to comment
Share on other sites

If you want to use IntyColor, you should export your sprite sheets to BMP format.Also you should make sure that sprites are together (no space between), I've seen you're using 8x16 sprites, then if (for example) you have 5 sprites your bitmap should size 40x16 pixels.You should use the -a option to not replace similar cards.The -d option to process sprites as 16 pixels high.The -b option to generate IntyBASIC data.And the -i option to generate data as visible BITMAP statements instead of DATA.

Youre a life saver, Nanochess. :) Thank you for explaining the process to me. I can easily remove the space between my sprites with the software I am using before exporting them. Its also good to know about the entire BITMAP size when it contains multiple sprites.

 

The individuals who make up this community are incredible. Here I am at the very early stages of my project, and many experienced members have already shared a wealth of knowledge with me. Its an incredible feeling to be surrounded by such helpful, knowledgeable people. :)

 

Edited for spelling

Edited by ColecoGamer
  • Like 1
Link to comment
Share on other sites

How will IntyColor, or for that matter MarcoFont, handle images with more than two colours in each 8x8 cell? I know that IntyColor will issue warnings while converting such images, but I don't know which result to expect. Thus you might want to prepare images with the following content:

 

All sprites/graphics with background and the main foreground, leaving the outline as background

All sprites/graphics with just the outline, leaving the main foreground as background

 

I'm sure you understand exactly what I'm trying to describe.

  • Like 1
Link to comment
Share on other sites

How will IntyColor, or for that matter MarcoFont, handle images with more than two colours in each 8x8 cell?

 

MarcoFont it's essentially for BITMAP data (monochrome), ideal for sprites. When processing an image, almost any color is considered foreground except the background and grid color (shown at top left). When image is loaded, it initially picks pixel (0,0) as grid color, and, (1,1) as background color. It needs to know a grid/border color because it was originally designed for small proportional fonts... it should be able to process 20x12 cells but I haven't tried it.

  • Like 1
Link to comment
Share on other sites

for designing sprites i use a MSX online sprite designer.

 

http://msx.jannone.org/tinysprite/tinysprite.html

 

To export the data I use "ASM BINARY" it will give you something like this:

 

; --- Slot 0
; color 1
DB 11110000b
DB 11011110b
DB 11000001b
DB 11000000b
DB 11100000b
DB 10100000b
DB 01010111b

 

just paste it into notepad++ (or what you use for edit files).

Then I just do search and replace to translate DB into BITMAP etc.

but its even easier to use notepad++ to just mark all the db vertical and replace it that way (notepad++ is a very good text tool!)

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

Jeez, am I the only one who does this in ASCII?

@@Horiz
:0       :1       :2       :3       :4       :5       :6       :7       :8       :9       :10      :11      :12      :13      :14      :15      :16      :17      :18      :19      :20      :21      :22      :23
...###.. ...###.. ...####. ...####. ...###.. ...###.. ...####. ...####. ...###.. ...###.. ...####. ...####. ...###.. ...###.. ...####. ...####. ...###.. ...###.. ...####. ...####. ...###.. ...###.. ...####. ...####.
..###.#. ..###.#. ..###... ..###... ..###.#. ..###.#. ..###... ..###... ..###.#. ..###.#. ..###... ..###... ..###.#. ..###.#. ..###... ..###... ..###.#. ..###.#. ..###... ..###... ..###.#. ..###.#. ..###... ..###...
..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###... ..###...
..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###..
..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###.. ..$###..
..$$$$.. ..$$$$.. ..$$$$.. ..$$$$.. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$.. ..$$$$.. ..$$$$.. ..$$$$.. ..$$$$.. ..$$$$.. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$$. ..$$$$.. ..$$$$..
...##$.. ...##$.. ...##$.. ...###$. ...###$. ...###.$ ...###.$ ...###$$ ...###$. ...###$. ...##$.. ...##$.. ...##$.. ...##$.. ...##$.. ...###$. ...###$. ...###.$ ...###.$ ...###$$ ...###$. ...###$. ...##$.. ...##$..
..##.$.. ..##.$.. ..##.$.. ..##.#$. ..##.#.$ ..##.#.$ ..##.#.$ ..##.#.$ ..##.#$$ ..##.#$$ ..##.$$. ..##.$$. ..##.$.. ..##.$.. ..##.$.. ..##.#$. ..##.#.$ ..##.#.$ ..##.#.$ ..##.#.$ ..##.#$$ ..##.#$$ ..##.$$. ..##.$$.
..#.#$$. ..##.$$. ..##.$$. ..##.#$. ..###..$ ..##.#.$ ..##.#.$ ..##.#.$ ..#.##.$ ..##.#.$ ..##.#$$ ..##.#$$ ..###$$. ..##.$$. ..##.$$. ..##.#$. ..#.##.$ ..##.#.$ ..##.#.$ ..##.#.$ ..###..$ ..##.#.$ ..##.#$$ ..##.#$.
..#.##$. ..#.##$. ..##.#$. ..###.$. ..####$. ..###..$ ..##.#.. ..##.#.$ ..#.##.$ ..#.##.$ ..##.#.$ ..###..$ ..####$. ..###.$. ..##.#$. ..##.#$. ..#.##$. ..#.##.$ ..##.#$. ..###..$ ..####.$ ..###..$ ..##.#.$ ..##.#.$
..$###.. ..#$##.. ..#$##.. ..###$.. ..####$. ..###$.. ..##$#.. ..#$##.. ..$###.. ..#$##.. ..#$##.. ..###$.. ..####$. ..###$.. ..##$#.. ..#$##.. ..$###.. ..#$##.. ..#$##.. ..###$.. ..####.$ ..###$.. ..##$#.. ..#$##..
..####.. .#####.. ..####.. ..####.. ..####.. .#####.. ..####.. ..####.. ..####.. .#####.. ..####.. ..####.. ..####.. .#####.. ..####.. ..####.. ..####.. .#####.. ..####.. ..####.. ..####.. .#####.. ..####.. ..####..
..###... .##.##.. ..#.#... ...##... ..###... .##.##.. ..#.#... ...##... ..###... .##.##.. ..#.#... ...##... ..###... .##.##.. ..#.#... ...##... ..###... .##.##.. ..#.#... ...##... ..###... .##.##.. ..#.#... ...##...
...##... .#...##. ..#.###. ...###.. ...##... .#...##. ..#.###. ...###.. ...##... .#...##. ..#.###. ...###.. ...##... .#...##. ..#.###. ...###.. ...##... .#...##. ..#.###. ...###.. ...##... .#...##. ..#.###. ...###..
...##... ##....#. .#....#. ...#.#.. ...##... ##....#. .#....#. ...#.#.. ...##... ##....#. .#....#. ...#.#.. ...##... ##....#. .#....#. ...#.#.. ...##... ##....#. .#....#. ...#.#.. ...##... ##....#. .#....#. ...#.#..
...##... ......#. .#...... ...#.... ...##... ......#. .#...... ...#.... ...##... ......#. .#...... ...#.... ...##... ......#. .#...... ...#.... ...##... ......#. .#...... ...#.... ...##... ......#. .#...... ...#....

Sprites and levels...

; -------------------------
; The following symbols are
; available to all mazes:
; -------------------------
; .: Open path
; *: Candy
; @: Snowflake
; X: Present
; #: Solid ice-cube
; -------------------------

; -------------------------
; Stage 1: Haunted Hollow
; -------------------------
; 0 - 6: Solid ice-cube assortment
; -------------------------
:M1
.#####...###.##....
#..X**###...#.@####
#.*.#@..#.#.*.#.#X#
.#..###...##*.**.*#
###.#..X.......##.#
=...*...*#.*#...X*=
##*.......*##X...##
#*.##...*...###.##.
#.X*.#.###....*..##
.###.*.#X..**#@*..#
#.@.*..*.###.*.X###
#########...####.#.

TITLE:      Haunted Hollow
CUBE_SET:   ICE_CUBE_0
VIGNETTE:   ( 10,  0)
@@elf       (  1,  6)   >
@@snowman   ( 20,  6)   <
@@ghost     ( 18, 10)   <
; -------------------------

Link to comment
Share on other sites

For levels I use TileStudio with a bespoke script to convert the data into something I can drop right into the game's source code tree. That way TileStudio converts the data for the platform's game dev tools. Then I'll code the level regeneration code to go through the data in the map and create the screen.

 

For sprites I use a bespoke Windows tool that converts monochrome bitmaps into the data needed. I'll do something more generic one day...

Link to comment
Share on other sites

For levels I use TileStudio with a bespoke script to convert the data into something I can drop right into the game's source code tree. That way TileStudio converts the data for the platform's game dev tools. Then I'll code the level regeneration code to go through the data in the map and create the screen.

 

For sprites I use a bespoke Windows tool that converts monochrome bitmaps into the data needed. I'll do something more generic one day...

Similar here. Except, I used Intellivision's color pallete and export the map data to image. I used the image with IntyColor to generate Intybasic source file to copy and paste into the game's source code.

 

post-24767-0-54475700-1522184049.png

 

Here's a sample. The tiles on top are forced to be in order, so I can make minor adjustment to the map if needed. The tiles b2, isn't used but a place holder for the background graphic. b2 and left are pass through. b3 with a line above it is one way only tile. The right and below are the solid tiles. After that are tiles that are same graphic but different colors to tell intyColor that the tile is the same, but different color. So it doesn't make that tile unique. And of course the graphic below is the game map.

 

Sprites,I just use the usual.

 

bitmap ".....xx." statements. I usually make the image in paint shop first then key them in.

Link to comment
Share on other sites

I use Paint .net for graphical screens (virtualized under Mac OS X)

 

And typically I code sprites directly in ASCII like DZ ;)

 

On the Mac, you may want to check out Pixelmator. It's miles above Paint.Net, it's beautiful, and a pleasure to use. It's not free, though. I believe I paid $29.99 for it on the App Store. :)

 

There is only one drawback I have found: for some stupid reason, it won't do re-size without some sort of fancy interpolation. That sucks for re-scaling 8-bit pixel art. :( I use GiMP for that.

 

-dZ.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...