Topic for enhancements on RF i made

Programming Reality Factory and Genesis3D.
Post Reply
User avatar
wackedoutbiker
Posts: 189
Joined: Tue Jul 19, 2005 9:11 pm

Post by wackedoutbiker » Thu May 10, 2007 12:19 am

Do you know what Max Payne, Enter the Matrix (easily its best feature apart from the 1,000+ kung fu moves), and F.E.A.R. use?

Guess it doesn't matter, all you gotta do is slow down all of the sounds to 20% or whatever your game speed is. Audacity and other sound tools make it a snap.
More atrocities are committed in the name of that which is holy and righteous than that which is wicked and evil

User avatar
psYco
Posts: 782
Joined: Wed Mar 15, 2006 10:55 am
Location: England

Post by psYco » Thu May 10, 2007 12:25 am

yeah it wouldnt be too hard to slow the sounds down, and no Im afraid I dont know what EtM or MP use, BUT i dont think we will be able to achieve the same affects as F.E.A.R, cause firstly the sound in that game flow in and out of slomo speed which means its built into the engine, and also they have a WHOLE bunch of snazzy slomo affects like lighting being all weird and bullet tracks in the air (which MIGHT be possible in RF with the slomo thing and some scripting and affects that only come into play with slomo same way u'd make the sounds work) but would still be very hard... oh and yeah F.E.A.R is teh shizz and like i LOVE MONOLITH (ppl who maked fear and the amazing blood games!) :P

User avatar
paradoxnj
RF2 Dev Team
Posts: 1328
Joined: Wed Mar 01, 2006 7:37 pm
Location: Brick, NJ
Contact:

Post by paradoxnj » Thu May 10, 2007 12:36 am

Changing the frequency is the easiest way to slow down a sound.

Jay
RF Dev Team
Posts: 1232
Joined: Fri Jul 08, 2005 1:56 pm
Location: Germany

Post by Jay » Thu May 10, 2007 8:29 pm

some updates about the pathfinding system:

I wrote the pathfinding system so that it computes all paths from all pathpoints to all pathpoints at game start. This way i ensure minimum speed impact during the game. Then during the game, it just picks the right path and it's finished then.

The maximum amount of scriptpoints that can be pathpoints is 512 (if you are insane enough to put that many into your level). That's enough i think. It doesn't matter how many scriptpoints are actually used from that 512, it will all have a minimum (almost none) of speed impact during the game. It might take forever to load, but once it's loaded, nothing can stop it.


Also, i added SetWEapon() and RemoveWeapon() for low level too.

The script command with wich you will use the pathfinding are these:

CreatePath(...) - Creates a path from given ScriptPoints. It doesn't matter if these are also pathpoints or if they are linked to each other. It just looks for the names of the ScriptPoint entities.
AddPathPoint(szEntityName) - adds the ScriptPoint szEntityName to the current path. Again, it doesn't matter if it is a pathpoint or not.
FindPath(x,y,z) - Finds a path to world coordinate (x,y,z) using the ScriptPoints that were defined as pathpoints in the editor.
NextPathPoint() - same as NextPoint() but uses the current path set by FindPath() for getting the next point.
PreviousPathPoint() - same as NextPathPoint(), but gets the previous point in the path.

all of those are available through low level. FindPath(), NextPathPoint(), and PreviousPathPoint() are accessible through high level, too. This is because MoveToPoint(...) is also HighLevel and so it will be much more usefull if you use the MoveToPoint() command with the pathpoint commands.

Sadly i have not yet been able to solve the problem which lead you into dead ends.
Everyone can see the difficult, but only the wise can see the simple.
-----

User avatar
wackedoutbiker
Posts: 189
Joined: Tue Jul 19, 2005 9:11 pm

Post by wackedoutbiker » Thu May 10, 2007 9:23 pm

It's looking good, Jay!

A couple ideas for the future: physics, and Hardware T&L would certainly put us on the same level as most other 3d engines. Warhammer 40,000 Dawn of War may be 10 times more complicated at the moment but it runs smoother than my game.

Just saying.
More atrocities are committed in the name of that which is holy and righteous than that which is wicked and evil

User avatar
Spyrewolf
Posts: 450
Joined: Tue Jul 05, 2005 4:53 am
Location: Wellington::New Zealand

Post by Spyrewolf » Thu May 10, 2007 11:13 pm

Sweet and while your at it can you put the fabled a make game button too that would be super sweet :P (just kidding,)
i too would like to see some of those thing as well, but they may be a bit hard to just put in there, quest said it should be done near the end of the year :o that's a big undertaking :)

nice enhancements jay, you're really contributing alot, of new usefull commands, can't wait to see what else you have cooked up, are you adding these to the code base?

Jay
RF Dev Team
Posts: 1232
Joined: Fri Jul 08, 2005 1:56 pm
Location: Germany

Post by Jay » Fri May 11, 2007 5:49 pm

Spyrewolf wrote:Sweet and while your at it can you put the fabled a make game button too that would be super sweet :P (just kidding,)
i too would like to see some of those thing as well, but they may be a bit hard to just put in there, quest said it should be done near the end of the year :o that's a big undertaking :)
And it really is. Changing the rendering to T&L is almost like rewriting the whole rendering pipeline.

nice enhancements jay, you're really contributing alot, of new usefull commands, can't wait to see what else you have cooked up, are you adding these to the code base?
Quest decided he would make the official releases and also the official source code. However, with every release i make, i always add the source code also, which can be downloaded seperately.
Everyone can see the difficult, but only the wise can see the simple.
-----

shadow
Posts: 81
Joined: Mon Jul 25, 2005 5:37 am

Post by shadow » Fri May 11, 2007 7:44 pm

Your pathpoint system looks very awesome Jay.

Do you have a demo for using the pathpoints?
It would be cool to see it in action.

User avatar
zany_001
Posts: 1047
Joined: Fri Mar 02, 2007 8:36 am
Location: Aotearoa

Post by zany_001 » Fri May 11, 2007 8:29 pm

well,someone was wanting the render pipeline redone.(hint) :D
Once I was sad, and I stopped being sad and was awesome instead.
True story.

User avatar
wackedoutbiker
Posts: 189
Joined: Tue Jul 19, 2005 9:11 pm

Post by wackedoutbiker » Fri May 11, 2007 9:30 pm

You can't forget network gaming either but that one isn't particularly important to me right now. Maybe as a bonus.

However, the single player crowd will always be there.
More atrocities are committed in the name of that which is holy and righteous than that which is wicked and evil

User avatar
Juutis
Posts: 1511
Joined: Thu Jan 12, 2006 12:46 pm
Location: Finland

Post by Juutis » Sat May 12, 2007 10:36 am

Jay, marvellous work!!! :D

I can't wait to get to play around with these new things! The pathfinding sounds fantastic, it's just what RF needs to make the NPCs even a bit more intelligent. I also think I'm gonna love the timescale feature.
Pain is only psychological.

User avatar
darksmaster923
Posts: 1857
Joined: Wed Jan 03, 2007 10:32 pm
Location: Huntington Beach, California, USA
Contact:

Post by darksmaster923 » Sat May 12, 2007 8:39 pm

wackedoutbiker wrote:You can't forget network gaming either but that one isn't particularly important to me right now. Maybe as a bonus.

However, the single player crowd will always be there.
multiplayer is today. singleplayer lasts forever.
Herp derp.

User avatar
fps
Posts: 504
Joined: Mon Sep 26, 2005 9:54 pm
Location: in a magical land devoid of hope, happiness, and sanity.

Post by fps » Sun May 13, 2007 9:29 pm

i think it would be a worth while investment of time to add scripted functionality fo the sound system in RF.
just simple stuff like reverb, echo, pitch, volume, speed, and whatever effect it is that makes it sound like you are under water.
it would make sence to be able to jump in the water and, with that under water command you already added, just say SetAllSoundEffect(underwater) or somthing like that. it would be cool in my opinion.

also how do we get these new script comands of yours. im dying to test them :) .

thanks,
fps

User avatar
wackedoutbiker
Posts: 189
Joined: Tue Jul 19, 2005 9:11 pm

Post by wackedoutbiker » Tue May 15, 2007 12:40 am

It doesn't matter, it will all be worth waiting for.

As for now guys, work on the artwork and music and stuff if you're waiting for the next engine. If you don't get started before the new engine comes out, there's gonna be something else you want and you'll wait for that too. So don't put anything off.
More atrocities are committed in the name of that which is holy and righteous than that which is wicked and evil

Jay
RF Dev Team
Posts: 1232
Joined: Fri Jul 08, 2005 1:56 pm
Location: Germany

Post by Jay » Tue May 15, 2007 9:15 pm

Ok i think i have the pathfinding working right now (in a right way). So that it won't lead you into dead ends and also not give you paths that go like a circle. However i am unsure how fast it is. The loading time could increase really much if you are using complex nets of pathpoints. It's still worth it, i think.
Well we will see.

About all those other thinghs, like T&L and networking, i may have to speak to the poeple which are already developing them first. I don't like the idea of either them/me wasting their/my work just because the other was first. However, i would set T&L in front of multiplayer, just because the overall benefits will be greater.
But the problem is, i don't know enough about the genesis3d core or about network programming to start those projects or do them on my own. I know a good deal about general programming, though, and RFs system for doing thinghs is pretty easy once you understand it. I have to admit i better let QoD do the hardware T&L stuff, because then we all know it is done well when finished. I strongly belive that (one day) he will finish it, it's just a matter of time....

And i can second that, @wackedoutbiker, you really should back up good models and currently just use the LODs of them. And then when harware T&L is out you can switch to the good ones and don't have to start all over again because you think that now you can make it better and then are unsatisfied with the results you get, because you think it could be so much better.

EDIT:

Current additions:
implemented SetAttribute(char* szAttributeName, int value, char* szEntityName);
and GetAttribute(char* szAttributeName, char* szEntityName);

for the SkyDome run script. This way the pawns and entities can know the current daytime (for example) and you could script cool day/night cycles with torches burning at night and poeple going around only at the day. Also it would be possible to make smoke coming out of the chimneys of the houses at evening.

EDIT2:

Currently i am working on:

DPSAABBBox - Thats short for DamagePerSecondBoundingBox - It creates a Bounding box in front of the pawn that does well, damage per second. It does damage every xxx seconds, this way you can make it do damage every 3 seconds or 10 times per second. It will however always do the specified damage per second. May be usefull for thinghs like a flamethrower or a firebreath-spell.
Everyone can see the difficult, but only the wise can see the simple.
-----

Post Reply