RLE Error

what's causing it?

Hi everyone,

I had posted a topic in the Nova section of the forums asking if a Borg plug-in exsisted. No one seemed to know of one so I took it upon myself to make one. I should note that this the first major plug-in I have created. I have it about 80% complete right now but have encountered a problem. I tried a test run in Nova and ran into a problem.

Nova tries to start up but then gives an error as thus:

Nova encountered an error when converting PICT to RLE
"gives shan resource# here"
error -1

All of my sprite files were created using movie files I created and then turned into sprites with Dr Raplh's sprite program. At first I thought the problem was because not all my sprites were symetric (as in the x, y weren't the same). I thought that this may be the problem as I saw that all other ships in nova are symetric. Anyway I went back and changed this but it didn't help. I then tried changing all the -1's to 0's in the fields I wasn't using, but that made no difference. I'm now at a loss for how to proceed.

I've heard that sometimes a plug-in can be too big for nova to handle but I wasn't sure on the cap for that; right now my plug-in is about 8megs. I also hoped that someone may know what that error code is and that that may shed some light on the problem.

I should also note that I have created the plug-in and all resources with Mission Computer 4.0.7.

Thank you VERY much for any assistance you can provide, as it is all invaluable to me.

Geoff

If I'm reading your post correctly, I think you're using PICT's as your ship's sprites. Have you tried converting the sprites to RLE's?

Nova's 'support' for PICT based sprites is really a hold over from much older iterations of the game, and isn't really supported anymore. So for sprites, Nova uses RLE's now.

If, in Mission Computer, you're seeing the sprites you created listed under the PICT list and not the rlΓ«D list, then you need to convert them to RLE's.

EnRLE and DeRLE are applications also by Dr. Ralph that will take PICT based sprites and shΓ€n's, and create RLE's from them.

Or, you could use the RLE converter built into Mission Computer itself.

If that isn't the cause of your problems, you could post the plug-in in question. People could look at it to get a clearer idea of what's causing your problem.

This post has been edited by Eugene Chin : 29 March 2010 - 09:11 AM

Thanks for the reply Eugene,

I have in fact made all of my sprites with the RLE maker in Mission Computer and turned all of them into rlΓ«D and rle8.

I would be more then happy to post the plug-in for people to look at but I'm not exactly sure how to do it. Do I just upload it to the main plug-in directory? I wasn't sure if they would allow that being as the plug-in isn't working currently.

Thanks again for your help πŸ˜‰

Geoff

I will do my best to try and remember how Mission Computer does things. I work mostly with EVNEW, since my laptop is a PC, and I have a Mac at home, where I pretty much spend little to no time these days. For each ship, you need a few resources that are all pretty dependent on each other.

1. Ship resource. This provides all the stats for the ship. It's been a bit since I've fired up Mission Computer, but I do believe it should tell you what the associated resource numbers are for shipyard desc and pict resources, escort desc resource (if you allow the ship to be used as an escort,) targeting pict resource, and most importantly: the associated shan resource. The shan resource is what relies on the rle resource, which I will cover later.

2. Desc resources. These provide the descriptive text for your ship. Now, for a ship that won't be purchasable in-game, you can put whatever in the resource. It just has to exist. This is the text that will show up that tells you about the ship in the shipyard. If you want to have a large, pretty shipyard picture that comes up when you get the ship information dialogue box, I believe you attach that to the shipyard desc resource, but my memory on that is a little hazy.

The two desc resources that you need to have are the shipyard desc and the escort desc. Mission Computer should tell you what resource ID numbers are assigned to these. In fact, I think it also allows you to create them from the actual ship resource editor, but again, it's been some time since I've fired up MC.

3. Pict resources. These are simple pictures. They do not have to be in the Macintosh PICT format, I think. Typically, when I am importing images into EVNEW, I use .png files. I believe MC is okay with handling those as well. There are two pict resources that each ship must have, and an optional third.

The first is the shipyard pict. This is the square image that pops up in the shipyard. These are typically in Nova 200x200 pixels. These typically consist of a nice render of the ship in question placed on some sort of colored government-identifying backdrop. I'd imagine for the Borg, you'd probably want a nice green, and possibly some of the cool Borg spidery alphanumerics.

The second is the target pict. This is typically in Nova 128x64, I think. These are the little images that pop up in the HUD when you target the ship in question.

4. The shan resource. This is the really critical one. It tells the engine how the ship will use the sprites, where to fire weapons from, almost everything graphical about the ship in question is controlled from here. MC will tell you which associated shan resource ID is related to the ship ID. The shan resource will ask for a number of things, but the big one you want right now is called the "base sprites." This is just the sprite sheet for your cube, which you've encoded as an rle resource.

The shan resource will need to know how big each sprite is, and in what kind of a grid it has been laid out. It will need to know how many frames the sprite has. This is typically 36, but it's just important that the number of frames you created for the ship matches this number. If you got fancier with the cube, you could set it to have engine glows and running lights, but you certainly don't have to have them, nor at this point do you probably want to tackle that just yet.

5. Rle resource. You only really need to create an rleD resource these days. The rle8 is a holdover from 8 bit monitor screens, which are pretty much gone these days. This is the actual sprite image sheet. It's not important that each sprite is a square, where the x/y pixels are the same, but it is important that every single frame is the same size. You also need to create a mask resource as well. I believe an rleD resource can actually store both the image and mask resource. EVNEW does it this way. I am not sure if MC does as well off the top of my head.

To create a mask resource, you will need to select everything that is black in Photoshop or some other image manipulation program with what is typically the "magic wand" tool. Set your tolerances so that you select everything that is black, but don't get any of the actual sprite. This might be difficult with the Borg cubes. Cut this black out and paste it as a new image. You should get white holes where the ships used to be, and a big black cookie-cutter looking thing around it. Flatten the color depth to one-bit, or pure black and white.

You can create a second rleD resource for the mask, or as I said, I believe an rleD can store both the image and its mask.

Once you've gotten all of these resources together and put them in concert with the correct associated ID numbers, you should hopefully stop getting those error messages. I wouldn't advise uploading incomplete plugs to the add-ons directory, as the moderators don't particularly care for that. There are various services that will do basic file hosting for you. I believe Dropbox is a good one, but since it's blocked here at work, I can't provide a solid link for you.

Once we get the ship working in-game, we can start adding in ways to make the ship appear as an AI controlled ship or fleet of ships, and add in weapons/outfits. Much fun.

Wow Kruger that was a very descriptive post, thank you!

Unfortunately I think I have met all of the requirments you stated in it. I thought it may be helpful for people to see the Shan and rled I'm using so I took some screenshots and pasted them together into this image:

I hope that sheds some light on something I may have missed as everyone here defenatly knows what they're talking about.

I would love to use something like drop box, but I only have dial-up access except when I;m at work and I can't use those programs from there; blocked as well Kruger. If anyone has any other suggestions I'd be more then happy to use them.

thank you again everyone for your help!

Geoff

I think I might see the problem, but I'm not sure. You have a shield sprite specified. Do you have a rleD resource in a corresponding ID number? I believe 19996 and 19990 is also out-of-bounds in resource ID numbers, but I'm not positive about that. Other than that, it looks good to me so far. And the cube looks pretty good, too. If you wanted to get a little more complicated with it, you could maybe add in a few green lights underneath the shell with some halo textures. Otherwise, it definitely looks like a Borg cube. Nice work!

I agree with krugeruwsp. The only possible problem I can see is the shield sprite. If you don't actually have a sprite for a shield with that ID #, then that could cause the problem. Also, I'm pretty sure it's possible for a resource to have that number, I just tested it and MC had no problem with it. I have not, however, tested it in-game.

QUOTE

Pict resources. These are simple pictures. They do not have to be in the Macintosh PICT format, I think.

Technically they do (hence the name), but every editor I've seen automatically converts more or less whatever you paste into it.

QUOTE

I believe an rleD resource can actually store both the image and mask resource. EVNEW does it this way. I am not sure if MC does as well off the top of my head.

Yes, this is simply how the format works; RLE does not support separate masks, and the Mask fields are all ignored if you use RLEs.

In fact, there isn't really a mask as such, just a sprite in which some pixels have been declared blank. The mask is needed as an in-between stage simply because there's no other convenient way to tell your editor which pixels should be blank.

QUOTE

Set your tolerances so that you select everything that is black, but don't get any of the actual sprite. This might be difficult with the Borg cubes.

If you can manage it, probably the best option is to get your 3D programme to render the masks for you. Not all of them can do this, and it isn't always obvious how they do, but it guarantees you a perfect mask. Usually, however, it will come out as an 8-bit mask, so you'll need to reduce it to 1-bit before pasting it in.

QUOTE (David Arthur @ Mar 29 2010, 04:45 PM) <{POST_SNAPBACK}>

Technically they do (hence the name), but every editor I've seen automatically converts more or less whatever you paste into it.

Sorry, that's what I meant. They don't need to be in pict format before putting them into the editor. Good catch!

hmm ok that gives me something to play around with. I do have Pict images with those corresponding ID, but I hadn't thought that the ID I gave them may be out of range for the game to handle. I have not created rleDs for them as I was following the example used in the plug-in "3Dshieldbubbles107" as the person that made that just used Pict resources and they seemed to work just fine in game. I can easily make some rleDs for them easily enough and just make them one frame or something instead.

Oh and thank you for the complements on my ship, I can't take credit for the texture but the cube was all me....ya I know what your thinking but I'll take any praise I can get πŸ˜‰

Anyway I obviously have some playing around to do. Thank you very much for everyone's help and for pointing me to a potential problem. I'll let you know if I isolate the problem.

Thanks again πŸ˜„

Geoff

The use of pict resources, as Eugene pointed out, is kind of a holdover from Classic and Override. It sort of works, but not well, and judging from the error message, the engine's inability to translate it over is causing the problem.

How are you intending to make your shield sprite? Are you just going to make a big green bubble? I might be able to help you make a bit nicer one in short order.

yes actually that was what I've done. Just a semi transparent bubble. I would be greatful for any assistance you can provide Kruger. I don't pretend to have any graphical design prowess.

I haven't tried making them into rled's yet as I'm still at work, but I can try that later tonight. I'll also try just taking the shield IDs out of the Shan and see if that solves the problem. Just to make sure we are barking up the right tree so to speak πŸ˜‰

Geoff

Well, dropping the shield sprites would probably solve the problem, I'm fairly sure. But, they would definitely make them look cooler. If you have Microsoft Office 2007 or the 2010 beta, it would be extremely simple, though somewhat time consuming, to make very awesome looking shield glows. If not, it still wouldn't be too hard.

To make shield glows in Office, import your sprites into a Word document or Publisher 2010. There's a handy little picture option that allows you to create glows. You'll need to adjust them quite a bit and play with the text wrapping edit points. Time consuming, but not difficult.

I'm not positive how to do things in Photoshop. In PaintShopPro, which is what I use, after I select the mask, I'm left with a transparent layer around all my sprites. Typically, I just color this gray. If making shields, I have a filter set up that adds a colored gradient about 5 pixels deep around everything that isn't transparent. This makes a nice shield wrapped around the ship.

You could also do this in your 3D modelling program. These instructions are for Blender, which is what I use, but it should be roughly the same idea if not the same instructions for most other 3D software. Put a cube around your model, and make sure to put a solid black texture on your actual Borg cube instead of your Borg ship texture. If not, the ship will show up looking like a Borg cube in your shield sprite, and not as a sprite mask, which is what you want. Subdivide the cube a fair amount, since the next step renders off of vertexes and not faces. Give the shield cube a halo texture. Give it a fairly low light emission and set the alpha very high so that it is almost completely transparent. When rendered, it should make a nice glowing cube.

If halo textures are not cooperating, just bevel that cube out a bit so it doesn't look so sharp, set the alpha quite high so again it is pretty transparent, and give it some sort of texture that appears a bit less uniform than just a green cube. In Blender, I would say that using a cloud texture or a noise texture would probably work best.

Render the same set of frames as the base sprite, then use the same procedure to make an rleD resource as you did with the base.

Thanks Kruger for the shield ideas. I was playing around with it a bit and have made some improvements πŸ™‚

so ya you guys were right, the shield sprites were the issue. I made some rled's for them and that fixed the problem. but now something else has arisen. It's nothing major as the plug-in does at least work now, but it's to do with the ships. In game it seems that the black that was surrounding the ships when I made the sprites has translated into the ship itself. What I mean is when I see a ship and target it, the target box is far larger then the ship. The only thing I can think of to fix it is that I need to crop the movie file I used to make the sprite or export the movie file to a frame by frame image set and manually crop all of them; not a option I'm overly fond of.

I thought though I would poll the masses here as you guys are a wealth of knowledge and help! Do you have any ideas how I could fix this? I should also point out that I used Blender and Strata 3D to make the sprites, but I'm an inexperienced novice at both so please keep the techno babble to a minimum please πŸ˜„

Once again thank you very much everyone! You've saved me hours and hours of frustrated hair pulling πŸ˜‰

Geoff

How much mask do you have around each sprite? In Blender, you can set the size of the output file in pixels. You can then set the camera zoom so that there is only a little bit of black around the edges. As far as output size, I typically go double size of the sprite that I'm trying to create, then in PaintShop, I apply an unsharp mask, then reduce it to the size I'm attempting to create.

I just created a quick test for this, but it was somewhat inconclusive. I just made a test box of gray surrounded by a 25 pixel black mask, and then a second test box with a 50 pixel black mask. I couldn't see a noticeable difference in where the target icons showed up. I'm not sure if the engine interprets the target box for the sprites as the edge of the mask? That's probably a Qannol or DA question, I think...

They way I think target boxes work is by the amount of black space around the sprite in each frame. Let's use some pictures for examples.

I've used green lines to separate each frame. See how little black there is around the ship in each frame? That will be the size of the target box, and thus how far away from the ship the brackets will be.

Here, you can see a lot more black around each ship in each sprite, thus making the target box larger and pushing the brackets farther away from the ship.

My guess is you have A LOT of black around each frame of the cube. If I'm right on both counts (how target boxes are sized and that you have large frames) then all you need to do put each frame of the cube closer to each other, making the frames smaller. Basically, like the fighter at top rather than the battleship above.

thanks guys I now have that fixed. I knew there must be someway to zoom in in Blender and Strata I just didn't know how. Note to anyone new to blender on a mac, use a 2 button mouse! You really do need that second mouse button.

Now I have another problem with the plug-in. This one isn't sprite related but I didn't want to start a new thread for it. I'm trying to make some hail and comm str's for the borg ships but can't seem to get it to work. I made a dude file and made a str with the hails I wanted but the ships just say "no response" or "no response detected", etc. I tried following the EV bible for what to number the str's as well as trying to manually make them use one by selecting the "use this str#" in the dude resource.

From what I understand the str's are difficult to work with but I hoping that someone out there has enough experience with them that they can point me in the right direction. My government ID is 197 and I've tried str IDs: 8498, 7500, 21990-21999, and 21773-21782 with no success.

I also wanted to know if I can make a new "illegal" cargo message. You see what I want to do is make it so that if you have certain technology and the Borg scan you that they will then attack. I have already made the scan masks for the outfits but I don't know how to go about making this message. Obviously I don't want it to say "we've detected your illegal cargo" or something. I want to say something like along the lines of Borg Lingo. I tried to find the str with the Federation illegal cargo scan message but I didn't have any luck. If someone could point me in the right direction I would greatly appreciate it πŸ˜„

I'm sorry to keep bugging you guys with what I'm sure are novice problems, but hopefully this will be the last one I can complete the plug-in. And as always I GREATLY appreciate any help you can give with this!

Thank you guys so much!

Geoff

It's no problem, Geoff. It's why we're here!

Now, I don't have a lot of experience with STR# resources myself, especially in the realm of hail and response quotes, but I can shed a little light as to how they work with outfits. In case you never noticed, when you're scanned in-game and have an outfit deemed illegal by the gΓΆvt that scanned you, the comm string that appears at the bottom of the screen gives the name of the outfit you have that was deemed illegal. Now, while I'm not sure which name is used, that can be figured out with some simple experimentation. Still, the point it, the Borg Cube will simply say something like, "Your possession of a(n) <insert outfit> has been detected." Sounds Borg-ish to me.

We were all novices at some point or another. Best way to learn is to find people who have already done this sort of stuff and get the help from them.

Unfortunately, I have not learned how to adjust str and str# resources myself quite yet. I'll do some experimentation and see if I can get it straight.

Ok guys I've put the whole STR thing on hold for now; maybe I'll make a new topic about it and see what happens.

Anyway I'm having trouble with the whole scanmask thing. I've read a few guides and thought I had a handle on it but I obviously don't. I set a bunch of outfits to scanmask 2 (as in the bit labeled as 2). I then set the borg to scanmask 2. I then set the dude resource to AI 4. But when I enter the system I get swarmed by 6 ships but all they do is buzz me and take off and I have at least 8 of the "illegal" outfits.

The scanmask ID 2 was used by the ATMOS and Ambrosia governments but I just editted them and took it out.

So is there something I'm not doing? Or can anyone see a problem with the way I've set it up?

Thanks again for all help guys; I know I say that a lot but it really is appreciated!!!

Geoff