Jump to content
  • Advertisement
Sign in to follow this  
skillfreak

unrealscript / server-side driven effects

This topic is 4744 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

The following taken from Tim's UnrealScript writeup: Spawning and destroying actors are fairly expensive operations on the server side, and are even more expensive in network games, because spawns and destroys take up network bandwidth. Use them reasonably, and regard actors as "heavy weight" objects. For example, do not try to create a particle system by spawning 100 unique actors and sending them off on different trajectories using the physics code. That will be sloooow. My question is: How are custom particle effects created in Unreal? How then would you create particle effects that can be bandwidth efficient? This is not an Unreal only question. In many games, Half-Life for example, particles can be created and dance around as part of a server-side mod. How is this achieved with Half-Life? and with Unreal? How are particles handled efficiently from both a network and scripting standpoint? Where are the similarities between how Half-Life handles server side scripting vs. Unreal? Cross posting is tempting. =) (Network) Thanks, Andy

Share this post


Link to post
Share on other sites
Advertisement
Most particles in half-life are either single particles (in which case that particle is likely a beam entity) or done via a core engine message that spawns particles in a certain shape (such as the cone of a bullet sparking when it hits a wall) so it only takes a single network message.

In unreal, the only way to make a particle system is to use a predefined class that has TONS of parameters such that you can make most things you would want with it, but definitely not everything. You just have to make do, though, unless you want to shell out for an engine license =-P

[Edited by - Extrarius on May 24, 2005 1:48:06 AM]

Share this post


Link to post
Share on other sites
So server-side mods can provide only minor effect differences. Unreal has methods of creating custom effects with loads of adjustable parameters, but in all cases, these scripts become part of the client-side mod download - then just are parsed and ran locally. The server-side messages for particles effects then reduces to the initial scheme, giving simple 'CREATE EFFECT HERE' and 'KILL EFFECT' style messages - as an example.

Have I got this correct? Any exceptions worth mentioning?
Thanks for the input. ^sf.

Share this post


Link to post
Share on other sites
skillfreak: You basically have the right idea, but it doesn't have to be entirely client-side. For example, say you have 2 weapons that shoot the same projectile but different colors, and you want the explosion color to match the projectile color. One way to do it would be to make 2 particle system types that are exactly the same except for color. Another way would be to have one particle system class and on the server dynamically alter its color property depending on what kind of projectile it was. It will take more network traffic because the server has to say to create the object and then to change its color instead of just sending the create command.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!