SphereServer BugTracker - SphereServer
View Issue Details
0002210SphereServernew feature requestpublic24-09-13 04:0910-11-13 18:04
Coruja 
Ben 
normalminorN/A
resolvedfixed 
 
0.56c Nightly 
Automated (specify build number)
None
None
0002210: Support for OSI item stack (piles)
It would be great a new .ini setting to enable the OSI item stack when drop items on ground, like this:
http://uo.stratics.com/homes/betterhomes/dd_decotips.shtml [^]

When the item get drop, it will check all others items on same tile, counting all HEIGHTs to then place the dropped item on the top of the pile
No tags attached.
Issue History
24-09-13 04:09CorujaNew Issue
06-10-13 05:13BenAssigned To => Ben
06-10-13 05:13BenStatusnew => assigned
06-10-13 20:31BenNote Added: 0001714
06-10-13 20:31BenStatusassigned => resolved
06-10-13 20:31BenFixed in Version => 0.56c Nightly
06-10-13 20:31BenResolutionopen => fixed
07-10-13 02:56CorujaNote Added: 0001716
07-10-13 02:56CorujaStatusresolved => feedback
07-10-13 02:56CorujaResolutionfixed => reopened
07-10-13 02:57CorujaNote Edited: 0001716bug_revision_view_page.php?bugnote_id=0001716#r534
07-10-13 03:56BenNote Added: 0001717
08-10-13 09:13CorujaNote Added: 0001718
08-10-13 09:13CorujaStatusfeedback => assigned
09-10-13 00:36BenNote Added: 0001719
09-10-13 06:12CorujaNote Added: 0001720
12-10-13 16:11BenNote Added: 0001724
14-10-13 18:21CorujaNote Added: 0001727
15-10-13 01:44BenNote Added: 0001728
10-11-13 18:04BenNote Added: 0001767
10-11-13 18:04BenStatusassigned => resolved
10-11-13 18:04BenResolutionreopened => fixed

Notes
(0001714)
Ben   
06-10-13 20:31   
Added with EF_ItemStacking 0x04(probably not 100% OSI style but should do the trick (maybe even better))
(0001716)
Coruja   
07-10-13 02:56   
(edited on: 07-10-13 02:57)
thx :DD
I already tested on today nightly and it's working, but it always raise only 1 Z for every item instead use the item height

Example:
1) If I make a pile of i_map_blank (height=0), even doesnt counting item height it accidentally works fine because the raised Z will be 1. On the correct formula, instead always raise 1, it will try to raise 0, but 0 is a null value so it got changed to 1.
2) If I make a pile of i_forge (height=3), the pile will got weird because it will raise 1 Z too (the correct is 3 instead of 1)

And also, the server crash and sphereSvr.exe closes when I make a huge pile > aprox. 20 items inside a house

(0001717)
Ben   
07-10-13 03:56   
ok first of all... I knew you would say something about the item height :)
It's been added now (didn't have time to do it before the build time).
And as for items pilling high, players are not able to pile more then 16z above (just like OSI) but as a GM, there is no restrictions. Maybe I should just remove the GM bypass on this.
There is also a LOS issue with pilling more then 2 items that block view.(working on this)
(0001718)
Coruja   
08-10-13 09:13   
roflmao :D
I tested again on the latest nightly and height is working fine now. But the drop action is a bit messed, the item will stack only if I drop it "inside" the top item of the pile. If I drop it on over a item on the middle of the pile or on the pile ground, it wont stack on the pile.

On RunUO (OSI-like style) I can place the item anywhere on the pile (directly on the ground or over any item) and it will stack to the top. And if I pick up a item on the middle of the pile, all items above this "picked item" will fall (to correct the pile and prevent 'flying' items)
I checked the max pile Z too and it seems to be 20 per floor or 40 if theres nothing to block the Z (floor/roof), although I think 20 is enough

I uploaded a video to show how it works on RunUO
https://mega.co.nz/#!RpRjVZiL!QCixdhdcPxFgehKTu-cEXkVb0zYREsF5ROxtZNuoJN4 [^] (113.6 MB)
(0001719)
Ben   
09-10-13 00:36   
maybe you should upload your video somewhere that don't force ppl to use a specific browser... and the first link you posted stated 16 as the highest Z so why would I make it 20? I don't care what RunUO does...
(0001720)
Coruja   
09-10-13 06:12   
I uploaded on youtube, I think it should work now http://youtu.be/L_tdrVESLU8 [^]

The max value shown on first link is 16, maybe runuo is not correct, I just use it to make some OSI tests like this (since RunUO is 99% OSI-like) and I just say 20 because I got this value on the test. But I think 16 should do the trick

So basically our engine is working fine, just need some adjustments:
-Allow stack the item dropping it anywhere on the pile, including on the ground (the dropped item must always be placed on the top of the pile)
-If pick up some item on the pile, all itens above this picked item will fall to correct Z (items with attr_move_never or attr_static should not fall)
(0001724)
Ben   
12-10-13 16:11   
ok, I just looked at your video and I see what you mean, but I have a few things I'd like to explain before I do any changes.

The item being droped right now can be droped on a surface only. This means the ground, and in your video's case, a table is a surface also.
I'd have to look into droping on non surface items.
Now by doing it this way, stack a few tables, and you can still place items(no bigger then the space between the tables) between the tables... you can stack a few books there untill it'S full and then it will start stacking above the other tables.
About items droping, might be complicated, but I'll have a look.

Do some tests using other items then tables to see how it actually works and then report what you think really needs changing.
(0001727)
Coruja   
14-10-13 18:21   
I think we should postpone the 'drop' action, it's working atm, there's some high priority changes needed

-If pick up some item on the pile, all itens above this picked item should fall to correct Z. Items with attr_move_never or attr_static (and items above this Z) should not fall

-NEW: Deny item flip if the item got stacked. Don't know how it works on OSI but maybe it works like this, since every video I saw on youtube about OSI house decoration the item doesnt flip when it got stacked but flip if dropped outside a stack.
It makes sense, because many times I must drop the same item twice on the stack because it flips to a unwanted dispid, and this change will fix this problem
(0001728)
Ben   
15-10-13 01:44   
No flip - no problem, should be able to do that easy enough.
Items falling - working on it right now.

As for droping on non surface items, the client won't allow it unless droping on the same type or some specific items... so not much can be done there anyways.
(0001767)
Ben   
10-11-13 18:04   
Added stack dropping