New scripts features in scripts 4.2 [message #489250] |
Thu, 11 September 2014 04:53 |
|
Here is a list of all the interesting mod-usable features currently in scripts 4.2 that are not in 4.1. I make no promises that things wont change between now and release if bugs appear or the like but this is where things currently stand.
New function call on vehicle objects to check if any of the wheels of a vehicle are on a given surface type.
New collision type that collides only with DEFAULT, SOLDIER and SOLDIER_GHOST (not sure what its useful for but its there
New GDIPurchaseReportID and NodPurchaseReportID settings on vehicles in LE that (if set) will be displayed when the vehicle is purchased by a player of the given team. (the matching sound will be played too, it uses the same code path as EVA announcements like "nuclear missile launched" or "building destroyed")
New CanRepair flag on vehicles in LE that if disabled will prevent repair bay building objects and various repairing scripts from repairing that vehicle.
New EntryHelpMessage and EntryHelpMessageColor settings on vehicles in LE that if set will cause the given message to be displayed in the given color. It uses the same "display text in the center of the screen" logic as you see in single player for various things.
New ApplySurfaceEffectDamage flag on vehicle in LE. Enable this and it will apply surface effect damage to the vehicle based on which surface types its wheels are touching. (what it does is to loop through all the wheels and apply surface effect damage for the first wheel it finds where the wheel is touching a surface that has surface effect damage, i.e. if the wheels are touching two different surfaces with different surface effect damage settings, which one gets applied is undefined)
New CanRefill on soldiers in LE, turn this off to make it so that the given soldier type cant refill. Only applies for the sidebar, not the normal PTs.
Per-team sound support for the sidebar sounds (i.e. different sounds for GDI and Nod)
New engine calls Get_Clouds, Get_Lightning, Get_Wind, Get_Rain, Get_Snow and Get_Ash that do just what they say (return the value as set by the Set_x commands or by settings in LE or whatever)
Make the NoPowerCostMultiplier flag (determines the cost multiplier when buying stuff after power is down) and BuildTimeDelay (determines the build time delay when buying stuff after power is down) settable per-map in the per-map tt.ini file
New entry in server.ini DisableLogs that if set to true will cause all disk logs not to be made (intended if you are using something that connects to SSGM for logging and dont need the normal disk logs made anymore)
Building revival support, there are console commands for it or you can call the new On_Revived function on any building controller object to revive it. Building revival undoes 100% of the things that building destruction does including bringing the obelisk and AGT scripts back to life.
Set_Is_Rendered now works for things other than vehicles (assuming both server and client have a recent enough scripts build that is)
Improved the way naval factory objects check for things blocking the spawn point so they work more like vehicle factory objects.
Removed code to generate sysinfo.txt (it was obsolete and useless e.g. it didn't properly identify any CPU or GPU made in the last decade or so)
Made construction yard building controllers repair any physical object with an encyclopedia type of "building" (e.g. simple objects). Previously it would only repair vehicles with an encyclopedia type of "building".
New settings in LE for power offline strings so that GDI and Nod can have different strings (i.e. string for GDI when GDI power goes offline, string for Nod with GDI power goes offline, string for GDI when Nod power goes offline and string for Nod when Nod power goes offline)
Fix a bug present since stock where a CollisionMode of type "KILL" wouldn't work.
Make things flying in for a helipad building controller uncollideable until it lands and becomes enterable (this prevents stuff crashing into it as well as stuff shooting at an incoming unit when the unit cant fight back)
This list doesn't cover bug fixes we have made (like the fix so that if you change the weapon or model of a vehicle, the muzzle flash is properly reset and doesn't screw up)
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
Re: New scripts features in scripts 4.2 [message #489251 is a reply to message #489250] |
Thu, 11 September 2014 05:01 |
|
Oh yeah one more feature I am going to add is a flag on vehicles that says "dont play surface sounds for this vehicle" (i.e. tank tread sounds etc). Its intended for vehicles that dont actually use wheels/treads (such as hover vehicles or walkers/mechs) and therefore shouldn't have surface sounds played.
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
|
|
|
|
|
|
|
|
Re: New scripts features in scripts 4.2 [message #490505 is a reply to message #489250] |
Sun, 15 February 2015 06:16 |
|
Some more changes/new features people may want to know about (all of which can be checked out via the scripts build I just posted):
New DisableSurfaceSounds flag on vehicles in LE that if set switches off track/wheel sounds (intended for units like walkers or hover vehicles). Does not affect track/wheel emitters.
New TargetingRange on ammo in LE that lets you have a different targeting range than the actual weapon range. If the targeting range is left at the default of -1, it will use the weapon range as the targeting range (like it does in stock etc)
New engine call Update_Network_Object_Player which updates a network object for a specific player (it exists for the SSGM Spectate plugin and replaces a hack we were using previously involving Send_Object_Update)
New engine call Update_Game_Options which lets you change things in cGameData/The_Game (stuff like radar mode etc) and force a network send for those changes so all currently-connected clients get the new value
New engine calls GetTTVersion and GetTTRevision that do exactly what they say, they get the version and revision from bandtest.dll.
New IgnoreForTracking flag on objects in LE that if set causes the object to be totally ignored by the tracking/homing code in the weapon logic.
New WinScreenGDIColor and WinScreenNodColor entries in hud.ini (that work just like the other color entries in that file) that let you change the colors used for the win text on the multiplayer win screen
Custom load-screen support (details of which can be found in https://secure.w3dhub.com/forum/index.php?showtopic=414488 )
Per-map sky color overrides (details of which can be found in https://secure.w3dhub.com/forum/index.php?showtopic=414506 )
New engine call Set_HUD_Help_Text_Player which displays something for the given player using the HUD help text (the text in the middle of the screen in single player)
EDIT: Turns out those tutorials aren't ready for prime time yet, links wont work for now
Jonathan Wilson aka Jonwil
Creator and Lead Coder of the Custom scripts.dll
Renegade Engine Guru
Creator and Lead Coder of TT.DLL
Official member of Tiberian Technologies
[Updated on: Sun, 15 February 2015 15:08] Report message to a moderator
|
|
|
|
|
Re: New scripts features in scripts 4.2 [message #490509 is a reply to message #489250] |
Mon, 16 February 2015 12:03 |
dblaney1
Messages: 358 Registered: March 2014 Location: United States
Karma: 0
|
Commander |
|
|
Only a few of them should definitely be added back like z_capturable_object, z_capturable_tibsilo, z_capturable_helipad, etc. I actually wrote clone scripts for these that are much cleaner.
The rest of the duplicate scripts aren't necessary and I am not a fan of making exact duplicates of scripts. I always try to make use of existing scripts before writing my own.
|
|
|
|
|
|
Re: New scripts features in scripts 4.2 [message #490515 is a reply to message #489250] |
Tue, 17 February 2015 10:09 |
|
danpaul88
Messages: 5795 Registered: June 2004 Location: England
Karma: 0
|
General (5 Stars) |
|
|
My issue was that an awful lot of the scripts were copy-pastes of each other with one string changed in the code... which not only duplicated functionality that already existed in other scripts, but could easily have had a parameter input rather than duplicating the code tens of times.
There might have been the odd useful script here and there but they were far outweighed by the driftwood.
[Updated on: Tue, 17 February 2015 10:10] Report message to a moderator
|
|
|
Re: New scripts features in scripts 4.2 [message #490516 is a reply to message #490515] |
Tue, 17 February 2015 10:46 |
|
Jerad2142
Messages: 3813 Registered: July 2006 Location: USA
Karma: 6
|
General (3 Stars) |
|
|
danpaul88 wrote on Tue, 17 February 2015 10:09 | My issue was that an awful lot of the scripts were copy-pastes of each other with one string changed in the code... which not only duplicated functionality that already existed in other scripts, but could easily have had a parameter input rather than duplicating the code tens of times.
There might have been the odd useful script here and there but they were far outweighed by the driftwood.
|
Too many copy paste scripts to find the useful ones at that point.
Visit Jerad's deer sweat shop
|
|
|