Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Smuggling/Illegal Outfits overhaul #6314

Open
3 of 6 tasks
Galaucus opened this issue Oct 29, 2021 · 11 comments
Open
3 of 6 tasks

Smuggling/Illegal Outfits overhaul #6314

Galaucus opened this issue Oct 29, 2021 · 11 comments
Labels
mechanics Things dealing with the mechanics & code of how the game works

Comments

@Galaucus
Copy link
Contributor

Galaucus commented Oct 29, 2021

Problem Description

The existing system of scanning for illegal outfits is fairly brute force and doesn't give the player much control over avoiding or dealing with it. Increasing player agency can be resolved by taking a comprehensive set of changes, as outlined below:

This issue will also document related changes to smuggling gameplay to help make it more robust and flavorful.

Related Issue Links

Issue #4240 Change Incoming Scan Notification, opened by @Zitchas
#6456 - "Alerts" feature to make fleeing from the ISP more interesting.

Related PRs:

Desired Solution

1) The Navy should no longer scan ships.

Because Navy ships constitute a large set of all traffic, and all navy ships have the scanning personality, it's an overwhelming blockade. Removing the scanning personality from the Navy will make scanning less "force of nature that you can only brace yourself for" and more "sometimes surprising event that creates interesting choices and gameplay".

2) Rather, an Interstellar Police (ISP) faction should be implemented that monitors Republic territory for smugglers.

It would spawn comparatively rarely to the Navy, and use lighter craft more suitable for interception and interdiction. The benefit of this faction being distinct from the Navy is that we can still use Navy fleets to occupy combat roles while reducing the overall scan density in any given system. Likewise, certain systems can have disproportionately high scan density by making it more heavily patrolled by police.

Finally, reputation with the ISP (so long as it's greater than -100) should tick back towards zero every week, representing the heat dying down. Between -100 and -10, fleets will spawn that attempt to track the player and scan them.

3) When scanned and found in violation, a hailing panel should be opened up. (#6376 )

Here's a mockup of what I think the pop-up should look like, mimicking the existing hailing panel.

Police Cruiser "Big Iron" is hailing you
--------------------------------------------------------------------------------------------------------------
You've been detected carrying illegal cargo and have been issued a fine of <fine> credits.
Dump your cargo immediately or we'll be forced to disable and board your ship.

[Dump Cargo] [Offer Bribe] [Flee!]

Dumping cargo purges all illegal cargo from your hold and incurs a fine, as well as minor reputation loss with the ISP.
Bribery allows you to keep your cargo, and makes ISP fleets currently in-system ignore you. No fine is issued.
Fleeing immediately renders ISP and Navy ships in the system hostile, and incurs a decent reputation loss with ISP and the Republic. No fine is issued.

4) Fines should be calculated by [outfit quantity] x [illegal value] (#6376 )

This is needed so that you can't still make a profit by simply pilling on inordinate amounts of contraband and taking a fine for a single unit of said contraband

5) Illegality should be tracked by government and defined in the government's data block. (#6314 )

An example syntax for data could be:

government "ISP"
	bribe 0.6
	illegal
		"designer drugs" 1200
		"counterfeit credsticks" 30
		"coreshine" 500
	atrocity
		"chemical warhead"
		
government "Remnant"
	bribe 0
	illegal
		"chemical warhead" 0

Under this example the ISP requires 60% of the fine value as a bribe to ignore your crime, and will attack on sight if you're found carrying chemical warheads. The Remnant, meanwhile, accept no bribes, and simply require that you dump any chemical warheads at their border or be fired upon - but they won't issue a fine if you comply.
This has the benefit of not cluttering the outfitter panel with legal information, and runs no risk of spoiling the existence of factions beyond those discovered. Rather, a list of customs laws can simply be added to the logbook upon discovery of a new faction.

Alternative Approaches

Rather than have an entirely new government and attendant fleets, we could create some sort of "Subfleet" or "Fleet variant" mechanic. When a fleet is spawned, the game would check to see if there are any variant fleets with that same name and spawn them with some sort of weighting.

Under such a system not all Navy fleets would have the Scanning personality, but only a subset of them, and which exact fleet (and personalities) are spawned when a Navy fleet is created would be random.

This has the benefit of being much more flexible for future content - like creating merchants that spawn from the same pool but belong to different factions - though one of the main benefits of a dedicated police faction is visual seperation so that you know exactly which ships in a system might scan you.

Additional Context

This is supporting an expanded smuggling system to be implemented as part of the pirate campaign.
Smuggling system branch can be found here
@quyykk has expressed interest in implementing the necessary code changes once their schedule opens up a bit.

@tehhowch
Copy link
Collaborator

#5141 should have appeared in your research

@Galaucus
Copy link
Contributor Author

#5141 should have appeared in your research

Sweet, looks like that's half the work already done.

@Galaucus
Copy link
Contributor Author

Galaucus commented Nov 1, 2021

@Galaucus
Copy link
Contributor Author

Galaucus commented Nov 9, 2021

image
I'd also like to see scan chance overhauled like this.
Edit: Quyykk's got a fork going where scans work this way, so testing time!

@Chopliver19
Copy link

Chopliver19 commented Nov 29, 2021

I like the idea of the ISP. Also bribing should have a high chance of not working, maybe depending on what the cargo is.
Could you also get it in good with the ISP by reporting illegal smuggling and the like? Just a thought ;).

@Galaucus
Copy link
Contributor Author

image
image
Police Splinter

@Red-57
Copy link
Contributor

Red-57 commented Dec 2, 2021

just thought I'd post the ISP ships that i've been working on
ISDGunboartexture
ISDflivverthumb
ISDSplinterthumb

@yafflehk
Copy link

yafflehk commented Dec 3, 2021

I really like those, a real Euro police vibe, can we have flashing lights?

@Galaucus
Copy link
Contributor Author

Galaucus commented Dec 3, 2021

I really like those, a real Euro police vibe, can we have flashing lights?

Ideally, yes! I'd have to ask a coder for help, but it would be great if we could have a "shipstates" tracker that can toggle sprites depending on aggro state, among other things.

I don't want them to have flashing lights just by default.

@Galaucus
Copy link
Contributor Author

Here are some example logbook entries for illegal goods and the missions which trigger them.

mission "Legal Code: Chemical Warheads"
	invisible
	landing
	source "Smuggler's Den"
	on offer
		log "Republic Law" "Chemical Warheads" `Excerpted from Republic customs code, Section A: Absolutely Forbidden Cargo`
		log "Republic Law" "Chemical Warheads" `... possession of items defined under Article 2, including but not limited to CHEMICAL WARHEADS, cobalt-doped THERMONUCLEAR DEVICES, and other WEAPONS OF MASS DESTRUCTION shall be considered grounds for immediate seizure by Naval Forces, warranting actions including but not limited to the full destruction of transporting vessel(s) and personnel.`

mission "Legal Code: Coreshine"
	invisible
	landing
	source
		attributes "smuggling port"
	on offer
		log "Republic Law" "Coreshine" `Excerpted from Republic customs code, Section D: Tax Evasion and Fraud`
		log "Republic Law" "Coreshine" `Upon failure to provide proof of payment for duties on cargo, inspecting officers are authorized to immediately collect UNPAID TAXES and issue a FINE of up to TWENTY TIMES the value of UNPAID TAXES. If the purchase price of the cargo is unknown, officers are authorized to collect taxes according to prices as detailed in TABLE IV.`
		log "Republic Law" "Coreshine" `	Table IV: Taxes to be levied on bulk commodities`
		log "Republic Law" "Coreshine" `		...`
		log "Republic Law" "Coreshine" `		Alcohol, Ethyl: 400c/ton`
		log "Republic Law" "Coreshine" `		...`
		log "Republic Law" "Coreshine" `(I should expect to pay 8400 credits per ton if I'm caught smuggling untaxed liquor.)`

mission "Legal Code: Dragon's Teeth"
	invisible
	landing
	source "Skymoot"
	on offer
		log "Republic Law" "Dragon's Teeth"	`Excerpted from Republic customs code, Section C: Objects of Illegal Provenance`
		log "Republic Law" "Dragon's Teeth" `TRANSPORT, USE, or POSSESSION of body parts from critically PROTECTED or ENDANGERED ANIMALS shall warrant fines as detailed in TABLE I. Items on TABLE II may be considered EXEMPT and GRANDFATHERED provided the accused can provide proof of production prior to the ratification of P.R.6298.`
		log "Republic Law" "Dragon's Teeth"	`	Table I: Fines to be imposed on poached animal parts`
		log "Republic Law" "Dragon's Teeth"	`		...`
		log "Republic Law" "Dragon's Teeth"	`		Widow Antelope, Horns: 200c/rack`
		log "Republic Law" "Dragon's Teeth"	`		Widow Antelope, Fangs: 10,000c/tooth`
		log "Republic Law" "Dragon's Teeth"	`		Widow Antelope, misc: 500c/ton`
		log "Republic Law" "Dragon's Teeth"	`		Kornepheran Beaversquid, Appendages: 400c`
		log "Republic Law" "Dragon's Teeth"	`		Kornepheran Beaversquid, misc: 1000c/ton`
		log "Republic Law" "Dragon's Teeth"	`		Skymoot Dragon, Teeth (intact): 3000c/tooth`
		log "Republic Law" "Dragon's Teeth"	`		Skymoot Dragon, Teeth (powdered): 150,000c/ton`
		log "Republic Law" "Dragon's Teeth"	`		...`
		log "Republic Law" "Dragon's Teeth"	`(Powdered dragon teeth are usually sold in tenth-tons, so I should expect to pay 15,000c per jar I'm caught with.)`

@Amazinite Amazinite added enhancement A suggestion for new content or functionality that requires code changes mechanics Things dealing with the mechanics & code of how the game works and removed enhancement A suggestion for new content or functionality that requires code changes labels Jul 2, 2022
@Galaucus
Copy link
Contributor Author

Galaucus commented Feb 24, 2024

Had a discussion with @Amazinite and @Saugia, general ideas are:

  • Skip the ISP. Instead, rework existing Navy enforcement so that they're less scan-happy or implement a new Navy fleet whose only job is to scan, allowing us to control scan density on a per-system basis.
  • Highlight contraband in red on the boarding panel, so that you know you're stealing potentially dangerous-to-carry goods.
  • In the ship info and cargo panels, highlight any contraband in red. Alternative: add a warning icon that you mouse over for a tooltip.
  • We need to implement some sort of method for aborting a mission by dumping mission cargo, rather than only being able to do it the other way around
  • Cargo hot potato to avoid scans? This would make it so that you don't fail the mission upon dumping the cargo, only upon it being destroyed or abandoned. (Low priority, or something that should emerge from other features.)
  • Failing smuggling missions too many times gives you a mission where you have to pay back your debt before a deadline expires, or you get killed by a hitman (or something).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mechanics Things dealing with the mechanics & code of how the game works
Projects
Status: In Progress
Development

No branches or pull requests

6 participants