Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Pages: 1 [2] 3 4

Author Topic: Revisiting the Intel UI  (Read 22410 times)

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24114
    • View Profile
Re: Revisiting the Intel UI
« Reply #15 on: May 07, 2018, 05:13:35 PM »

I really can't agree here - the days remaining for a bounty is information that -needs- to be visible on the map, because otherwise I have to click through every icon, see which bounty it matches up to, and then manually ignore entries that are too close to expiring.  Now, this doesn't necessarily need to be presented in text form; a way to filter events by time in addition to tag would work (especially if it combined with travel time so I could filter out "events my fleet cannot possibly get to before they expire"), as could some sort of time display built into the icon (though most of the simple ways of doing that only work if we assume all bounties have the same initial duration).

I'll admit, I'm focusing on bounties here because that's what, in the current game, is the important thing on the intel screen for my playstyle.  However, the same thing applies to any form of time-limited event.  If I'm a trader looking to take advantage of temporary shortfalls, I need to be able to figure out whether I can get there in time.  If I'm a pirate looking at intercepting a trader's convoy, I need to be able to figure out if I have enough time to intercept the fleet.  This is critical information; without it, I have to check through each map icon individually to figure out which ones represent actual opportunities and which ones are just chaff.

The only two cases (of those currently presented) where time isn't a critical factor are missions (where the timer starts ticking when you accept it and thus you won't have ones that are almost-expired cluttering up the map), and hazard beacons (which have no time-relevant data at all, though for these it'd still be nice to be able to mark systems that you know you've cleared; a sort of a 'tag as unimportant' rather than the current 'tag as important' option.)

I see what you're saying, yeah. But: mousing over or clicking a few icons really isn't too bad, and an "is this possible" type calculation is bound to run into problems at some point. Still, will keep an eye on this when I get to more thorough playtesting; but regardless of how that pans out, this should already be a qualitative improvement.

Not to say that if there was an easy way to instantly convey this info - without cluttering stuff up - it wouldn't be a good idea. It's also, unfortunately, the sort of info that would be most useful when there are a lot of things to sort though, which also means an increased issue with clutter.

some sort of time display built into the icon (though most of the simple ways of doing that only work if we assume all bounties have the same initial duration).

Great Idea, I'd love a clock-like timer build into the icon. Another potential advantage of round icons:)
Maybe it could only start to tick down when "absolute time left" + "projected player travel time to icon location" reach a certain treshold.

Oh, hmm! Got excited for a second, but I think the icons are too small for that to be apparent.

Well, like I said, will keep an eye on it.


Speaking of which - what's the sorting criterion for the event list on the left, there?  Time remaining would be a useful option for some event types.

It's sorted by importance, then type, and then by when the player found out about it. So e.g. within personal bounties, the newest ones would show up closer to the top of the list.


I would like to be able to see exploration missions and bounties on the same map since I often try to chain multiple different mission types in one expedition. Will selecting 'bounties' and 'exploration' show only events with both the mission and bounty tag? or will it show both missions and bounties? A good alternative might be player-placed markers on the map that persist when switching tags. Or I guess you mentioned the 'important' tag, that could be a work around maybe.

Tags are "and", so it'll only show stuff with both tags. Which in this case would be nothing. And, yeah, that's one of the things the "important" tag is meant to help with.


I'm not sure if this has been added or already fixed when hovering over a planet on the map. I want to know my relationship of said faction in that sector. When I hover over Corvus,it will show Hedgemony but in order to see if I'm friend or foe I have to go to factions tab. It is a pain do bounce back and forth on these tab since you lose information of what your doing.

That seems pretty unrelated to the blog post :) Still, fair point; keep it in mind for when/if there's a good opportunity to take a look at it.

Can you hide certain tags which can be spoilers until the player encounters them in the world? I'm pretty sure the
Spoiler
Remnants
[close]
are a spoiler for newcomers.

No, and that's a fair point. I don't know if just the word "remnants" is spoiler enough, but yeah, would have to be cognizant of that.


Lastly, is it possible for the map to be functional while the game is unpaused, perhaps with additional time acceleration functions? If the player wants to pass time while keeping appraised of Sector happenings, that would be a way to do it.

Very much not, I'm afraid. The game really doesn't support "time passes while the core UI is up" - that is, it could, but things get weird when, say, your fleet reaches a jump-point or gets attacked by pirates or whatever.



This is highly relevant to my interests.

No, seriously, I'm loving this. Tag based systems are so wonderful, I wish I could use tags to organize all my real-world stuff, too. And I'm sure that you made it easy to, as you put it, "visualize the spatial relationships between events" is a huge step forward for game flow.

:D

The only thing I can think of that's still sub-optimal is the separate map. It could probably be rolled completely into the intel UI. Oh, well.

You know, that's funny. I spent maybe a day (spread out over a few days) thinking that through and trying a few things.

What the design for that looked like is:

- A button to show/hide the intel UI widgets, i.e. list plus detail window, and adjust the brightness of the stars/nebulas (they're a lot dimmer in the intel view, to make the icons stand out)
- Two buttons, one to open the intel tab in map mode and one in intel mode
- Separate saved sets of "hyperspace map location being viewed" coordinates

Which, if you think about it, is almost identical to having two tabs. I think the "show on map" button ("S") and being able to use it to go to the map and then go back to the intel tab by pressing it again, exactly as you left it, goes a long way to make these feel tightly integrated and like part of the same UI.



Ideally, I think, it would show all, but items whetr both tags apply are on the top of the list.

One issue there is they'd all show up on the map, cluttering it up something fierce. Plus that'd be the sort of thing that's super hidden from the player. I mean, yeah, "or" instead of "and" would be nice at times, but I'm not liking the UI/interaction complexity costs that come with that, and of the two, "and" seems the much more useful option. We're dealing with potentially lots of intel, and the goal is to be able to drill down, not show more and more of it.


Hopefully this will put the fuel range overlay in front of my face more often. [Insert self-deprecating smirk]

(Ouch.)
Logged

Wyvern

  • Admiral
  • *****
  • Posts: 3803
    • View Profile
Re: Revisiting the Intel UI
« Reply #16 on: May 07, 2018, 05:26:14 PM »

Speaking of which - what's the sorting criterion for the event list on the left, there?  Time remaining would be a useful option for some event types.

It's sorted by importance, then type, and then by when the player found out about it. So e.g. within personal bounties, the newest ones would show up closer to the top of the list.
So, if I'm reading that right, it's sorted by importance, then type, and then is completely random if, say, you just came back from a two-month exploratory mission and got info on all of them at the exact same time?
Logged
Wyvern is 100% correct about the math.

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24114
    • View Profile
Re: Revisiting the Intel UI
« Reply #17 on: May 07, 2018, 06:13:06 PM »

It should fall back to the reverse of the order in which the intel was added in this case, i.e. bounties created more recently should show up higher up in the list, etc.
Logged

xenoargh

  • Admiral
  • *****
  • Posts: 5078
  • naively breaking things!
    • View Profile
Re: Revisiting the Intel UI
« Reply #18 on: May 07, 2018, 06:54:03 PM »

Overall, this looks good.  Only thing I'm a mite concerned about is that getting players to pay attention to new Intel requires some work.

Right now, I feel pretty strongly that a lot of newbies were simply not aware of / finding easily where to get into Bounties, for example.  Winding our way into the UI layers was a lot of work and not terrifically intuitive.  There are a couple of solutions:

1.  Construct a Mission where you have to use the Intel system (including a little light sorting / filtering) to find a thing.

2.  Use some methodology to get players to regularly check out Intel.

I think that, for #2, the issue here is largely UI prominence / clear direction from the game.  In a AAA title, we'd expect Generic Female Voiceover to say, when we entered FTL communications range of a System, "New Intel Received" and a nice flash to that portion of the UI to briefly alert the user, both audibly and visually, that the game had additional information to dig through. 

I presume AAA voice-over stuff isn't happening (at least, not unless this hits Steam and makes a million bucks, lol) but a simple beep, directionally-shifted rightwards, might direct the player to look at that element of the UI as it flashes a little.   I know that getting players into the richness of the Intel system, so that they can get into the depth of the game as it acquires more strategic depth, is vital, so I'm hoping there's some thought put into that portion of how this will work; what happens once we click the Intel button looks really great from the standpoint of somebody who's already familiar with most of the mechanics, frankly!
Logged
Please check out my SS projects :)
Xeno's Mod Pack

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24114
    • View Profile
Re: Revisiting the Intel UI
« Reply #19 on: May 07, 2018, 07:15:06 PM »

Thank you!

1.  Construct a Mission where you have to use the Intel system (including a little light sorting / filtering) to find a thing.

2.  Use some methodology to get players to regularly check out Intel.

Hmm - I think #1 is the tutorial, since it specifically does that, including teaching about the "show on map" button and laying in a course. As far as new intel, there *is* a sound - different depending on what kind of intel you get - that plays when you receive it. It also feels like the new intel notifications are large enough (see: first screenshot in blog post) that it'd be pretty hard to miss entirely, though possibly some sort of visual attention-getter could improve things further.
Logged

Gothars

  • Global Moderator
  • Admiral
  • *****
  • Posts: 4403
  • Eschewing obfuscatory verbosity.
    • View Profile
Re: Revisiting the Intel UI
« Reply #20 on: May 08, 2018, 01:55:26 AM »

Oh, hmm! Got excited for a second, but I think the icons are too small for that to be apparent.

E.G. a color change in the rim would be tiny, but is still seems like it would be helpful:
Spoiler
[close]
Logged
The game was completed 8 years ago and we get a free expansion every year.

Arranging holidays in an embrace with the Starsector is priceless.

steelwing

  • Ensign
  • *
  • Posts: 32
    • View Profile
Re: Revisiting the Intel UI
« Reply #21 on: May 08, 2018, 05:25:31 AM »

I somewhat disagree with the round icons thing, but far more important in my view is having the "days remaining" on something immediately visible.  Having the list view sort by how long ago you learned about a particular piece of intel does help, since the older items are bound to be running out sooner, but that's not the same as having it be right there in the list.  Maybe having the list be a sort of table instead would help?  You'd have columns for the faction offering, the location, the reward, and the days remaining.  The only disadvantage is it would have to hide the map to be of any use.
Logged

Histidine

  • Admiral
  • *****
  • Posts: 4682
    • View Profile
    • GitHub profile
Re: Revisiting the Intel UI
« Reply #22 on: May 08, 2018, 05:31:20 AM »

Are multiple stages of the same event still displayed as separate report entries, where selecting one report lists all for that event?
(e.g. food shortage started; relief fleet launched; relief fleet turned back/arrived; shortage over)

Quote
Taking on a commission requires talking to a high-ranking faction official
Ha, did you happen to take this idea from Mount & Blade by any chance?
I know I did for Nexerelin, just talking to a "real" person adds a bit more personality to the whole exercise (even without the whole oath of fealty bit).
Logged

FooF

  • Admiral
  • *****
  • Posts: 1388
    • View Profile
Re: Revisiting the Intel UI
« Reply #23 on: May 08, 2018, 05:33:32 AM »

Good stuff, as always.

Hypothetical here, but will the Intel screen ever keep track of or let me sort all the individuals I've built reputation with and their general location (i.e. station commanders, patrols I've ticked off, etc.)? Right now, the reputation system for individuals isn't that important but I'm assuming it might be at some point. As it is, I typically have no idea who or where any of these individuals are so that I might exploit/avoid interactions with them.

@ Gothars

I like it. You just need to be careful to reiterate that each "clock" is relative to its maximum duration and some (a 10-day mission, for example) tick by a lot faster than others!
« Last Edit: May 08, 2018, 05:43:04 AM by FooF »
Logged

xenoargh

  • Admiral
  • *****
  • Posts: 5078
  • naively breaking things!
    • View Profile
Re: Revisiting the Intel UI
« Reply #24 on: May 08, 2018, 05:53:15 AM »

Quote
It also feels like the new intel notifications are large enough (see: first screenshot in blog post) that it'd be pretty hard to miss entirely, though possibly some sort of visual attention-getter could improve things further.
My main feeling about it is that there's going to be a stream of such data whenever we're traveling about.  At various points, the game needs to point users towards that specific UI element, so that newbies know, "that stuff on the left is associated with that button on the right".  I think that getting people into that area is almost as important as getting them into Command later on; players need to know, "hey, this is where most of the RPG-style missions live; this Sandbox has some structure".

Anyhow, the overall feel looks great; I love the filters, that'll really help make things simpler and clearer; no more UI layers, endless lists on the left, etc., which I felt really got in the way of getting to the information we need.
Logged
Please check out my SS projects :)
Xeno's Mod Pack

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24114
    • View Profile
Re: Revisiting the Intel UI
« Reply #25 on: May 08, 2018, 09:20:14 AM »

E.G. a color change in the rim would be tiny, but is still seems like it would be helpful:
Spoiler
[close]

Oh, I was thinking something like how the ability icons get partially dimmer, but yeah, this could work. Gave it a shot:

Spoiler
[close]

I think this is alright, hmm. Main concern is that I suspect 90% of the players wouldn't know what the heck that means or even notice it in the first place. In which case the relatively low amount of clutter this adds has no upside. Going to keep an eye on this and see how it feels to use.


Maybe having the list be a sort of table instead would help?  You'd have columns for the faction offering, the location, the reward, and the days remaining.  The only disadvantage is it would have to hide the map to be of any use.

Right. No way to fit a table in there, and I think having the map be on the same screen and not something you toggle on and off is huge for improving usability. This is really something where how many items you're looking at at the same time makes a big difference. I think the tags let you drill down enough where the numbers are manageable and sorting is not much of an issue.

E.G. if you had maybe 30 bounties up at the same time, that would be a pain, but if the game puts up 30 simultaneous bounties, then that is the actual problem, you know?


Are multiple stages of the same event still displayed as separate report entries, where selecting one report lists all for that event?
(e.g. food shortage started; relief fleet launched; relief fleet turned back/arrived; shortage over)

That's... well, that's actually entirely up to the implementation of the particular event.

There is, however, support for a piece of intel to provide an "update" that goes in the lower-left of the campaign screen that is *not* the same info as that intel's data in the intel list. Basically, there are three possible short forms: for the intel list, intel map tooltip, and an "update", which can get a parameter.

As far as a food shortage event or something similar, what I think the preferred (for me, at least) way to do it would be:

- a single piece of intel

- only show info for the current stage, maybe with general "food shortage description" blurb that doesn't change from stage to stage

- and updates on each stage being reached, sent only if the player has marked the event as "important" or participated directly to bring the change about

One of the ideas here is moving away from keeping every piece of information the player has received, and only displaying the current state for a given mission/event, with just enough context to make it make sense.

Btw, you didn't ask explicitly, but it probably bears mentioning: reports.csv is no longer used at all.


Quote
Taking on a commission requires talking to a high-ranking faction official
Ha, did you happen to take this idea from Mount & Blade by any chance?
I know I did for Nexerelin, just talking to a "real" person adds a bit more personality to the whole exercise (even without the whole oath of fealty bit).

Maybe? Not consciously. The design process was, "how to handle commissions?" "if there's one up for every faction and you can accept that feels kind of weird, and clutters up the per-faction intel listings" "ok, make it so you need to talk to a person to get one, it's important enough to warrant that anyway".


Hypothetical here, but will the Intel screen ever keep track of or let me sort all the individuals I've built reputation with and their general location (i.e. station commanders, patrols I've ticked off, etc.)? Right now, the reputation system for individuals isn't that important but I'm assuming it might be at some point. As it is, I typically have no idea who or where any of these individuals are so that I might exploit/avoid interactions with them.

Hadn't considered that, but it could certainly be used for that if that became desirable.


My main feeling about it is that there's going to be a stream of such data whenever we're traveling about.  At various points, the game needs to point users towards that specific UI element, so that newbies know, "that stuff on the left is associated with that button on the right".  I think that getting people into that area is almost as important as getting them into Command later on; players need to know, "hey, this is where most of the RPG-style missions live; this Sandbox has some structure".

Anyhow, the overall feel looks great; I love the filters, that'll really help make things simpler and clearer; no more UI layers, endless lists on the left, etc., which I felt really got in the way of getting to the information we need.

Yep, gotcha.
Logged

Cyan Leader

  • Admiral
  • *****
  • Posts: 718
    • View Profile
Re: Revisiting the Intel UI
« Reply #26 on: May 08, 2018, 09:57:31 AM »

With trade fleets becoming way easier to intercept now, are there any sort of mechanic in (or planned) to make them rise in difficulty? For example, once you intercept 2 or 3 big fleets they start getting reinforced or even escorted by other fleets.

I just worry this could be a potential easy money pot and/or boring.
Logged

Megas

  • Admiral
  • *****
  • Posts: 12156
    • View Profile
Re: Revisiting the Intel UI
« Reply #27 on: May 08, 2018, 01:13:39 PM »

Generally, I am more interested in looting rare weapons and hullmods that are very hard to impossible to buy than a few thousand commodities.  Most of the time, the commodities are unremarkable but supplies are nice when they get rolled up.

I guess being an enemy of a major faction will hurt income generation of colonies, so unless player is already at war with them for another reason, taking out trade fleets may not always be the best use of time.

Quote
Warning Beacons
During their travels through the Sector, the player finds warning beacons in hyperspace. Now, each such find results in a piece of intel for its location, making it easy to see exactly where these systems are located, and to perhaps note any pattern to their placement that might guide future exploration. (Naturally, so the dangerous systems can be more easily avoided, and not at all plundered for the riches within.)
Honestly, the warning beacons really mean "Hey guys, big monsters and bigger riches!  Come ye and plunder!"  In this case, farm never-ending Remnants for lots of rare stuff (fighters, HVDs, and others) if we cannot produce them.  Also, glorious training for character and officers under the level cap.
Logged

Thaago

  • Global Moderator
  • Admiral
  • *****
  • Posts: 7214
  • Harpoon Affectionado
    • View Profile
Re: Revisiting the Intel UI
« Reply #28 on: May 08, 2018, 02:05:53 PM »

This looks like a nice quality of life upgrade. On the rim clock icons, I feel like I will still need to click on them to get the days remaining anyways, because thats what determines if I can make it or not. On the one hand its nice to get some information at a glance, but that information isn't sufficient.

Having tried in the past to figure out how to mod in missions and being very confused, is it possible to have an example implemented using the new system we can learn from?
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24114
    • View Profile
Re: Revisiting the Intel UI
« Reply #29 on: May 08, 2018, 02:21:57 PM »

With trade fleets becoming way easier to intercept now, are there any sort of mechanic in (or planned) to make them rise in difficulty? For example, once you intercept 2 or 3 big fleets they start getting reinforced or even escorted by other fleets.

I just worry this could be a potential easy money pot and/or boring.

I *think* once you're up to intercepting that many big fleets, there would ideally be other things for you to be doing that are more-than-linearly rewarding. I do get what you're saying; just not the sort of thing I want to necessarily go fixing before it becomes a problem. There is also a natural progression to it as you simply move on to bigger targets.


This looks like a nice quality of life upgrade. On the rim clock icons, I feel like I will still need to click on them to get the days remaining anyways, because thats what determines if I can make it or not. On the one hand its nice to get some information at a glance, but that information isn't sufficient.

Yeah, I'll keep an eye on this.

(Nice thing is the tooltip shows both the time to get there at base burn and the days remaining, so it ought to be easier to make an informed decision.)

Having tried in the past to figure out how to mod in missions and being very confused, is it possible to have an example implemented using the new system we can learn from?

Hmm - sure, why not. Here's probably the simplest one, the intel for an "analyze entity" mission. Not pasting the base class; hopefully it's not necessary to get an idea for how this works. Also, there's a small component which picks which entities to use as targets. And, finally, there's *another* component which manages the relative number of "generic" missions. I.E. there's (say) a maximum of 50 active generic missions, and analyze, procurement, and survey missions all have a weight, which is used to roughly determine how many missions of each of these types there are.

But, missions are not obligated to use this system and in fact this code would work exactly the same in either case.

Spoiler
Code: java
public class AnalyzeEntityMissionIntel extends BaseMissionIntel {
public static Logger log = Global.getLogger(AnalyzeEntityMissionIntel.class);

protected int reward;
protected FactionAPI faction;
protected MarketAPI market;

protected SectorEntityToken entity;


public AnalyzeEntityMissionIntel(SectorEntityToken entity) {
this.entity = entity;

WeightedRandomPicker<MarketAPI> marketPicker = new WeightedRandomPicker<MarketAPI>();
for (MarketAPI market : Global.getSector().getEconomy().getMarketsCopy()) {
marketPicker.add(market, market.getSize());
}

market = marketPicker.pick();
if (market == null) {
endImmediately();
return;
}

faction = market.getFaction();
if (!market.getFaction().isHostileTo(Factions.INDEPENDENT) && (float) Math.random() > 0.67f) {
faction = Global.getSector().getFaction(Factions.INDEPENDENT);
}

setDuration(120f);

reward = (int) Misc.getDistance(new Vector2f(), entity.getLocationInHyperspace());

reward = (reward / 10000) * 10000;
if (reward < 10000) reward = 10000;


log.info("Created AnalyzeEntityMissionIntel: " + entity.getName() + ", faction: " + faction.getDisplayName());


initRandomCancel();
setPostingLocation(market.getPrimaryEntity());

Global.getSector().getIntelManager().queueIntel(this);

}

public SectorEntityToken getEntity() {
return entity;
}

@Override
protected MissionResult createAbandonedResult(boolean withPenalty) {
if (withPenalty) {
MissionCompletionRep rep = new MissionCompletionRep(RepRewards.HIGH, RepLevel.WELCOMING,
-RepRewards.TINY, RepLevel.INHOSPITABLE);
ReputationAdjustmentResult result = Global.getSector().adjustPlayerReputation(
new RepActionEnvelope(RepActions.MISSION_FAILURE, rep,
  null, null, true, false),
  faction.getId());
return new MissionResult(0, result);
}
return new MissionResult();
}

@Override
protected MissionResult createTimeRanOutFailedResult() {
return createAbandonedResult(true);
}

@Override
public void missionAccepted() {
entity.getMemoryWithoutUpdate().set("$aem_target", true, getDuration());
entity.getMemoryWithoutUpdate().set("$aem_eventRef", this, getDuration());
Misc.setFlagWithReason(entity.getMemoryWithoutUpdate(), MemFlags.ENTITY_MISSION_IMPORTANT,
       "aem", true, getDuration());
}


@Override
public void endMission() {
entity.getMemoryWithoutUpdate().unset("$aem_target");
entity.getMemoryWithoutUpdate().unset("$aem_eventRef");
Misc.setFlagWithReason(entity.getMemoryWithoutUpdate(), MemFlags.ENTITY_MISSION_IMPORTANT,
  "aem", false, 0f);
endAfterDelay();
}

@Override
public void advanceMission(float amount) {

}

@Override
public boolean callEvent(String ruleId, final InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
String action = params.get(0).getString(memoryMap);

CampaignFleetAPI playerFleet = Global.getSector().getPlayerFleet();
CargoAPI cargo = playerFleet.getCargo();

if (action.equals("runPackage")) {
AddRemoveCommodity.addCreditsGainText(reward, dialog.getTextPanel());
cargo.getCredits().add(reward);

MissionCompletionRep rep = new MissionCompletionRep(RepRewards.HIGH, RepLevel.WELCOMING,
-RepRewards.TINY, RepLevel.INHOSPITABLE);

ReputationAdjustmentResult result = Global.getSector().adjustPlayerReputation(
new RepActionEnvelope(RepActions.MISSION_SUCCESS, rep,
  null, dialog.getTextPanel(), true, false),
  faction.getId());
setMissionResult(new MissionResult(reward, result));
setMissionState(MissionState.COMPLETED);
endMission();
}

return true;
}


protected void addBulletPoints(TooltipMakerAPI info, ListInfoMode mode) {

Color h = Misc.getHighlightColor();
Color g = Misc.getGrayColor();
float pad = 3f;
float opad = 10f;

float initPad = pad;
if (mode == ListInfoMode.IN_DESC) initPad = opad;

Color tc = getBulletColorForMode(mode);

bullet(info);
boolean isUpdate = getListInfoParam() != null;

if (isUpdate) {
// 3 possible updates: de-posted/expired, failed, completed
if (isFailed() || isCancelled()) {
return;
} else if (isCompleted()) {
if (missionResult.payment > 0) {
info.addPara("%s received", initPad, tc, h, Misc.getDGSCredits(missionResult.payment));
}
CoreReputationPlugin.addAdjustmentMessage(missionResult.rep1.delta, faction, null,
  null, null, info, tc, isUpdate, 0f);
}
} else {
// either in small description, or in tooltip/intel list
if (missionResult != null) {
if (missionResult.payment > 0) {
info.addPara("%s received", initPad, tc, h, Misc.getDGSCredits(missionResult.payment));
initPad = 0f;
}

if (missionResult.rep1 != null) {
CoreReputationPlugin.addAdjustmentMessage(missionResult.rep1.delta, faction, null,
  null, null, info, tc, isUpdate, initPad);
initPad = 0f;
}
} else {
if (mode != ListInfoMode.IN_DESC) {
info.addPara("Faction: " + faction.getDisplayName(), initPad, tc,
faction.getBaseUIColor(),
faction.getDisplayName());
initPad = 0f;
}

info.addPara("%s reward", initPad, tc, h, Misc.getDGSCredits(reward));
addDays(info, "to complete", duration, tc, 0f);
}
}

unindent(info);
}

@Override
public void createIntelInfo(TooltipMakerAPI info, ListInfoMode mode) {
Color c = getTitleColor(mode);
info.addPara(getName(), c, 0f);

addBulletPoints(info, mode);
}

public String getSortString() {
return "Analyze";
}

public String getName() {
String name = "";
// if (entity.getCustomEntitySpec() != null) {
// name = entity.getCustomEntitySpec().getNameInText();
// } else {
name = entity.getName(); // we want caps on every word since this is a title, so no getNameInText()
// }

return "Analyze " + name + getPostfixForState();
}


@Override
public FactionAPI getFactionForUIColors() {
return faction;
}

public String getSmallDescriptionTitle() {
return getName();
}


@Override
public void createSmallDescription(TooltipMakerAPI info, float width, float height) {
Color h = Misc.getHighlightColor();
Color g = Misc.getGrayColor();
//Color c = getTitleColor(mode);
Color tc = Misc.getTextColor();
float pad = 3f;
float opad = 10f;

info.addImage(faction.getLogo(), width, 128, opad);

String name = "";
String shortName = "";
String isOrAre = "is";
String aOrAn = "a";
if (entity.getCustomEntitySpec() != null) {
name = entity.getCustomEntitySpec().getNameInText();
shortName = entity.getCustomEntitySpec().getShortName();
isOrAre = entity.getCustomEntitySpec().getIsOrAre();
aOrAn = entity.getCustomEntitySpec().getAOrAn();
} else {
name = entity.getName();
shortName = entity.getName();
}

String authorities = "authorities";
if (!faction.getId().equals(market.getFactionId())) {
authorities = "concerns";
}
info.addPara("%s " + authorities + " " + market.getOnOrAt() + " " + market.getName() +
" have posted a reward for running a custom sensor package on " + aOrAn + " " + name + ".",
opad, faction.getBaseUIColor(), Misc.ucFirst(faction.getPersonNamePrefix()));

String loc = BreadcrumbSpecial.getLocatedString(entity, true);
info.addPara("The " + shortName + " " + isOrAre + " " + loc + ".", opad);

if (isPosted() || isAccepted()) {
addBulletPoints(info, ListInfoMode.IN_DESC);

addGenericMissionState(info);

addAcceptOrAbandonButton(info, width, "Accept", "Abandon");
} else {
addGenericMissionState(info);

addBulletPoints(info, ListInfoMode.IN_DESC);
}

}

public String getIcon() {
return Global.getSettings().getSpriteName("campaignMissions", "analyze_entity");
}

public Set<String> getIntelTags(SectorMapAPI map) {
Set<String> tags = super.getIntelTags(map);
tags.add(Tags.INTEL_EXPLORATION);
tags.add(faction.getId());
return tags;
}

@Override
public SectorEntityToken getMapLocation(SectorMapAPI map) {
return entity;
}



}
[close]
Logged
Pages: 1 [2] 3 4