Page 8 of 104 FirstFirst ... 345678910111213183358 ... LastLast
Results 71 to 80 of 1040

Thread: Developers Blog

  1. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #71

    Two Tests, Both Alike in Dignity

    In fair London, where we lay our datacenter,
    From ancient architecture break to new technology,
    Where civil code makes civil quad cores unclean,
    From forth the fatal loins of these vital testcases,
    A pair of wire-cross'd servers come to life,
    Whose misadventured circuits overthrows
    Do with their results bury their manufacturers' strife.

    Huh?!?!

    I'm not CCP Bard, I'm CCP Hypnotic, the EVE Test Lead, and with that butchered prose I'm sure I induced many slack jaws and vacant stares. Mission accomplished. But what I'm really trying to get at here is that what was once a single test server has now become two. That's right, the Singularity you know and love is about to get a companion.

    "Why," you ask? As has been detailed in several other blogs, CCP is working within a fundamentally different release paradigm these days. Instead of one large release that we in QA can drop on Singularity a month or two ahead of time, we now have several smaller installments to deal with. This means that we can be coordinating with many different teams working on many different features. All developed within different code branches and all desperately fighting for the chance to get some face time in front of you, our valued customers. But as of now we only have one public test server. How will we ever decide which features get precious player feedback and which ones are kept in the lock box? The answer is we get a second test server.

    Introducing, Duality!

    The product of an internal QA naming contest, Duality, already being nicknamed "Ducie," will be our brand new public facing Event Server. This is in contrast to Singularity, which is a Public Server. The difference is that where Singularity is up and running and open to players almost 24/7, Duality will only be opened for special CCP run events. You're already familiar with these events because we've been running them on Singularity up until now. Things like the weekly mass tests, or guided play tests will, in the future, happen on Duality with much better coordination and preparation than what was capable on Singularity in the past. These events are vitally important to the quality of EVE Online. Placing new code on Singularity and just letting you guys and gals play around with it is good and valuable testing for sure. But a focused test with a decisive plan, on the spot expert guidance and targeted feedback goals is worth a nerd's weight in gold pressed latinum.

    The same, but different

    Duality will have much in common with its older sister Singularity. Similar hardware setup and capabilities, identical databases with matching data, the same market seeding we've all come to love. But things will be different too. There will be no dedicated combat solar system, no beacons to fight at and no supercap building support. Since the server will be inaccessible to you unless a special event is running there will be no need for these things. Rewards for participating in events will be given on Singularity, and anyone intentionally disrupting these events will receive a permanent ban on both Duality and Singularity. As CCP Oneiromancer revealed in her dev blog, permanent bans on Singularity have recently become much more permanent, so play nice.

    You'll still find announcements and instructions for special testing events in the Test Server Feedback forum. Instructions for connecting to Ducie will also be posted there very soon. Additionally you'll find links to installers and patches next to the Singularity files on the EVE Online website as soon as updates are made.

    Break it down for me

    Special testing events will now be run on the Duality test server, leaving Singularity available for general feature testing. The server will be up for only short periods of time for a specific test with plenty of notice given in news items and the Test Server Forums. All rewards and bans handed out for special events will be placed on Singularity for you to enjoy, or rage about. Testing Warriors, keep an eye on the forums for the first official event coming in the near future. I look forward to seeing you all there!











    More...

  2. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #72

    Update: little things are still little

    Time for another Little Things update!

    For those that don't know what Little Things are, it's a project that Team Best Friends Forever is working on, focused on smaller changes to the EVE universe. Instead of working on a big single feature, we're trying to weed out all the small day to day things that annoy players (that's you!).

    This coming release, you'll be getting the following small changes:

    • We're making player portraits available in the following windows - Trading, giving money, chat invites and objects in space. Hopefully you'll be able to see the portrait and go "yeah, this guy looks legit".

    • When you create a fleet, you're made squad commander automatically, so you don't have to move around manually.

    • As a part of the "equal value space makes this game boring" initiative, we've changed the way anomalies work. The quality of anomalies will depend on the systems truesec - the better the truesec, the better the spawns. CCP Greyscale is writing a blog on this exact change, coming soonTM

    • The input boxes in the industry window now has room for more digits, meaning small item manufacturing will actually allow you to see the entire number.

    • We've added the system name to outposts, so you know where you're buying from. This will hopefully prevent me from buying items in hostile stations while drunk.

    • NPC jamming has been updated and streamlined. They should all work with the same functionality and you can fit countermeasures. In other news, jamming NPCs are still annoying.

    • We've added more default overviews. Instead of having "default" and "mining, you'll now have "general", "pvp", "WarpTo", "loot", "mining", "drones" and "all". Hell yes.

    • Since boarding a ship to strip it is too much work, we've added the ability to strip fittings from unpiloted ships.

    • 0.0 truesec will now be displayed in the same way empire truesec is. Since this information is basically available to anyone with the internet (that means you).

    • Removing bookmarks can now be done from the right click menu in space. Having to go through people and places was a damn hassle and hopefully this will improve bookmark usability.

    • Instead of having a separate column in the fleet finder for the fleet boss standings, it's now a small standings box in the boss portrait, much like you're used to from chat channels.

    • Ever had 8000 items to repackage and one broken item which breaks everything? From now on, items that cannot be repackaged won't stop the entire repackaging operation.

    • Clicking the picture of another pilot will bring it up in a larger version. This feature is part cool, part creepy.

    • Loot logging has been enabled by default. User statistics show that the majority of fleets have this on, so we decided to remove an annoying pop-up window. Your ability to be a jerk and steal from your friends still remains intact though.

    • When using the autopilot, your waypoints will be highlighted so you can see where on the route they are. This owns.

    • If you like Incursions and are seeking likeminded partners for long walks on the beach and shooting Sanshas, go ahead and join the "incursions" public channel, found in the channel folder.

    • Your personal ship fittings are going to be stored on the server, giving you the same functionality available to corp fittings. This means access to your personal fittings, regardless what computer you're using.

    • Newbie missions have 180 days expiration and you cannot lose standings for declining, quitting or timing out. If you decide to re-activate a trial, hopefully this puts you in a better position to come back to the game.
    That's what we have for you this time around. We have a few special things in the works (one of which starts with "b" and ends with "lueprint") , so stay tuned for the next update.



    Toodles,

    Soundwave









    More...

  3. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #73

    Update: little things are still little

    Time for another Little Things update!

    For those that don't know what Little Things are, it's a project that Team Best Friends Forever is working on, focused on smaller changes to the EVE universe. Instead of working on a big single feature, we're trying to weed out all the small day to day things that annoy players (that's you!).

    This coming release, you'll be getting the following small changes:


    • We're making player portraits available in the following windows - Trading, giving money, chat invites and objects in space. Hopefully you'll be able to see the portrait and go "yeah, this guy looks legit".


    • When you create a fleet, you're made squad commander automatically, so you don't have to move around manually.


    • As a part of the "equal value space makes this game boring" initiative, we've changed the way anomalies work. The quality of anomalies will depend on the systems truesec - the better the truesec, the better the spawns. CCP Greyscale is writing a blog on this exact change, coming soonTM


    • The input boxes in the industry window now has room for more digits, meaning small item manufacturing will actually allow you to see the entire number.


    • We've added the system name to outposts, so you know where you're buying from. This will hopefully prevent me from buying items in hostile stations while drunk.


    • NPC jamming has been updated and streamlined. They should all work with the same functionality and you can fit countermeasures. In other news, jamming NPCs are still annoying.


    • We've added more default overviews. Instead of having "default" and "mining, you'll now have "general", "pvp", "WarpTo", "loot", "mining", "drones" and "all". Hell yes.


    • Since boarding a ship to strip it is too much work, we've added the ability to strip fittings from unpiloted ships.


    • 0.0 truesec will now be displayed in the same manner empire truesec is. We made this change since anyone with access to the internet (that means you) has access to that data through evemaps and other sources.


    • Removing bookmarks can now be done from the right click menu in space. Having to go through people and places was a damn hassle and hopefully this will improve bookmark usability.


    • Instead of having a separate column in the fleet finder for the fleet boss standings, it's now a small standings box in the boss portrait, much like you're used to from chat channels.


    • Ever had 8000 items to repackage and one broken item which breaks everything? From now on, items that cannot be repackaged won't stop the entire repackaging operation.


    • Clicking the picture of another pilot will bring it up in a larger version. This feature is part cool, part creepy.


    • Loot logging has been enabled by default. User statistics show that the majority of fleets have this on, so we decided to remove an annoying pop-up window. Your ability to be a jerk and steal from your friends still remains intact though.


    • When using the autopilot, your waypoints will be highlighted so you can see where on the route they are. This owns.


    • If you like Incursions and are seeking likeminded partners for long walks on the beach and shooting Sanshas, go ahead and join the "incursions" public channel, found in the channel folder.


    • Your personal ship fittings are going to be stored on the server, giving you the same functionality available to corp fittings. This means access to your personal fittings, regardless what computer you're using.


    • Newbie missions have 180 days expiration and you cannot lose standings for declining, quitting or timing out. If you decide to re-activate a trial, hopefully this puts you in a better position to come back to the game.

    That's what we have for you this time around. We have a few special things in the works (one of which starts with "b" and ends with "lueprint") , so stay tuned for the next update.



    Toodles,

    Soundwave









    More...

  4. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #74

    Hours for PLEX

    Since PLEX were introduced in 2009, the reception has been way beyond our expectations and we keep seeing more and more people use and purchase PLEX every day. We in Customer Support have had our work cut out for us due to a small unforeseen feature requirement for the PLEX system. Whenever an account's subscription ran out and the account went inactive, our players had no way of accessing their in-game PLEX to re-activate their subscription since the PLEX is an in-game item much like any other. The reverse-redeeming system was invented to counter this problem, but has not proven to be the effective solution we had hoped for. Customers still had to contact us and we had GMs tied up with the continuous task of opening accounts to facilitate PLEX activation. Therefore we figured we needed a new system that would be easy on us, and more importantly, convenient for our customers.

    Now we have: "Hours for PLEX"

    "Hours for PLEX" is accessible through the account management pages and allows players, with disabled accounts, to activate their accounts for 4 hours. Once the account has been activated, the customer has 4 hours to add a PLEX, or another available subscription to his account. This option will then become available again once the account is disabled. Please note that if no subscription is added with a PLEX to the account during the 4 hours timeframe, the "Hours for PLEX" option will be deactivated for that account and can only be re-instated by a member of Customer Support. This is to make sure that it's used for the intended purpose only.

    We hope you enjoy this new convenient feature.



    - GM Q











    More...

  5. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #75

    Alliance Tournament IX - EVE TV Expert sign up

    The Team here is proud to announce the 9th Alliance Tournament is on its way and will be kicking off this June!

    We'll be spicing up the rule set once again and bringing in some new faces and fresh ideas for EVE TV's coverage. There will be a full dev blog on the tournament itself in a few weeks which will cover the rules and sign up details.

    For those who missed the last one - all the matches from Alliance Tournament VII and VIII are available on CCP's YouTube channel.

    EVE TV's Player Expert Team

    We will once again be opening up the application process for players who would like to be PVP Experts, these elite players are handpicked by us to fly out to Iceland for the tournament finals played over two weekends.

    As an Expert you'll be on the set discussing the tournament, tactics, teams and talking with developers about EVE live on air. You'll also take shifts in the commentary booth providing live commentary on the matches themselves. You need to know your PvP and you need to know how to keep on talking!

    Alliance Tournament IX will take place over two weekends in June, You'll be flown out to Reykjavik, Iceland to join the team here at CCP HQ to help us run the show during the live broadcast of the final weekend. Flights (from all Icelandair destinations) and accommodation are supplied by us. All you need is a little spending money.

    So you're interested? Next step is to check this short list and make sure you match what we're looking for!


    • Can you come out and play? Selected experts will need to hold a valid passport (we will require scans to confirm this at a later stage) and be available to fly to Iceland on the 9th and back on the 20th of June.
    • A sense of humor is a must: Experts will need to be sharp-witted, knowledgeable, presentable and comfortable with talking on camera and into a microphone. To greater the chances of getting through, we highly recommend submitting any pre-made or purpose filmed video you have of yourself (link to a YouTube clip!) as part of your application.
    • You need to know your PvP: We don't despise industrialists, mission-runners and miners but as this is a PvP tournament, you need to be well versed.
    • You must be 21+ in order to apply.

    If you are interested in taking part, please email us at evetv@ccpgames.com by 23:59 GMT (Eve Time) on Sunday the 3rd of April with the following information. Those lucky enough to be selected for the second round of eliminations must be available to attend voice chat interviews on Saturday the 9th of April. The chosen experts will be announced by the 15th of April.


    • Character and real name.


    • Date of birth.


    • Nationality and current country of residence.


    • Tell us about yourself, both in game and out. Remember what you're applying for and sell yourself to that effect.


    • Confirm you are available between the 9th and 20th of June to fly to Iceland. If you need to book time off work / school please don't do it until we accept you; but please check that it is possible, if there is any doubt here please let us know.


    • Remember your applying to be on TV! Include any multimedia you think shows you off, all of the experts chosen for the last Tournament had sent in video clips/links to YouTube!

    Remember applications close on the 3rd of April! So get mailing!

    As a final bonus the Tournament Team will be at Fanfest 2011 running the Fanfest Tournament. During the event we'll be offering attendees the opportunity to commentate on matches live at the venue. If anyone is applying for a spot on the Alliance Tournament and also happens to be attending Fanfest you would be well advised to seek out the Tournament area and show us your natural talent on the mic!

    A final note: The Tournament from the perspective of an Expert is an amazing experience. You get to take part in a unique production, fly to Iceland, get a tour around the CCP office and chat to developers like almost no other players will ever get the chance to. But with great power comes great responsibility, planning and promotional shows take place during the weeks up to the final show and you may not be asked to fly to Iceland if you fail to take part, or become unavailable during this time!









    More...

  6. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #76

    Character Recustomization

    Team Stonehenge has been working on improving the new character creation system and we've been very happy with what we've been able to release to date. However, that doesn't mean we didn't have improvements and additions planned, some of which we know players were very interested in having, so let's take a look at what we have added.

    Re-customization for All

    So, we have this incredible character customization system now, but you can only use it once which seems like kind of a shame, really. It would make more sense to just let you change your character whenever you're in a station. Done. When the update goes live, character re-customization will be added as a new option in the station services list. You will be whisked into the character creator, where all the cosmetic options within the current character creation system will be available for you to adjust and change.

    Bored of your hair style? Change it.

    Is your make up not quite the right shade of pink? Change it.

    Maybe you just want to take your shirt off for a while. You can do all of it from the re-customization screen.

    Once you are happy with your character's look you can save your new portrait. Your character will be in the same pose and position as when you last saved, so those looking to make quick cosmetic changes can do so without extensive character wrangling to match the previous portrait pose. You can, however, completely change every aspect of your portrait including lighting, zoom, expression and background.

    When you save your new portrait, the update will appear immediately in the local client, however it may take a while for the information to propagate and cache throughout the system so there can be up to a few hours in delay before others can see the wonderful new you.

    There are a few minor limitations to the re-customization process.

    Re-customization does not allow alteration of race, bloodline or gender

    Sculpting and skin options are also not available.



    New Customization Options

    You will also notice a new feature added to the character customization screen. We've recently added body modification, which offers some new cosmetic features as well as additions to the existing clothing options.

    Tattoos

    Tattoos are cool, and they are downright essential for those of the Minmatar persuasion. The tattoo option will allow you to select from a number of facial tattoos that you can apply to your character. Let's take a look at a few examples:



    Scars

    What is more awesome than Tattoos? Scars! There is nothing that says, "I'm pretty darn badass" more than a scar on your face. The new scar option lets you select the perfect scar to add that extra bit of character to your character.



    Piercings

    Are you the kind of person who likes to shove metal into your face? I, for one, am. We have added piercings into character creation, and there are a number of different areas of the face that piercings can be applied to, including the brow, nose, ears, lip, and chin. Each of these areas has different piercings combinations to select from to add that extra accent to your avatar. .



    Clothing

    We have also added a couple of new additions to the clothing options. There are now vests for both males and females in a variety of color variations, as well as some sporty new eyewear to choose from.

    Re-customization is FREE.

    You will not have to spend one Interstellar Kredit, kronur, dollar, euro, yen, lira... not one cent of any currency, real or virtual, to re-customize your character. Re-customize as much and as often as you want, with character re-creation the way it should be - flexible, unlimited and free.



    More...

  7. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #77

    The CSM - What do CCP think of them?

    With the elections only a couple of days from closing and fierce campaigning to be seen in Jita Park, how valuable are the CSM to CCP? Several developers have some strong words of endorsement they'd like you to hear.

    "The CSM has provided us with invaluable feedback and insights both during the intense on-site sessions we've had but also through continuous communication throughout the year. The effort they've put into presenting and arguing for their cases has been a key factor in their transition to a meaningful stakeholder in the EVE project."
    - CCP Zulu, Senior Producer of EVE Online

    "The CSM are an invaluable stakeholder that help ensure CCP‘s focus on the current issues and concerns of EVE‘s most valuable person, the player. Constructive dialogue with the CSM is an important aspect of forging EVE‘s future vision and we celebrate the opportunity to involve player representatives in these discussions. Thus CSM membership is a responsibilty towards the voters first and foremost. The CSM will only be as good as the people that are voted into it. Choose your votes carefully!"
    - CCP t0rfifrans, Creative Director of EVE Online

    "I don't think any single external group has had such a strong influence on CCP, EVE and how we work as a company. And they are made stronger by your vote."
    - CCP Oveur, Executive Producer

    "When I was at the CSM 5 Summit in Reykjavik last December, I was greatly impressed with both the passion and the wealth and breadth of information about EVE Online the representatives brought to the table. They collectively challenged me to look at EVE Online in a different way and help me hear the voices of the players more quickly. The CSM is an important elected body, and players would be remiss not to take advantage of this important opportunity to speak with us directly, face-to-face!"
    - CCP Fallout, Associate Community Manager

    "The CSM is such a valuable resource for us. Sitting down at a table with them, we don't just see nine faces looking back at us. We don't even see the 350,000+ current subscribers. Rather, we see every person who has ever entered New Eden because that is truly what these Councilors represent. They are the warp-threads that hold the fabric of EVE together with their passion, dedication and candor."
    - CCP Pann, Sr. Director of PR & Communications

    The elections close on the 22nd of March at 23:59 UTC. Make sure your ballot is in the box before then! Click here to see the candidate list and cast your vote, don't let this opportunity to have an impact on the future of EVE go to waste!



    - CCP Diagoras



    More...

  8. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #78

    Shader Model 2.0 support discontinued April 5th

    TL;DR: As of April 5th we will discontinue support for Shader Model 2 graphics cards. The new minimum specification will become Shader Model 3.

    As we announced in October last year, we are at a point where maintaining support for the now legacy technology of Shader Model 2 is becoming a serious burden on our graphics tech team. It is also hindering us in making EVE Online look as good as we want it to since we currently have to develop for cards up to and over 8 years old. We want to bring that number down to 7 year old technology.

    We realize there is still a portion of the player base (we estimate around 9,000 users) that has Shader Model 2 cards. To try and ease the transition we are working on securing a discount deal with a graphics card vendor that we will announce in the next couple of weeks.

    Please note that although we are discontinuing support of Shader Model 2 we will not actively block those cards from running the client. It is therefore possible that players with that hardware will be able to run EVE for some time afterward. We do, however, urge them to update their graphics cards as soon as possible.

    We have furthermore decided to extend the grace period given to Shader Model 2 users where they can bypass recreating their character in the new character creator. The window of the grace period will stay open for another couple of months.

    If you are unsure what Shader Model version your graphics card supports then you can download this handy little app to check.











    More...

  9. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #79

    Missiles Hate My Hamsters - The Followup

    CCP has always chosen the more challenging path in how we design games; one world-wide single shard server proves that. As we've grown and the number of logins has risen we've gone through iteration in fighting lag. The War on Lag is never ending, because EVE Online is always growing. But we have some interesting things to show you this week. This is the first in a series of three bogs that will show you how we fight lag through hardware upgrades, software fixes, and even wrestling the internet itself...

    Welcome back. Just want to take some of your time here to brag a bit about how these changes went down. If you're not familiar with what I'm talking about, go read up on my previous blog. Today I'm going to talk a bit about how the deployment went and the impacts. By the end of reading this, you should see exactly why we're bumping the Jita population cap up by large quantities.

    General Missile Optimization

    The direct missile optimizations were deployed to Tranquility on February 8th with the Incursion 1.1.2 hotfix 7 in a partially dormant state. In the days following, we tested the more dangerous aspects of the change on a select handful of systems then switched them on cluster-wide. There appear to have been no issues, so hurray for that!

    As for impact, I unfortunately can't point to any metric and say "this is because of the missile work". We've got a cluster-wide CPU per user metric that's good at telling us when we've done something good in general, but it's very noisy depending on what the player population happens to be doing at the time, so it takes many weeks of data to be able to establish a reasonable trendline. In the case of this change, there simply wasn't enough data before and after without other complicating factors to be able to say what the impact was.

    I hoped I could capture load from popular missioning systems, which tend to be more consistent in load than most and also involve lots of missiles, but systems like that do not have a consistent mapping on the cluster. What I mean by that is that on any given day, the systems around any given mission hub could be grouped together in many sorts of ways, with any number of other systems thrown into a mix. Looking at the CPU usage of such nodes is going to be extremely noisy depending on what other solar systems got introduced into the mix.

    So, unfortunately, I have no concrete data to show you for a bulk of the changes in this devblog. I'm fairly confident things are better though, and as we progress on in profiling the server I expect we'll see less missile involvement than we have in the past.

    Inventory Setification

    This guy took much longer to get out to Tranquility. Python's typing method got in the way a bit...let me explain that briefly for the uninitiated.

    In what we call "strongly typed" programming languages, when you declare a variable - a bit of memory you're going to use to store data - you must say exactly what type of data it is. When, in C, you say "int x;" you are telling the computer "Hey, go and get me some memory, call it ‘x', and treat that bit of memory like it is an integer." If you then go and try to treat x as if it were a block of text, you're going to get errors thrown into your face well before you even run your program, since the computer knows that x is an integer and trying to treat 5 as is if were "Hello, my name is Bob" will not end well for you.

    In Python though, variables are "duck-typed". What that means is that a variable's type is meaningless - it's much more important what it can do. If both integers and blocks of text have a "print" function, you can call "x.print()" regardless of what type x happens to be - its type is irrelevant to the conversation. This gives tremendous flexibility in extending data structures and swapping them out - so long as the interface remains compatible with how the variables are used, you can go crazy. If it looks like a duck, smells like a duck and quacks like a duck, it may as well be a duck, even if it happens to be a SuperCustomDuckThatIsActuallyAPlatypus.

    So, in this change, I pulled out the carpet on all of the inventory variables in the entire EVE Online codebase and changed them from a list-derivative class to being sets. The motivation for this change is discussed in the previous devblog a bit, so I won't go into it here except to say that if you're interested in more details, we're talking about switching from something like a dynamic array to a hash table. Upshot being that searching and removing things from inventories is expected to be considerably faster than before, with increasing win as inventories grow. We have some truly huge inventories - think all of the items in a solar system, or all of the items anyone has put into a specific station's hanger over the course of the day.

    Many of the interfaces to set are the same as list, but a few important ones are not. Unfortunately, since types can change on the fly during the execution of a program in Python, there's no way to know you've caught all of the usages without actually running everything. Running everything in Eve is a rather tall order - a full regression test for EVE Online takes a sizeable team of QA many days to do, and even then it's likely something slips through the cracks, there's just so much you can do in this game.

    Thankfully, the guys working on inventory coreification happened to be coming up on a deployment, and as such had a full regression test on order already, focused especially on inventory-related operations. After asking very nicely, they were kind enough to let me piggy-back this change on theirs so we could share the QA resources.

    Good thing we did that too - there were a significant number of cases that I had missed in my couple days of testing that were only brought to light by having the change go through the full regression and also simmer on Singularity for a few weeks. The last fix for these went in on March 2nd and everything was deployed to Tranquility on March 8th with Incursion 1.3.

    Similar to above, the cluster-wide metric feels like it's better, but there really just isn't enough data yet to say it's a statistically significant shift. There's likely to be more changes put out before we have enough data to make such a claim. Thankfully though, there is one solar system that is consistently isolated on the cluster which does a whole mess of inventory work - Jita. And boy is it happier now:







    That's data from the week prior to deployment plotted against data from the week after, lining like-days up together. As we had hoped, the impact is huge on Jita, especially as the run goes on and the inventory structures get bigger and bigger. Naturally this load reduction has given us a whole lot more headroom in Jita, so the cap is on its way up - hopefully higher than y'all need it to be.

    So, that closes the book on this round of optimizations. Took some profiling data from a rather large fight last week, which has given us a few different routes to travel down...more on those as they develop.

    Look for the next blog in this series later this week, and be sure to check the stream from Fanfest for even more detail.











    More...

  10. RSS Bot FEED's Avatar
    Join Date
    09-07-07
    Posts
    34,809
    Post Thanks / Like
    #80

    Missiles Hate My Hamsters - The Followup

    CCP has always chosen the more challenging path in how we design games; one world-wide single shard server proves that. As we've grown and the number of logins has risen we've gone through iteration in fighting lag. The War on Lag is never ending, because EVE Online is always growing. But we have some interesting things to show you this week. This is the first in a series of three blogs that will show you how we fight lag through hardware upgrades, software fixes, and even wrestling the internet itself...

    Welcome back. Just want to take some of your time here to brag a bit about how these changes went down. If you're not familiar with what I'm talking about, go read up on my previous blog. Today I'm going to talk a bit about how the deployment went and the impacts. By the end of reading this, you should see exactly why we're bumping the Jita population cap up by large quantities.

    General Missile Optimization

    The direct missile optimizations were deployed to Tranquility on February 8th with the Incursion 1.1.2 hotfix 7 in a partially dormant state. In the days following, we tested the more dangerous aspects of the change on a select handful of systems then switched them on cluster-wide. There appear to have been no issues, so hurray for that!

    As for impact, I unfortunately can't point to any metric and say "this is because of the missile work". We've got a cluster-wide CPU per user metric that's good at telling us when we've done something good in general, but it's very noisy depending on what the player population happens to be doing at the time, so it takes many weeks of data to be able to establish a reasonable trendline. In the case of this change, there simply wasn't enough data before and after without other complicating factors to be able to say what the impact was.

    I hoped I could capture load from popular missioning systems, which tend to be more consistent in load than most and also involve lots of missiles, but systems like that do not have a consistent mapping on the cluster. What I mean by that is that on any given day, the systems around any given mission hub could be grouped together in many sorts of ways, with any number of other systems thrown into a mix. Looking at the CPU usage of such nodes is going to be extremely noisy depending on what other solar systems got introduced into the mix.

    So, unfortunately, I have no concrete data to show you for a bulk of the changes in this devblog. I'm fairly confident things are better though, and as we progress on in profiling the server I expect we'll see less missile involvement than we have in the past.

    Inventory Setification

    This guy took much longer to get out to Tranquility. Python's typing method got in the way a bit...let me explain that briefly for the uninitiated.

    In what we call "strongly typed" programming languages, when you declare a variable - a bit of memory you're going to use to store data - you must say exactly what type of data it is. When, in C, you say "int x;" you are telling the computer "Hey, go and get me some memory, call it ‘x', and treat that bit of memory like it is an integer." If you then go and try to treat x as if it were a block of text, you're going to get errors thrown into your face well before you even run your program, since the computer knows that x is an integer and trying to treat 5 as is if were "Hello, my name is Bob" will not end well for you.

    In Python though, variables are "duck-typed". What that means is that a variable's type is meaningless - it's much more important what it can do. If both integers and blocks of text have a "print" function, you can call "x.print()" regardless of what type x happens to be - its type is irrelevant to the conversation. This gives tremendous flexibility in extending data structures and swapping them out - so long as the interface remains compatible with how the variables are used, you can go crazy. If it looks like a duck, smells like a duck and quacks like a duck, it may as well be a duck, even if it happens to be a SuperCustomDuckThatIsActuallyAPlatypus.

    So, in this change, I pulled out the carpet on all of the inventory variables in the entire EVE Online codebase and changed them from a list-derivative class to being sets. The motivation for this change is discussed in the previous devblog a bit, so I won't go into it here except to say that if you're interested in more details, we're talking about switching from something like a dynamic array to a hash table. Upshot being that searching and removing things from inventories is expected to be considerably faster than before, with increasing win as inventories grow. We have some truly huge inventories - think all of the items in a solar system, or all of the items anyone has put into a specific station's hanger over the course of the day.

    Many of the interfaces to set are the same as list, but a few important ones are not. Unfortunately, since types can change on the fly during the execution of a program in Python, there's no way to know you've caught all of the usages without actually running everything. Running everything in Eve is a rather tall order - a full regression test for EVE Online takes a sizeable team of QA many days to do, and even then it's likely something slips through the cracks, there's just so much you can do in this game.

    Thankfully, the guys working on inventory coreification happened to be coming up on a deployment, and as such had a full regression test on order already, focused especially on inventory-related operations. After asking very nicely, they were kind enough to let me piggy-back this change on theirs so we could share the QA resources.

    Good thing we did that too - there were a significant number of cases that I had missed in my couple days of testing that were only brought to light by having the change go through the full regression and also simmer on Singularity for a few weeks. The last fix for these went in on March 2nd and everything was deployed to Tranquility on March 8th with Incursion 1.3.

    Similar to above, the cluster-wide metric feels like it's better, but there really just isn't enough data yet to say it's a statistically significant shift. There's likely to be more changes put out before we have enough data to make such a claim. Thankfully though, there is one solar system that is consistently isolated on the cluster which does a whole mess of inventory work - Jita. And boy is it happier now:







    That's data from the week prior to deployment plotted against data from the week after, lining like-days up together. As we had hoped, the impact is huge on Jita, especially as the run goes on and the inventory structures get bigger and bigger. Naturally this load reduction has given us a whole lot more headroom in Jita, so the cap is on its way up - hopefully higher than y'all need it to be.

    So, that closes the book on this round of optimizations. Took some profiling data from a rather large fight last week, which has given us a few different routes to travel down...more on those as they develop.

    Look for the next blog in this series later this week, and be sure to check the stream from Fanfest for even more detail.











    More...

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Title