Ability to change any actor property via ACS

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: Ability to change any actor property via ACS

by sirjuddington » Sat Aug 12, 2006 3:27 am

Heh ok, so it looks like I can't really change the speed then :/ Also how about allowing ACS_ExecuteWithResult to be used as a parameter of action functions (A_Explode in particular)?

by Sir_Alien » Sat Aug 12, 2006 2:50 am

Yeah, I should probably pay more attention to what's going on in a thread...

by Graf Zahl » Sat Aug 12, 2006 2:35 am

The speed property doesn't alter the actual momentum itself. For that you need ThrustThing.

by Sir_Alien » Sat Aug 12, 2006 2:24 am

I had the same problem once; IIRC, you actually need to change APROP_SPEED relative to the actor's current specified speed...

In other words, you'd need to use something like:

SetActorProperty(TID, APROP_SPEED, (GetActorProperty(TID, APROP_SPEED) * MULTIPLIER));

[EDIT]Yeah, it's on the wiki, bottom of the page.

by sirjuddington » Sat Aug 12, 2006 2:16 am

Well I've figured out a way to change the damage on the fly at least using SetActorProperty. Unfortunately changing APROP_Speed doesn't seem to work though. So I think I might change this request to add more APROP_* values to Set/GetActorProperty :P Probably the only other one I need myself is RadiusDamageFactor, but there are a few others that may be useful too.

by Zippy » Fri Aug 11, 2006 12:54 pm

Dealing with Lex and YACC was the most awful experience I've ever had in any programming course. I'm not sure I ever want to deal with anything like that again.

by Graf Zahl » Thu Aug 10, 2006 2:13 pm

I really don't know whether I should say :laff: or :? ...

by Bio Hazard » Thu Aug 10, 2006 12:11 pm

Code: Select all

biohazard@rabbit ~ $ bison -V
 bison (GNU Bison) 2.1
 Written by Robert Corbett and Richard Stallman.

 Copyright (C) 2005 Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR  PURPOSE.
biohazard@rabbit ~ $
Huh, works for me.

by Graf Zahl » Thu Aug 10, 2006 2:17 am

I'd do Doomscript myself if I knew how to work with the tools required to implement this. But somehow I can't get into Bison... :(

by sirjuddington » Thu Aug 10, 2006 2:07 am

Heh, actually I planned to do this RPG back in 2000 or so, but gave up and thought "I'll wait for doomscript" :P Looks like I'll have to wait a bit longer then ;)

by Graf Zahl » Thu Aug 10, 2006 1:55 am

Not yet. I think this is a good place to say 'Wait for Doomscript'.

Or do what you already said: Create a shitload of different projectiles.

by sirjuddington » Thu Aug 10, 2006 1:22 am

Hmm, well is there any other way to do something similar?

by Graf Zahl » Thu Aug 10, 2006 1:08 am

ACS really isn't the way to achieve this. It'd need lots and lots of coding to get everything in. Internally properties are not names but simple member variables (some not even that) so you'd have to explicitly code support for every single property.

Sorry, but that's really not worth it.

Ability to change any actor property via ACS

by sirjuddington » Wed Aug 09, 2006 11:33 pm

So I'm working on some kind of RPG system, and I have a basic fireball. I want different aspects of it to be seperately upgradable (damage, radius damage, speed, etc). Of course to do this at the moment AFAIK all that can be done is to create hundreds of subclasses of it, with each different damage/speed/radiusdamage combination, which would be a huge mess :P

So I was thinking it'd be really nice to be able to do something like this in an ACS script:

Code: Select all

ChangeActorProperty("FireBall", "Damage", 10)
Would this be possible at all? Or if not is there any other way to do something like this?

Top