Author Topic: autostacking  (Read 2127 times)

Seytra

  • Forum Addict
  • *
  • Posts: 2052
  • No system can compensate lack of common sense.
    • View Profile
Re: autostacking
« Reply #15 on: January 04, 2007, 07:46:16 pm »
When stacking, you say "rat eye x 10". So you can't keep track of individual qualities.
This likely is the way it is programmed, but it can be done differently. For example, you could do away with the item count. Instead, you assign each inventory slot a linked list, and this list contains full item objects / structures (making the inventory slots weightless sacks with infinite slots). This would then allow you to stack even completely different items, like a mushroom and a sword. This may or may not be prevented by the server. The point is, you can then browse a stack, and cycle through all items inside (possibly reusing the container window). Each item would therefore maintain it's individual properties, yet you could still have the stack functionality. When taking items from the stack, the simplest option is to just start at the back (or front, doesn't matter), and take as many items, in sequence, as the selected number indicates. Being able to browse / select items to take from the stack would be icing on the cake.
Should you care?
No.

Because, as Nikodemus says, stacks are OOC. You don't really have a "pile of rat eyes" when you stack 10 of them. It's only to make stuff easier for us.
Well, I think you should care, simply because the stack is meant to help. Now, being OOC, it mustn't have an effect on IC, and items can easily be IC. Additionally, it doesn't help if it adversely affects the items stacked, so it's helping property is negated.

There seems to be a trend to dismiss anything that is OOC as not worth looking at, or thinking about. However, this only applies when being IC. From an OOC POV, and especially a usability perspective, OOC things matter quite a bit.
You can't have stacks with different quality items or differently named items, because that would beat the point of stacks.
It would for different items, but I feel that different items of the same type should be stackable. Like a ruined dagger and a silverweave dagger (additionally, the "ruined" and "tattered" properties don't make sense anymore since quality already does the same thing, just better).
Regardless of what to stack, the proposed slot system would solve these issues, and enable the server to decide what can and what can not be stacked, even on the fly.

Edit: Maybe items that don't match exactly would never auto-stack, but be stackable manually. Likewise, if there is a stack of 40/45 daggers and one of 40/40 daggers, then a 40/40 dagger should autostack to the second stack. If there is no second stack, it should not stack, thereby starting a new stack.
« Last Edit: January 04, 2007, 07:56:03 pm by Seytra »

Nikodemus

  • Prospects
  • Veteran
  • *
  • Posts: 1808
    • View Profile
Re: autostacking
« Reply #16 on: January 04, 2007, 08:14:34 pm »
This likely is the way it is programmed, but it can be done differently. For example, you could do away with the item count. Instead, you assign each inventory slot a linked list, and this list contains full item objects / structures (making the inventory slots weightless sacks with infinite slots). This would then allow you to stack even completely different items, like a mushroom and a sword. This may or may not be prevented by the server. The point is, you can then browse a stack, and cycle through all items inside (possibly reusing the container window). Each item would therefore maintain it's individual properties, yet you could still have the stack functionality. When taking items from the stack, the simplest option is to just start at the back (or front, doesn't matter), and take as many items, in sequence, as the selected number indicates. Being able to browse / select items to take from the stack would be icing on the cake.
This is what i said from the start. Only i gues it would be good if the opening area where are slots for this what is inside a stack wouldn't be a new window, but would apear in the current inventory window, like a popoup at right from the right collumn with items and at left from the left collumn with items.

Also, for people who think that this way a sack would lost its meaing: )nobody said it yet)
A sack is to increase your capacity. not your weight limit. A capacity is the size of given item. When it will finally start working, we may start have unlimited amount of slots, because how much you can fit into your bag or your inventory without bag will depend of the total capacity of all items you have with you or in your bag.



What you can failure tommorow, failure today.


Better click for shiny stylez Help me with images!

ThomPhoenix

  • Testers
  • Forum Addict
  • *
  • Posts: 2678
  • A Phoenix, what'd you expect?
    • View Profile
Re: autostacking
« Reply #17 on: January 04, 2007, 08:20:17 pm »
To me, Seytra just described how sacks work. His "system" doesn't increase capacity, but that's where the differences stop.
So what's the point?

Quote
There seems to be a trend to dismiss anything that is OOC as not worth looking at, or thinking about. 
Source?

Quote
From an OOC POV, and especially a usability perspective, OOC things matter quite a bit.
Where did anyone say usability doesn't matter?

You still see a stack as an IC "pile of items".
They are not.
They're simply a tool to increase that usability.
So instead of having 10 slots filled with rat eye, you have one slot with 10 rat eyes in it.

What's the point of changing this system so you can have combined stacks of mushrooms, swords, daggers, glyphs and breads?
Simply move the items to their own stack, their own slot or their own sack.

I see no issue (except for the real autostacking-after-trade issue) and I see no use for Seytra's system as you can already do everything it does with the inventory itself and with sacks.
« Last Edit: January 04, 2007, 08:26:00 pm by ThomPhoenix »
We're not evil. We're simply amazing.

Nikodemus

  • Prospects
  • Veteran
  • *
  • Posts: 1808
    • View Profile
Re: autostacking
« Reply #18 on: January 04, 2007, 08:21:51 pm »
Thom, read what i wrote about sacks and stacking.



What you can failure tommorow, failure today.


Better click for shiny stylez Help me with images!

ThomPhoenix

  • Testers
  • Forum Addict
  • *
  • Posts: 2678
  • A Phoenix, what'd you expect?
    • View Profile
Re: autostacking
« Reply #19 on: January 04, 2007, 08:29:08 pm »
Eh, I did, and I reacted on it?
You want to use this complicated stack system of Saytra as a means to increase the number of slots and let only weight and capacity decide how much one can carry. That's nice, but why not simply make the inventory so that it adds x number of slots when all slots are full, or that it adds a "new page" of the inventory? Easier to code and waaaaay easier to keep track off server side. More usable too because you won't have to scroll down each stack in your inventory to find that one dagger you were looking for.
We're not evil. We're simply amazing.

LARAGORN

  • Veteran
  • *
  • Posts: 1252
  • Facts dont cease to exist because they are ignored
    • View Profile
Re: autostacking
« Reply #20 on: January 04, 2007, 08:38:28 pm »
The only prob I see with what you are saying Thom is that the sacks are not set up right at this time, we dont want everybody's inventory spilling out all over the place. Once the capacity and wieght issue is fixed, your idea will be very sound.

All great truthes begin as blasphemies- SHAW
Adraax KCP Adraax Forum

Seytra

  • Forum Addict
  • *
  • Posts: 2052
  • No system can compensate lack of common sense.
    • View Profile
Re: autostacking
« Reply #21 on: January 04, 2007, 09:33:48 pm »
@ Nikodemus: yes, this is a way to make what you described in your first post work. I decided to elaborate on how it could be implemented since there was Zan's comment of "How it is done I'll leave up to the people who understand programming.". I also would prefer it in the same window, possibly a scrolling list could be added to the right that contains the stack.
To me, Seytra just described how sacks work. His "system" doesn't increase capacity, but that's where the differences stop.
So what's the point?
This was precisely the intent. It means that the sack system can be used, with minor modifications to
- not display the sack image, but instead the item image and name (topmost item) and
- not give additional capacity / remove weight

IOW, it would likely not be (much) new code to be written.
The point is that with the multipliers we have now, there is no way to ever stack items with different attributes, even if they are nothing but a difference in quality by 1. In addition, the proposed system can be set to allow just about any arbitrary limit on what can be stacked, so it can be set to allow stacking of anything, or only completely identical items, or anything inbetween.

And this is necessary, unless one really wants to not be able to ever stack items with merely difference in quality. One day there will be not just quality, but other attributes as well (like color), and even if not, I'd rather have a stack of 10 mushrooms of different quality than 10 stacks of 1 mushroom each.
Quote
There seems to be a trend to dismiss anything that is OOC as not worth looking at, or thinking about. 
Source?
What I quoted
When stacking, you say "rat eye x 10". So you can't keep track of individual qualities.
If items are differently named, they can't stack.

Is that realistic?
No.

Should you care?
No.

Because, as Nikodemus says, stacks are OOC. You don't really have a "pile of rat eyes" when you stack 10 of them. It's only to make stuff easier for us.
You can't have stacks with different quality items or differently named items, because that would beat the point of stacks.
This doesn't make sense to me. If it is a usability consideration (which you state by saying "it's to make things easier for us" = enhancing usability), then it should actually increase usability. And if it mangles item quality, then it doesn't actually improve usability since it can't be used. Likewise, if you don't allow stacking of items with different quality, then the system will be close to useless in the long run, when almost every item will have a slightly different quality. I recall having read something similar recently, but I'm not going to search for it. It was, after all, merely stating an impression, designated as such by "seems to be".
Quote
From an OOC POV, and especially a usability perspective, OOC things matter quite a bit.
Where did anyone say usability doesn't matter?
You said "Should you care? No." So this clearly means that we should not care how the stacks work, or if at all. Thus, if the stacks work in a way that forces us to avoid them in all but a few specific cases, then usability isn't as good as it could be. If we are not to care, then we aren't supposed to care about usability.
You still see a stack as an IC "pile of items".
They are not.
They're simply a tool to increase that usability.
So instead of having 10 slots filled with rat eye, you have one slot with 10 rat eyes in it.
Absolutely not. I know very well that there doesn't have to be such an "IC pile of items". This is obvious when looking at things like swords that can't really make real stacks. However, this doesn't matter. The point is that if we are going to have a stack system, then that system should be usable in as many cases as possible. I therefore don't see why a stack should not be allowed to resemble a pile of rat eyes, be it an IC or OOC pile.
What's the point of changing this system so you can have combined stacks of mushrooms, swords, daggers, glyphs and breads?
Simply move the items to their own stack, their own slot or their own sack.
As I said, it doesn't have to be allowed to stack radically different items. It merely was intended as an example to show that the linklists would keep all item properties intact, regardless of what they are. I even said that one could artificially limit what a stack can stack. However, a system that can be limited to allow only certain things is more flexible than one that simply cannot allow anything else. And given that items can be expected to get lots of different properties in the future, such a system will be needed unless stacking will become really minor.
I see no issue (except for the real autostacking-after-trade issue) and I see no use for Seytra's system as you can already do everything it does with the inventory itself and with sacks.
A sack can be expected to get additional functionality in the long run, like extending capacity, possibly reducing weight, increasing security or allowing different items to be carried than normally (like ale in mugs, or sand in sacks, etc.). Therefore, the sacks will become a lot more different from inventory stacks, anyway.

Regardless, I still think that one should be able to just stack items of different quality without losing individual properties. I don't see sacks as a method for separating items. After all, the inventory is a purely OOC thing all by itself. Not only considering that a character would never be able to carry all the inventory stuff without a cart, they'd also not be able to place it anywhere on their body, even leaving clothes (or lack thereof) aside. Additionally, we would need to have different inventories for the different body parts or attachments (like belts, etc.). Therefore, sacks can't be meant to be limited to separation.

Sacks for additional IC functionality (liquids, less weight, more capacity, ...)
Stacks for OOC usability (easy viewing, sorting, access, trading, ...)

Sure, it is possible to use sacks to replace a proper stack system, but it is cumbersome. Even unlimited inventory slots wouldn't solve the issues that stacks should address. I really expect people to often have 50 mushrooms, but rarely 10 daggers. Also, if items would be stacked on the top of the first fitting stack, it'd not be necessary to browse each stack to find the dagger you just looted. And you could always sort your stacks, maybe even set a stack to only accept identical items via an option.

Since FAICS the stack system and the sack system can actually be the same, slightly enhanced, code, with instances merely set to different effects, there wouldn't even be an additional system. Looking at it this way, the current stack system is an unnecessary complication.

I therefore think that such a stack system does have merits and can coexist peacefully with sacks and other containers.
« Last Edit: January 04, 2007, 09:44:49 pm by Seytra »

Nikodemus

  • Prospects
  • Veteran
  • *
  • Posts: 1808
    • View Profile
Re: autostacking
« Reply #22 on: January 04, 2007, 10:20:53 pm »
Oh crap, long post as always Seytra x)
I just say that i can't agree with all your arguments Vs what Thom wrote.
And, about additional function of a sack in future. It is not only that. I wrote about the popup of additional slots, which would be near inventory slots, for one slot which holds a stack. This idea is because i hate the focus loss when dragging items from inventory to sack and the other way. Thats just annoying, long taking action for an easy and simple task.

You want to use this complicated stack system of Saytra as a means to increase the number of slots and let only weight and capacity decide how much one can carry. That's nice, but why not simply make the inventory so that it adds x number of slots when all slots are full, or that it adds a "new page" of the inventory? Easier to code and waaaaay easier to keep track off server side. More usable too because you won't have to scroll down each stack in your inventory to find that one dagger you were looking for.
Ever played Morrowind? I did and i always hated when i had 10 swords of the same type, but of different condition. They was not only taking room, so that i had to scroll a lot, but i was also annoyed when i couldn't grab a stack and drop it to the merchant window, but instead i had to grab a weapon one by one.
Now, in morrowind, the items was always segregated, so there was no slots in inventory, but area, just like you see icons on the pulpit on your monitor. In effect you didn't have to look for things all over your inventory. (not the case in PS)
Also, in morrowind the inventory area was resizable. (also not the case in PS, so you wouldn't be able to resize also the area for stacked items if we will have it in PS)
EDIT: Further, im morrowind there is no lag and low FPS wasn't the case, so you didn't have to wait seconds before what you did in inventory really happened (in PS you have to)
So, if in morrowind the not stacked items was annoying, in PS it would be real pain in the ass.
Combine my ideas with what is in morrowind and you have really beatiful system.
« Last Edit: January 04, 2007, 10:24:32 pm by Nikodemus »



What you can failure tommorow, failure today.


Better click for shiny stylez Help me with images!

bilbous

  • Guest
Re: autostacking
« Reply #23 on: January 05, 2007, 08:06:32 am »
Morrowind was a single player game so of course there was no network lag. But believe me if you had the graphics turned up too much for your machine there was plenty of hard drive thrashing lag as the virtual memory system tried to keep up with the memory requirements. What works in a single player game does not always work in an online game.

Nikodemus

  • Prospects
  • Veteran
  • *
  • Posts: 1808
    • View Profile
Re: autostacking
« Reply #24 on: January 05, 2007, 01:11:04 pm »
Doesn't change a fact, that it could be handled better in PS and i gave few ideas not so log ago. It is not hard to come with them by yourself. All a person need is want to improvement in the area and the ideas pop up like mushrooms after rain.



What you can failure tommorow, failure today.


Better click for shiny stylez Help me with images!