2007-04-15 POL 097 Win32, Linux and FreeBSD RC3 - Coregina

Here you can post threads requesting help on the official POL Ultima Online Emulator Core 097.
Note: Core 097 is no longer officially supported.

Moderator: POL Developer

Post Reply
Shinigami
Former Developer
Posts: 308
Joined: Mon Jan 30, 2006 9:28 am
Location: Germany, Bavaria
Contact:

2007-04-15 POL 097 Win32, Linux and FreeBSD RC3 - Coregina

Post by Shinigami » Sun Apr 15, 2007 12:43 am

RC = Release Candidate

Code: Select all

4-12 Austin
     Added: Projectile support for NPC intrinsic weapons.
                Property keys are AttackProjectile, AttackProjectileAnim, AttackProjectileType and AttackProjectileSound

4-8  MuadDib
        Fixed : Crash involving Realms() and passing non-string param or empty param to it.
      Changed : Sending of worn items to inrange pcs has been optimized. Should help
                reduce load a little bit for fully dressed mobs and full packs. Maybe
                reduce server load during bashes? Would require testing of course to make
                that statement :)
      Removed : CreateNPCFromTemplate() will now only accept Struct for override props.
                Arrays was removed due to core changes in array handling since this
                function was updated to use arrays.

4-4  MuadDib
        Added : WornItms Container checks that look for and handle container class
                objects like Quivers, etc, will ignore the following layers for the
                obvious and specific reasons:
                11 (hair), 15 (shhhh), 16 (beard), 21 (pack), 25 (mount)
      Changed : WornItems container checks when looking for accessible items. If an
                item inside the WornItems container is a container itself, it will
                now check inside that. This affects for example, quivers added in
                the ML Expansion. Lets you make new equippable containers to
                hand layers, etc, and be usable fully for adding items into it
                and removing while equipped. This is in effect for layers 1-25
                so be very carefull when creating these items!
      Changed : WornItems container is now checked for legal containers when drag-n-drop
                attempts to drop an item onto the equipped container class object (quiver).
                THe above layer ignoring is in place here also.
        Added : Projectile weapons will now check equipped containers for ammo if it
                cannot find any in the backpack first.
         NOTE : I very strongly recommend making equip scripts and all for these
                items. Since it IS a container, you need to make sure the layer
                the client is putting it on, is the correct layer. So just have the
                equip script make sure the correct layer is empty on the character
                equipping this. Remember, these are CONTAINERS, not armor/weapons.
                The client will allow equipping only if the item is set as armor
                or weapon, and uses layers client side. Never trust the client, thus
                the need for an equipscript for containers when they can possibly be
                equipped.

3-28 Shinigami
       Changed: Adjustment to increasing the revision state for Equipment loosing
                HPs while fighting.

1-15 MuadDib
        Fixed : PrintTextAboveCL() now checks for object instead of mobile class
                being passed to it.
      Changed : Default of uc_text in cliloc.em. Just smack me.

1-3 MuadDib
        Added : Packets that are pre-character selection will now report a struct to
                a packethook with the member "ip". So far this is the only member in
                the struct. Future members might be added, but don't hold me to it.
                Account references at this time, cannot be added.
and core-changes from Pol096.6:

Code: Select all

3-30 MuadDib
        Notes : Due to questions involving this, here is a partial list of things passable
                through the override of CreateNPCFromTemplate that use different names:
                Common Properties:
                    TRUEOBJTYPE
                    TRUECOLOR
                    TITLEPREFIX
                    TITLESUFFIX
                    TITLEGUILD
                    TITLERACE
                These should work also from the override you usually use. Noting these
                due to being named differently than what you usually use and see.

3-29 MuadDib
        Added : 0x3e98 (Swamp Dragon) added to uoconvert.cfg.

1-9 MuadDib
        Fixed : Status Flag checks totally rewritten. PLEASE PAY ATTENTION! They are now
                dependant on the UOExpansion Setting for accounts! Older (2.x) clients
                did not use the CanAlterPaperdoll flag, and used 0x40 for the warmode,
                and so on. LBR era, introduced the CanAlterPaperdoll (or around there).
                AOS+ clients use even more different, using 0x1 for warmode! Paperdolls
                seem to only use the warmode, unlike all other resources say.

1-6 MuadDib
        Fixed : Height checks when walking down items with gradual flag (such as ladders
                ands steps).

1-4 MuadDib
        Fixed : Status flag in paperdoll packet.
Win download : http://releases.polserver.com/index.php ... indows/097
Linux download : http://releases.polserver.com/index.php ... /Linux/097
FreeBSD download : http://releases.polserver.com/index.php ... reeBSD/097

feel free to test it...
Last edited by Shinigami on Sun Jul 15, 2007 2:11 pm, edited 1 time in total.

Yukiko
Distro Developer
Posts: 2770
Joined: Thu Feb 02, 2006 1:41 pm
Location: San Antonio, Texas
Contact:

Post by Yukiko » Sun Apr 15, 2007 9:59 pm

Thanks gentlemen.

*smiles*

User avatar
OldnGrey
POL Expert
Posts: 657
Joined: Sat Feb 04, 2006 6:26 pm

Post by OldnGrey » Sun Apr 15, 2007 11:23 pm

As a matter of interest, do I have to re-create my REALMs files for this?
It's a pretty large set of files to upload if I don't have to.

*edited* did a test. Redid the realms directory and they were identical byte for byte. Seems that for rc2.1 to rc3 at least, there's no need to generate the realms again.
Last edited by OldnGrey on Mon Apr 16, 2007 5:17 am, edited 1 time in total.

Xandros
Expert Poster
Posts: 76
Joined: Fri Feb 17, 2006 12:25 pm

Post by Xandros » Mon Apr 16, 2007 4:15 am

Thanks, some good changes there. Some questions though:

- I have no clue what this paperdoll flag thing is about, and I may
need to understand that, since we are using new clients, but leave
UOExpansion settings to T2A for some reasons.
Can somebody explain what these paperdoll flags are about, or point
me to the thread where that problem was discussed?

- Why will "WornItems Container checks that look for and handle container
class objects" ignore Layer 21 (Pack) "for obvious reasons"? Are you saying that because there is already code for handling the pack, and
it's just seperated from the code that handles the other layers?

- I don't understand what ".. you need to make sure the layer the client
is putting it on, is the correct layer. [...] The client will allow equipping
only if the item is set as armor or weapon, and uses layers client side ..."
is all about. Items like fishing rods or spellbooks existed all the time,
they're neither weapons nor amor, and we never had any problems with
them - did I miss any potential problem, do I have to change anything
for those items too?

Xandros

User avatar
CWO
POL Expert
Posts: 1153
Joined: Sat Feb 04, 2006 5:49 pm
Location: Chicago, IL USA

Post by CWO » Mon Apr 16, 2007 6:26 am

Xandros, MuadDib explained that no changes on your end are needed for the paperdoll flag. It will just work as intended now.

What he is saying about the worn items container, pack is ignored in the code that will check for other containers equipped because its all hardcoded to check the pack first anyway.

What he is saying about the client equipping is just that you should make sure you check what layer its being equipped to by the client. Never just trust what the client says since anyone can modify it.

MuadDib
Former Developer
Posts: 1090
Joined: Sun Feb 12, 2006 9:50 pm
Location: Cross Lanes, WV

Post by MuadDib » Mon Apr 16, 2007 8:23 am

Yes, the core usually checks the right things. However, if you have an item that goes for example, over several Coverage layers (like a Robe for example), but it's a container, you need to check in it's equipscript, that ALL of those layers are available to the player before allowing to equip the container.

Xandros
Expert Poster
Posts: 76
Joined: Fri Feb 17, 2006 12:25 pm

Post by Xandros » Mon Apr 16, 2007 10:56 am

MuadDib wrote:Yes, the core usually checks the right things. However, if you have an item that goes for example, over several Coverage layers (like a Robe for example), but it's a container, you need to check in it's equipscript, that ALL of those layers are available to the player before allowing to equip the container.
I'm still not sure if I understand that. From what you say, it seems that
there is something about an equippable container that is different than an
equippable armor, but I don't exactly understand what it is.
And apart from layers 1 and 2, I have never seen any item that uses more
than one layer (a robe definitely does not block more than one layer, nor
does a quiver).

Is all of this just a theoretical warning "if you create new items, and you
want them to block more than one layer, you'll have to check that for
yourself in equiptest"?

Xandros

Shinigami
Former Developer
Posts: 308
Joined: Mon Jan 30, 2006 9:28 am
Location: Germany, Bavaria
Contact:

Post by Shinigami » Thu Apr 19, 2007 2:51 pm

Please [re]load the Linux"rebuild" core and exchange it with the older release!

There was a problem with a library. Easiest way to identify the problematic build: call "./uoconvert" - it will crash or it will not crash.

Shinigami

FreeSoul
Master Poster
Posts: 90
Joined: Sat Feb 04, 2006 9:14 am
Location: Aman

Post by FreeSoul » Fri Apr 20, 2007 4:12 am

Code: Select all

      Removed : CreateNPCFromTemplate() will now only accept Struct for override props. 
                Arrays was removed due to core changes in array handling since this 
                function was updated to use arrays.
Removed?

Post Reply