vinniewryan Posted November 10, 2010 Share Posted November 10, 2010 I'm wondering if the following things are possible, whether in TES construction set default scripting functions, or with OBSE, or if a new dll could be written as an OBSE plugin. 1: Control of the 3rd person camera: Let's say I made a room with a chest on one side and a door on the other. Now when the player approaches the chest, the 3rd person camera will most likely be facing the backside of the player looking at the chest. Now, let's say that when the player opens the chest, the door behind him/her closes and locks! Is it possible to force the 3rd person camera to rotate around the player until the door behind him/her is within the cameras view? 2: Pyro Heaven: Is there a way to, via script, detect a static object such as a tree or a house, and delete it / replace it with an active object? Let's say I really hate the owner of CottonCreek Farm, and I want to burn his farm down! I want to be able to drop a lit torch near his house, and via script, replace the static house mesh with an active mesh of the same kind that I can animate to burn down to a pile of ashes! 3: Snowey Grounds: Is it possible to create a shader that can be applied to the world ground? Let's say it's a bright snowey day and I want to go for a walk. a few hours later it's still snowing, but the dirt road I'm standing on just seems to stay clear of any snow or ice. A simple shader *could* fix this if permitted by the CS. Otherwise it would be ideal to use an animated gif for the ground texture with programmable animation sequencing, but that will never happen. 4: Magic Jumping Beans: Let's say I want to make a rock, and when the player activates the rock, it jumps up 3 feet then falls down. Or shoots 10 feet to the left. Possible? 5: *ban me* -ah, I guess the forum didn't like my witty pun. Anyway, WIND: Is it possible to, via script, control the 'wind blowing' animation of trees, bushes, and grass, without actually increasing the wind in the current region? 6: The Crystal Sniffer: Is it possible to, via script, manipulate properties of a player-equipped object, such as a ring on the players finger, or an amulet around his/her neck? These properties would include: Amination, 3D Scale, color (via shaders?), and further, is there a way to track the position of an object that's equipped to the player. Let's say I want a ring that, when the player is near a treasure chest, a script detects the world position of the ring and places a small flame at the same position, making it look like the ring is now on fire. These are all ideas that will support a lot of new functions and player control in a mod I'm working on. Any help is much apperciated, and I'm sorry if some of these questions are completely absurd or beginner level. Thanks for the help! Link to comment Share on other sites More sharing options...
David Brasher Posted November 10, 2010 Share Posted November 10, 2010 I have only been modding for a couple of years but your ideas are quite advanced and not easily supported by the game engine. The jumping rock is probably the only comparatively easy one. But this is not to say that the ideas are impossible. Highly skilled OBSE scripters, modelers, and animators can do some amazing things. Link to comment Share on other sites More sharing options...
RagnaHighArc Posted November 11, 2010 Share Posted November 11, 2010 let's see... 1. yes you could control the 3rd person camera via scripts. Just activate the control that let's the player manipulate the 3rd person camera(i forgot what it was, just check your control settings and/or ini file. 2. i don't think you could remove objects like trees and houses from the map. What you could do is to put flame models all around the house or one giant one that covers the entire house. I think you could even put a model of a burning house right over the original house. Get a house model and edit the texture a bit and try to place it over the house you want to change via scripts. 3. not possible. either the map is snowy or it's not. even if you try to go around it by using models that lay on top of the ground it still won't work or even look good. 4. Yes that's possible via scripts. anything from jumping beans to jumping cups. 5. if there's a function for that in the CS or in OBSE then yes, but i've never seen it myself. go check on the TES CS Wiki or in the OBSE website. 6. Once an object is on the players then you cannot manipulate it without also manipulation the player character. You would need to remove it first before editing the object. Depending on what you want to do it may be possible to do things by having different copies of the object. For example: To change size and/or color of a ring: 2(or more) rings with different color textures and/or sizes and have them equipped and unequipped via scripts. The more colors or sizes you want the more objects and textures you'll need. To change animations: Separate the animations between copies of the object(amulet) and via script change the model to the model with the appropriate animation to suit your need. The fire ring is somewhat easy to do. Just get a model of a flame and attach it the ring model via NifSkope or other program and just switch between the original and the altered ring via scrips. I'm not 100% sure about animations on rings and amulets, but it seems to work on weapons. Link to comment Share on other sites More sharing options...
vinniewryan Posted November 12, 2010 Author Share Posted November 12, 2010 RagnaHighArc, Thanks so much for the reply. I did figure out the first one, controlling the camera. You're right, it takes some scripting to do, but is fairly simple. Here's the method I came up with: I'll basically do the following: When player activates treasure chest:DisableSaveMode (don't let the player save game) Possible??DisablePlayerControlRecord current camera state (1st person, 3rd person)Copy 'player' and set clone position to Player x,y,z,zrotFade to black within 0.3 secondsForcePC1stPerson //;whatever the actual function is calledSet player (which is now basically just used as a camera) position to (clone position +/- distance)set player angleZ to (calculate angle from player position to clone position)Fade back in within 0.8 secondscheck if 'door' is within camera viewmove and rotate player(camera) until above is true When door is within camera view:delay for 5 seconds'ish, and start door 'close and lock' scriptwait for door script to return true, else; report error and returnwait for player to press a buttonwhen above is true, fade to black 0.3 secondsdelete cloneset player position to clone x,y,z,zrotset camera state to recorded value (1st person or 3rd person)fade back in 0.8 secondsEnableSaveMode (?)EnablePlayerControl That's it. I'll finish this reply later tonight, I gotta go! Link to comment Share on other sites More sharing options...
vinniewryan Posted November 12, 2010 Author Share Posted November 12, 2010 #2, I guess I'll just have to replace all buildings in game with my own meshes that have a 'burning down' animation. The point of this function would be to add more evil things the player and NPC's can do that permanently changes the world, and opens new options for re-building and changing the land as you choose. #3, The only work around that comes to mind is making really nice gaussian-edged 'snow pile' meshes that are scripted to build up on trees and rocks, and certain areas of the land where it won't cause any major CPU hit. It would still add a pretty nice effect for people who explore the (few) snowey regions. #4, Thanks for confirming #5, I'll look into it further. I'm sure there are functions for changing weather via script, it would seem stupid if they didn't include wind settings. #6, Creating an animated 'ring' mesh would work out just fine. I'll do that. Thanks for the help! I'll update as I progress, and soon I'll post a WIP thread, when I have something organized enough to show off B) Link to comment Share on other sites More sharing options...
Recommended Posts