Jump to content
The Dark Mod Forums

Elevator not moving...


AluminumHaste

Recommended Posts

Sheesh, I know my way around analyzing C++ code and syntax, but I've totally forgotten how to write.

 

Besides, I'm far more familiar at the Source Engine. I've mapped in HL/HL2 and built simple stupid scripts (Jokes and New-Player-help for an HL2:DM game server), but D3 still seems foreign to me. If you need a playtester/bugfinder in the future I'd be honored.

Edited by Mortem Desino

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

You never know, you might find writing C++ comes back quickly, plus there is a lot of stuff in the SDK already to use as an example when you forget how to do something (which I do all the time). You seem to enjoy thinking out algorithms and stuff, but it's up to you.

Link to comment
Share on other sites

I for one didn't have any C or C++ knowledge back when I joined the mod.

...Said the lead coder! :laugh:

Come on, Didn't you have at least SOME experience in Doom 3 in any way? I didn't care about the engine until I discovered the mod about a year ago.

 

You seem strapped for programmers. If you'll let me take a look at your real code (instead of just the *.defs) I'll see if I can be of any assistance.

 

Edit: I actually might be interested in starting slow: like using a moveable's velocity to determine whether or not it should make a collision sound.

Edited by Mortem Desino

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

Come on, Didn't you have at least SOME experience in Doom 3 in any way? I didn't care about the engine until I discovered the mod about a year ago.

No, I didn't have any modding experience nor knowledge of Doom 3. I never even played the Doom 3 game for starters, nor did I play any of Doom, Doom 2 or Quake. I don't care about those games, I just want to create things, for my personal challenge and fun. After years of modding in your freetime and not being paid for doing it, there's no such thing as recognition or gratefulness, it really only boils down to what means fun to you and only you. Otherwise you won't stand through it, in my opinion, especially with a crowd like TTLG in your back.

 

I indeed was programming more than fifteen years ago in Pascal and Assembly, but actually that's not necessary - you just need to use your brains and try to be focused.

Link to comment
Share on other sites

Ishtvan's right, C++ does come back quickly. I'm using an ultimate beginner's guide, which is painfully slow, but I'm getting bits and pieces of info and rules that I remember breaking 5+ years ago: like the especially evil void main() instead of int main().

 

I'm excited to help, but what's my next step? Do I have to go bother New Horizons for access, FTP, Blah blah blah?

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

Yeah, we can set you up as a contributor. Do you know what area of the code you'd be most interested in working on? We have issues aplenty in physics, we still need to handle the case where the player carries an object and either the shadow hides them by reducing their lightgem value (so remove it from the lightgem render shot) or it blocks line of sight to an AI by being opaque (not sure what to do about that one yet). There's other stuff to work on too if you're not interested in those things.

Link to comment
Share on other sites

Starting slow: that Prop + Line of Sight + Shadow physics exploit should be a OK start for me.

 

Tels and AluminumHaste both had simple, straightforeward ideas to solve it. Make carried moveables not block AI vis and remove it from the lightgem render shot. OR modify the trace that hits the object in how the AI reacts.

 

"waving an object around the corner in an AI's sight while you yourself are blocked" is an instance that the trace might be able to fix (if I can familiarize myself with the code first)

Edited by Mortem Desino

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

Tels and AluminumHaste both had simple, straightforeward ideas to solve it. Make carried moveables not block AI vis and remove it from the lightgem render shot. OR modify the trace that hits the object in how the AI reacts.

Yeah, that sounds reasonable. To make carried moveables not block vis will be easy, there's a line in our object manipulation ("Grabber") code where it sets contents flags on the object that's grabbed, and you basically just have to add "| ~ CONTENTS_OPAQUE" to the contents flags already being set on the object when it's grabbed, to make it not block AI vis.

 

Removing it from the lightgem rendershot will probably take more time. I think it involves setting a render ID on the entity so that it'll appear in one shot but not another. We already do it for the player model though, so you may be able to use that as an example to follow. Sparhawk knows more about this.

 

In general, it's pretty easy to change things the mod team has written from scratch. Whenever you have to wade into the D3 SDK (like to figure out how to make something invisible in one rendershot), things tend to take longer because it's not that well documented, and it's currently not all open source so you can run up against a limitation of the closed-source engine.

 

The AI vision trace hitting the thing carried might be tricky, I would leave attempting that for last.

Link to comment
Share on other sites

Oh yeah, another potential area to work on came up in another thread:

Sounds that moveables make when they smack into things. There's already a system in place, but it has some issues.

 

For one, I believe the minimum velocity to make a sound and the maximum velocity at which the volume clamps is the same on all objects? This should probably be read in from spawnArgs (variables you set in the editor or in def files) on each entity. Then, we need to link these volume offsets in with our AI sound propagation system (right now moveable collision sounds aren't propagated as suspicious sounds to AI because the collision sounds are too buggy and would just be frustrating).

 

This is more of a tweaking task than a programming task, but we need to tweak the volume vs. velocity behavior of all collision sounds. On individual objects, softer objects should probably have to collide with higher velocity to make a sound (e.g., dropping a banana on the floor vs. dropping a metal goblet).

 

Another, lower-priority issue: Ideally it should take the collision normal vector and dot it with the velocity direction to differentiate between sliding along a surface and smacking into a surface head-on. I don't think it does that right now (or if it does, it doesn't work very well). There might be some Doom3 limitations in terms of the accuracy of contact points and planes though. Extra credit if you can figure out a system for playing believable sliding sounds (this requires thinking about what happens over several frames, how long does it take a sliding sound to start, stop, etc).

Link to comment
Share on other sites

As soon as I find the damn grabber code, I'd be glad to help; I'm still in the dark asking myself, "What now? Where do I go? Who can I bother for info, help, or direction? What resource do I open? As soon as I'm done writing, should I or how and where do I compile and link?" I need to become familiarized with this mod's internal resources.

 

Objects sliding against one another is one bug I'm particularly excited to see worked on, but I'm still a bit slow at C++. I'd be glad to start with tweaking the collision sound threshhold. I've still got to do a little research in how an object's material and mass is determined in-engine, though.

 

Playing believable sliding sounds: In the grabber's held object: Per step (per frame) check for collisions, what materials are colliding (to determine what sound to play), and check if there's movement. If collisions and movement exist, begin playing a looping sound. If looping sound is already being played, don't start to play another looping sound. As soon as either collisions or movement stops, stop the looping sound. I'm grossly simplifying it, though.

Edited by Mortem Desino

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

It can be a bit overwhelming getting started. We have to set you up as a contributor and give you our mod source, then to atually test the mod source you'll need the mod itself, which is a huge download that takes a long time on our server. The whole process can take a few days. I think New Horizon was going to set up a contributor thread?

 

Until then, you can get the Doom3 SDK and make sure you can compile it, if you haven't tried that already. There are various guides to getting started and what you'll need to compile the SDK at Doom3 modwiki (www.modwiki.net), and the Doom3world.org forums.

Link to comment
Share on other sites

Okay, you can see your contributor thread, right?

 

You may also want to download the Doom3 SDK and try to compile it if you haven't done so already. I find it's useful to have a copy of the vanilla SDK handy just so I can tell if something was in the original Id code or if it was added by us.

Link to comment
Share on other sites

Okay, you can see your contributor thread, right?

 

You may also want to download the Doom3 SDK and try to compile it if you haven't done so already. I find it's useful to have a copy of the vanilla SDK handy just so I can tell if something was in the original Id code or if it was added by us.

 

For some reason he can't see the contributor section of the forum. I've added all the right permissions, but it's just not showing up. Not sure what's wrong.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • Petike the Taffer  »  DeTeEff

      I've updated the articles for your FMs and your author category at the wiki. Your newer nickname (DeTeEff) now comes first, and the one in parentheses is your older nickname (Fieldmedic). Just to avoid confusing people who played your FMs years ago and remember your older nickname. I've added a wiki article for your latest FM, Who Watches the Watcher?, as part of my current updating efforts. Unless I overlooked something, you have five different FMs so far.
      · 0 replies
    • Petike the Taffer

      I've finally managed to log in to The Dark Mod Wiki. I'm back in the saddle and before the holidays start in full, I'll be adding a few new FM articles and doing other updates. Written in Stone is already done.
      · 4 replies
    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
    • OrbWeaver

      I like the new frob highlight but it would nice if it was less "flickery" while moving over objects (especially barred metal doors).
      · 4 replies
×
×
  • Create New...