Home » Tiberian Technologies / Blackhand Studios » Tiberian Technologies Forum » Changelist for scripts.dll 4.0
Changelist for scripts.dll 4.0 [message #336622] |
Sun, 22 June 2008 00:55 |
|
As you have no doubt heard, a new scripts.dll release is being made.
This will contain a bunch of new features and fixes written by the Tiberian Technologies team including code from Renegade Resurrection (and written by YRR), code by our shader and graphics expert Saberhawk and code from/written by the Black-Intel Team
Here is a list of changes already made to scripts.dll 4.0
Add newer nvidia cards to the graphics card list
Fix detection of zbias/depthbias
Change shader enable flag to a new "shader detail" slider (with 0 meaning "no shaders")
new memory manager, makes tracking down memory issues (memory leaks etc) easier (including leaks in renegade itself)
Change the name of bhs.dll to tt.dll to reflect the new name of the group.
Changes to the way d3d8.dll is loaded (its no longer called d3d8.dll) to fix issues with programs like TeamSpeakOverlay
Change to load the map mix file at map load time (allows adding new maps to the game/server without restarting)
Fix a crash that could occur on Vista/Server 2008
Fix a number of memory leaks in renegade
If you have a mouse with more than 3 buttons, you can now assign buttons 4 and 5 to any keyboard key in the same way
as you can assign buttons 1/2/3
Renamed "bhs.dll options" to "extended options"
Many bug fixes and cleanups to the code (too many for me to mention them all here)
Improvements to shaders.dll (less FPS drops, less "lag", less crashes etc)
Rewritten shader support (the old shader database editor and shader databases are going away, a new shader database editor with a new better shader database format will be added).
A number of new shaders form Saberhawk (I will let him go into details of the shaders)
This will be optional but if you want to and if you have the graphics hardware for it, you will get better looking vehicles than you get previously (and a better looking stealth effect)
advanced guard tower and obelisk script improvements to correct various bugs and issues
Some new scripts by campa.
New console command to reset shaders.dll (used for certain debugging and test purposes)
Major improvements to the screenshot code including getting rid of 99.99% of the "screenshot lag" (PNG is now the only supported screenshot format)
Support for remote screenshots for anti-cheat purposes
Cleanups to the exception handling (instead of generating a crashdump.txt, it now generates a windows Minidump which contains a lot more information about what caused the crash)
New engine call Get_Fog_Range which retrieves the current fog range
New engine call Do_Objectives_Dlg which displays a dialog similar to the existing chat history dialog but with the contents of a text file passed to the engine call. This is to be used to display e.g. objectives for a map that is different to "shoot the other guy"
New engine calls that do the same as the PLIMIT, MAXPLIMITD and PLIMITD console commands
Improvements to the shader state manager to make it faster
New engine calls and items in engine_3d.cpp
D3DCOLOR GetD3dColor(Vector3& color); // Converts a Vector3 into a D3DCOLOR
D3DCOLOR GetD3dColor(Vector4& color); // Converts a Vector4 into a D3DCOLOR
TextureClass *Create_Render_Target(int width, int height, WW3DFormat format); //Create a render target
void Set_Transform(D3DTRANSFORMSTATETYPE transform,Matrix4& m);
extern bool *FogEnable; //current fog enable value
extern bool FogCustomColor; //is current fog color custom
void ApplyZBias(unsigned int level); //set zbias
void Clear(bool clear_color,bool clear_z_stencil,Vector3& color,float z,unsigned int stencil); //clear device
New engine calls and items in engine_3dre.cpp
extern ShaderCaps* TheShaderCaps; //ShaderCaps pointer
extern FontCharsClass **Fonts; //fonts for StyleMgrClass
Replaced old THUNK and IMPLEMENT_THUNK with better ways of doing the same thing
Added clamp and wrap to engine_math.h
New engine calls and items in engine_net.cpp
void Server_Kill_Connection(int PlayerID); //Drop a player from the game by cutting off their network link
void Cleanup_After_Client(int PlayerID); //Cleanup after a player has been dropped
New engine calls and items in engine_obj2.cpp
int Get_Human_State(GameObject *obj); //Get the current state for a human object
Improve the way the stealth state (i.e. that set by Commands->Enable_Stealth) is sent over the network
to reduce network bandwidth use
Cleanups to the code for sending Set_Model and Set_Animation over the network, the code behind this now has less bugs
Made the HUD console command turn off the player and team info, the custom HUD code HUD elements and the credits/time display
Created new ini file called tt.ini. Pretty much all items from hud.ini except the custom HUD stuff and the custom dialog box color stuff is now in tt.ini.
This allows the file check anti-cheat code to check tt.ini (which contains all the sensitive stuff) and not prevent use of custom HUDs
Improvements to the custom scope code
Changes to JFW_Jetpack and JFW_Jetpack_Model to play an animation when in flying mode
Change to JFW_Escort_Poke to only apply the shield changes for a certain player type
Bug fixes to the ExpVehFac scripts
Improved the custom keyboard config dialog to better match the way the normal renegade key config works
Improved the nickname exploit fixes
New hud.ini keyword DisableVehicleFlipKill which disables vehicle death when they flip over
In hud.ini, as well as setting QuadXPos and QuadYPos, you can now set QuadXCenter and QuadYCenter. These new keywords
allow you to create a quad that is positioned a certain number of units from the center of the screen (in x or y axis) e.g. for creating a box to go over where the time
and credits are normally drawn. This (and the other changes made to the custom HUD code) should eliminate the need to produce HUDs that work at only one screen resolution.
Fixed a buffer overflow in the custom HUD code related to the size of the section variable being too small.
Changed the custom HUD radar code to make it operate more like the renegade radar code. As a result, the RadarRotate, DrawCompassLine, CompassLineColor and CompassLineWidth keywords are no longer supported.
RadarRotate is now permanently on and the CompassLine functionality is no longer supported at all.
Also, objects that are further away from you in the Z axis will now be drawn with a small blip, just like renegade.
Plus, radar markers and objectives will be drawn.
Changed the way shaders get applied to models. You can now apply shaders either via an extra "mapper argument" in the texture mapper (even for items with UV as the mapper) or you can match texture names to shader names.
ShaderCheckMaterial is no longer supported.
Dropped all support for shader plugins
Corrected a crash/bug where having a custom weapon name/image and getting into a vehicle caused problems
Corrected the credits display for the custom HUD when inside a vehicle
Corrected the display of your bullets when inside a vehicle
A fix for weapon animations for flying infantry so that it works properly
A fix for a bug with setting the soldier state when inside a vehicle
A fix for the PT chatbox so it wont scroll down when new chat is added unless you are already at the bottom of the box
Fixes for bugs that could allow someone to buy items they werent supposed to (server and client)
Removed the Toggle_Sorting console command (as it can be used to cheat and has no real purpose otherwise)
A fix so that the list boxes on the "team information" and "battlefield information" screens now have working scrollbars
Fix bug on maps with a repair bay where C4 gets stuck to the repair bay arc
Make the repair bay arc effect work correctly on maps wth a repair bay (no more arc in the middle of the level)
A better fix for making the harvester not spawn invisible if the power plant is down and a harvester flys in. This means no more ugly wheels sticking out of the cargo plane.
A fix to make the "harvester under attack" sound play correctly
Better fixes to make the harvester harvesting arms animation play
Make the location you spawn at more random
Bluehell fix
Fix so that you wont die if you are standing right next to the weapons factory construction zone on some maps and someone buys a vehicle
A fix so you cant use a PT from inside a vehicle
Fix a bug where proximity C4 can blow up if placed next to a dead enemy soldier
A fix for C4 disappearing if attached to a vehcle
Fix "obelisk walk"
A fix for a bug where sometimes it is possible to switch into sniper mode at the same time as you switch weapons.
A fix for a crash to do with calling certain console engine commands with certain strings.
A fix for some possible crashes caused by bad (or too many) network packets (the UDP fix)
A change to the loading of mix files on startup. As of now, any mix file without C&C_ on the front will be loaded as will any of the stock westwood C&C_ maps if they exist.
Add hud.ini keyword so that mods like Reborn and RA:APB can specify a new prefix instead of C&C_ to be used by the above mentioned mix file load code (does not affect the code that displays the list of valid maps in the map list)
Anti-cheat to detect damage related hacks
A fix to stop the client from using weapons they dont have
A fix to make explosions faster on the client
The Black-Intel points fix (not sure exactly how to describe this one)
Various fixes to the "weapon bag" code (i.e. the list of weapons that every vehicle and soldier has)
A fix for the bug where weapons with infinate ammo (e.g. the pistol in normal renegade) do not start loaded
A bug fix for an issue that happens if you join a server after it has just gameovered
A bug fix for an issue with the amount of starting credits you get when you join
A change to the "next weapon" and "previous weapon" code so it will skip weapons that are empty. You can still use the number keys (1 for pistol, 2 for rifle etc) to access these weapons.
This code will also not skip weapons that have a zero ammo count (e.g. a mod that has binoculars)
new script JFW_3D_Sound_Custom_2 Like JFW_3D_Sound_Custom but it uses the position of the player who sent the message to this script as the position to play the sound at.
new script JFW_Custom_Objectives_Dlg which uses the new do_objectives_dlg engine call to display an objective for the player that sent the custom to this script
new script JFW_Send_Self_Custom_On_Key Same as MDB_Send_Custom_On_Key but sends to the object with JFW_Send_Self_Custom_On_Key on it.
new script JFW_Custom_Send_Random_Custom Same as JFW_Custom_Send_Custom except it only sends the custom if a random calculated percentage is greater than a specified percentage
new script JFW_C4_Explode A script that goes on a C4 object and, if the soldier who placed the C4 is of a certain preset, it creates a certain explosion preset
new script JFW_Set_Info_Texture A script to set the "info texture" (a texture displayed as a full screen texture similar to a scope that is used to provide information to the player) for the player that sent the custom to this script
new script JFW_Clear_Info_Texture A script to clear the "info texture" for the player that sent the custom to this script
new script JFW_Set_Time_Custom Sets the game time when sent a custom
new script JFW_Set_Time_Limit_Custom Sets the time limit when sent a custom
new script JFW_C4_Sound_2 same as JFW_C4_Sound except it plays the sound when damage > 0 instead of damage >= 0
new script JFW_Empty_Vehicle_Timer> JFW_Empty_Vehicle_Timer_Registrant("JFW_Empty_Vehicle_Timer","Time:float,TimerNum:int ");
new script JFW_Heal_Zone_2 Will heal objects of a certain preset whilst they are in the zone
new script Reborn_IsDeployableTank_2 same as Reborn_IsDeployableTank but does not change the weapon settings for the object at all
Fix for JFW_Health_Regen so it wont heal objects that are dead
Fix a bug with JFW_Message_Send_Custom and JFW_Message_Send_Custom_Team so the scripts send the correct message
Correct a bug with JFW_Time_Remaining_Sounds
Make JFW_Vehicle_Lock only kick someone out if that person is the driver (corrects issues with transports)
Correct a bug with RA_Helipad_Zone where it was possible to hover up and down and refill faster than you were supposed to be able to
The old RenAlert file checking code is gone, as is the old hud.ini CRC check, to be replaced by the new file checking anti-cheat code mentioned below
In addition to this list of changes already made, the following changes are currently planned/in progress for 4.0
New file checking anti-cheat code
Further work to track down and eliminate as many memory leaks as possible
Resource downloader
A new shader database editor
Support for all the new features on linux
Fixed broken connection message on linux.
Fix auto player renaming on linux
Fix any remaining crashes or slowdowns or other issues related to people with old PCs/graphics cards
Ship the First Decade renegade EXE file as a no-cd crack to avoid copy protection issues.
Add any scripts by Jerad2142 that are done in time
Add any scripts by Danpaul88 that are done in time
Finish the Scene Shader support (i.e. bloom etc)
A new shader database, normal maps and shader files so that the new shaders are actually used in normal renegade.
Further new shaders from saberhawk (some of which are for normal renegade, some of which are for mods like APB and Reborn)
Finish the fog code
Finish the "shader level of detail" system
A change to stop objects that are 100% hidden by other objects from being drawn (something called Occlusion Culling)
A set of hooks and patches to allow objects in w3dview to have shaders applied to them (so you can preview shader settings without opening the game)
A fix to the code that handles D3DRS_ZBIAS to make it better
A change to make every object in the game world have a shader applied to it (similar to what C&C3 and other games do). And for those who say "that will make things slower", it wont, its actually going to be a speed improvement.
A fix for the "sniper scope lag" on the client
A change to prevent the issue where a player can get out of a vehicle just before its killed and deny the other team/player some of the points for the kill
Note that I do not have any ETA for when 4.0 will be released (or when it will enter beta testing) so dont ask.
Any questions about this changelog or any requests for features not on the list should be posted here if you want the TT team to see (and possibly act) on them.
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: Sat, 20 January 2024 13:51] by Moderator Report message to a moderator
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336626 is a reply to message #336622] |
Sun, 22 June 2008 01:09 |
|
TruYuri
Messages: 97 Registered: June 2008
Karma: 0
|
Recruit |
|
|
It's...it's beautiful.
EDIT: Okay, said these in the other thread, but these:
Remove the "Curved Surfaces Support" thing in the graphical options. I don't think that has EVER been able to be enabled by anyone anywhere.
Vehicles, when purchased, have their turret face at coordinate 0,0 for whatever reason. It is personally annoying, and should be considered a bug that should be fixed if it is not already.
Animations, when switching from third to first person, go out of sync with their sound. Not a biggie, but if anything can be done about it, awesome.
Apparently when you have a low framerate, the physics tend to be messy. Such can be seen with the APC in A Path Beyond, it begins to rock back and forth. Seeing as it's physics, I'm not sure if it can be fixed via scripts.dll. A confirmation on this would be great though.
[Updated on: Sun, 22 June 2008 01:16] Report message to a moderator
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336628 is a reply to message #336622] |
Sun, 22 June 2008 01:15 |
|
Based on the other topics, here is a list of the stuff people have mentioned for 4.0 that isn't already on our radar along with whether its going to be done or not:
Stuff we dont plan to fix as of this point (or that doesn't need a scripts.dll change to fix and will be done by other methods if its done):
the "new account"-button should redirect to a working page. God knows how many people never tried this game because of that error the "recruit" tag in-game is annoying to say the least
the 'news' button in the bar where u also have "my information" could redirect to rencommunity.com?
maybe a small fix so more than 5 pages per 10 seconds from outside a server are ignored
extend the buddy list to more than 20 persons
add the extended options list to the options tab so we can skip the quit button
skip intro button in the ingame menu would be nice.
In Multiplayer Practice mode(i think in SP too) when enter the pts or hit Esc, after then when u want to get ingame, u have to wait few seconds.
it would be nice if they could make it so if you like host a game, it lets you choose a game mode
ConsoleCommandRegistrant<>
Remove the "Curved Surfaces Support" thing in the graphical options
The issue with it taking longer to join the game when you access "advanced game listings"
Vehicles, when purchased, have their turret face at coordinate 0,0 for whatever reason
Animations, when switching from third to first person always go out of sync with their sound
The custom HUD is not supposed to work inside a .pkg so its not a bug.
add custom building icons feature into main game screen.
Stuff that is going to be investigated and implemented if possible:
quick match game doesn't work anymore
it is quite easy to make it so your times c4 cannot be disarmed
Hud images for weapons (top of screen) in packages and mixs don't load correctly the first time they are updated. You have to collect another weapon first, and then the new weapon has the same problem
New hud.ini keyword to let you change the color of the main weapon list weapon icons
Also, note that I do not represent Tiberian Technologies officially and do not pretend to speak for the rest of the team, this information is just based on my own thoughts.
EDIT: One thing I forgot from the changelog was that the host hook and chat hook now let you return a value to say "dont send this chat message" (usefull if you want to implement chat muting or chat commands and not have them sent to the players/team/etc)
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: Changelist for scripts.dll 4.0 [message #336631 is a reply to message #336622] |
Sun, 22 June 2008 01:24 |
|
This one "Apparently when you have a low framerate, the physics tend to be messy" I dont think we will be fixing. (we will certainly be fixing a bunch of things that could be causes of the low framerate in the first place though)
Get_Human_State returns an int which matches to one of these:
#define STATE_DEFAULT 0
#define STATE_LANDING 1
#define STATE_ANIMATION 2
#define STATE_WOUNDED 3
#define STATE_LOITER 4
#define STATE_JUMPING 5
#define STATE_DIVING 6
#define STATE_DEAD 7
#define STATE_ONLADDER 8
#define STATE_INVEHICLE 9
#define STATE_INTRANSITION 10
#define STATE_TRANSITIONCOMPLETE 11
#define STATE_DESTROYED 12
#define STATE_FLYING 13
#define STATE_ONFIRE 14
#define STATE_ONCHEMICAL 15
#define STATE_ONELECTRIC 16
#define STATE_ONCNCFIRE 17
#define STATE_ONCNCCHEMICAL 18
#define STATE_LOCKEDANIMATION 19
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, 22 June 2008 01:26] Report message to a moderator
|
|
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336641 is a reply to message #336622] |
Sun, 22 June 2008 02:09 |
|
Veyrdite
Messages: 1471 Registered: August 2006 Location: Australia, Sydney
Karma: 0
|
General (1 Star) |
|
|
A few more suggestions.
- Add an option to the JFW_Flying_Infantry script to select an animations twiddler for movement
- Advertise extra undocumented keys (EG the "Q" vehicle gunner switch and the "Shift" Vtol strafing key) and the 3rd-party keys (mine-limit, bind vehicle etc) in the multi player help (F1) image.
- Add the option for object rotation to the JFW_Vehicle_Buy_Poke script
- Add the ability for servers to disable certain aspects of TT via a configuration file on their server
- Fix the sniper-scope uncloaking bug
- Fix weapon projectiles so that they display where they are actually calculated to hit
- Stop players from deploying beacons higher than X units above the nearest buildings MCT (X changes on maps with flying buildings)
- Add engine hook HOOK_PLAYER_DRUGS
WOL: Veyrdite Previously: Dthdealer ( a long time ago )
[Updated on: Sun, 22 June 2008 02:19] Report message to a moderator
|
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336645 is a reply to message #336644] |
Sun, 22 June 2008 02:19 |
|
Veyrdite
Messages: 1471 Registered: August 2006 Location: Australia, Sydney
Karma: 0
|
General (1 Star) |
|
|
Caveman wrote on Sun, 22 June 2008 19:17 |
Dthdealer wrote on Sun, 22 June 2008 10:09 |
[*] Fix the sniper-scope uncloaking bug
|
I have NO problem staying cloaked while in scope mode with a SBH and sniper rifle.
|
Are you running resurrection? They may have fixed that already
WOL: Veyrdite Previously: Dthdealer ( a long time ago )
|
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336649 is a reply to message #336640] |
Sun, 22 June 2008 02:33 |
|
Ghostshaw
Messages: 709 Registered: September 2006
Karma: 0
|
Colonel |
|
|
CarrierII wrote on Sun, 22 June 2008 10:59 | Something really should be done about that new account button. Otherwise we'll lose players who assume the online's dead.
|
We will just update the WOL URL's and redirect to some pages of our own with the installer/patcher. Also I think we will hide/remove the Quick Match button (to prevent people from bouncing off on that).
BlackIntel Administrator
[Updated on: Sun, 22 June 2008 02:34] Report message to a moderator
|
|
|
|
|
|
|
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336676 is a reply to message #336622] |
Sun, 22 June 2008 05:21 |
|
Dthdealer, can you explain what an animation twiddler is and how you make one in leveledit/renx/whatever?
Also, "Will soldier move speed sync with server in game client" is likely no.
"Will there be a newer gameplay pending patch" is also no (there is no gameplay pending patch in scripts.dll at all and no plans for one as far as I know)
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: Changelist for scripts.dll 4.0 [message #336677 is a reply to message #336622] |
Sun, 22 June 2008 05:26 |
=HT=T-Bird
Messages: 712 Registered: June 2005
Karma: 0
|
Colonel |
|
|
Will this work properly with current BIATCH releases (1.0x/1.1RC1)?
Also, I think we (BI) need to put our heads together and figure out a few bugs...
HTT-Bird (IRC)
HTTBird (WOL)
Proud HazTeam Lieutenant.
BlackIntel Coder & Moderator.
If you have trouble running BIATCH on your FDS, have some questions about a BIATCH message or log entry, or think that BIATCH spit out a false positive, PLEASE contact the BlackIntel coding team and avoid wasting the time of others.
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336678 is a reply to message #336676] |
Sun, 22 June 2008 05:41 |
|
TruYuri
Messages: 97 Registered: June 2008
Karma: 0
|
Recruit |
|
|
jonwil wrote on Sun, 22 June 2008 07:21 | Dthdealer, can you explain what an animation twiddler is and how you make one in leveledit/renx/whatever?
|
As far as I know, it is a "randomizer" of a happening, usually with sound, that activates at a certain event. For example, you would get shot and your character would yell "ow!", and he would do this all the time unless a twiddler was there to randomly choose between "Ow!", "Ah!", "Youch!", and "That tickles!". Of course, he wants this with animation instead, and by that I think he either means he wants seperate flying animations to be chosen by random, or he wants random events such as a character scratching his head or stretching his arms to be activated when a user is idle ingame, as the current characters do. I think he just wants seperate flying animations though.
Of course, that all is only true if that's what a twiddler is. I'm not exactly sure.
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336687 is a reply to message #336622] |
Sun, 22 June 2008 06:50 |
|
IronWarrior
Messages: 2460 Registered: November 2004 Location: England UK
Karma: 0
|
General (2 Stars) |
|
|
What about a server information menu`?
If you click on a server, you can get a pop up box with information about it, introduction to the server, rules, players, official website, irc address, ts, etc, shit like that?
Also, what about including a inbuilt voip program?
|
|
|
Re: Changelist for scripts.dll 4.0 [message #336692 is a reply to message #336622] |
Sun, 22 June 2008 07:26 |
|
Ghostshaw
Messages: 709 Registered: September 2006
Karma: 0
|
Colonel |
|
|
If you click on a server, you can get a pop up box with information about it, introduction to the server, rules, players, official website, irc address, ts, etc, shit like that? <-- would be tricky as XWIS/WOL has no support for such a thing
And buildin voip is all good and well but we would need some sort of open source voip library and those are generally shit.
BlackIntel Administrator
|
|
|
|
Goto Forum:
Current Time: Mon Nov 04 23:56:36 MST 2024
Total time taken to generate the page: 0.01659 seconds
|