Author Topic: RE: Change to Squadron Jump Capacity Mechanics  (Read 1261 times)

0 Members and 1 Guest are viewing this topic.

Offline xenoscepter (OP)

  • Vice Admiral
  • **********
  • Posts: 1157
  • Thanked: 318 times
RE: Change to Squadron Jump Capacity Mechanics
« on: July 16, 2020, 03:17:27 AM »
Based off of this discussion Here =====> http://aurora2.pentarch.org/index.php?topic=10640.msg138545#msg138545

 - I would like it if Squadron Capacity was changed to match the new Maintenance Mechanics. To elaborate, currently a Jump Drive rated for 10,000 Tons with a Squadron Rating of 4 can move 4 10,000 Ton ships. I would like to see it changed so that the same Jump Drive would instead move up to 40,000 Tons of ships in total, so maybe 20x ships each weighing 5,000 Tons, or 40x ships weighing 1,000 Tons. However, I would like the cap retained, so that the aforementioned Jump Drive design CANNOT move one 40,000 Ton ship, or indeed any ship in excess of 10,000 Tons.

Cheers! ;D
 
The following users thanked this post: QuakeIV

Offline esavier

  • Petty Officer
  • **
  • e
  • Posts: 29
  • Thanked: 7 times
Re: RE: Change to Squadron Jump Capacity Mechanics
« Reply #1 on: July 18, 2020, 08:45:19 PM »
Based off of this discussion Here =====> http://aurora2.pentarch.org/index.php?topic=10640.msg138545#msg138545

 - I would like it if Squadron Capacity was changed to match the new Maintenance Mechanics. To elaborate, currently a Jump Drive rated for 10,000 Tons with a Squadron Rating of 4 can move 4 10,000 Ton ships. I would like to see it changed so that the same Jump Drive would instead move up to 40,000 Tons of ships in total, so maybe 20x ships each weighing 5,000 Tons, or 40x ships weighing 1,000 Tons. However, I would like the cap retained, so that the aforementioned Jump Drive design CANNOT move one 40,000 Ton ship, or indeed any ship in excess of 10,000 Tons.

Cheers! ;D

Jsut to straighten this up, do you mean 40x1KT or 8x5KT or 20x2KT, so that total tonnage of transported ships is up to 40KT in total?
yeah that sounds good, but we would also need to be able to sum it up for all the jump drives in the fleet, also this would have to some kind of sort what ships can jump with which jump so that all the ships can do it to the other side.
if that can be worked out, i think its cool feature to have.
 

Offline xenoscepter (OP)

  • Vice Admiral
  • **********
  • Posts: 1157
  • Thanked: 318 times
Re: RE: Change to Squadron Jump Capacity Mechanics
« Reply #2 on: July 18, 2020, 09:56:41 PM »
So, under my proposed system, a Jump Drive can move any number of ships, but only if their mass totals up to or less than the maximum tonnage that the Jump Drive is rated for, multiplied by the Squadron Rating, unless one or more of them is bigger in terms of tonnage than what the Jump Drive is rated for.

Under the current system:
A 7,500 Ton (150HS) Military Jump Drive designed with Jump Efficiency 4 will move a 30,000 Ton (600HS) ship. With a Squadron Rating of 3, allowing it to move up to three ships that are 30,000 Tons or less.

Under my proposed system:
The same Jump Drive I described above can move up to 90,000 Tons of ship, but only if none of those ships are over 30,000 Tons. So 3x 30,000 Ton ships, or 6x 15,000 Ton ships could be moved, but 2x 45,000 Ton ships or a single 90,000 Ton ship could not be moved.


Get_Jump_Drive_Value "JumpDrive#"
If JumpDrive# <0 then set value "JumpDrive#" equals to integer

^That would check if the fleet has a jump drive, and if so, how many. The integer would be whatever was above 0, so a fleet with 6 Jump Drives total would be an integer of 6, or JumpDrive# = 6.

JumpDrive_Identity = X,Y
^This value is assigned based on a range of integers ranging from 1 to X, where X is the value of "JumpDrive#". JumpDrive_Identity then is assigned to the fleet based on an internal ship flag, sorting from the first ship listed in the fleet and then going down the list to the end, until each ship that has a Jump Drive in that fleet has been assigned a JumpDrive_Identity value. The game already tracks whether or not a ship has a Jump Drive or not, and the specifications of that Jump Drive, so the function could simply piggyback of these existing values. The Y value in JumpDrive_Identity would be a binary value, denoting a Commercial Drive or Military Drive, and would function to allow JumpDrive_Identity, when called, to properly identify what kind of ship it can and cannot jump. A fleet without any Jump Drives is considered to have a JumpDrive_Identity value as null.

Jump_MaxThreshold = X
^This value is the maximum tonnage of ship that can be transported by a given jump drive. It is assigned to a specific JumpDrive_Identity and denotes the maximum tonnage that the specified JumpDrive_Identity can move. A JumpDrive_Identity value of null does not precludes this value from being generated.

JumpDrive_MaxCapacity = X
^This value is also assigned to a specific JumpDrive_Identity, but it denotes the sum total of tonnage that the JumpDrive_Identity can move. A JumpDrive_Identity value of null also does not preclude this value from being generated.

The JumpDrive_Identity of a Fleet is stored as an array. JumpDrive_MaxThreshold and JumpDrive_MaxCapacity are assigned to a JumpDrive_Identity as a pair, assigned a flag that relays which pair is assigned to which JumpDrive_Identity, and then stored as an array. These arrays are assigned to a Fleet and are altered or cleared according to Fleet composition.


When the player commands a fleet to jump, a checksum is carried out using the above information as well as other information that the game already contains. The checksum logic is roughly as follows:

 1. Get_JumpDrive_Value = "JumpDrive#" is run first. This function is ran when the player creates a fleet in the Naval Organization window.

 2. Each ship is assigned an integer value based on the range of JumpDrive#, these Jump Drives are then checked for their corresponding Commercial or Military flag and assigned a JumpDrive_Identity.

 3. JumpDrive_MaxThreshold and JumpDrive_MaxCapacity are derived from the Jump Capacity and Squadron Rating of each Jump Drive, then assigned to their JumpDrive_Identity.

 4. This information is stored in an array, which is called as part of a function whenever the player tries to jump.

 5.This function checks that no ship design in the fleet exceeds a JumpDrive_MaxThreshold or JumpDrive_MaxCapacity contained within the array and uses the data stored JumDrive_Identity to discriminate between the JumpDrive_MaxThreshold and JumpDrive_MaxCapacity values of ships equipped with Commercial Jump Drives and the JumpDrive_MaxThreshold and JumpDrive_MaxCapacity values of ships equipped with Military Jump Drives.

 6. If the function has determined that there are no illegal combinations, the jump is successful. ...Hooray! :D


 - I'm sure there are better ways to do this, but I have no programming experience to speak of, so that's probably to be expected. ;D That's just the logic I would see it following to accomplish the goal of the proposition that I set forth. The Maintenance mechanics present in Aurora C# already do a lot of what I'm proposing here. They check for tonnage already, because 10,000 Tons worth of Maintenance Facility can service any combination of ships up to 10,000 Tons. It also checks for ships exceeding that tonnage capacity for the purposes of calculating the hit to maintenance efficiency from going over it. It already checks whether or not the ship tracks morale for the purposes of determining whether or not a ship in question is counted against the maintenance capacity.

 - I'd strongly suspect a lot of the already existing code could be lifted from the maintenance system. A Commercial Ship cannot have a Military Engine, and a Commercial Jump Drive cannot Jump a Military Engine ship, ergo the code that checks for morale could be lifted for the purpose of determining which ship has which jump drive. The capacity code could be lifted and applied to jump drive capacity instead. And so on and so forth, again I've never coded a day in my life, so this is probably a case of "Can't you just do this?" where the answer is, "Actually, no."
« Last Edit: July 18, 2020, 10:18:48 PM by xenoscepter »
 
The following users thanked this post: Gabrote42

Offline esavier

  • Petty Officer
  • **
  • e
  • Posts: 29
  • Thanked: 7 times
Re: RE: Change to Squadron Jump Capacity Mechanics
« Reply #3 on: July 18, 2020, 10:25:04 PM »
This is a nice post <insert nice post meme>
i like this post,
this is a very technical post,
this post makes me feel happy and warm inside,
please not that this is the post as it should be,
please make more of posts like that,
sincerely
engineering department

jokes aside, sounds fair, i totally dig it, it would help incredibly with FAC jumps and made a few related tactics possible (or more viable).
+1