logo   login
right
Home Forums Downloads Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Forum Info
Forum Members: 18,581
Total Threads: 8,668
Posts: 94,540

Administrators:
DeeZire, Redemption

There are currently 43 users online.
Partner Links

Free Credit Repair

Learn the Ticket Broker Secrets
Advertisements


Generals & Zero Hour Editing Discuss any modding related issues to do with Generals and Zero Hour here.

Reply
 
LinkBack Thread Tools
Old 06-06-2004, 08:54 AM   #1 (permalink)
Senior Member
 
Join Date: May 2003
Location: Eindhoven, Netherlands
Posts: 2,278
Send a message via ICQ to CodeCat Send a message via MSN to CodeCat
Default Trade secrets revealed

This is the place where you can submit any tips, tricks, or other miscellaneous modding ideas. It can range from anything to a simple trick how to accomplish something, to an explanation on how to get a working naval yard for example. Any modding tricks you'd like to share with your fellows, submit them here. Try to include a "title" with your tip, so that anyone reading through this knows what it's about.

The idea behind this is that lots of modders found their own solutions to problems they had. By collecting them in this thread, those solutions become public knowledge so everyone can benefit from them.

I'll start by submitting some tricks of my own (also posted in "Simple, but realistic mod ideas for beginners."):

----------------------------------------------------------------------------------------------

Burst-fire sounds

If you have a sound that sounds like a machine gun firing a whole salvo, then it would sound ugly if that sound would be played each time the weapon fires, assuming that the weapon fires multiple shots too (ClipSize is not 0). So to get the sound to only play once, yet still have the weapon fire multiple shots in 1 burst, there's a little trick.

First, go to the sound's entry in SoundEffects.ini. Change "Sounds" to "Attack". Then add "loop" to the "Control" line. So now we have a looped sound, which STARTS the loop by playing the weapon sound, but plays nothing when the loop continues.

Next, go to the entry of the weapon in Weapon.ini, and add "FireSoundLoopTime = n" to the weapon somewhere, where n should be a bit longer than DelayBetweenShots, but shorter than the weapon's ClipReloadTime. This ensures that the sound will only stop looping after n milliseconds of no firing.

If n is smaller than DelayBetweenShots, then the loop will be cut off before the next shot in a single salvo, so you would hear the sound with each shot rather than each clip. If n is larger than ClipReloadTime, then the sound will keep looping until after the second salvo starts, so it will never stop looping. Remember that the sound only plays when a NEW loop starts, not when an existing one continues.


Adding force-move

The force move function, like in the other C&Cs, was originally on the ALT key. But EA decided to remove it in favour of the waypoint function. To add it again, open CommandMap.ini (located in Data/English inside English(ZH).BIG) and go to the BEGIN_FORCEMOVE and END_FORCEMOVE commands. Just remove the semicolons from the lines, but don't forget to assign BEGIN_WAYPOINTS and END_WAYPOINTS (right below the force move) to a different key. Try using KEY_Z, that's what they used in Red Alert 2 aswell.
CodeCat is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-06-2004, 11:24 AM   #2 (permalink)
Senior Member
 
Join Date: May 2003
Location: Eindhoven, Netherlands
Posts: 2,278
Send a message via ICQ to CodeCat Send a message via MSN to CodeCat
Default

Replacing the Fog of War with shroud

It is possible to replace the fog of war system with the shroud system like in the older C&C games. To do this, open Data/INI/multiplayer.ini and set UseShroud to Yes. Now the game will start off shrouded, but once revealed the fog will grow back. This is what it's like in the single-player campaign. To stop the fog from growing back, go to Data/INI/GameData.ini and all the way down the bottom is a setting called UnlookPersistDuration, which sets how long it takes after a unit moves or dies before the fog grows back. Set it to 99999999999999999999 or some other rediculously high number. If the number is high enough, the fog will effectively never grow back, so all you will see is shroud. Once a unit has been at a location, the shroud will disappear and the location stays visible (almost) indefinitely.


Veteran Abilities

You can make a unit change weapons, locomotors, become stealthed, get an armour boost, and more, when it reaches a certain veterancy level, just like in Red Alert 2. Remember those 4-shooter Apocalypse tanks? You can have those in Generals too. Here's what you do. Imagine your unit has a weaponset like this one:
Code:
WeaponSet
  Conditions = None 
  Weapon = PRIMARY SomeWeapon
End
Now it's interesting to know that any veterancy increase also triggers an upgrade when it reaches the next level. These upgrades are named "Upgrade_Veterancy_VETERAN", "Upgrade_Veterancy_ELITE" and "Upgrade_Veterancy_HEROIC". These upgrades are all OBJECT-type upgrades, so they only affect the unit that gets them, not anything else.

So now that we have an upgrade, it's easy to turn this into a new weapon. If we want the unit to get a better weapon when it reaches ELITE level, you'd need this code:
Code:
Behavior = WeaponSetUpgrade ModuleTag_09
  TriggeredBy = Upgrade_Veterancy_ELITE Upgrade_Veterancy_HEROIC
End
Remember that in some cases a unit can skip ELITE and go straight to HEROIC, if the target it destroys is worth enough points. So we need to include them both. Then, all we need is a new WeaponSet:
Code:
WeaponSet
  Conditions = None 
  Weapon = PRIMARY SomeWeapon
End
WeaponSet
  Conditions = PLAYER_UPGRADE
  Weapon = PRIMARY SomeWeaponElite
End
You could also give the unit an extra SECONDARY weapon when it reaches a certain level. As far as upgrades go, you can do anything. You could give it a better locomotor (imagine allowing a tank to hover when it reaches elite), more health, create an OCL, make it invisible, etc. You should remember though that this is an upgrade like any other, so if the unit already has an upgrade that affects the same thing as a veterancy upgrade, the two will conflict with each other. So you can't give a unit an elite WeaponSet if it already has another WeaponSetUpgrade. Of course you can still give it a WeaponBonusUpgrade instead, so use your imagination.
CodeCat is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-06-2004, 12:31 PM   #3 (permalink)
Senior Member
 
Join Date: Nov 2003
Location: Hell
Posts: 272
Default

Inserting the Radar Jam Abillity

Add This:

Code:
Behavior = ActiveShroudUpgrade ModuleTag_Shroud
  TriggeredBy                          = *WTF Upgrade Name u want*
  NewShroudRange                  = *Range of Shroud Crated
End
After the Last Module, (note that ModuleTag_Shroud can be changed to whatever u want, no neccecerilly a number)
4hammer is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-06-2004, 01:25 PM   #4 (permalink)
Senior Member
 
Join Date: May 2003
Location: Eindhoven, Netherlands
Posts: 2,278
Send a message via ICQ to CodeCat Send a message via MSN to CodeCat
Default

That's a gap generator, not a radar jammer. Besides, DZ already wrote a tutorial about that. But while we're on the subject, here's


Making a unit that disables only stuff of a certain type
Zero Hour only

It's possible to make a Radar Jammer like in Red Alert, but you'll have to sacrifice the SUBDUAL_MISSILE, SUBDUAL_VEHICLE or SUBDUAL_BUILDING DamageType for it. So it's not really useful unless you're making a total conversion, or a mod that changes/removes the Microwave Tank or ECM Tank. Also, this particular jammer will completely disable every building that is affected by it. So if you let it jam Command Centers, you won't be able to build Dozers with them either. But this trick can be easily applied to any other building, so if you want to make a unit that specifically disables all production facilities, that's very possible.

So imagine we want to make a unit that disables every production facility within its range. First you copy the ECM Tank's secondary weapon (the one it uses to jam missiles), and adjust it so it looks like this:
Code:
Weapon JammerWeapon
  PrimaryDamage = 1000.0
  PrimaryDamageRadius = 500.0
  AttackRange = 1.0
  DamageType = SUBDUAL_BUILDING
  DeathType = NORMAL
  WeaponSpeed = 999999                     ;  dist/sec 
  RadiusDamageAffects = ENEMIES NEUTRALS
  DelayBetweenShots = 250                ; time between shots, msec
End
Adjust the damage and radius to suit your likings. The radius is the range at which it can disable things. The damage adjusts how long it takes (relative to an object's hitpoints) to completely disable something. Remember that you should change the DamageType depending on which one you want to use for this.
Next, add this to your unit:
Code:
Behavior = FireWeaponUpdate Whatever
  Weapon = JammerWeapon
End
This will get your unit to automatically disable anything that gets near it, without having to target it.

Then there's one last thing to do. You need to make a copy of the armour type (in Armor.ini) of each building you're going to make disableable. So for StructureArmor you make StructureArmorDisableable (if any of the things that can be disabled have StructureArmor), for TankArmor you could make TankArmorDisableable, etc. Now, you must set whatever DamageType you used for this to do 100% damage to these new armour types, and 0% to all other types. This ensures that nothing other than these specific types will be disabled. So then just give whatever can be disabled one of these new armour types. You also need to include something like
Code:
SubdualDamageCap = 2000
SubdualDamageHealRate = 500
SubdualDamageHealAmount = 500
on the "Body" module for the objects that can be disabled. This makes the units actually disableable. Their armour type controls whether a particular weapon is capable of disabling them.
CodeCat is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-06-2004, 01:32 PM   #5 (permalink)
Administrator
 
DeeZire's Avatar
 
Join Date: Dec 2002
Posts: 1,913
Send a message via ICQ to DeeZire
Default

Quote:
Originally Posted by ImmoMan
you'll have to sacrifice the SUBDUAL_MISSILE, SUBDUAL_VEHICLE or SUBDUAL_BUILDING DamageType for it. So it's not really useful unless you're making a total conversion, or a mod that changes/removes the Microwave Tank or ECM Tank.
Use SUBDUAL_UNRESISTABLE instead then
__________________
DeeZire is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-07-2004, 05:49 AM   #6 (permalink)
Senior Member
 
Join Date: Sep 2001
Posts: 734
Send a message via ICQ to Flyby
Default

I see a lot of people wrestling with in-game scaling problems because they do not use a system when they start modeling:

Here's my system :

- obtaining a uniform scaling:
- Customize -> Preference -> General -> System Unit Scale 1 Unit = 1 feet
- Customize -> Unit setup -> Generic Units
use the metric values of the real model in cm
then make the object at 1/20 scale



To find out the dimentions of a unit/object in GMAX :

- select the object
- rightclick and choose "properties"
- at the top you'll find info about the dimentions and face count

In 3dsmax, you can use the "Measure" utility
Flyby is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-07-2004, 02:45 PM   #7 (permalink)
Administrator
 
DeeZire's Avatar
 
Join Date: Dec 2002
Posts: 1,913
Send a message via ICQ to DeeZire
Default

Easier String Editing

Instead of using CSF, you can have the game use an STR file instead. You should place your STR file in the Data directory, not in the Data\Language directory.

The differences between the two are;-

- STR is not language specific - it will be read from the Data directory regardless of the language your mod/the game is using, and will overwrite the resident CSF file(s)

- STR is easier to edit - its form is exactly the same as the STR files found in maps, and can be written/edited in any text editor.

Whatever route you choose, the string file is only read once and assembled into RAM at runtime - if you amend your STR file, as with CSF you will have to restart the game to have new or modified entries show up.

EDIT: file needs to be called Generals.STR (as with Generals.CSF).

One more thing, when you want to force the text onto a new line within an STR file, you use \n.
__________________
DeeZire is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-07-2004, 09:03 PM   #8 (permalink)
Administrator
 
DeeZire's Avatar
 
Join Date: Dec 2002
Posts: 1,913
Send a message via ICQ to DeeZire
Default

Quick UI Tips

To enable the different attack cursor for units that are out of your weapons' range (as in previous C&C games) simply change the MouseCursor OutRange entry in Mouse.INI so it points to SCCOutRange instead of SCCAttack.

To force Dozers and Wokers to use a mouse cursor for structure placement when building, make a new entry in Mouse.INI called MouseCursor Build and point it to your desired cursor - SCCBuild is in the game but unused.

You can use MouseCursor Defector for anything you like - its not used in the game and points to a unique animated mouse cursor.

You can make your own mouse cursor with a MouseCursor InvalidBuild entry.

Tutorial for adding the force-move/crush function;-
http://www.deezire.net/modules.php?n...ticle&artid=36

You can change the color of hotkeys that appear in the Command Bar tooltip window with the HotKeyTextColor = [R: G: B:] statement in GameData.INI.

To allow players the ability to dynamically adjust detail settings on the fly in game (in case their game starts to slow down or lag) without needing the options menu, simply un-comment the TOGGLE_LOWER_DETAILS section in CommandMap.INI and assign a key to it.
DeeZire is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-08-2004, 03:05 AM   #9 (permalink)
Senior Member
 
Join Date: May 2004
Posts: 181
Default

Quote:
Originally Posted by DeeZire
By changing the draw module in the cameo window, you can get the game to draw the 3d model of your unit rather than its cameo - handy for mech or future style mods

Dee can you post this as a tip? I still haven't figured out how to get this to work but it sounds pretty sweet.
Capt_Pickles is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 06-08-2004, 08:25 AM   #10 (permalink)
Senior Member
 
Join Date: Aug 2003
Location: UK
Posts: 704
Send a message via MSN to Mithril
Default

When I make that .str file, it overrides the old .csf and I have to rewrite all other entries. Is there any way around this?
Mithril is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools

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 Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Anyone have any mapmaking secrets? schtoogie Map Authoring 4 03-14-2005 07:45 PM
Unkown AI Stealth abilities revealed. RVMECH Generals & Zero Hour Editing 11 05-07-2003 08:51 PM
Willing To Trade? Oldfaq Generals & Zero Hour Editing 5 05-02-2003 05:18 PM


All times are GMT -4. The time now is 03:51 PM.


Design By: Miner Skinz.com
Powered by vBulletin® Version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.