Monthly Archives: July 2013

Updates and future plans

If you were to drop by the blueprint calculator, you’ll have noticed a few changes.

New features

  • Regional prices. You can now pick the region on the price list. It will always  default to Jita for now.
  • Collapsible price list. It will remember the  state you left it in.
  • Parser for a blueprint list. If you open up the S&I interface on the blueprint list (or corp blueprint), then double click on the location you’ll get a window you cut and paste from. Paste it in, that you’ll get a list of links, with a profit per unit.
  • General optimization. Performance since I added the table sorting has suffered. It should now be back up to normal.
  • Added a while back: Decryptors in the invention figures.

Future plans

  • Once the SSO becomes available, you’ll be able to log in, and store blueprints, if you want to. This will be on the server, rather than in the client. I’ll probably leave the option to store with cookies too, if you don’t trust me with that. Other preferences will be stored
  • Once CREST becomes available, with a character sheet end point, your skills (if desired) will autofill.
  • Inclusion of invention prices on the parsed results.
  • Inclusion of isk/hr (ish) on the parsed results
  • Addition of a menu bar, to bounce between applications.




Don’t worry about the security of SSO. The way OAUTH2 works is:

  • You hit the login button, which sends you to with a token that identifies where you’re coming from.
  • You log into Eve online, and pick the character you want to be.
  • You get sent back to the source site, with a long token.
  • The source site sends the token to eve online asking ‘who is this?’
  • Eve responds, identifying who you are and invalidating the token for future use. (CREST works a little differently but not significantly.)

At no time do you give anyone except CCP your password. Any third party site asking for it is either badly coded, or a scam. Ideally you’d log into the forums, and then you won’t need to type in a username or password into any site.

Updated Bill of Materials (BOM) SQL for the SDE

Just an update for my previous post on SQL for blueprints using the SDE. Now you can generate a complete BOM with a single statement.

I now have a use for getting /all/ the numbers out in a single query and that is what you’ll find below. You could even, if you so wanted, join it in as another table, against a table of blueprint product ids, MEs and a set PE, along with prices with some sums, to generate a full costing for a number of blueprints.

This is written specifically for use with an interface that lets you use named parameters (DBI, PDO, JDBC) and requires :typeid as the id of what you’re making. :ME the ME of the blueprint :PE the production efficiency of the character making them. It also requires a greatest function, which MS SQL doesn’t have; so you’d need to replace that with an if()

    select typeid,name,sum(quantity)+(sum(perfect)*(0.25-(0.05*:pe))*max(base)) quantity from(
    select typeid,name,round(if(:me>=0,greatest(0,sum(quantity))+(greatest(0,sum(quantity))*((wastefactor/(:me+1))/100)),greatest(0,sum(quantity))+(greatest(0,sum(quantity))*(wastefactor/100)*(1-:ME)))) quantity,1 base,greatest(0,sum(quantity)) perfect from (
      select invTypes.typeid typeid,invTypes.typeName name,quantity
      from invTypes,invTypeMaterials
      where invTypeMaterials.materialTypeID=invTypes.typeID
       and invTypeMaterials.TypeID=:typeid
      select invTypes.typeid typeid,invTypes.typeName name,
             invTypeMaterials.quantity*r.quantity*-1 quantity
      from invTypes,invTypeMaterials,ramTypeRequirements r,invBlueprintTypes bt
      where invTypeMaterials.materialTypeID=invTypes.typeID
       and invTypeMaterials.TypeID =r.requiredTypeID
       and r.typeID = bt.blueprintTypeID
       and r.activityID = 1 and bt.productTypeID=:typeid and r.recycle=1
    ) t join invBlueprintTypes on (invBlueprintTypes.productTypeID=:typeid) group by typeid,name
    SELECT t.typeID typeid,t.typeName tn, r.quantity * r.damagePerJob quantity,0 base,r.quantity * r.damagePerJob perfect
    FROM ramTypeRequirements r,invTypes t,invBlueprintTypes bt,invGroups g
    where r.requiredTypeID = t.typeID and r.typeID = bt.blueprintTypeID
    and r.activityID = 1 and bt.productTypeID=:typeid and g.categoryID != 16
    and t.groupID = g.groupID) outside group by typeid,name

Not a nice query, with more selects in it than I like, but pretty much needed with how it works.

A few questions about the Blueprint Calculator

I’ve been working on the blueprint calculator for a while now, with several revisions, some major behind the scenes (Now using redis so I don’t lose price details, if my server reboots) and some more visible (The invention calculator does decryptors properly now)

I’ve been having some thoughts about some changes, and I wanted to get a little feedback before going through with it, as it may be counter productive for some people.

I’m also thinking of the future, with SSO and Crest. While we have no time line for when this will come out, I have a bunch of ideas things to do, though they’d all require at least some trust. Like a Certificate system, for user/corp/alliance defined certificates. You’d have to trust my server to look at your sheet. I’m not asking about that specific idea here though.

Continue reading

Blog Banter #47: How complex is too complex?

My first banter! Time to make an idiot of myself.


So this month’s Blog Banter will gravitate around knowledge, specifically EVE knowledge. Some examples of topics to cover: Is EVE too complex for one person to know everything? Is it, in fact, too complex for one person to know everything about one topic? How do you maintain any knowledge or skills related to EVE over time with breaks and expansions? Does CCP do a sufficient job documenting the features of the game, and if not, what could they do better? How does one determine where the gaps in their knowledge even are?

EVE is a very complex. game. EVE has simple mechanics. The first statement is true. The second statement is mostly true. EVE is made up of many small, simple parts, which come together to create a monstrosity of enormous complexity. Consider Chess, or Go. Both games with a simple rule set (Go is incredibly simple) but the complexity of thought required to master the games is immense. Eve is similar. It just has a lot more independent rules.

Could one person understand all of Eve? If you exclude the players, I’d say yes, without too much difficulty. It would just take time, and a good memory. Of course, understanding and applying are very different. Being able to apply the understanding, that’s the difficult bit.

Take Industry. Learning how to do the basics of industry is simple. Once you’re comfortable with those, moving into T2 industry is just a case of getting to grips with Invention. Tech 3 is yet another step, just another increment on what you already know. Manufacturing Capitals is just Tech one manufacturing writ large.

Of course, then you have moon mining and reactions to take care of. But those could be quite happily left to someone else to take care of, until you’re in a situation to learn them and roll them into your vertical integration.

That is the core of the complexity of Eve. Lots of simple little things, all coming together to create a symphony of complexity.

Just look at the Rules of Eve. They’re all made to be broken, when and only when you understand why they exist. They hide the complexity behind simple rules of thumb, letting people operate at a reasonable level, until they can take off the training wheels. Sure, they may continue to stay upright, to continue the metaphor, but if they need to, they can bend the rules, taking a corner at a higher speed.

Anyway, to answer some of the questions raised:

Eve isn’t too complex for someone to know everything. But it is wide enough that most people aren’t interested in knowing everything. And knowing isn’t the same as ‘being good at’. Sure, I could run a fleet. I know what Eve provides to do that. I would be bad at it, however. Those soft skills are the limiter.

How do you maintain any skills and knowledge? Application and reading. You read the dev blogs and patchnotes. You try things out, on Sisi or on TQ if you can afford the losses, or need live opponents. It also helps to be plugged into a group who can answer questions – Remember it’s a two way street. Someone asks about something you know, answer them.

CCP do an ok job of keeping the documentation up to date. It’s not perfect, with the Wiki often being behind reality (see cruiser stats until recently), but it’s survivable. With a game that changes as frequently as Eve does, even if those are fairly small incremental changes, no documentation could be entirely up to date, without spending a lot of developer time on it. There are some situations where it’s nice not to know things for certain. Take the spew cans for exploration. It took some time for people to work out what was in each type of can. That’s complexity which makes the game more interesting. Allows for a separation between newbies and veterans. Where a level of personal skill or knowledge makes a difference.

Thankfully CCP has been removing some of the more annoying versions of this. Rote memorization of large quantities of information is a bad form of complexity. Now it’s easy to pick out the explosive damage Torpedo. Before, you had to know that it was a Bane Torpedo. Other ammo types weren’t so bad, as they didn’t change between size levels. Some people call it dumbing down the game. I call it removing pointless bullshit.

As for the final point, determining where there are holes in your knowledge, the big macro holes are simple. “I don’t know industry” isn’t uncommon. Or “I don’t know how to PvP”. The problem is when you know a little. That just casts what you don’t know into darker shadows.

A sidegrade to cloaking.

First off, this is a pretty rough draft of some thoughts that I had while listening to the most recent hangout with @ali_of_spaceSo there will be some edges to knock off.

People complain about AFK cloakers. People who can, due to power projection via Cynos, shut down a system for any PvE.

The cloaker isn’t the problem. It’s the fact that they can bring a whole bunch of their friends at a moments notice. Sure, you could go and do stuff anyway, but there’s no real counter.

So I had a thought, sparked by what some of the other people were saying.

When you’re trying to use combat probes to find someone, what are you searching for? And the big difference between a ship and an asteroid is their warp core. So here’s the suggestion for changes:

1: Cloaks no longer prevent detection by dscan and combat probes. They do, however, make it hard to exactly localise someone. Warping to the signature will get you to their grid, but it won’t get you exactly on top of them. Once on grid, dscan will allow you to find their approximate location, say within 20km. I.e. you get 3 people who can get a distance (+/- 10km or so)  and between them they can localise someone who isn’t moving erratically and actively trying to avoid them.

2: To stop being picked up be probes and dscan, and additionally to not show up on local, you can shut down your warp core. This stops you moving at all. Everything else can run, but no movement.

3: Restarting your warp core takes a while. Exactly how long I’m not sure (this would have to persist between logins. Not sure how viable that is atm) But we’re talking, probably minutes. Perhaps a module or skill (or both) can decrease that time. But still not a /fast/ operation. While it’s restarting everything else can happen as normal.

The net effect of this is that someone can set a trap with a powered down ship (with a cloak), but they have to be in position already. (Get to an anomaly, power down the warp core, fire up your cloak. Wait for a sucker to turn up. Turn off cloak, activate cyno)

Thus, shutting down an entire system isn’t viable with a single afk ship, against a group of organised players. But you can, still, fuck with people.