Page 44 of 65

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 5:56 am
by Keeper
Some more work on the Asp today. Whiter (though less uniform), bluer, painted bottom panels, unpainted screws, and the logo added. The gold part of the logo was made highly reflective.

These pictures are from using the default shader. Eventually I'll switch it over to use a modified Griff shader to get the engine glows working. The Griff shader also has more dynamic specular lighting than the default shader, so the overall appearance should improve.
Image

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 7:37 am
by Gimi
That looks stunning Keeper.
Is it too much to ask for an example with the black background in the logo.
Also, the logos are just mock-ups done in Powerpoint. I'm working on a better version in Gimp/Incscape with everything vector based. I'll hopefully have that ready over the weekend.

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 8:22 am
by Smivs
Looking good, Keeper :)
Have we agreed on a specific blue, by the way. I'm hoping to update the Carrier in the next couple of days, and getting the right shade would be good.

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 9:03 am
by Gimi
Smivs wrote:
Looking good, Keeper :)
Have we agreed on a specific blue, by the way. I'm hoping to update the Carrier in the next couple of days, and getting the right shade would be good.
For the hull, I'll leave that to you and Keeper to agree on. If we use the blue background on the logo (still undecided, as I like the white on black version), I think the ship blue should be darker.

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 10:42 am
by Disembodied
cim wrote:
For a Galnavy scale HIMSN, sure - for a joint endeavour of three systems (and a few hangers-on), though? [...]
Good points, definitely! Having a tactically, strategically, and morally elastic Navy, set within a ponderous and often unco-operative Co-operative (who may have cause to wonder whether this war against the Thargoids is going anywhere, or even who started it, and why) does build in lots of angles and spaces for players to be given interesting little tasks ...

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 10:47 am
by Gimi
Disembodied wrote:
cim wrote:
For a Galnavy scale HIMSN, sure - for a joint endeavour of three systems (and a few hangers-on), though? [...]
Good points, definitely! Having a tactically, strategically, and morally elastic Navy, set within a ponderous and often unco-operative Co-operative (who may have cause to wonder whether this war against the Thargoids is going anywhere, or even who started it, and why) does build in lots of angles and spaces for players to be given interesting little tasks ...
Agree, lot of scope there, but Civil War is definitely off the table.

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 11:22 am
by Pleb
Gimi wrote:
Agree, lot of scope there, but Civil War is definitely off the table.
I agree, as I said before this is Oolite not Star Wars! :lol:

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 11:32 am
by Sendraks
The White looks really good, but I think using purples in the shading would provide the same contrast and reduce the "greyness" of the white.

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 11:33 am
by Zireael
Where can I get the HIMSN OXZ?

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 11:46 am
by Pleb
It's only a test release with standard models at the moment. If you look back through this thread the link is there somewhere (I'm on my phone so can't access it easily).

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 19, 2014 1:16 pm
by Pleb

Re: Her Imperial Majesty's Space Navy

Posted: Thu Feb 20, 2014 6:28 am
by Keeper
Smivs wrote:
Have we agreed on a specific blue, by the way. I'm hoping to update the Carrier in the next couple of days, and getting the right shade would be good.
I've been overlaying the blue from the logo over the main texture, or over the original specular map texture if the original diffuse texture had too much colour. Sometimes it's Overlay, sometimes it's Soft Light, sometimes it's a combination... Depends on what gives the best effect and keeps the most contrast with lines and highlights from the "bare metal" underneath.

I can always paint the cruiser for ya, since I'm doing the others and have a method already established.

Re: Her Imperial Majesty's Space Navy

Posted: Thu Feb 20, 2014 10:36 pm
by Pleb
Okay pretty stuck with trying to implement AI following cim's suggestion. I have the following:

Code: Select all

"use strict";

this.name 			= "himsn_test_ai.js";
this.author         = "Pleb";
this.copyright      = "(C) 2014 Pleb.";
this.licence        = "CC-NC-by-SA 2.0";
this.version 		= "0.3";

this.aiStarted = function() 
{
	var ai = new worldScripts["oolite-libPriorityAI"].PriorityAIController(this.ship);

	ai.setCommunicationsRole("himsn_fighter");
	
	ai.setParameter("oolite_flag_markOffenders",true);
	
	worldScripts["oolite-libPriorityAI"]._setCommunications({
		"himsn_fighter": {
			generic: {
				oolite_attackLowEnergy: "[himsn_fighter_attackLowEnergy]",
				oolite_beginningAttack: "[himsn_fighter_beginningAttack]",
				oolite_beginningAttackThargoid: "[himsn_fighter_beginningAttackThargoid]",
				oolite_continuingAttack: "[himsn_fighter_continuingAttack]",
				oolite_continuingAttackThargoid: "[himsn_fighter_continuingAttackThargoid]",
				oolite_eject: "[himsn_fighter_eject]",
				oolite_firedMissile: "[himsn_fighter_firedMissile]",
				oolite_friendlyFire: "[himsn_fighter_friendlyFire]",
				oolite_hitTarget: "[himsn_fighter_hitTarget]",
				oolite_incomingMissile: "[himsn_fighter_incomingMissile]",
				oolite_killedTarget: "[himsn_fighter_killedTarget]",
				oolite_quiriumCascade: "[himsn_fighter_quiriumCascade]",
				oolite_thanksForHelp: "[himsn_fighter_thanksForHelp]",
				oolite_thargoidAttack: "[himsn_fighter_thargoidAttack]"
			}
		}
	});

	ai.setWaypointGenerator(ai.waypointsSpacelanePatrol);
	
	var common = [
		{
			condition: ai.conditionInCombat,
			configuration: ai.configurationAcquireCombatTarget,
			behaviour: this.behaviourTakeHostileAction,
			reconsider: 5
		},
		{
			preconfiguration: ai.configurationCheckScanner,
			condition: this.conditionScannerContainsHostileIntruder, 
			configuration: ai.configurationAcquireScannedTarget,
			behaviour: this.behaviourTakeHostileAction,
			reconsider: 5
		},
		{
			condition: this.conditionScannerContainsFriendlyPlayer, 
			configuration: ai.configurationAcquireScannedTarget,
			behaviour: this.behaviourDestroyPlayerIfHostileToNavy,
			reconsider: 5
		}
	];
	var returnToBase = [
		{
			configuration: this.configurationFindBase,
			behaviour: ai.behaviourDockWithStation
		}
	];
	var beginPatrol = [
		{
			condition: ai.conditionHasWaypoint,
			configuration: ai.configurationSetDestinationToWaypoint,
			behaviour: ai.behaviourApproachDestination,
			reconsider: 30
		},
		{
			configuration: ai.configurationSetWaypoint,
			behaviour: ai.behaviourApproachDestination,
			reconsider: 30
		}
	];
	var specific;
	if (this.ship.homeSystem == this.ship.destinationSystem)
	{
		specific = [
			{
				condition: ai.conditionGroupAttritionReached,
				truebranch: returnToBase,
				falsebranch: beginPatrol
			}
		];
	}
	else if (this.ship.homeSystem == system.ID && this.ship.fuel == 7)
	{
		specific = ai.templateWitchspaceJumpOutbound().concat(returnToBase);
	}
	else if (this.ship.homeSystem == system.ID)
	{
		specific = returnToBase;
	}
	else
	{
		specific = [
			{
				condition: ai.conditionGroupAttritionReached,
				truebranch: ai.templateWitchspaceJumpInbound()
			},
			{
				condition: ai.conditionInInterstellarSpace,
				truebranch: ai.templateWitchspaceJumpInbound(),
				falsebranch: beginPatrol
			}
		];
	}

	var fallback = ai.templateWitchspaceJumpAnywhere();

	var priorities = common.concat(specific).concat(fallback);
	ai.setPriorities(priorities);
}

this.behaviourTakeHostileAction = function()
{
	if (this.ship.target.scanClass == "CLASS_PLAYER")
	{
		missionVariables.himsn_status = "HOSTILE";
		missionVariables.himsn_status_timer = clock.adjustedSeconds + Math.floor(60*86400);
	}
	this.behaviourDestroyCurrentTarget();
}

this.conditionScannerContainsHostileIntruder = function()
{
	return this.checkScannerWithPredicate(function(s) { 
		return (s.bounty > 50 || s.isThargoid) && s.scanClass != "CLASS_CARGO" && s.scanClass != "CLASS_ROCK" && s.scanClass != "CLASS_BUOY" && s.scanClass != "CLASS_MILITARY";
	});
}

this.conditionScannerContainsFriendlyPlayer = function()
{
	return this.checkScannerWithPredicate(function(s) { 
		return s.bounty < 51 && s.scanClass == "CLASS_PLAYER";
	});
}

this.behaviourDestroyPlayerIfHostileToNavy = function()
{
	if (missionVariables.himsn_status == "HOSTILE")
	{
		this.behaviourDestroyCurrentTarget();
	}
}

this.configurationFindBase = function()
{
	var homeStation = null;
	system.filteredEntities(this, function (entity)
	{
		if (entity.isStation && entity.hasRole("himsn_station"))
		{
			homeStation = null;
		}
	});
	this.setParameter("oolite_dockingStation",homeStation);
}
But after the ship launches from the station, it just flies away from the station and sits there dead in space... :( I've followed the layout used in oolite-bountyHunterLeaderAI.js but I still can't figure out where I'm going wrong with this...

Re: Her Imperial Majesty's Space Navy

Posted: Thu Feb 20, 2014 11:17 pm
by cim
A subtle one, this one...

General hints: put ai.setParameter("oolite_flag_behaviourLogging",true); before your setPriorities call if a priority AI is acting oddly and you can't tell why. Alternatively, set it from the debug console on a single ship (in this case, your target) with PS.target.AIScript.oolite_priorityai.setParameter("oolite_flag_behaviourLogging",true);. This will dump the AI calculation for that ship to the log every time it reconsiders. You can use the "label" property of a priority entry to give them a more convenient label than "7". If you want to force an immediate reconsideration, the shortest way is PS.target.AIScriptWakeTime = 1;. Behaviour logging will fill your Latest.log up very very quickly, especially if it's turned on for more than one ship, so most of the time you probably want to use the debug console to enable it on just a single ship of interest, but it's very helpful - it got a lot of use writing the core AIs.

Probably the problem this time: consider what

Code: Select all

      {
         condition: this.conditionScannerContainsFriendlyPlayer,
         configuration: ai.configurationAcquireScannedTarget,
         behaviour: this.behaviourDestroyPlayerIfHostileToNavy,
         reconsider: 5
      }
will do if there is a non-fugitive player ship nearby which is not hostile to the navy: I'd recommend rewriting it as

Code: Select all

      {
         condition: this.conditionScannerContainsFriendlyButHostileToNavyPlayer,
         configuration: ai.configurationAcquireScannedTarget,
         behaviour: this.behaviourTakeHostileAction,
         reconsider: 5
      }
or alternatively wrapping the check up into conditionScannerContainsHostileIntruder

Re: Her Imperial Majesty's Space Navy

Posted: Wed Feb 26, 2014 9:19 am
by Gimi
HIMSN is progressing well (a lot faster than I thought) so I need to land the logo debate. We pretty much have a 50/50 split on the black or blue background. I prefer black and the flaring sun logo, but from what I understand most here prefer the ringed planet.

Proposal
HIMSN Intelligence services will have a white "Omega" on a black background.
Image
HIMSN Regular Navy will have a white ringed planet on a blue background.
Image
HIMSN Stations will have a white flaring sun on a blue background.
Image

Please give an honest opinion. The only decision that has been made is the 8-pointed star as seen above.

Edit: I'm also contemplating changing to a darker shade of blue for the background.