| Pages: 1 [2] :: one page |
| Author |
Thread Statistics | Show CCP posts - 1 post(s) |

Orion Pax
Yoyodyne corporation Shadow Cartel
24
|
Posted - 2014.09.24 17:39:00 -
[31] - Quote
Bronson Hughes wrote:Orion Pax wrote:It would be a simple array shift or pop. That wasn't there before. Now, multiply that operation by however frequently people split stacks. Orion Pax wrote:A stack of 1000 Rifters would still be a single array of playerIDs that built the ship. Again, an array that wasn't there before, and scales, without limit, with the size of the stack. And, again, multiply the modification of this array by however frequently people split, add to, or create stacks. With those two items alone, that's a whole mess of operations that weren't there before. And we haven't even covered the extra database writes necessary to store the information in the first place (admittedly a small issue), or how to handle items that were already in existance (another small issue), etc. As someone who's worked in a high-power compute environment for a number of years, I can tell you firsthand that even a small additional computation can break a robust database system if the frequency of that computation isn't taken into account. Orion Pax wrote:If CCP designed their database to handle mods, ships, items in a generic way, adding this to ships would automatically provide the same feature to all items in the game. This is precisely what CCP did. Packaged items are 100% generic. They are indistinguishable from each other for the purpose of lessening EvE's database needs. That's what's so brilliant about them. All you need to identify a packaged item in the database is an item ID, and nothing else. What you're proposing is making packaged items non-generic and increasing EvE's database needs.
You can also make it a totally separate table and join tables...
I give up.
It's tough when people can't deduce or conclude the obvious solutions themselves from evidence and reasoning rather than from explicit statements.
Fly safe. |

Callic Veratar
631
|
Posted - 2014.09.24 17:53:00 -
[32] - Quote
An array of Player IDs for each person that made a ship could work. Sure. Your stack of 20 rifters gets an array of User IDs. That's fine, except every stack of items changes from a number of ships to an ordered list. Still, not the worst, one person splitting and joining the stacks should just be splitting and joining arrays.
Except before it was math and now it's array logic (or some other data structure). Still, that's not too bad, until you scale the operations from one player up to the thousands that are on the server at one time. Suddenly it exponentially more complicated and a stack all command changes from a couple seconds to a minute or so. The last time a change of that magnitude happened with the current inventory window it made inventory management almost unplayable.
Still, it's a neat idea. Even if the performance was manageable, consider how much stuff you have in your hangar. I own at least 20,000 ships, plus once it's on ships, why can't it also be on modules? Safe estimate I would have 50k items with IDs. Multiply that by the 500k players and you're adding 100GB+ of player IDs to the database for something that'd be kinda neat with no real functionality.
Yes it can be done. Of course it could be done quite easily. Scalability is the issue. |

Absolutely Not Analt
Caldari Provisions Caldari State
162
|
Posted - 2014.09.24 17:58:00 -
[33] - Quote
Orion Pax wrote: Read 4 posts above you. Also I already offered to write that part of the code. I sure hope you're not 5 years old. Comms would be inappropriate for you.
The problem isn't that it would be particularly difficult to do. An extra database column would handle the data, as you rightly point out. Actually you'd need two - one in stacks table, and one in the items table that holds the assembled ships. That second one could just be a foreign key to the character table though, so it's really not that important in the grand scheme of things - it's the first column that's the tricky one.
The issue is what handling that extra column in the way you're suggesting code wise in a system like Eve's would cost from a performance standpoint. People create, split, merge and delete stacks all the time. I mean literally all the time. In their cargo, in their inventory, at POSes, in jet cans, inside containers. And all of those stacks have to be tracked, including where they are, who owns them, and what they are a stack of. You basically want to add an extra column to that, in VARCHAR format, to track who created what.
Now, I happen to know that CCP is a Microsoft SQL Server shop (Get Oracle you fools!) from some articles I've read in the past. I know, from looking at the MS SQL variable types, that the maximum length of a VARCHAR field is 8,000 characters. I would assume that each of our character IDs is something like 10-12 digits long (assuming CCP is planning ahead and using Big Decimals). We'll say 10.
A stack can have at least 1,000 items in it (if not many more - ammo, obviously has tens or hundreds of thousands, as do minerals, but I'm not sure if they use a separate table for "bulk" type items). That means that, in order to accomodate the 1,000 items, I need at least 10,000 characters, so VARCHAR isn't going to do it (and that doesn't even account for some kind of spacer between the entries). Under Oracle, we'd have to use a BLOB to store the data - under MSSQL, you basically have to write the data to a text file, and then store that in the database as a binary file stream.
And you have to do it thousands of times a minute.
And all of that just to point ou that we can't even associate which entry in the stack matches which entry in the player id array (thus defeating the purpose of this suggestion) without adding even more psuedo indexing data to the table in the form of yet another blob (or expandiong the scope of the one we're using).
So yes, when people say "IT'S THE PERFORMANCE" it's not a cop out in this case. While what you want to add isn't necessarily complex from an idea standpoint, trying to add it to a high volume system without introducing a slow down in that system for what is, essentially, a vanity name plate is beyond ridiculous. It serves no point, and in no way can it do anything except harm the overall system. Eve is a multi player game.-áAnd you are the content. - Ralph King-Griffin Being meh at two things is not better than being great at one. - Lugh Crow-Slave
|

Jur Tissant
Unreal Darkness
250
|
Posted - 2014.09.24 18:01:00 -
[34] - Quote
It's probably technically possible but it would require a bit of a rework of how items are handled, and for what real benefit? Lots of industrialists might not want to have their names on KMs, especially for capital ships, and it's only of passing interest to others. |

Retar Aveymone
GoonWaffe Goonswarm Federation
833
|
Posted - 2014.09.24 18:15:00 -
[35] - Quote
Orion Pax wrote: Read 4 posts above you. Also I already offered to write that part of the code. I sure hope you're not 5 years old. Comms would be inappropriate for you.
Orion Pax wrote: I understand that. However, no matter what, we would have a column that keeps track of the number of items that are stacked correct? I'm saying add an extra column to the table that keeps track of this integer. This extra column would be an array type which keeps track of playerIDs that built said ship(s). When they are unpackaged the playerIDs would be redistributed to said ships.
can't imagine why they didn't accept your offer to contribute some code to eve you sure seem like a guy who thinks things through all the way |

Bronson Hughes
The Knights of the Blessed Mother of Acceleration
451
|
Posted - 2014.09.24 19:37:00 -
[36] - Quote
Orion Pax wrote:You can also make it a totally separate table and join tables... Which is another join operation that wasn't there before, and will impact system performance.
We can do this all day. No matter how you cut it, your idea that is very simple to code (a point with which I have never disagreed) would likely have a noticeable impact on system performance by virtue of the sheer number of times the additional instructions included in your simple code change are executed. Database servers can only handle so much.
Orion Pax wrote:It's tough when people can't deduce or conclude the obvious solutions themselves from evidence and reasoning rather than from explicit statements. We are coming to different conclusions because, I believe, we are looking at the issue from different backgrounds and likely different fields of expertise. Rather like the difference between theoretical physics and applied engineering: just because it's theoretically possible doesn't mean we have the technology to make it work yet. CCP Falcon's thoughts on suicide ganking. Reading Comprehension: a skill so important it deserves it's own skillbook. I want to create content, not become content. |

Bienator II
madmen of the skies
2841
|
Posted - 2014.09.24 19:38:00 -
[37] - Quote
CCP Fozzie wrote:http://xkcd.com/1425/ would be funny if you wouldn't have a team and a few years eve style bounties (done) dust boarding parties imagine there is war and everybody cloaks - join FW |

DrysonBennington
Aliastra Gallente Federation
181
|
Posted - 2014.09.25 00:30:00 -
[38] - Quote
Good idea. |

Donnachadh
United Allegiance of Undesirables
22
|
Posted - 2014.09.26 01:47:00 -
[39] - Quote
Orion Pax wrote:Leoric Firesword wrote:Orion Pax wrote:Leoric Firesword wrote:I'm not sure you're seeing the issue here. It's 1 database entry for each copy of a packaged ship someone has. Doesn't matter who built it.
Example: I've got 3 packaged Moa's in my hanger, I know 2 were built by a corp mate and 1 was bought off the market.
Since they're all packed they stack together making 1 single database entry with a quantity of 3. (2 of them have never ever been assembled, the other I really can't remember)
So, how do you propose that in a single database entry we store unique information tagging ship 1 to my corp buddy, ship 2 to the guy who built and then sold on market, and then ship 3 to my corp buddy (that's the order I acquired them in)?
Can't use the previous stack I'd's because I'm sure that at least 2 of them got wiped out when I got them to a central location and stacked them.
Can't use the previous ship Id's because those get wiped when you repackaged (and in my case some of those ships never have been assembled to get that item id).
Then even if you did find a way to associate that data, if you have a fleet fight you're going to have to retrieve this data for each ship, which is going to add time to the query, which will add processing time, causing lag. Read the post above you. actually, how about you go ahead and build a prototype system? eve dumps their item data, you can make up some tables about what you think might be held once a ship is assembled, then go for it. I bet you find it a lot tougher than you think it'll be. I expect it would take an hour or two. My point is, the solution I provided is elegant and will work easily. I find it unfortunate that people are always telling others that provide ideas, "It'll make the game laggy!", "That's billions of new entries!", "How is that even possible?!" And once, I'm like, "I'll write it for you." It's like, "Write a prototype and hand it to us on a silver platter and we'll think about it. (Because we can't deny it won't work now.)"
First off NO to the idea in the OP. It is data not needed in the game and most would probably not want it published anyway.
The other thing I find interesting are the programmers like you who come to the forums and talk about how easy xyz would be to change when they have no clue how it was all set up to begin with. Besides if this is all so easy why not go write your own online pixel spaceships game? It should be easy for a programming genius like you to handle, you could have it all your way and you could become rich and famous. |

Lugh Crow-Slave
Guardians of the Morrigan
75
|
Posted - 2014.09.26 05:13:00 -
[40] - Quote
Because screw you server |

Anthar Thebess
710
|
Posted - 2014.09.26 07:58:00 -
[41] - Quote
CCP Fozzie wrote:http://xkcd.com/1425/
Why fozzie, each hull needs to have just unique ID. It cannot be stacked with others. Think about this market 50000 separate orders for 1 type frigate.

I want the same for ammunition!. I want to be also on KM of each person that was killed by ammo i made! Support Needed : Jump Fuel Consumption Support Needed : Faction Crystal Changes |

Steppa Musana
Republic Military School Minmatar Republic
146
|
Posted - 2014.09.26 08:01:00 -
[42] - Quote
Why are you guys even convinced this would cause a severe increase on the server load? Are you guys also programmers that are completely aware of how the EVE system works, and can conclude without a doubt that doing this would significantly increase the server load?
For all you know, there are many other things within the game that completely outweigh the effects this could have on the server. It might double the effects on the server when stacking/unstacking items and what not, but that might in itself only be a tiny fraction of what effects the server (i.e. things like PVP calculations, undockings, and market updates would far outweigh it).
To me this argument is similar to the ones proposed such as, "No sorry this would be a waste of dev time", when the person making this argument is rather unaware of how much time the idea may take and are unaware of how much dev time can be spared in that particular department.
Not a +1, as I cannot be certain this wouldn't cause severe increased in server load, but -1 to the arguments against the idea for being far too assumptive. |

Donnachadh
United Allegiance of Undesirables
22
|
Posted - 2014.09.26 13:49:00 -
[43] - Quote
Steppa Musana wrote:Why are you guys even convinced this would cause a severe increase on the server load? Are you guys also programmers that are completely aware of how the EVE system works, and can conclude without a doubt that doing this would significantly increase the server load?
For all you know, there are many other things within the game that completely outweigh the effects this could have on the server. It might double the effects on the server when stacking/unstacking items and what not, but that might in itself only be a tiny fraction of what effects the server (i.e. things like PVP calculations, undockings, and market updates would far outweigh it).
To me this argument is similar to the ones proposed such as, "No sorry this would be a waste of dev time", when the person making this argument is rather unaware of how much time the idea may take and are unaware of how much dev time can be spared in that particular department.
Not a +1, as I cannot be certain this wouldn't cause severe increased in server load, but -1 to the arguments against the idea for being far too assumptive.
There is no doubt that all of this information tracking, retrieval and storage would add to the server load and slow down the entire system. The only question is how much load would it add and when does this additional load noticeably slow the game, and in a worst case scenario when does it force the cluster into time dilation? As others have asked what is the benefit of all of this? Do most players even give a damn about who built the ship they just killed? Even if they tracked this information what use would it be? How does all this add to the game play, or player driven content in the game? |

Steve Ronuken
Fuzzwork Enterprises Vote Steve Ronuken for CSM
3890
|
Posted - 2014.09.26 15:21:00 -
[44] - Quote
Absolutely Not Analt wrote:(Get Oracle you fools!)
Oh god, oracle licensing is a nightmare.
If you don't license /everything/ (which costs an absolute fortune) expect Oracle to be auditing you every few years, and quite possibly dinging you on features you didn't think you were using, but one developer once queried one table, so you're now liable for a stupid quantity of money to bring your licensing into compliance. And you can't even just not install the options. (some yes, but many no)
Yes, I've been burnt by this.
Woo! CSM 9! http://fuzzwork.enterprises/
Twitter: @fuzzysteve on Twitter |

Alvatore DiMarco
Capricious Endeavours Ltd
2732
|
Posted - 2014.09.26 16:54:00 -
[45] - Quote
Donnachadh wrote:How does all this add to the game play, or player driven content in the game?
When you kill a capital or a super, if the builder is listed then you add that name to your watchlist.
When that name comes online, you run a locator agent to find them. You now know where they're doing capital/supercap production and can hotdrop their CSAAs and their travel-fitted capitals as they're leaving station for the first time.
|

Banko Mato
Republic University Minmatar Republic
15
|
Posted - 2014.09.26 20:46:00 -
[46] - Quote
Well, how instead of killing the eve database by overloading it, we get with the (hopefully) coming customization options the ability to sell "producer tags" that can be applied to assembled ships (and show up on killmails)? Not exactly the same effect as tracking every last shuttle ever manufactured, but might be just good enough. |

Nariya Kentaya
The Pulsar Innovation Surely You're Joking
1538
|
Posted - 2014.09.26 21:15:00 -
[47] - Quote
CCP Fozzie wrote:http://xkcd.com/1425/ The fact that that comic is actually read by people other than me makes me feel a little less basement dwellery |

Donnachadh
United Allegiance of Undesirables
23
|
Posted - 2014.09.27 01:11:00 -
[48] - Quote
Alvatore DiMarco wrote:Donnachadh wrote:How does all this add to the game play, or player driven content in the game? When you kill a capital or a super, if the builder is listed then you add that name to your watchlist. When that name comes online, you run a locator agent to find them. You now know where they're doing capital/supercap production and can hotdrop their CSAAs and their travel-fitted capitals as they're leaving station for the first time. Precisely why no one wants this feature.
Maybe you are onto a part of the resolve for the dismal failure that is nul right now. Think of the battles as everyone tries to destroy the enemies ability to produce caps while desperately trying to protect their own cap building capabilities. |

Arch Stanton's Neighbour
Forceful Resource Acquisition Inc
81
|
Posted - 2014.09.27 01:36:00 -
[49] - Quote
Orion Pax wrote:CCP Fozzie wrote:http://xkcd.com/1425/ Good one. ::thumbs up:: Also if you guys really want, show me an example of the database structure and the corresponding Python code associated with packaging items and I'll write it up for you right here.
WE GOT A BAD ASS OVER HERE |

RubyPorto
RubysRhymes
5601
|
Posted - 2014.09.27 02:00:00 -
[50] - Quote
Steve Ronuken wrote:Yes, I've been burnt by this.
#NerdMad
 "It's easy to speak for the silent majority. They rarely object to what you put into their mouths." -Abrazzar "the risk of having your day ruined by other people is the cornerstone with which EVE was built" -CCP Solomon |
| |
|
| Pages: 1 [2] :: one page |
| First page | Previous page | Next page | Last page |