Custom Artwork How-To

Discussion in 'Server Support on Windows' started by Tannis, Jun 24, 2005.

  1. michelle78 Squire

    Message Count:
    176
    Despite reading through these posts for hours, then practicing for hours, I am still having difficulty getting some clothing items working properly. I paid special attention to Lord Greywolf's advice in the last posts here and something is just not working. I am sorry to bother people, but I must be overlooking something simple. I am trying to add a male cloak. The following locations are what I have chosen for slots

    Gump Id 0xc741 in hex = 51009 which is supposed to be a good area
    Gump id animation is 0x3F1 - transferred this over to my tiledata slot
    Art/Tiledata ID is 0x30F
    Weight2, Quality 20,
    checked off weapon, a, wearable, partialhue

    Modified body to
    1009 {876} 0

    876 = animation id 0x36c which is a cloak already ingame.

    Saved these files and transferred them to my server client and the client I use to play on.

    I log in and I can create my item on the ground, looks good on my paperdoll, but disappears and makes me bald when I sit on anything. I am having this problem with a few pieces and I just need some clarification on what I might be doing wrong. Thank you so much
  2. Tabain Sorceror

    Message Count:
    670
    Only gumps in 50,000 - 50,999 and 60,000 - 60,999 will stay on your character when you sit down.
  3. michelle78 Squire

    Message Count:
    176
    Using your suggestion I used the following slots, witin your recommended range, now ingame on the toon I appear to be wearing samurai armor and naked when sitting. Paperdoll appears ok

    Gump Id 0xc691 in hex = 50833 which is supposed to be a good area
    Gump id animation is 0x341 - transferred this over to my tiledata slot
    Art/Tiledata ID is 0x30F
    Weight2, Quality 20,
    checked off weapon, a, wearable, partialhue

    Modified body to
    833{876} 0
  4. Tabion Sorceror

    Message Count:
    13
    Okay I need a little help I believe. I added a bunch of custom art, general deco and animations, and while it all went smoothly thanks to this guide the items in game are not working correctly. Basically they do not show names (easily fixed but annoying) and they always highlight when moused over even though I selected impassable and place them as static/locked down, which is my real problem.

    Edit- Setting the weight to 255 fixed this issue.
  5. Nockar Sorceror

    Message Count:
    2,042
    Have a question. I added a bunch of animations. All of the animations that I put over the top of old animations work fine.

    The New animations that I added to blank spots do not work right - surprise surprise. I used this file to find blank spots.
    http://www.runuo.com/community/threads/the-patchers-little-helper.97646/
    The Patcher's Little Helper - "PLH - 7 0 4 2.pdf"

    I used - anim5.mul
    379 - 399

    All of them, in game, show up as this....
    Elven plate 942 0x3AE <-UO Fiddler
    Anim5.mul P: 0x1EC (492) <-Mulpatcher
    Elven Plate itemID 11111 0x2B67

    mobtypes.txt
    Code (text):

    #New Custom Monsters
    379 ANIMAL 20 # Calf 01
    380 ANIMAL 20 # Calf 02
    381 ANIMAL 20 # Calf 03
    382 ANIMAL 20 # Calf 04
    383 ANIMAL 20 # Young Ostard 01
    384 ANIMAL 20 # Young Ostard 02
    385 ANIMAL 20 # Young Ostard 03
    386 ANIMAL 20 # Colt Horse 01
    387 ANIMAL 20 # Colt Horse 02
    388 ANIMAL 20 # Colt Horse 03
    389 ANIMAL 20 # Colt Horse 04
    390 MONSTER 0 # Beetle
    391 MONSTER 0 # Lizard
    392 MONSTER 0 # Werewolf
    393 MONSTER 0 # The Butcher
    394 MONSTER 0 # Beast
    395 MONSTER 0 # Water Golem
    396 MONSTER 0 # Lava Golem
    397 MONSTER 0 # Earth Golem
    398 MONSTER 0 # Warg Rider
    399 MONSTER 0 # Skeleton Archer
     
    Bodyconv.def
    Code (text):

    379 -1 -1 -1 379 # Calf 01
    380 -1 -1 -1 380 # Calf 02
    381 -1 -1 -1 381 # Calf 03
    382 -1 -1 -1 382 # Calf 04
    383 -1 -1 -1 383 # Young Ostard 01
    384 -1 -1 -1 384 # Young Ostard 01
    385 -1 -1 -1 385 # Young Ostard 03
    386 -1 -1 -1 386 # Colt Horse 01
    387 -1 -1 -1 387 # Colt Horse 02
    388 -1 -1 -1 388 # Colt Horse 03
    389 -1 -1 -1 389 # Colt Horse 04
    390 -1 -1 -1 390 # Beetle
    391 -1 -1 -1 391 # Lizard
    392 -1 -1 -1 392 # Werewolf
    393 -1 -1 -1 393 # The Butcher
    394 -1 -1 -1 394 # Beast
    395 -1 -1 -1 395 # Water Golem
    396 -1 -1 -1 396 # Lava Golem
    397 -1 -1 -1 397 # Earth Golem
    398 -1 -1 -1 398 # Warg Rider
    399 -1 -1 -1 399 # Skeleton Archer
     
  6. michelle78 Squire

    Message Count:
    176
    After much trial and error I have finally used the few available slots in gump anim and got my clothes and weapons to work right on the paperdoll and on the toon ingame. I do have one final issue and I hope someone can help me out. I have added in weapons, they appear ok in all aspects so I created scripts using existing weapons for my base, but the weapons ingame do not cause any damage and the toon does not go through the attack motions. Switching over to the weapon used as my base, everything works normally. I assumed that i was missing something in my tiledata.mul but the only differences are the values in the Unknown slots. Do these numbers being 0 cause this issue and is there a certain specification of number i need for certain types of weapons? Thanks
  7. michelle78 Squire

    Message Count:
    176
    Wanting to post my findings as a resource for anyone else having this issue listed above. I am using an ML client and therefore need to declare the weapon speed in order for it to work properly. Here is the way the code will look if done properly....

    Code (text):
        public class DoubleSpear : BaseSpear
        {
            public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.ShadowStrike; } }
            public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.MortalStrike; } }

            public override int AosStrengthReq{ get{ return 40; } }
            public override int AosMinDamage{ get{ return 20; } }
            public override int AosMaxDamage{ get{ return 33; } }
            public override int AosSpeed{ get{ return 55; } }
            [COLOR=rgb(255, 102, 0)]public override float MlSpeed{ get{ return 4.00f; } }[/COLOR]

            public override int OldStrengthReq{ get{ return 15; } }
            public override int OldMinDamage{ get{ return 4; } }
            public override int OldMaxDamage{ get{ return 32; } }
            public override int OldSpeed{ get{ return 50; } }

            public override int InitMinHits{ get{ return 31; } }
            public override int InitMaxHits{ get{ return 70; } }

            public override WeaponAnimation DefAnimation{ get{ return WeaponAnimation.Pierce1H; } }
     
    The code in orange being the key. If you are not using ML then obviously this doesnt apply, but if you are then you must be careful bringing older scripts onto your server without this mod as well. Ingame you will see a weaponspeed of 0s if you hover over the weapon.
  8. Kouri Squire

    Message Count:
    47
    I was just wondering if this "How To" is the best way to go still to add custom artwork?

    My shard is running the 2.0 Final and whenever I try to follow the walkthrough my art doesn't come out as planned. I add the art to the Gump(Anim), create the info in Tiledata and Art(S), I edited the Body.def file, wrote the script and when I add the item to my backpack it is a plate, when I add it to the ground it is nothing.

    I have added artwork before the 2.0 update and it all came out just fine, weapons and armor alike.
  9. Nockar Sorceror

    Message Count:
    2,042
    Make sure in your itme.cs script you have the right itemID.
    Once you do that. Make sure in mulpacher, check the info for tiledata.mul. Make sure you see the right small image form art.mul
    Then make sure you entered the right animID from your gump(anim) tab.
    Then make sure in tiledata tab you also have all the right various numbers entered (layers, wearable, weapon/armor etc)
    in bod.def make sure you have the right # for the item (you have to do math to get it) & the right animation ID (this is hte actull anim id that shows up on your characer body. Dont confuse this with the gump anim ID. THey are two differnet things.)

    Lastly, there are some spots you cant use in the tiledata file. Make sure you are using the right spots. Some are used by other mul files.

    I found it works bet to make sure your self a xml file and put allll the info in there.
  10. Khagroth Wanderer

    Message Count:
    7
    I suggest using UOFiddler for maintaining art, tiledata, animdata, and pretty much every other client file. It replaces InsideUO and MULPatcher simultaneously, and is a lot easier to work with.

    http://uofiddler.polserver.com/
  11. Kouri Squire

    Message Count:
    47
    First off, @Khagroth I do use UOFiddler and the artwork that I added shows in Gumps, TileData, & Items.

    I went back and checked everything, unfortunately everything looks correct to me.

    Gumps(Anim): 0xC5AE
    Animation: 0x25E
    Tiledata (S) & Art (S): 0x574D & 0x574E one for each direction of the backpack art
    InsideUO Axe Anim: 612 (0x264)

    For the script, I just copied the Axe.cs and modified it with the hex codes that I added.
    Code (text):

    using System;
    using Server.Items;
    using Server.Network;

    namespace Server.Items
    {
    [FlipableAttribute( 0x574D, 0x574E )]
    public class CustomAxe01 : BaseAxe
    {
    public override WeaponAbility PrimaryAbility{ get{ return WeaponAbility.CrushingBlow; } }
    public override WeaponAbility SecondaryAbility{ get{ return WeaponAbility.Dismount; } }

    public override int AosStrengthReq{ get{ return 35; } }
    public override int AosMinDamage{ get{ return 14; } }
    public override int AosMaxDamage{ get{ return 16; } }
    public override int AosSpeed{ get{ return 37; } }

    public override int OldStrengthReq{ get{ return 35; } }
    public override int OldMinDamage{ get{ return 6; } }
    public override int OldMaxDamage{ get{ return 33; } }
    public override int OldSpeed{ get{ return 37; } }

    public override int InitMinHits{ get{ return 31; } }
    public override int InitMaxHits{ get{ return 110; } }

    [Constructable]
    public CustomAxe01() : base( 0x574D )
    {
    Name = "Custom Axe 01";
                            Weight = 4.0;
    }

    public CustomAxe01( 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();
    }
    }
    }
     
    Body.def
    Code (text):

    606 {612} 0
     
    When I add this to my pack, all I get is a plate, add it to the ground and it is nothing.

    If you can see something that is out of place, please let me know otherwise I'm at a deadend.
  12. michelle78 Squire

    Message Count:
    176
    First off..... I feel your pain. I spent a very long time finding good slots both in the art/tiledata areas and even worse was in the gumpanim file. If the item is not showing up on the ground properly then that is a clear problem with the art/tiledata areas. My solution for this was finding empty existing slots higher up in the groupings, like the area 0x3fe5 and also using many of the empty slots from 0 all the way down. I realize this staggers items and makes scripting a mish mosh but it works. I added well over 500 art items in all over the place using this method. As far as the items showing up on paperdolls and tunes onscreen, you will find small bunches of good slots for 50,000 on. This will be trial and error and it will take the majority of your time. It ends up being well worth it when all is said and done, just be patient and don't smash your keyboard when things fail, just move on.

    My last piece of advice, start writing everything down in a notebook as you go. This way once you find good slots you will have a good record of them just in case something goes wrong and you end up with corrupted muls. Make lots of back ups as you go as well.
  13. Kouri Squire

    Message Count:
    47
    Thanks Michelle, I will look into moving up in the TileData list, as for the notebook, lol, I make excel list of EVERYTHING it's a curse.

    Thanks to all for the advice, it is appreciated!
  14. Kouri Squire

    Message Count:
    47
    Okay, took a small break from working on this, partly to take a step back from it, and mostly to let the blood stop boiling.

    I got the gump and backpack art to work but still having a problem. The animation isn't showing on the toon. I added an axe I used the animation for an axe (imagine that) 612 {0x264} I added the 0x264 into the the gump and I also made an entry into the body.def
    Code (text):
    692 {612} 0
    but again, still no animation.

    Any ideas on what I might have errored on?
  15. Kouri Squire

    Message Count:
    47
    After a bit more checking, when the axe is equipped my toon looks to be walking around holding something, but nothing is there.

    When I added items before, I seem to remember having to manipulate the animation number by adding or subtracting one, does this still need to be done with the current version?
  16. Scriptz Traveler

    Message Count:
    9
    Ok I recently got it into my head that I wanted to build a server since there are really none out there that have exactly what I am looking for. So far its going great and I wanted to add some custom art wearables into the game but I keep running into a problem... I cannot get the gump art to show on paper doll at all... It will not even let me equip the items as if it's a static or Im already wearing something that takes that layer slot. I followed the tutorial down to the letter and thought everything was running smoothly until I logged in to see it. I've read every post but I don't know how to fix this, the only thing I can get to work is the icon. Anyone know what I am doing wrong?
    I have tried over 25 different gump slots/tiledata slots all within 50000-69000 trying the different locations previously mentioned. I am at a complete loss as to what I should do

    EDIT: All right never mind, I give up on it... I have literally tried all I can and I still cannot get it to show on paper doll... The item script I have it set up on I can't equip and when I try to equip a normal robe and set the itemid to any of the hex numbers I used in creating it the robe just disappears... I downloaded someone elses custom patch files for their custom art and the body was different on paper doll (though the entire server was bugged and I couldnt equip anything, hence the reason it was just a test) so I know I have the directory and path's set up correctly. If anyone has any advice I'll try again, but until then I can't afford the loss of hair anymore :(
  17. Tatti Sorceror

    Message Count:
    19
    Hey! This is kind of a dumb, quick question, but would adding new clothing/weapons/etc over lets say Samurai Empire or Elven items cause some kind of major conflict or would it work just no problems? Would there be legal issues?

    It seems like finding right spots for the animations to work 100% (not bug while sitting etc) is really hard since even on the right range only some of them work.
  18. m309 Squire

    Message Count:
    525
    It would work just fine. You'd just have to connect the art to another animation, or whatever you added would just use the samurai animations.

Share This Page