.com.unity Forums
  The Official e-Store of Shrapnel Games

This Month's Specials

Raging Tiger- Save $9.00
winSPMBT: Main Battle Tank- Save $6.00

   







Go Back   .com.unity Forums > Shrapnel Community > Space Empires: IV & V > SEV Modders Knowledge Base

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old October 28th, 2007, 12:13 AM
MrToxin's Avatar

MrToxin MrToxin is offline
Corporal
 
Join Date: Oct 2006
Posts: 105
Thanks: 0
Thanked 0 Times in 0 Posts
MrToxin is on a distinguished road
Default Just a Crazy Weapon Idea....

I'm not 100% sure how much of this is going to work, but I'm going to tinker with the idea more until I force it to. The basis is, instead of needing to change weapon types when you invent a new type of munition (or whatever), the weapons upgrade themselves automatically when you refit the ship for a higher generation design. Everything is in formulas stuck in the component. Because studying a new type of munition gives you inherently better damage types, it is automatically changed if you have the proper type of weapon equipped.

Meanwhile, the damage upgrades itself based on not only the level of the weapon, but based on the levels of technology you have achieved. Because, for example, projectile are all based on a particular area of technology, you get damage bonuses based on what you have researched and how far. In this example, it's set to pick the highest level you have achieved and then add the average of all of the other levels. The reasoning behind this is that HEAP Projectiles are made better with advances in regular Armor Piercing ones. Plus, this makes it so that somebody that snagged 50 levels of AP Projectiles early on doesn't feel like they wasted their time when they picked up SNAPHE Projectiles.

Meanwhile, in the To Hit calculation, there is a way to have a specific component grant a to-hit bonus ONLY to specific component types. Because this isn't doable with actual functions in the standard set, the Design_Has_Component_Type is called to make sure that it's there. Then it applies its bonuses to the weapon appropriately, depending on the tech level.

The only time that weapon changes are necessary are when you want to either use an entirely different delivery system (as in, moving from Chemical Projectile Cannons to Coil Guns) or change to a completely different idea of weapon. Even then, however, weapons of similar class gain bonuses in relation to each other. Researching Projectile Weapons will also make your Rail Guns better, for example.

All of this allows for more complexity within the combat system itself through the research system and allows you to specialize your empire further. This also means that, depending on what you researched, your weapons may be drastically different than another empire's that is using a similar class but a different specialization.

As for range, the idea here is that the to-hit of the weapon is based on range, which is reduced by faster projectiles. In this case, as higher-class projectiles are invariably faster, you get a bonus to hit with them. Different classes of weapons that fire projectiles faster (Coil Guns, Rail Guns, and such...chemicals can only make things so fast) get different modifiers to the range.

Again, this has NOT been thoroughly tested. I just wanted to drop the idea in front of anybody that might want it. Actually implementing and testing this is going to be fabulously difficult. Balancing it will be harder. Either way, here it is. Use what you want out of it.

Code:
Name                                            := Chemical Projectile Cannon

Description := Cheap to use and easy to produce. CPCs fire the most advanced type of standard projectile

munition that is available. This will either be Standard, AP, HEAP, SNAPHE, ChaSNAPHE, or Antireality rounds.
Picture Number := 086
Maximum Level := 10000

Tonnage Space Taken Formula := 25 * (0.995 ^ (Get_Empire_Tech_Level("Miniaturization") -1)))
Tonnage Structure Formula := 25 + ([%Level%] / 5)

Cost Minerals Formula := 125 + ([%Level%] * 5) +
(Get_Empire_Tech_Level("Armor-Piercing Projectiles") * 5) +
(Get_Empire_Tech_Level("HEAP Projectiles") * 4) +
(Get_Empire_Tech_Level("SNAPHE Projectiles") * 3) +
(Get_Empire_Tech_Level("ChaSNAPHE Projectiles") * 3) +
(Get_Empire_Tech_Level("Antireality Projectiles") * 4)

Cost Organics Formula := 10 + [%Level%] +
(Get_Empire_Tech_Level("Armor-Piercing Projectiles") / 2) +
(Get_Empire_Tech_Level("HEAP Projectiles")) +
(Get_Empire_Tech_Level("SNAPHE Projectiles") / 2) +
(Get_Empire_Tech_Level("ChaSNAPHE Projectiles") / 3) +
(Get_Empire_Tech_Level("Antireality Projectiles") / 3)

Cost Radioactives Formula := 10 + [%Level%] +
(Get_Empire_Tech_Level("Armor-Piercing Projectiles") / 3) +
(Get_Empire_Tech_Level("HEAP Projectiles") / 2) +
(Get_Empire_Tech_Level("SNAPHE Projectiles") * 2) +
(Get_Empire_Tech_Level("ChaSNAPHE Projectiles") * 3) +
(Get_Empire_Tech_Level("Antireality Projectiles") * 6)

Supply Amount Used Formula := 0
Ordnance Amount Used Formula := 5
Can Be Placed On Vehicle Types := Ship, Base, Satellite, Weapon Platform
Can Be Placed In Ship Sections := Outer Hull

Component Type List := Technological
General Group := Projectile Weapons
Custom Group := 0

Number Of Requirements := 1

Requirements Evaluation Availability := AND
Requirements Evaluation Allows Placement := TRUE
Requirements Evaluation Allows Usage := TRUE

Requirement 1 Description := Empire must have at least one level of Projectile Weapons.
Requirement 1 Formula := Get_Empire_Tech_Level("Projectile Weapons") > ([%Level% - 1)

Number Of Abilities := 2

Ability 1 Type := Crew Quarters
Ability 1 Description := Requires two crew members to operate.
Ability 1 Scope := Space Object
Ability 1 Range Formula := 0
Ability 1 Amount 1 Formula := -2
Ability 1 Amount 2 Formula := 0

Ability 2 Type := Ordnance Storage
Ability 2 Description := Provides storage for [%Amount1%] units of Ordnance.
Ability 2 Scope := Space Object
Ability 2 Range Formula := 0
Ability 2 Amount 1 Formula := 50 + [%Level%]
Ability 2 Amount 2 Formula := 0

Weapon Type := Direct Fire

Weapon Delivery Type := Projectile
Weapon Target Type List := Ship, Base, Satellite, Weapon Platform, Building, Planet, Fighter
Weapon Damage Type Formula := If (Get_Empire_Tech_Level("Antireality Projectiles") >= 1, "Antireality Projectile",
(If (Get_Empire_Tech_Level("ChaSNAPHE Projectiles") >= 1, "ChaSNAPHE Projectile",
(If (Get_Empire_Tech_Level("SNAPHE Projectile") >= 1, "SNAPHE Projectile",
(If (Get_Empire_Tech_Level("HEAP Projectiles") >= 1, "HEAP Projectile",
(If (Get_Empire_Tech_Level("Armor-Piercing Projectiles") >= 1, "Armor-Piercing Projectile", "Projectile"))))))))

Weapon Space At Range Distance Increment := 10
Weapon Space Min Damage At Range := 0
Weapon Space Max Damage At Range := 0
Weapon Space To Hit Modifier At Range := 0

Weapon Space Min Damage Modifier Formula := 5 + [%Level%] +
(Max (Get_Empire_Tech_Level("Armor-Piercing Projectiles"),
(Max (Get_Empire_Tech_Level("HEAP Projectiles"),
(Max (Get_Empire_Tech_Level("SNAPHE Projectiles"),
(Max (Get_Empire_Tech_Level("ChaSNAPHE Projectiles"), (Get_Empire_Tech_Level("Antireality Projectiles"))))))) +
((Get_Empire_Tech_Level("Armor-Piercing Projectiles") + Get_Empire_Tech_Level("HEAP Projectils") + Get_Empire_Tech_Level("SNAPHE

Projecties") + Get_Empire_Tech_Level("ChaSNAPHE Projectiles") + Get_Empire_Tech_Level("Antireality Projectiles")) / 5)

Weapon Space Max Damage Modifier Formula := (5 + [%Level%] +
(Max ((Get_Empire_Tech_Level("Armor-Piercing Projectiles"),
(Max ((Get_Empire_Tech_Level("HEAP Projectiles"),
(Max ((Get_Empire_Tech_Level("SNAPHE Projectiles"),
(Max ((Get_Empire_Tech_Level("ChaSNAPHE Projectiles"), (Get_Empire_Tech_Level("Antireality Projectiles"))))))))))) +
((Get_Empire_Tech_Level("Armor-Piercing Projectiles") + Get_Empire_Tech_Level("HEAP Projectils") + Get_Empire_Tech_Level("SNAPHE

Projecties") + Get_Empire_Tech_Level("ChaSNAPHE Projectiles") + Get_Empire_Tech_Level("Antireality Projectiles")) / 5)) * 2

Weapon Space To Hit Modifier Formula := ([%Level%] / 5) + (If (Design_Has_Component_Type("Tracking Computer") = TRUE, (5 +

(Get_Empire_Tech_Level("Tracking Computers") / 5), 0) - (Max (0, ([%Range%] / (Get_Empire_Tech_Level("Projectile Weapons")

Weapon Reload Rate MS Formula := 4000 * (0.995 ^ (Get_Empire_Tech_Level("Projectile Weapons") - 1)) *
(0.995 ^ (Get_Empire_Tech_Level("Rapid-Fire Projectile Weapons") - 1))



Anyway...this is one of the ideas behind the mod I'm working on. When this pesky Infinitech Mod is finished, I'm hoping that this doesn't absolutely cripple CPUs in processing all of this garbage. We'll see, though.

The different types of munitions are dependent on each other. As in, you need enough development of regular Projectile Weapons to get to Armor-Piercing Projectiles, which leads to HEAP, then SNAPHE, ChaSNAPHE, then Antireality.
__________________
I'm sewage flavored.
Reply With Quote
 

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 06:37 AM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2024, Shrapnel Games, Inc. - All Rights Reserved.