Jump to content

activator object not working


davidlallen

Recommended Posts

I have created some activators by copying existing objects. But, I am not able to get an activator working on my own object. I have created a "Help Wanter" poster, with my own text. I have placed the poster right inside the door of Doc Mitchell's house. What is supposed to happen is, when the player approaches the poster, he should get the prompt "E) Activate Poster" and then pressing E should display a message box. (I have just reused the Boulder City message box for now.)

 

But, when I approach the sign in game, it doesn't appear to be an activator. There is no way to interact with it. I can see the sign fine, it just doesn't let me interact.

 

I have included the small esp, and the related nif/dds in the attached zip. Is there something I have missed?

Link to comment
Share on other sites

Two things. Your nif has no collision, this is needed to allow someone to click on the object.

 

I didn't load the esp, but you also there are problems with some pieces, where the player can't select the item because the collision mesh on the building/wall behind it is sticking out to far, and your poster falls in that mesh.

Link to comment
Share on other sites

That's a great lead, thank you. I started with the nif for another sign activator I found in the game, object NVposter01EM, which uses nif clutter/signNV/NVposter01.nif. I copied the related DDS file to the decwithreg directory, put in my text, and changed the nif to use my texture. So I guess this original nif does not have a collision object either.

 

Is it easy to add a collision object to my nif? I don't really know how to do anything with nifskope beyond changing texture filenames.

 

Is there some other sign/poster related object I could use as a starting point? I thought choosing an activator object would be a good idea, but the one I chose doesn't have an onActivate in its script, only a GameMode. I could not easily search to see if there is something else like a poster, with onActivate.

Link to comment
Share on other sites

Dunno if this will help but check out this article.

 

The basics though are you'll need your NiNode to point at a bhkcollisionobject child which has a bhkrigidbody child which then has a bhkshape child (or bhklistshape with bhkshape children for a collision object built from multiple shapes). The bhkshape(s) will be your "low poly as possible" simple primitive(s) that encompasses the model to act as the collision "box". You'll also need bhkconvextransform blocks with each shape. The suggested solution is to copy your needed shapes with required blocks from an existing Bethesda mesh such as an axe or bat or something hand to hand and then fit them to your model as required. This is all oblivion-related but might get you going in the right direction.

Edited by Astymma
Link to comment
Share on other sites

@ Interfer0, that will be great. Thanks in advance!

 

@ Astymma, thanks for the pointer. I'm completely unfamiliar with 3D art tools and the article is way over my head. A poster "should be" only one rectangle, and it seems like there "should be" an easier way. I haven't been able to find any other posters or similar shapes which might have collision areas already.

Link to comment
Share on other sites

Yeah you should need just one rectangle as far as I know for something like a poster. I would find a Bethesda poster and lift the entire bhkcollisionobject tree out of it and paste it into your NIF and then associate it with your NiNode. Then you can reshape the box to fit your model. If you can find something close in size , will be less work.

 

NifSkope is gonna be your friend here (or enemy lol). To make a collision box is gonna force you to learn it's basic functionality but will be absolutely required if you want it to be an activator.

 

Might also look at simplistic boxy shapes for collision boxes such as tool boxes or first aid boxes for your mesh e.g. things that are simple box shapes you KNOW are already activators.

 

TBH though if Interfer0 is gonna give you something you can work from that is a poster with collision, I'd just wait for that file... probably be an easier job working from something that's already very close.

Edited by Astymma
Link to comment
Share on other sites

@ Interfer0, the activator is definitely working now! Thanks and kudos. However, the graphics are not right. If you saw the previous attachment, when you looked at the sign in game you could read the text, "Help wanted,..." so forth. Now, it seems that there is some kind of frame around the text, and only the frame part is visible. The rest appears to be some rug texture, which is totally unrelated to the file but happens to be nearby in game. Please see attached in-game screenshot.

 

I started with your washington.dds, replaced with my own text, and saved as DXT3, ARGB, 8bpp explicit alpha. This is what I used for the previous sign, and it is what I have used for other games. Is this the problem? I cannot tell what exact format you used when I load your original graphic in photoshop elements. (EDIT: additionally tried DXT5, did not make any difference.)

 

If you could take another few minutes to look at my attachment and see if I have done something else wrong, I would appreciate it.

Edited by davidlallen
Link to comment
Share on other sites

I looked at the nif. It looks like I have two seperate objects, on for the frame, and one for the picture. You may need to just change which texture you changed. and also and a second dds picture for the frame, since you currently don't have the texture, I forgot to add it. It will cause errors like this without one.
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...