disturbingly differing dynamic displacement damage system of differentiatable doom

  • Two Factor Authentication is now available on BeyondUnreal Forums. To configure it, visit your Profile and look for the "Two Step Verification" option on the left side. We can send codes via email (may be slower) or you can set up any TOTP Authenticator app on your phone (Authy, Google Authenticator, etc) to deliver codes. It is highly recommended that you configure this to keep your account safe.

Vahlemon

RRROOOOAAAARRR!!!!
Jul 17, 2004
80
0
0
36
Eh, would be willing to make the effort too, but...

Got absolutely no experience in nearly anything related to mods/mutties and stuff so.... unless someone learns me ;P
 

yurch

Swinging the clue-by-four
May 21, 2001
5,781
0
0
USA, Maryland.
Visit site
Tweaking/adding cylinders (states?) is all I could really ask for. The rest isn't worth messing with. Don't feel pressured to do anything, it's very possible that there is something wrong with the system which might be making all of this a waste of time. :hmm:
Unfortunately, there's no assurances.

Code is attached. (although for further reference, ued allows exporting of .ucc files)

BSProj.uc is the main concern. You'll note a series of if statements, plus somewhere around 7-14 function calls for each section. (note it's done seperately for bots)
Any additions should also be made to insanityscope.uc, which was added as an afterthought, but allows you to visualize shape centerpoints for easy spotting of errors.

The functions all look like this:
bHitCylinder( Other, HitLocation, 8, 4.000, 0, 20, 14, rot( -3072, 0, 0 ), "lowertorso" )

The vars are: (after the mandatory target actor and hitlocation)
float cylSize, float cylOffset, int tgtRot,
float height, float Zpos, rotator cylRot, string bodyPart

although the shapes are no longer cylinders (and the system has evolved in other ways as well), they still follow the same definition.

cylSize is the radius. Since the shapes have spheres as thier endpoints, this means a cylinder with a large radius will extend much further past it's height.

tgtRot is a one dimension rotation; it is used with cylOffset to define the shape's center point in the circular 2d plane in a sort of 'polar' coordinate system.

height is the height of the target shape in question. It does not account for the radius and therefore is the length of the cylinder part of the shape. It is not to be confused with the height of UT 'hit' actors, which apparently is only half of the cylinder.

Zpos is the height of the shape relative to the playermodel. This starts at the midpoint of the playermodel's normal collision zone. Used with tgtRot and cylOffset to create the final 3d position of the shape reletive to the player.

Cylrot is the rotation of the shape. Lifted straight out of UED if I remember correctly.

Note that UT rotations go from 0-65535 in integers, so it is nessesary to convert from radians or degrees.
Most of this stuff can be lifted from UED, but part has to be converted from x,y,z postitons to the 'polar' style. We posted several maps that we used for reference earlier in the thread if you remember. I can show people how to get these numbers if required.

Believe it or not, this was far easier than previous systems.
 

Attachments

  • bs4source.zip
    154.6 KB · Views: 15

geogob

Koohii o nomimasu ka?
Incredible work yurch. this is far easier than I thought, Indeed.

I'd be willing to pick that up if NT is still willing to give me a hand with the testing. I've looked at your code and it's all pretty clear. I also that that it would be "fairly" easy to add vital organs like that heart for insta kills like the head. I could work with some RL military to identify some of the "sweet" spots.

Anyway, yurch, if I do take that over, I hope you'll still be available for questions. I've already have a few...

-What's the limit of cylinder per position/model you can have?
-For the position bool test, where you check for prone, crouch, leaning, etc. could it be possible to add a condition for looking up, down or straing? (e.g. what's the variable/class to check?)


oh and lmao at this:
INFc_SMaleBase(Other).ClientMessage("You have narrowly avoided shooting yourself. ", 'Pickup');
heheh :lol:


In all it's a very nice system you got there... seems very clean to me. So you really got lazy on that one lol.
 

yurch

Swinging the clue-by-four
May 21, 2001
5,781
0
0
USA, Maryland.
Visit site
No feasable limit to cyl checks per position. Performance is the only concern, and we haven't had any problems with slightly larger numbers of cyls with previous systems. The checks only happen at isolated times, so go nuts really.

To be honest I don't know where the lookdown/lookup anim is dependant on at the moment.

We wanted to do a spine and chest cavity... but it's not like the current version is accepted by players as it stands. The real work is getting all the damn cylinders straight.
 

ant75

aaaaaaaaaaaaaaaaa
Jan 11, 2001
1,050
0
36
Paris
Before adding any fancy enhancement like vital organs, i really hope you guys can crack the prone bugs, which are atm the main weakness of the mutie. Oh, and it'd be cool if you could give a better self-explanatory name to it, something like hitdetections.
Anyway best of luck.
 
Last edited:

geogob

Koohii o nomimasu ka?
ant75 said:
Before adding any fancy enhancement like vital organs, i really hope you guys can crack the prone bugs, which are atm the main weakness of the mutie. Oh, and it'd be cool if you could give a better self-explanatory name to it, something like hitdetections.
Anyway best of luck.

Of course... well get that all cleared up and after I'll do some fancy enhancements.

@ yurch, that ok for the up/down looking. Beppo, perhaps you could help me on that one. It's on of the major problem i've obeserved with BS4. If I could add a check for up/down looking that would solve many problems.

NT, that's great. I'll setup a new installation of INF/UT (or rather I'll make a copy of the 3 Gb one I already have) for developpement purposes. I'll start hunting down the bugs we have already identified. I'm also going to put up my CVS server again for this, so if there is a problem we can rollback to any previous modification, and that while keeping the same file names.

I'm quite happy with that because this is the kind of project I always wanted to do for INF... and it's a good starting one too.
 
Last edited:

geogob

Koohii o nomimasu ka?
EDIT: nm... my cvs is fucking up binary data... grr :hmm:

yurch, I'm getting compiling errors with the textures. What do you make of this?

Code:
[...]
--------------------bulletsounds4--------------------
Analyzing...
Parsing itemTracerBlue
Parsing itemTracerCounter
Parsing itemTracerCounter5
Parsing itemTracerCounter7
Parsing itemTracerGreen
Parsing itemTracerPurple
Parsing itemTracerRed
Parsing insanityScope
Parsing BSNotify
Bad image format for texture import
Can't find file 'TEXTURES\Tracer9mmGreen.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(3) : ExecWarning
, Import texture Tracer9mmGreen from TEXTURES\Tracer9mmGreen.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\Tracer9mmPurple.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(4) : ExecWarning
, Import texture Tracer9mmPurple from TEXTURES\Tracer9mmPurple.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\Tracer9mmRed.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(5) : ExecWarning
, Import texture Tracer9mmRed from TEXTURES\Tracer9mmRed.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\Tracer9mmBlue.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(6) : ExecWarning
, Import texture Tracer9mmBlue from TEXTURES\Tracer9mmBlue.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\fglow_a00purple.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(9) : ExecWarning
, Import texture TrailPurple from TEXTURES\fglow_a00purple.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\fglow_a00green.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(10) : ExecWarnin
g, Import texture TrailGreen from TEXTURES\fglow_a00green.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\fglow_a00red.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(11) : ExecWarnin
g, Import texture TrailRed from TEXTURES\fglow_a00red.PCX failed
Bad image format for texture import
Can't find file 'TEXTURES\fglow_a00blue.PCX' for import
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(12) : ExecWarnin
g, Import texture TrailBlue from TEXTURES\fglow_a00blue.PCX failed
Parsing bulletsounds4
Parsing InfilWeapons
Parsing inventoryTracerBlue
Parsing inventoryTracerCounter3
Parsing inventoryTracerCounter5
Parsing inventoryTracerCounter7
Parsing inventoryTracerGreen
Parsing inventoryTracerPurple
Parsing inventoryTracerRed
Parsing BSProj
Parsing B****Effect
Parsing blueTrail
Parsing greenTrail
Parsing purpleTrail
Parsing redTrail
Parsing yellowTrail
Parsing pawnObserver
Compiling itemTracerBlue
Compiling itemTracerCounter
Compiling itemTracerCounter5
Compiling itemTracerCounter7
Compiling itemTracerGreen
Compiling itemTracerPurple
Compiling itemTracerRed
Compiling insanityScope
Compiling BSNotify
D:\Games\UnrealTorunament_dev\bulletsounds4\Classes\BSNotify.uc(142) : Error, Ca
n't find Texture 'Tracer9mmBlue'
Failed due to errors.

History: CompileError <- TryCompile <- FScriptCompiler::CompileScript <- (Class
bulletsounds4.BSNotify, Pass 1, Line 142) <- CompileScripts <- CompileScripts <-
 CompileScripts <- CompileScripts <- DoScripts <- UEditorEngine::MakeScripts <-
UMakeCommandlet::Main

Exiting due to error

D:\Games\UnrealTorunament_dev\System>
 
Last edited:

geogob

Koohii o nomimasu ka?
DaRealFunkyShyte said:
check in with -kb

You mean for the binary files? Anyways, I removed them from the CVS. SInce I don't have to modify the textures, this is not necessary.

Blitzschlag said:
A quistion whats a CVS?

CVS is a revision management system. Each modification you do to the code is archived so you can rollback to any version (e.g. if you screw up or if you get into a major bug).

It is also used to manage modifications when more than one person works on the same code (so that people don't write over other's work).
 

geogob

Koohii o nomimasu ka?
It's a very good tool for any projects. I use it for progammation and redaction (which is even easier for me since I mainly use LaTeX). Never used it for binary projects though.

On windows, I use CVSNT (www.cvsnt.org) which is very easy to setup. Of course, it uses command line interface, so you might want to get "TortoiseCVS", a nifty tool that incorporates CVS functions into windows via the contextual menues. But I recommand learning the command line interface first.