How do I make a new ship for Nova,or new explosions?
------------------
EVN Rocks. Ambrosia Rocks. Plugs Rock! I rock!!!! MACS RULE!!!
jamo@mac.com
How do I make a new ship for Nova,or new explosions?
------------------
EVN Rocks. Ambrosia Rocks. Plugs Rock! I rock!!!! MACS RULE!!!
jamo@mac.com
Quote
Originally posted by U.S. Orion:
**How do I make a new ship for Nova,or new explosions?
**
Here is something you might find useful: (I am using the code tag to preserve formatting)
* The shďp resource
Spaceships are the heart of Nova, so the ship resource contains a lot of
info. The name of a ship class, which is seen in the targeting display,
corresponds to the name of the ship resource. The first nine fields give Nova
some general performance info on each ship type:
Holds Cargo capacity, in tons. Put a negative sign in front of this
value if you want to prevent the player from purchasing
mass expansions. (e.g. a value of -100 would mean 100 tons
of hold space but no mass expansions allowed)
Shield Shield strength.
Accel Acceleration magnitude. 300 is considered an average value.
Speed Top speed. 300 is also an average value here.
Maneuver Turn rate. 10 ? 30°/sec.
Fuel Fuel capacity. 100 = 1 jump.
FreeMass Space available to add additional items and upgrades. Note
that this is in addition to the space taken up by the
ships stock weapons. (e.g. a ship with 20 tons listed in
FreeMass and 10 tons of stock weapons will actually have 30
tons of expansion space, with 20 available.)
Armor Armor strength.
ShieldRech Shield recharge speed, in number of shield points x1000 per
frame. Bigger numbers here mean faster recharge - a value
of 1000 is equal to 1 point per frame or 30 points per
second.
The next twelve fields tell Nova which stock weapons to put on your ship when
you first buy it:
WeapType (x8) ID numbers of weapon types
-1 or 0 No weapon
128-191 Add this weapon type
WeapCount (x8) How many of each of the above weapons to add
-1 or 0 None
1 and up Add this many
AmmoLoad (x8) The standard ammo load for weapons that need it, or ignored
for those that dont
-1 or 0 No ammo
1 and up Include this many rounds of ammo
The next two fields tell Nova what this ships maximum loadout of fixed guns and
turreted weapons is. Each ship has an inherent upper limit on fixed guns and
turrets, in order to keep them from becoming absurdly powerful. (e.g. a bulk
freighter has lots of room to add weapons, but is limited to a single turret for
defense) The fields are:
MaxGun The ships maximum number of fixed guns, which are flagged in the
WeapFlag field of the outf resource.
MaxTur The ships maximum number of turrets, which are flagged in the
WeapFlag field of the outf resource.
The next field tells Nova where this ship is available for purchase:
TechLevel What the technology level of the ship is. This ship will be
available at all shipyards with a tech level of this value or
higher. (The exception to this rule involves the SpecialTech
fields of the spöb resource; see the section on spöb resources
for more information.)
The next field, Cost, tells Nova how much to charge you when you buy this ship.
The cost of buying a ship is always the cost of the new ship minus 25% of the
original cost of your current ship and upgrades. (i.e. you always "trade up" to
a new ship)
The next field stores info on how the ship explodes:
DeathDelay The number of frames the ship "disintegrates" before finally
exploding.
0-59 The ship disintegrates for this number of frames and then
disappears in a single fireball.
60+ The ship disintegrates for this number of frames and then
disappears in a huge explosion. The exact size of the
resulting fireball is proportional to the ship's mass. (see
below)
ArmorRech Armor recharge speed, in number of armor points x1000 per
frame. Bigger numbers here mean faster recharge - a value
of 1000 is equal to 1 point per frame or 30 points per
second.
Explode1 Type of explosion to show (0-63) while the ship is breaking up,
or -1 to not show any explosions until the ship is finished
being destroyed.
Explode2 Type of explosion to show (0-63) when the ship is completely
destroyed. You can also add 1000 to the value of this field in
the same manner as the ExplodeType field in the wëap resource.
Set to -1 to not show any explosion when the ship is
destroyed.
DispWeight The display weight of this ship type. Ships with a higher
display weight are shown closer to the top of the shipyard
dialog. This can be used to effectively rearrange the order
in which ships are displayed without rearranging the
resources themselves.
Mass The mass of the ship, in tons. This doesn't affect acceleration
or speed at all, but it does affect travel time in hyperspace
and the display on the density scanner. Also, the blast radius
and impact strength when the ship explodes is proportional to
its mass.
1-99 1 day per jump, small blip on density scanner
100-199 2 days per jump, large blip on density scanner
200 and up 3 days per jump, large blip on density scanner
Length The ship's length in meters. Currently unused in any calculations,
but its kinda cool, so its displayed in the "detailed ship info"
dialog.
The next field tells Nova what kind of AI the ship will have if it's not created
in connection with a dude resource. The only place this field is useful is when
a ship is created as an escort ship; otherwise, it's ignored:
InherentAI What AI the ship uses when it's escorting the player.
1-4 Use this kind of AI. (see the AI descriptions above) Note
that only ships with inherent AI of 1 or 2 can be used to
carry cargo when they are the player's escorts.
Crew Number of crew members. Ships with 0 crew can't be boarded,
nor can they capture any other ships.
Strength An arbitrary value that represents the relative strength of
the ship type with respect to the rest of the universe.
Used when calculating combat odds (see the govt resource
for details).
The next field tells Nova what government is associated with a ship type.
Note that unlike previous EV games, Nova actually handles two inherent
government associations for each ship type: an inherent combat govt
(used when an AI ship or stellar is deciding if it likes or hates another
ship) and an inherent attributes govt (used for non-combat things like
voice type, distress message flags, etc). Sometimes you might want to
create a ship type that inherits attributes from a particular govt but
isn't considered to be inherently of that govt in combat, so Nova lets
you use the InherentGovt field in several different ways:
InherentGovt -1 No inherent combat govt or inherent attributes
govt for this ship
128-383 Ship is treated as being inherently of the
govt with this ID, both for AI combat
and attributes inheritance)
1128-1383 Ship has an inherent attributes govt with
this ID (minus 1000) but no inherent
combat govt.
2128-2383 Ship has an inherent combat govt with
this ID (minus 2000) but no inherent
attributes govt.
The next field is for some miscellaneous flags:
Flags 0x0001 Slow jumping (75% normal speed)
0x0002 Semi-fast jumping (125%)
0x0004 Fast jumping (150%)
0x0008 Player ship takes advantage of FuelRegen property
0x0010 Ship is disabled at 10% armor instead of 33%
0x0020 Ship has afterburner when player has an advanced combat
rating
0x0040 Ship always has afterburner (for AIs only)
0x0100 Show % armor on target display instead of Shields
Down
0x0200 Don't show armor or shield state on status display
0x0400 Ship is a planet-type ship, and can only be hit by
planet-type weapons
0x1000 Ships turrets have a blind spot to the front
0x2000 Ships turrets have a blind spot to the sides
0x4000 Ships turrets have a blind spot to the rear
0x8000 Ship is an escape ship type - if the player is carrying
any ships of this type and decides to eject, he will
fly off in a ship of this type (with random damage)
instead of an escape pod.
PodCount For decorative purposes, AI ships can be made to launch escape
pods when they're destroyed. This field contains the standard
number of escape pods for an AI ship of this type to launch when
destroyed, at a rate of one per second. Note that this has nothing
to do with the përs field's escape pod flag, it's just for eye
candy. Don't overuse this field, as it can be annoying if used
too often. (perhaps restrict it only to luxury liner type ships).
DefaultItems Up to eight default items with which to equip this ship when the
player buys or captures one. Note that AI-controlled ships
will ignore these fields; also, dont put anything in here
that isnt a physical item - i.e. afterburners, shield
boosters, and the like are okay, but no fake IDs, maps, etc.
128-255 Ship comes stock with this item
-1 Ignored
ItemCount The number of each DefaultItem with which to equip the player.
FuelRegen This ship types inherent fuel regeneration property. Works
exactly the same as the fuel scoop ModVal property - useful
for making ships with built-in fuel replenishment. Note that
for the player to be able to use this field, the 0x0008 flag
must also be set. (this allows you to give enemy ships
built-in fuel scoops but still make the player have to buy his
own)
SkillVar The amount (in percent) to which this ships pilots skill
varies. This affects acceleration and turn rate for each ship:
i.e. a skill variance of 10% would make each ship of a given
type up to 10% slower or faster than stock. Values from
1 to 50% are valid.
Flags2 0x0001 Ship exhibits swarming behavior
0x0002 Ship prefers standoff attacks
0x0004 Ship can't be targeted
0x0008 Ship can be fired on by point defense systems
0x0010 Don't use fighter voices
0x0020 Ship can jump without slowing down
0x0040 Ship is inertialess
0x0080 AI ships of this type will run away/dock if out of
ammo for all ammo-using weapons
0x0100 AI ships of this type will cloak when their weapon
goes into burst reload
0x0200 AI ships will cloak when running away
0x0400 AI ships will cloak when hyperspacing
0x0800 AI ships will cloak when just flying around
0x1000 AI ships will not uncloak until close to their target
0x2000 AI ships will cloak when docking
0x4000 AI ships will cloak when preemptively attacked
Availability Control bit test expression. The player will be able to purchase
this type of ship when the expression evaluates to true. Leave
blank if unused. Depending on the configuration of other flags,
the ship might appear in the shipyard but not be able to be
purchased if its Availability evaluates to false.
AppearOn Control bit test expression. Ships of this type will not show up
in dude resources if this expression evaluates to false. Leave
blank if unused.
OnPurchase Control bit set expression. Leave blank if unused.
Deionize The rate at which this ship type dissipates ionization charge.
A value of 100 equals 1 point of ion energy per 1/30th of a
second. Higher values for Deionize yield faster ion charge
dissipation.
IonizeMax The amount of ion charge at which a ship of this type will be
considered "fully ionized".
KeyCarried The key carried ship type, used for interesting effects in
the wëap and shän resources.
DefaultItms2 More default items, used as above
ItemCount
Contribute These two Contribute fields together form a 64-bit flag that is
Contribute subsequently combined with the Contribute fields from the
outfit items in the player's possession, to be used with the
Require fields in the outf and misn resources.
Require These two Require fields together form a 64-bit flag that is
Require logically and'ed with the Contribute fields from the player's
current ship and outfit items. If for each 1 bit in the Require
fields there is a matching 1 bit in one or more of the
Contribute fields, the ship can be purchased. Leave these
set to zero if unused. Depending on the configuration of other
flags, the ship might appear in the shipyard but not be able to
be purchased if the player doesn't meet the Requirements.
BuyRandom The percent chance that a ship of this type will be available for
purchase on a given day. A BuyRandom of 0 means this ship will
never be made available for purchase.
HireRandom The percent chance that a ship of this type will be available for
hire in the bar on a given day. A HireRandom of 0 means this
ship will never be made available for hire.
OnCapture Control bit set expression, evaluated when you capture a ship of
this type. Leave blank if unused.
OnRetire Control bit set expression, evaluated when you sell a ship of
this type and/or replace it with a captured ship.
Subtitle The subtitle to show on the target display for this ship type
Flags3 Even more flags!
0x0001 Ship destroys asteroids
0x0002 Ship scoops asteroid debris
0x0010 Ship ignores gravity
0x0020 Ship ignores deadly stellars
0x0040 Ship's turreted shots appear above the ship instead
of below
0x0100 Don't show ship in shipyard if Availability is false
0x0200 Don't show ship in shipyard if Require bits not met
0x4000 When this ship is available for sale, it prevents all
higher-numbered ship types with equal DispWeight from
being made available for sale at the same time.
UpgradeTo If an escort ship of this type can be upgraded, this field holds
the ID of the ship type that it can be upgraded to. Set to 0 or
-1 if this ship class can't be upgraded.
EscUpgrdCost The cost to upgrade an escort ship of this type to the next more
advanced version, as defined in the UpgradeTo field.
EscSellValue The amount of cash the player gets for selling off a captured
escort of this type. If you input a number that's less than or
equal to zero here, Nova will default to 10% of the ship's
original cost.
EscortType Tells Nova which of the four categories of escorts to put this
ship type into when organizing the escort control menu.
-1 Have the game try to figure it out at runtime
0 Fighter
1 Medium Ship
2 Warship
3 Freighter
ShortName The short string that is displayed in the shipyard dialog menu
for this ship type. If you want to split this name into two
separate lines, put the characters "n" into the name, e.g.:
"Big Shipn(used)". When using this, lines that start with
an alphanumeric character are drawn in white, while lines
that start with other symbols are drawn in grey.
CommName The short string to display for this ship when it is hailed by
the player.
Long Name The long string to display when the player purchases a ship of
this type or starts a new pilot.
MovieFile The filename of a QuickTime movie to display in place of the
ship picture in the shipyard dialog. The QuickTime movie must
reside within the Nova Files or Nova Plug-Ins folders and will
be looped continuously while the player has this ship type
selected.
Ships' target info picts are stored in PICT resources 3000 and on. The engine is
smart enough to reuse targeting picts for two ship classes that have the same
base sprites: all you have to do is give the first of any series of
identical-looking ship types a target pict in the usual way (PICT resource ID
3000 + shipID - 128) and the engine will use it for all higher-numbered ship
types with the same base sprites.
And here:
* The shän resource
Shan (ship animation) resources contain sprite info for ship graphics, which
are too complex for the more rudimentary spin resource.
BaseImageID The resource ID of the basic sprite images for this ship
BaseMaskID The ID of the corresponding sprite masks (ignored if the base
image is an rleD/rle8 resource)
BaseSetCount The number of sprite sets for the basic sprite images. A sprite
set is usually 36 sprite images, and the graphics for all of
a ship's basic sprite sets are stored in the same
PICT/rleD/rle8
resource, referred to in BaseImageID.
BaseXSize The X size of each basic sprite image
BaseYSize The Y size of each basic sprite image
BaseTransp The inherent transparency of the basic sprite images, from
0 (no transparency) to 32 (fully transparent).
AltImageID The resource ID of the alternating sprite images for this ship.
Sprites from the alt sprite sets can be displayed on top of
the basic sprite for the ship, cycling through each available
sprite set at a rate defined in the Delay field, below.
Set to zero if unused.
AltMaskID The corresponding mask ID. Set to zero if unused.
AltSetCount The number of sprite sets for the alternating sprites.
AltXSize
AltYSize
GlowImageID Engine glow
GlowMaskID
GlowXSize
GlowYSize
LightImageID Running lights
LightMaskID
LightXSize
LightYSize
WeapImageID Weapon effects
WeapMaskID
WeapXSize
WeapYSize
ShieldImageID Shield bubble (shield sprite have a number of frames
ShieldMaskID exactly equal to 1, FramesPer, or BaseSetCount*FramesPer)
ShieldXSize
ShieldYSize
Flags 0x0001 Extra frames in base image are used to display banking.
The first set of sprites is used for level flight, the
second for banking left, and the third for banking right.
0x0002 Extra frames in base image are used for animated ship
parts such as for folding/unfolding wings. The sprites
will be cycled upon landing, taking off, and
entering/exiting hyperspace.
0x0004 The second set of frames in the base image are displayed
when the ship is not carrying any of its KeyCarried type
ships onboard.
0x0008 Extra frames in base image are shown in sequence, just
like the sprites in the alternating image. The AnimDelay
field has the same effect in this case.
0x0010 Stop the ships' animations when it is disabled
0x0020 Hide alt sprites when the ship is disabled
0x0040 Hide running light sprites when the ship is disabled
0x0080 Ship unfolds when firing weapons, and folds back up when
not firing.
0x0100 Adjust ship's visual presentation to correct for the skew
caused by graphics that are rendered highly off-axis from
vertical. This uses the ship's UpCompressY and DnCompressY
fields to interpolate the proper sprite frame to display
based on the ship's actual heading. Use this with
caution, as it tends to cause very jerky ship
rotation and is mostly included as a curiosity.
Note that the first four flags in this field are mutually
exclusive - i.e. you can have a ship that banks, unfolds,
changes appearance when it is carrying a certain other ship
type, or animates in sequence, but these effects can't be
combined. The only exception is that having both flags
0x0001 and 0x0002 set is treated specially - it results in
a ship whose extra frames are used for banking and which
always displays its engine glow when it is turning, whether
or not it is actually accelerating. (This something that
got thrown in at some point when I realized that it would
be necessary to have in order to replicate the behavior of
a certain type of ship from a certain TV show).
AnimDelay The delay between frames of the sprite animations, in 30ths of a
second.
WeapDecay The rate at which the weapon glow sprite fades out to transparency,
if applicable. 50 is a good median number - lower numbers yield
slower decays.
FramesPer The number of frames for one rotation of this ship - usually 36 is
a good number, but larger ships can benefit from having more
frames per rotation to make their turning animation look smoother.
Be sure this value is equal to the actual number of frames per
revolution in your images, or bad things will happen!
BlinkMode 0 or -1 Ignored
1 Square-wave blinking:
BlinkValA is the light on-time
BlinkValB is the delay between blinks
BlinkValC is the number of blinks in a group
BlinkValD is the delay between groups
2 Triangle-wave pulsing:
BlinkValA is the minimum intensity (1-32)
BlinkValB is the intensity increase per frame, x100
BlinkValC is the maximum intensity (1-32)
BlinkValD is the intensity decrease per frame, x100
3 Random pulsing:
BlinkValA is the minimum intensity (1-32)
BlinkValB is the maximum intensity (1-32)
BlinkValC is the delay between intensity changes
BlinkValD is ignored
GunPosX Here you can set the exit points on the ship sprite for four
GunPosY different classes of weapons. Note that The "Gun" "Beam" etc.
TurretPosX designations are for convenience only, since which set of
TurretPosY weapon exit points is used by a given weapon are defined in
GuidedPosX that weapon's ExitType field. The x & y positions of each
GuidedPosY weapon exit point are measured in pixels from the center of the
BeamPosX ship when the ship is pointing straight up (frame index 0). See
BeamPosY the next four fields if you need to account for any perspective
corrections in your sprites.
UpCompressX If you have ship sprites that are rendered at an angle, these
UpCompressY fields are used to correct for the ships perspective when
DnCompressX calculating the weapon exit points (above). If the ship is
DnCompressY pointing generally "up" (heading is 0-90 or 270-359) then
UpCompressX/Y are used; if the ship is pointing generally
"down" (heading is 91-269 degrees) then DnCompressX/Y are used.
These values are divided by 100 and then multiplied by the
rotated x & y values in the weapon exit point fields to apply a
rough correction factor, so values less that 100 will bring
the exit points in closer to the ship and values greater than
100 will move the exit points farther out. Experimentation is
the best way to learn how this works. Values of zero are
interpreted the same as a value of 100, so you can leave
this field set to zero if unused.
GunPosZ Here you can set further weapon exit point offsets in order to
TurretPosZ compensate for skew caused by the z position of a ship
GuidedPosZ graphic's weapon exit point. These values are added to a
BeamPosZ shot or beam's position after the weapon exit point x & y
offsets and the x & y compression factors have been applied,
so the effect of these values is not scaled. Positive values
here move up the screen, negative values move down the screen.
(this is a lot easier to use with the editor than it is to
describe)
Note: if you use engine glows or running lights, you must have the same number
of engine glow and/or running light frames as base frames (including banking
frames!) or Nova will choke.
And for explosions:
* The bööm resource
The boom resource is used to customize the various explosion types. Nova
supports up to 64 different explosion types. The graphics for the explosions are
loaded from spďn resources 400-463, the sounds are loaded from snd resources
300-363, and the behavior of each explosion type is contained within bööm
resources 128-191. Each bööm resource contains three fields:
FrameAdvance The rate at which the explosion will animate - a value of 100
will cause each frame of the explosion to appear for exactly
one frame of the game animation, and lower values will stretch
out the explosion animation and make it stay onscreen longer.
SoundIndex The index (0-63) of the explosion sound to associate with this
explosion type, or -1 for a silent explosion. Usually you'd set
this to either -1 or to the same value as the explosion index
itself (e.g. 1 for bööm resource 129, etc.) but if you want to
use the same sound for two different explosion types, you can
do that with this field.
GraphicIndex The index (0-63) of the explosion graphic to associate with this
explosion type. Usually you'd set this to the same value as the
explosion index itself (e.g. 1 for bööm resource 129, etc.) but
if you want to use the same graphic for two different explosion
types (like the small weapon explosion and the ship-breaking-up
explosion) you can do that with this field.
Any more questions?
------------------
"The best revenge is a life well lived." -My father
No. I mean how do I make a set of frames for a new ship or explosion? What program do I need?
------------------
EVN Rocks. Ambrosia Rocks. Plugs Rock! I rock!!!! MACS RULE!!!
jamo@mac.com
If you want to make the graphics, use a 3D program or Photoshop or something. If you mean how do you get them into Nova, save as PICT and then use EnRLE (which is a part of NovaTools and is downloaded seperately). Then simply reference that from the shan and boom resources.
------------------
Why are you all looking at me like that?