Different color for non hostiles with bounty?

An area for discussing new ideas and additions to Oolite.

Moderators: winston, another_commander

another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6646
Joined: Wed Feb 28, 2007 7:54 am

Re: ..

Post by another_commander »

Screet wrote:
another_commander wrote:
In order for this to be oxp-able, we need on a silver platter the code that makes it a)an equipment piece and b)visible to JS as well.
If you do want it then, I'll write a bit more code for it ;)

Screet
To be honest, I consider it a totally unnecessary addition. But if you provide the full patch that sets it to default to NO, then I don't really mind.
User avatar
Lestradae
---- E L I T E ----
---- E L I T E ----
Posts: 3095
Joined: Tue Apr 17, 2007 10:30 pm
Location: Vienna, Austria

Re: ..

Post by Lestradae »

another_commander wrote:
To be honest, I consider it a totally unnecessary addition. But if you provide the full patch that sets it to default to NO, then I don't really mind.
Sounds like a reasonable compromise, then :D

Actually even better than a compromise, as the idea was to have a new item of equipment for that anyways, and that EQ_ can then set the default to YES if owned.
User avatar
0235
Deadly
Deadly
Posts: 175
Joined: Fri Sep 12, 2008 1:29 pm
Location: In a rock, being a hermit

Post by 0235 »

well this would be very usefull, it would let me know who to run from
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Re: ..

Post by Screet »

another_commander wrote:
To be honest, I consider it a totally unnecessary addition. But if you provide the full patch that sets it to default to NO, then I don't really mind.
OK, here we go:

equipment.plist

Code: Select all

	<array>
		<integer>12</integer>
		<integer>50000</integer>
		<string>Tactical Scanner Enhancement</string>
		<string>EQ_TACTICAL_SCANNER_ENHANCEMENT</string>
		<string>Enhances tactical awareness by marking non hostile ships with bounty.</string>
		<dict>
			<key>available_to_all</key>
			<true/>
		</dict>
	</array>
ShipEntity.m

Code: Select all

static GLfloat bounty_color[4] = 	{ 1.0, 0.66, 0.0, 1.0};	// orange
[...]
- (GLfloat *) scannerDisplayColorForShip:(ShipEntity*)otherShip :(BOOL)isHostile :(BOOL)flash
[...]
		default :
			if (isHostile)
				return hostile_color;
			else if (bounty > 0 && [otherShip hasEquipmentItem:@"EQ_TACTICAL_SCANNER_ENHANCEMENT"])
				return bounty_color;
I was worried about a possible performance impact by calling hasEquipmentItem instead of setting a variable if the player does have the equipment and resetting it upon load/ship change/equipment damage/equipment selling, but at least on my machine it's not noticeable and I don't know yet where these variables would have to be reset.

With a price tag of 5K credits it is a bit pricey...but since most equipment can be bought for half the price if oxp's are present and since it does help very much, I think that's OK...of course I would not scream if it's decided to reduce that price.

AC, if you do play Random Hits, I am sure that you will see why this is a great addition, especially if the space bar is being attacked by the Mafia while you are there ;)

Screet
User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton »

This feels like a cheat to me. Feel free to try to convince me otherwise.

(On the other hand, I’d be OK with a patch that lets scripts change a ship’s scanner colour.)
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Post by Screet »

Ahruman wrote:
This feels like a cheat to me. Feel free to try to convince me otherwise.
Why? The NPCs already do have such technology ;)

As to have scripts do this: It'd be very difficult because the oolite internal code for ships does apply the color.

If you want scripts to prevent such a technology...well...it would rather have to be some equipment those specific ships should have and the existence for that equipment would have to be added like

Code: Select all

else if (bounty > 0 && [otherShip hasEquipmentItem:@"EQ_TACTICAL_SCANNER_ENHANCEMENT"] && ![self hasEquipmentItem:@"EQ_TACTICAL_SCANNER_JAMMER"]) 
Another way would be that some ships are behaving like outlaws but are clean, like black monks...and if those ships would add some reward upon death, they also could bypass detection by this scanner enhancement.

Screet
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

I also don't see the function of bounty colouring.

For the player it is important to know who is hostile to the player as it is now. When you colour ships to see witch one will earn you money by shooting, you might as well colour ships that have cargo to spill. Because having cargo as well as being hostile you cant see from the outside, but bounty you can by targeting.
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Post by Screet »

Eric Walch wrote:
I also don't see the function of bounty colouring.

For the player it is important to know who is hostile to the player as it is now. When you colour ships to see witch one will earn you money by shooting, you might as well colour ships that have cargo to spill. Because having cargo as well as being hostile you cant see from the outside, but bounty you can by targeting.
It's really helpful: If you are surrounded by many yellow blips, you need to know which might turn hostile. Those, generally, are the orange ones ;) If you have to defend a space bar, you will have an immense amount of yellow blips without the code. You need to target one ship, then the next, then the next, ...until you finally found someone to fight, and might have missed someone close by.

When being mass-locked, it's also no longer necessary to turn to each of the blips to see if they are offenders or fugitives and thus might become hostile. It's instantly clear now ;)

EDIT: It's also not necessary to add that line for a jammer to that specific scanner enhancement. It's simply enough to give those ships a MASC which already is built in, and then these ships are also more powerful ;)

Screet
User avatar
Cmd. Cheyd
---- E L I T E ----
---- E L I T E ----
Posts: 934
Joined: Tue Dec 16, 2008 2:52 pm
Location: Deep Horizon Industries Manufacturing & Research Site somewhere in G8...

Post by Cmd. Cheyd »

Personally - I think this is a great idea, so long as the default is to have it turned off. From there, I think it's a NATURAL extension of the Bounty Scanner OXP to turn it on... Effectively, that is what the Bounty Scanner is doing currently, but for the locked-on target.
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2272
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

personally i think a bounty scanner is a natural suggestion. the original manual says "Galactic banks, which insure the larger trading convoys, will pay a large bounty for each pirate ship destroyed. A ship's computer will transmit photographic evidence of any kill to the GalCop Bank Federation Monitoring Authority. The IR signature of the destroyed ship is then tallied with all known pirate vessels, and the bounty hunter pilot credited accordingly. "
it seems obvious that if you know the IR sig of the ship in order to transmitit, then you'd know the bounty before you kill it.
User avatar
Lestradae
---- E L I T E ----
---- E L I T E ----
Posts: 3095
Joined: Tue Apr 17, 2007 10:30 pm
Location: Vienna, Austria

..

Post by Lestradae »

Guys (devs), Ahruman, really, please, just put it in if what Screet produced works as intended and set its default to no.

This debate is hilarious in a not-so-good way, and even I if I dig my heart out, can't find anything polite to say about it.

The merits of the idea are obvious, when "defaulted off" it's not forced on anyone - feel free to convince me why that could be considered a cheat of any sorts??? :?

Sure, it's your decision, if you don't you don't (put it in), but I guess everyone can read between my lines.

Really.

L
User avatar
_ds_
Deadly
Deadly
Posts: 180
Joined: Thu Jan 22, 2009 5:34 pm
Location: In a cloaked ship behind you

Post by _ds_ »

Eric Walch wrote:
I also don't see the function of bounty colouring.
Unconditional colouring, I agree.
For the player it is important to know who is hostile to the player as it is now. When you colour ships to see which one will earn you money by shooting, you might as well colour ships that have cargo to spill. Because having cargo as well as being hostile you cant see from the outside, but bounty you can by targeting.
Such colouring would have to be activated for any given ship by targeting it. I see no reason why it shouldn't then be persistent, but I do think that it should be limited to what information is already available to the player.

We could have the target reticle displayed differently if locked onto something hostile, though. This patch is for testing; I'll commit it soon, subject to discussion. (There's no reason why this colouring shouldn't be scriptable that I can see; but then the existing target-sensitive colour change isn't.)
http://tartarus.org/~ds/oolite/patches, Buzzer OXP etc.
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Post by Screet »

_ds_ wrote:
Unconditional colouring, I agree.
The coloring is not different for ships with 2Cr bounty and those with 120000 bounty. It's only acting as a way to determine clean ships from those which did commit crimes and thus may attack sooner or later.
_ds_ wrote:
Such colouring would have to be activated for any given ship by targeting it. I see no reason why it shouldn't then be persistent, but I do think that it should be limited to what information is already available to the player.
NPCs can scan for ships with role, while the player does currently not have something similar.

I simply don't see the need why I should have to target every single ship around me to know wether they are clean or not - that's instantly provided data anyway, but it's simply an annoyance. If players could not target, they could not shoot these ships as targeting them is MUCH easier. Remember the "target reticle sensitive" which turns red although the player won't hit...

I've not a problem if some people won't buy that equipment, but it seems that I'm not the only one who would like to be able to buy equipment that does tell clean traders from criminals. The required change is simple, it's entirely optional and thus I don't understand why people should not be able to benefit from it simply because some don't want to use it. It's like saying "you've got to play the same style as I do!".

Maybe we should set up a vote with options like
1) I want it
2) I won't use it but don't care if others use it
3) I won't use it and don't like others to use it
4) I don't know yet

For people who do believe that this could make some missions too easy, there's already the inbuilt solution to give them the MASC or the optional solution I already did write some messages ago which can exclude ships by giving them a virtual eq which does nothing else but to flag them so that they won't be reported as non-clean.

Anyway, I won't take it out of my game, I simply did start this thread because I think the idea would also make other people happy.

Screet
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

Screet wrote:
I simply don't see the need why I should have to target every single ship around me to know wether they are clean or not - that's instantly provided data anyway,
It is not instantly provided to NPC ships. When they scan for offenders they have a random chance to find ships with a bounty. The chance to find ships with bounty decreases with the height of the bounty and with the government type. e.g in an anarchy system a NPC can't find ships with bounties at all (Unless they use special JS scripting).
When you put police ships in an anarchy system, they only will react on distress messages but not on ships with bounty. Try it yourself by making yourself a fugitive and than spawn a police near you in an anarchy system.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6646
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

I just want to clear up a possible misunderstanding here. Nobody is forcing anyone to play the game the way one thinks. We encourage contributions and normally take all ideas aboard, provided that they:
a) Do not change the default behaviour of the game,
b) Are complete, ready-to-roll-in patches. Sometimes, when a submitted idea is really good, we might put some work of our own to make it mainstream ready and
c) They are not fundamentally out of the scope of the game.

Screet: In my personal opinion, your patch fails on the second point. The code changes you proposed earlier in this thread are not enough for inclusion in the standard game. They are hacks. We normally do not spread unknown and non-standard equipment names in the code, hoping that if the player has such equipment it will work. For this to be able to go in, it must also have JS visibility, as stated in one of my previous messages. You may want to see how the target sensitive reticle functionality is introduced in a totally transparent way in the code and then becomes an OXP equipment by Eric's script for an example of what I mean.

Finally, to repeat something that Ahruman said in the past: Lobbying will not get anyone anywhere. Instead of doing polls for nothing, better rework your submission to make it trunk-ready. You will find its chances of inclusion will be substantially increased.
Post Reply