Ryandor.com

Forums
It is currently Thu Mar 28, 2024 4:24 am

All times are UTC - 7 hours [ DST ]




Post new topic Reply to topic  [ 20 posts ] 
Author Message
 Post subject: vERY Tutorial
PostPosted: Mon Aug 11, 2003 6:53 am 
Offline
Site Admin
Site Admin
User avatar

Joined: Sun Jun 02, 2002 8:01 pm
Posts: 1473
Location: CO, USA
By Melody J. (a.k.a. Valera Entreri)
Note: even though it's not really map related, I accept just about anything submitted. -Ryandor

Many ?thanks? to Sargos, and the rest of the dev team of ?UOXC? (http://www.uoxclassic.com/), to Circonian for developing VERy (http://homefree.freewave.no/~s107293/wb/wbdownloads.html), to Alazane for developing Inside UO (http://dkbush.cablenet-va.com/alazane/insideuo.html), and also to Xuri Dabur (http://homefree.sensewave.com/~s107293/wb/, for the awesome tool ?World Builder? and to Ryandor (http://ryandor.com/), and to all the other 3rd party developers whose work often go unrecognized.

For this tutorial, I will show how to make a Gump for a new race. We are going to change the color of an existing Gump, so you would need 3 things; Inside UO http://dkbush.cablenet-va.com/alazane/insideuo.html, and Ultimate FX http://www.ultimatepaint.com/ufx, and VERy at the above link. (You don?t need to worry about installation because these tools are easy to install just double click the package you downloaded. You might want to create a folder for them to unzip to though, so things don?t get cluttered.)

First, open Inside UO and click the Gump button. Then look for Gump number 000C and right click the Gump Id number and select ?save as? and name it whatever you want, but try to keep it short. If you are making a Gump for both the Male and Female, you will want to do this twice naming it appropriately.

Image

Now, start Ultimate FX and open the file you just saved. Click on the ?Image? button in the menu bar, and then select ?Color?, and then ?Golden Summer?. Now select ?hard light? from the drop-down box.

Image

Your Gump should now look like this. (I call this the Drow.)

Image

Don?t forget to save it. (If you plan on doing multiple races, just save this under a different name and use your first Gump as a template for all others.)

Notice the blue loincloth? This would bother some people?lol? you would change it by copy and pasting the default loincloth over the blue one. However, it is tedious if someone else had already done this. Just, copy and paste the items below over yours. If you have problems retaining the same color as the loincloth, try pasting it in a paint program and saving as a .bmp then start Ultimate FX and open the file and copy from there instead.

Image Image

After saving it, we are going to import it into the verdata.mul file using VERy.

First, open up Inside UO and click on the Gump button. Go through the list of Gump Id numbers until you notice a gap or a jump, i.e. 076d?091a and select a number that isn?t already listed. In the example I just gave, it jumped from 076d to 091a. This means that you can use any of the numbers from 076e to 0919 to number your Gump. One thing to remember with the numbering, when it lists a letter, it begins with ?a? and ends with ?f?, and when it lists a number it begins with a ?0? and ends with a ?9?. Also, it starts with the numbers and then goes to the letters, i.e. 0710 to 0719 so the next number will be?071a to 071f?then 0720.

Second, save a copy of your new Gump into the same folder you installed VERy in.

Third, double click the text document called ?Very?. It should look something like this.

Image

Next, scroll down to where it says ?SECTION GUMPS?. Type the number for your Gump. (It should be 4 digits long.) Then you type the name of your Gump followed by .bmp since that is the format. Right after that, you add the size, in pixels, of the Gump. There are a few ways to find this info. You can either open MS Paint and then select ?Image? from the menu and then select ?Attributes?, or start Ultimate FX then select ?File? then ?Open? and navigate to your Gump and just click on it once to highlight it. You?ll see not just the pixel size, but also how many colors it?s using, which is very useful if you have accidentally saved your Gump into too many or too few colors. (Ultimate FX lets you save into the different color formats without color loss.) Save your work.

Ok, now we just have to add an item that will call up the Gump you created. I?ve decided to make a template so it will be easy for you. Just right-click the picture below and ?copy?, then open a paint program and select ?Edit? then ?paste?, making sure it stays the 44 44 pixel size. Be sure to save it into your VERy folder. This will go into the ?Static Tiles? section. Remember, if you are making a Gump for both the Male and Female, you will want to do this twice.

Image

Now, open it up using any paint program. I use MS Paint for this because it comes with Windows. Add a name to it so that it stands out by clicking the pencil button to the left and selecting a bright color. You will probably want to zoom in. Here is an example of what I mean below.

Image

Make sure the ?Attributes? still says 44 in both the ?height? and ?width? boxes.

Next, start Inside UO and click on the ?Artwork? button on the left and then select ?Static Tiles?. Find a jump in the numbers like you did to find an unused number, for the Gump you created. Now, open up your Very text document again and find the ?SECTION TILES? area. Type-in the number for your tile. Now, type-in the name for your tile, with the .bmp at the end of the name, and then the pixel size, which should be 44 44. An example is used above the tile templates.

Finally, scroll down to the ?SECTION ITEMS? in your VERy text document. Type-in the exact number you used for the ?SECTION TILES?. Then, type-in 00 00 40 00 1 5 0012 and the name you want it to say when you click on it.

Here is an example of what I mean.

Image

What you are seeing in the above example is the layers or attributes the item will have including the animation it will be using. Here, we are using animation id 0012 for the male Drow Gump. Starting at the 2 digit numbers after your ?tile? number, are the ?flags?. A double 00 indicates that field is n/a to your item. (Check the Layers and Flags list below.) The next digit indicates the weight of the item. Most of my items shown here are either weighed at 1 or 2 stones. Next, is the ?layers field?. Then it is the ?animations field?. The animations are depicted by the group of 4 digit numbers on the right. You can find the animations by starting Inside UO and then Clicking on the ?Animations? button on the left. You can find the Animation Id by clicking once on the animation and then looking at the bottom of Inside UO. It will give the Character name and the Model No. In the parenthesis, after the x, is the Animation Id. Remember, anyplace in Inside UO you see 3 digits when there is supposed to be 4, it means that there is supposed to be a 0 in the beginning of the number.

Here is a quick run down of the layers and what they mean.
Code:
----Layers-----

1 - One handed weapon
2 - Two handed weapon, shield, or misc.
3 - Shoes
4 - Pants
5 - Shirt
6 - Helm/Hat
7 - Gloves
8 - Ring
9 - Unused
10 - Neck
11 - Hair
12 - Waist (half apron)
13 - Torso (inner) (chest armor)
14 - Bracelet
15 - Unused (backpack, but backpacks go to 21)
16 - Facial Hair
17 - Torso (middle) (surcoat, tunic, full apron, sash)
18 - Earrings
19 - Arms
20 - Back (cloak)
21 - Backpack
22 - Torso (outer) (robe)
23 - Legs (outer) (skirt/kilt)
24 - Legs (inner) (leg armor)
25 - Mount (horse, ostard, etc)
26 - NPC Buy Restock container
27 - NPC Buy no restock container
28 - NPC Sell container
29 - Bank Box

----Flags----

Flag 1:
FLOOR           1
EQUIP           2
NONBLOCKING     4
LIQUID          8
WALL            10
DAMAGE          20
BLOCK           40
WATER           80

Flag 2:
UNUSED          1
PLATFORM        2
CLIMABLE        4
STACKABLE       8
WINDOW          10
WALL2           20
A               40
AN              80

Flag 3:
DESCRIPTION     1
TRANSPARENT     2
CLOTH           4
UNUSED1         8
MAP             10
CONTAINER       20
EQUIP2          40
LIGHT           80

Flag 4:
ANIM            1
UNK1            2
UNK2            4
BODYITEM        8
ROOF            10
DOOR            20
STAIRS          40
WALKABLE        80


Now, it?s time to test your new items. First, back up all your .mul files. Second, copy and paste your ?hues.mul?, your ?tiledata.mul?, and your ?verdata.mul? into your VERy folder. Third, double-click the VERy.exe and wait until it tells you to press ?enter?. It will pop out a file called out2.ver. Rename it to verdata.mul. You may want to copy it outside your VERy folder before you do this because it will say ?You can?t name it that because it already exists?. Copy and paste this file in the UO directory and also your appropriate Emulator directory if you have one.

That?s it! You should now be able to see your new stuff in Inside UO.

To use your new Gump, try scripting it as an item that gets ?placed? in the player?s backpack, when you go through the ?race gate? or after the character creation screen. (Assuming, your Emulator allows for that kind of scripting.)


If, for any reason, you are getting funny colors or colored lines in your items after you added them to your verdata.mul, just make sure that it is the right size and that the size matches the VERy script. Also there are 3 different colors for black. One is a transparent, one is a background and the other is a ?black-out?. I?ve made color templates for you to use. Just remember to ?right-click? and ?copy? on the pictures below, and paste them using your paint program.


Image

The background black is used for the paper doll Gump, in general, whether adding a new weapon Gump or race Gump. The black-blocker is used to block out parts of the body; like when I used the horse legs for the centaur Gump, the human legs were sticking out, so I had to block it. The transparent black is used for making an area transparent. Here is an example.

Image

*HINTS: If you want to add a new log-in just use the same number your old log-in Gump uses for your new log-in.

Adding weapons and such is pretty much the same as we did it in this tutorial. Just shrink the Gump down to 44 44, by going to ?Image? then ?Stretch/Skew? in MS Paint and typing 50, for 50%, in both horizontal and vertical boxes depending on how much you need to shrink it, or make a new art tile, and then add it to the ?Static Tiles? section.

If you add custom walls, remember to add them also into your layer section of the VERy document so that you can?t walk through them.

You don?t necessarily need to add entries into each section of the VERy documentation. For instance, walls and floors don?t need a Gump and the log-in Gump does not need a static tile.

(Here is a little disclaimer.) Ultima Online is the property of OSI (origin systems) and Electronic Arts. You are welcome to copy, print, email, distribute, and post this tutorial anywhere you like just as long as you give me credit for its creation. Same thing goes for the templates, and images. PLEASE DO NOT CHANGE THIS TUTORIAL AND MAKE IT YOUR OWN OR IT WILL MAKE ME MAD! Remember, if you send out good ?karma? you?ll get back good ?karma?. Anything else goes. Enjoy!


Top
 Profile  
 
 Post subject:
PostPosted: Sat Nov 01, 2003 4:53 pm 
Offline
Dread Pirate
Dread Pirate
User avatar

Joined: Sun Oct 12, 2003 11:28 pm
Posts: 759
Location: Denver, CO
very nice this one i think should go into tutorials :D

_________________
http://ax-n.net Admin X's News and Resources


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 04, 2003 10:26 pm 
Offline
Newb
Newb

Joined: Tue Nov 04, 2003 10:24 pm
Posts: 1
nice


Top
 Profile  
 
 Post subject:
PostPosted: Mon Dec 22, 2003 4:23 am 
Offline
Dread Pirate
Dread Pirate
User avatar

Joined: Sun Oct 12, 2003 11:28 pm
Posts: 759
Location: Denver, CO
great tutorial 1 question, i made my own new gumps etc but when i get the tile in game, i cannot seem to apply it to show onto my paperdoll, hwo do i do this?

_________________
http://ax-n.net Admin X's News and Resources


Top
 Profile  
 
 Post subject:
PostPosted: Sun Feb 08, 2004 12:07 pm 
Offline
Newb
Newb

Joined: Sat Feb 07, 2004 8:15 am
Posts: 2
I can't downlaod the Ultimate FX software.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Feb 09, 2004 8:04 pm 
Offline
Dread Pirate
Dread Pirate
User avatar

Joined: Sun Oct 12, 2003 11:28 pm
Posts: 759
Location: Denver, CO
I will see if i can find it for you somehwre

_________________
http://ax-n.net Admin X's News and Resources


Top
 Profile  
 
 Post subject: need help badly!!
PostPosted: Thu Feb 12, 2004 12:54 pm 
Offline
Young
Young

Joined: Thu Feb 12, 2004 12:39 pm
Posts: 13
I just made a new tile, it's a new tree. but I got a colored line on the top of the pic after I added the into verdata.mul. I am sure the file size of bmp file is correct. so I want get some helps here. Thanks in advance!! I post the pic of my new tree and the very.scp section here. another question is how to make the tree can't walk through just like a wall.

The following is the pic with a colored line.
Image

and the script code in my very.scp

SECTION GODWALK
{
// *** 0: Includes walk-through-walls changes
// 1: Without godwalk changes *** //
1
}

// if you don't know how to find the width/height of a .bmp, open mspaint
// and click image, then attributes //

// *** hexid filename.bmp WIDTHofimage HEIGHTofimage *** //

SECTION TILES
{
0db6 bamboo.bmp 98 139
}

SECTION GUMPS
{
//c361 gumpORCmale.bmp 260 237
//ea71 gumpORCfemale.bmp 260 237
//c60c spikyGump.bmp 260 237
}

SECTION ITEMS
{
0db6 00 20 00 00 1 00 0000 1 Bamboo_1
}

HUESTART
// Dont remove this line

//SECTION HUE 0483
//{
//}

EOF


Top
 Profile  
 
 Post subject:
PostPosted: Fri Feb 13, 2004 10:36 am 
Offline
Community Guy

Joined: Mon Jan 12, 2004 2:20 am
Posts: 205
Location: United States, MI
I don't honestly know what the problem is with the line above your tree... you might want to try making the top line of the bmp transparent? That might help... might not.

I the case of you being able to walk through it, you have to set the property 40 BLOCK to it. It will go in the first line of properties. Like this:

SECTION ITEMS
{
0db6 40 20 00 00 1 00 0000 1 Bamboo_1
}

_________________
Better Deader


Top
 Profile  
 
 Post subject:
PostPosted: Wed Feb 25, 2004 7:05 pm 
Offline
Newb
Newb
User avatar

Joined: Wed Feb 25, 2004 6:54 pm
Posts: 4
A possible reason is that the vertical size of your gump is an odd number. Old game programming was using such tip as even numbers to accelerate treaments (because of assembler optimizations). That's interesting. Can you tell me if it's solving the problem ?


Top
 Profile  
 
 Post subject:
PostPosted: Thu Feb 26, 2004 10:24 pm 
Offline
Young
Young

Joined: Thu Feb 12, 2004 12:39 pm
Posts: 13
this problem still exists in VeryZ17, but I am using another tool called paradise, there is no this problem right now.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Feb 27, 2004 1:40 am 
Offline
Not your daddy
Not your daddy

Joined: Mon Nov 18, 2002 2:18 am
Posts: 1224
Location: Oregon State
can you post a link for that tool?

_________________
Forget what you know, know what you forget.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Feb 27, 2004 4:41 am 
Offline
Journeyman
Journeyman

Joined: Mon Dec 02, 2002 3:33 pm
Posts: 64
Did you mean a link for Paradise? DevViperious has it here:

http://serpentsmoon.com/downloads/paradise.rar


Top
 Profile  
 
PostPosted: Sat Aug 07, 2004 3:00 pm 
Offline
Apprentice
Apprentice

Joined: Wed Jul 14, 2004 4:27 pm
Posts: 30
I'm kind of hoping someone can help me out. ^_^ Is VERy supposed to update your tiledata.mul as well as creating the verdata file? Because when I run it, I get a verdata with all the proper information, but it doesn't update my tiledata at all. So I can see the tiles in InsideUO, but none of the information, like the name or flags, is properly saved into the tiledata, and the tiles are therefore neither labled nor functional in game.
Thanks for your help,
-Janice
aka Sparkle!


Top
 Profile  
 
 Post subject:
PostPosted: Sun Aug 08, 2004 7:57 am 
Offline
Grand Master
Grand Master
User avatar

Joined: Thu Aug 07, 2003 6:57 am
Posts: 472
VERy only creates the verdata file, doesn't touch tiledata.

_________________
-= Ho Eyo He Hum =-


Top
 Profile  
 
 Post subject:
PostPosted: Sun Aug 08, 2004 12:05 pm 
Offline
Apprentice
Apprentice

Joined: Wed Jul 14, 2004 4:27 pm
Posts: 30
Thanks Xuri! ^_^ I'm using mulbuilder instead now, so I'm all set.

-Janice
aka Sparkle!


Top
 Profile  
 
PostPosted: Sat Sep 25, 2004 10:25 am 
Offline
Newb
Newb

Joined: Thu Sep 23, 2004 8:09 pm
Posts: 1
anyone got the race gumps to work.. ???
:lol:

I started usig very but the tiledata wasn?t modified, so i begun to use mulbuilder too... the flag that i marked was wereable, and the layer.. 5...

In the script.. here is the code i used with runuo... i emulate the suit to work as player races..

racesuit
Code:
using System;
using Server;

namespace Server.Items
{
   public abstract class RaceSuit : Item
   {
      private AccessLevel m_AccessLevel;

      [CommandProperty( AccessLevel.Administrator )]
      public AccessLevel AccessLevel{ get{ return m_AccessLevel; } set{ m_AccessLevel = value; } }

      public RaceSuit( AccessLevel level, int hue, int itemID ) : base( itemID )
      {
         Hue = hue;
         Weight = 1.0;
         Movable = false;
         LootType = LootType.Newbied;
         Layer = Layer.Cloak;

         m_AccessLevel = level;
      }

      public RaceSuit( Serial serial ) : base( serial )
      {
      }

      public override void Serialize( GenericWriter writer )
      {
         base.Serialize( writer );

         writer.Write( (int) 0 ); // version

         writer.Write( (int) m_AccessLevel );
      }

      public override void Deserialize( GenericReader reader )
      {
         base.Deserialize( reader );

         int version = reader.ReadInt();

         switch ( version )
         {
            case 0:
            {
               m_AccessLevel = (AccessLevel)reader.ReadInt();
               break;
            }
         }
      }

      public bool Validate()
      {
         object root = RootParent;

         if ( root is Mobile && ((Mobile)root).AccessLevel < m_AccessLevel )
         {
            Delete();
            return false;
         }

         return true;
      }

      public override void OnSingleClick( Mobile from )
      {
         if ( Validate() )
            base.OnSingleClick( from );
      }

      public override void OnDoubleClick( Mobile from )
      {
         if ( Validate() )
            base.OnDoubleClick( from );
      }

      public override bool VerifyMove( Mobile from )
      {
         return ( from.AccessLevel >= m_AccessLevel );
      }

      public override bool OnEquip( Mobile from )
      {
         if ( from.AccessLevel < m_AccessLevel )
            from.SendMessage( "You may not wear this." );

         return ( from.AccessLevel >= m_AccessLevel );
      }
   }
}


Orc
Code:
using System;
using Server;

namespace Server.Items
{
   public class Orc : RaceSuit
   {
      [Constructable]
      public Orc() : base( AccessLevel.Player, 0x0, 0x3d88 )
      {
      }

      public Orc( Serial serial ) : base( serial )
      {
      }

      public override void Serialize( GenericWriter writer )
      {
         base.Serialize( writer );

         writer.Write( (int) 0 ); // version
      }

      public override void Deserialize( GenericReader reader )
      {
         base.Deserialize( reader );

         int version = reader.ReadInt();
      }
   }
}


Well... i tried to moodify the method of tribal paint..


Code:
using System;
using Server;
using Server.Mobiles;

namespace Server.Items
{
   public class RacePaint : Item
   {
      public override int LabelNumber{ get{ return 1040000; } } // savage kin paint

      [Constructable]
      public RacePaint() : base( 0x9EC )
      {
         Hue = 2101;
         Weight = 2.0;
      }

      public RacePaint( Serial serial ) : base( serial )
      {
      }

      public override void OnDoubleClick( Mobile from )
      {
         if ( IsChildOf( from.Backpack ) )
         {
            if ( !from.CanBeginAction( typeof( Spells.Fifth.IncognitoSpell ) ) )
            {
               from.SendLocalizedMessage( 501698 ); // You cannot disguise yourself while incognitoed.
            }
            else if ( !from.CanBeginAction( typeof( Spells.Seventh.PolymorphSpell ) ) )
            {
               from.SendLocalizedMessage( 501699 ); // You cannot disguise yourself while polymorphed.
            }
            else if ( Spells.Necromancy.TransformationSpell.UnderTransformation( from ) )
            {
               from.SendLocalizedMessage( 501699 ); // You cannot disguise yourself while polymorphed.
            }
            else if ( from.IsBodyMod || from.FindItemOnLayer( Layer.Helm ) is OrcishKinMask )
            {
               from.SendLocalizedMessage( 501605 ); // You are already disguised.
            }
            else
            {
               from.BodyMod = ( from.Female ? 17 : 17 );
               from.HueMod = 0;

               if ( from is PlayerMobile )
                  ((PlayerMobile)from).SavagePaintExpiration = TimeSpan.FromDays( 7.0 );

               from.SendLocalizedMessage( 1042537 ); // You now bear the markings of the savage tribe.  Your body paint will last about a week or you can remove it with an oil cloth.

               Consume();
            }
         }
         else
         {
            from.SendLocalizedMessage( 1042001 ); // That must be in your pack for you to use it.
         }
      }

      public override void Serialize( GenericWriter writer )
      {
         base.Serialize( writer );

         writer.Write( (int) 0 );
      }

      public override void Deserialize( GenericReader reader )
      {
         base.Deserialize( reader );

         int version = reader.ReadInt();
      }
   }
}



well the two methods works. Just that. But i?m getting trouble with the layers.. with the bodymod the layers got messed up.

What i?m trying to do is that the new gump overrrides the back gump of the normal skin... so no layer is used.

I think I maybe go look for the body.def and maybe bodiconv.def and gump.def in the ultima online 2d carpet (in body.def i put 17 (400))

Well that is.. if anyone got the race gump to work i?ll apreciate very very much if he or she can tell me how to do this XD XD XD XD


PD: my english is poor.. i?m from sothamerica XD XD XD... but i?m learning :P


Top
 Profile  
 
 Post subject: Problems from the start
PostPosted: Thu Mar 10, 2005 9:59 pm 
Offline
Newb
Newb

Joined: Thu Mar 10, 2005 9:53 pm
Posts: 1
I'm new to all of this, and I'm having alot of problems. I can't get InsideUO to save the gump files. When I try, it gives me the error message "Invalid data request 10997884 for indexed file."

Am I doing something wrong? Is there another way to get these gumps?

_________________
"Good, Bad... I'm the guy with the gun."


Top
 Profile  
 
 Post subject:
PostPosted: Sun Dec 02, 2007 6:13 am 
Offline
Young
Young

Joined: Sat Nov 17, 2007 6:55 pm
Posts: 12
Anyone have the images of the tutorial? They aren't shown and i can't see them.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Mar 05, 2008 6:41 am 
Offline
Newb
Newb

Joined: Wed Mar 05, 2008 6:38 am
Posts: 3
Is it even possible to create racegumps for newer clients that don't use verdata.mul? If so, how? In which files is the old verdata-stuff located? vERY is obviously used for verdata, so what program/s should I use?


Top
 Profile  
 
 Post subject:
PostPosted: Thu Mar 06, 2008 10:18 am 
Offline
Grand Master
Grand Master

Joined: Thu Jul 17, 2003 8:54 am
Posts: 971
Edski wrote:
Is it even possible to create racegumps for newer clients that don't use verdata.mul? If so, how? In which files is the old verdata-stuff located? vERY is obviously used for verdata, so what program/s should I use?


Sure. The only thing verdata.mul did was patch the data in other files.

Gumps:

Gumpart.mul
Gumpidx.mul

Art:

Art.mul
Artidx.mul

Tiledata:

Tiledata.mul

Animations:

Anim.mul
Anim.idx

Anim2-5.mul
Anim2-5.idx

bodyconv.def
body.def
modtypes.txt

_________________
-= HellRazor =-
Shattered Sosaria is coming!
http://www.shatteredsosaria.com


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 20 posts ] 

All times are UTC - 7 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group