|
I would like to add some custom skins. Anyone know where to get them?
Thanks
PThomas@Corillian.com |
| MigrationUser 1 Friday, December 12, 2003 8:13 PM |
Custom skins are tough to create. They require quite a bit of dilligence in laying out your creature in several animation states in multiple different directions. The easiest way to create an animated creature is via a modelling program, and then export screenshots of your keyframes to convert down into the final sprite sheets used by the Terrarium application.
Once you actually have the custom skins created you have to go through another process to get them turned into resources. These can then be manipulated and loaded by the Terrarium. If your creature uses the overloaded AnimalSkin attribute it'll show up with that skin in the game view assuming the skin is installed properly. If you want others to see the same skin for your creature then you need to contact them and pass them the assembly. This is a trusted process since you could be passing them a virus for all they know, and resource assemblies are actually quite large.
If there is a good interest in skinning, I could publish my web services interface and sample Winforms program for generating new sprite skins, uploading them to a central repository and then providing download services. This would allow users to custom install skins they think are cool, and would give some much needed diversity to the Terrarium.
The app will support plants and background skinning as well, though I must admit there isn't a robust and easy manner for replacing the background skin without overwriting the default skin. |
| MigrationUser 1 Saturday, December 13, 2003 6:18 PM |
Hi Justin! I'm trying to create some custom skins, and I'm going (very) slowly; if you have ANY samples from the current skins, it'll would be great. I think that if we post some default skins as bitmaps, it will enhance the custom skins creation, since the non-artist guys can get a custom skin and simply add some "special touches" to it! |
| MigrationUser 1 Monday, December 15, 2003 5:11 PM |
You can always get the default skins by looking in your Terrarium installation directory. Whenever a resource is used the first time, we unpack the bitmaps to the disk to make them faster to load using DirectDraw.
I definitely agree that tweaking would probably be an extremely prominant way to push around skins. The reality is that each skin takes up 6 megs or so on disk though. The bitmaps are very large once unpacked. They also take up a good deal of space in the resource assemblies. You can actually store them as JPEGs in the resource assemblies and then they unpack out to bitmaps later. (DX7 could only load bitmap images from file and we didn't take the time to try and find a workaround). While this would result in large bitmaps on the user's disk, it would make transferring resource assemblies over the Internet quite a bit easier on the bandwidth.
That said, the graphics engine in Terrarium is pluggable. However, there was never a feature to allow another graphics engine to be plugged in. On top of this, there is some *internal* stuff happening because we exist in the same assembly that grants heightened priv and the interface wasn't thought through to completion to make pluggable engines a possibility. This is really unfortunate, since it is difficult to work around some of the limitations of the current graphics engine. |
| MigrationUser 1 Monday, December 15, 2003 7:05 PM |
Just as an FYI, for the version we are working on currently, I am planning on shipping the sprites sheets in their raw format, i.e. not in a resource assembly. This should make tweaking and updating the resources a bit easier. I'll also make sure that this works well with the Skin attribute. |
| MigrationUser 1 Tuesday, December 16, 2003 2:44 AM |
So future versions will continue to use sprite sheets? Will the sprite sheets be bitmap based and thus as large or larger than the current versions? Have any thoughts been put into using something like PNG or JPG/Have any thoughts been put into using an enhanced version of DirectX that would actually support this? |
| MigrationUser 1 Tuesday, December 16, 2003 2:57 AM |
The next release will be the source code release with minor enhancements to the game itself, as well as bug fixes. If the formats stay in BMP format, it will be no worse than the current system as far as downloading goes. Packing them into resource assemblies does not perform any type of compression on them. In fact, just shipping the raw image files will save space on the user's computer since we won't have both the assemblies and the image files.
The next "big" release will have an entirely different rendering system, and will certainly have different art resources and formats. This "2.0" version is quite a way off, we just doing the design and planning now. |
| MigrationUser 1 Tuesday, December 16, 2003 6:44 PM |
Excellent, I was hoping you'd found a way around using the old AppUpdater and upgrading to the new one so you could download resources without having them to be in strongly named assemblies. The new AppUpdater supported by PSS allows the hashed manifest CRC style checking which would probably do a LOT better.
I'm not worried about 2.0. Can't wait for the source release though so I can release my updated Avalon interface which makes heavy use of XAML to allow creature developer's to specify EXACTLY what their creatures look like ;-) |
| MigrationUser 1 Tuesday, December 16, 2003 10:31 PM |
Hi,
Would you please help me to solve a problem that I have with the Updater component when I try it to add to one of my applications?
My name is Luis Sanchez and I trying to put the updater component in one of my .NET projects.
When I ran the sample from the updater zip file from http://windowsforms.net/article/appupdater.aspx. It ran fine.
Then, I created a small application with just one form and it worked fine.
Finally, I put the updater component in one of my big applications and I got these error:
======> The auto-updater of this application failed with the following error message: Download of a new update from "http//localhost/Test_Updater/1.0.0.1/" failed with the network error: The remote server returned an error: (403) Forbidden. To correct this problem, try rebooting the computer & re-launching this application. ======>
These are the values for the updater component: ======> Name = appUpdater1 AutoFileLoad = True ChangeDetectionMode = ServerManifestCheck Downloader = Microsoft.Samples.AppUpdater.AppDownloader DownloadRetryAttempts = 3 SecondsBetweenDownloadRetry=60 UpdateRetryAttempts=2 ValidateAssemblies=false Modifiers=Private Poller=Microsoft.Samples.AppUpdater.ServerPoller AutoStart = true DownloadOnDetection=true InitalPollInterval = 15 PollInterval=30 ShowDefaultUI=true UpdateUrl=http://localhost/Test_Updater/UpdateVersion.xml ======>
The application has 3 projects inside with forms and references. Some of dlls are third party components. So, I put in all the assemblyinfo.cs the value of: [assembly: AssemblyVersion("1.0.0.1")]
The Internet Virtual Directory has checked the option: Directory browsing.
The Updater creates a folder with the name: AppUpdater_3450. Inside it shows only 2 of the 15 files. I think the next file to upload will be the third party dll. The version of this third party is 0.9.0.1, but I can not change the value.
The file appupdater.xml contains these last lines: ========> a1:UpdateState id="ref-5" xmlns:a1="http://schemas.microsoft.com/clr/nsassem/Microsoft.Samples.AppUpdater/AppUpdater%2C%20Version%3D1.0.0.21101%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull"> <_Phase>Downloading</_Phase> <_UpdateFailureEncoutered>true</_UpdateFailureEncoutered> <_UpdateFailureCount>1</_UpdateFailureCount> <_DownloadSource id="ref-8">http://localhost/Test_Updater/1.0.0.1/</_DownloadSource> <_DownloadDestination id="ref-9">C:\Program Files\Test_Updater\AppUpdate_3450\</_DownloadDestination> <_NewVersionDirectory href="#ref-7" /> </a1:UpdateState> - <a2:SortedList id="ref-6" xmlns:a2="http://schemas.microsoft.com/clr/ns/System.Collections"> <keys href="#ref-10" /> <values href="#ref-11" /> <_size>0</_size> <version>0</version> <comparer href="#ref-12" /> <keyList xsi:null="1" /> <valueList xsi:null="1" /> </a2:SortedList> <SOAP-ENC:Array id="ref-10" SOAP-ENC:arrayType="xsd:anyType[16]" /> <SOAP-ENC:Array id="ref-11" SOAP-ENC:arrayType="xsd:anyType[16]" /> - <a2:Comparer id="ref-12" xmlns:a2="http://schemas.microsoft.com/clr/ns/System.Collections"> <m_compareInfo xsi:null="1" /> </a2:Comparer> </SOAP-ENV:Body> </SOAP-ENV:Envelope> ========>
Thanks for your help.
Luis F Sanchez. sanchelf@oge.com |
| MigrationUser 1 Wednesday, April 21, 2004 11:58 AM |
If you use 3DStudio, you can output sequences of bitmaps from a specific action (e.g. attacking or eating). Problem is that 3DStudio automatically starts with '000' as the first sequence (instead of the '001' that the SpriteCompiler.exe expects).
Another missing feature of the SpriteCompiler is the fact that it doesn't tell you what bitmap file it's missing when you're files are not complete (it just says: 'missing a file')
I've decompiler the SpriteCompiler, and added these features. Mitch: am I allowed to post the source of the SpriteCompiler here? (it's basically very simple, and some people might need to change the source to read their automatically generated bitmaps correctly)
--Dion
|
| MigrationUser 1 Wednesday, April 21, 2004 1:58 PM |
Hi again,
It looks like the Updater does not like files that have multiple file extension. I removed the files with names like:
OGETools.Crypto.dll System.RunTime.InteropServices.APIs.dll, System.Windows.Forms.TreeListView.dll
And the Updater started to work fine. The new version (1.0.0.1) copies these files from the old version folder (1.0.0.0).
The problem is how to update these multi-extension dll files? Is any change to be done in the IIS to accept these multi-extension dll files? or is part of a limitation of the Updater?
Thanks to any one for an answer to these questions.
Luis |
| MigrationUser 1 Thursday, April 22, 2004 9:22 AM |
Let me take a look at the source code for the sprite compiler and see if I can't zip it up and post it. That would be better than posting decompiled code, I imagine. |
| MigrationUser 1 Tuesday, May 04, 2004 10:20 PM |
I saw your post and believed that I was having the same problem. The updater would download one dll that had a single period in the name, and then would fail on the next file that was a config (name.exe.config). However, IIS was configured to process .config extensions and when I turned that off (removed the extension) in the web application that was serving up the versions of my app, everything downloaded correctly. It was only failing on the config file. The download process would proceed and was able to fetch dlls with long names with multiple periods.
Chris |
| MigrationUser 1 Monday, July 12, 2004 4:03 PM |
I am running the sampleApp from the zip file. I am still geting the 403 forbidden message not matter what I try. Any Suggestions? |
| MigrationUser 1 Thursday, July 15, 2004 10:47 AM |
Consider enabling script access for the folder that holds your update files (e.g. 1.0.0.1) in iis. Most of the times 403 (forbidden) is a result of appupdater trying to download .config file which iis does not allow it to download unless script resource access has been turned on using iis admin.
hope this helps...
|
| MigrationUser 1 Wednesday, March 16, 2005 1:43 PM |
Have script access enabled in iis - as described in one of the ealier replies.
that should solve the problem of iis behaving differently to different extentions...
|
| MigrationUser 1 Wednesday, March 16, 2005 1:44 PM |