Skevitj Posted October 30, 2011 Share Posted October 30, 2011 If you can't save scripts, it's either a syntax error in the script, or you aren't launching the GECK through NVSE and hence NVSE isn't loading. What do you mean "set 41 as a global"?. You don't need to do anything with globals or anything even closely related. PS. 21 is the scancode for 'Y', 41 is '`' which is already taken for the console. Link to comment Share on other sites More sharing options...
etherealblade Posted October 30, 2011 Author Share Posted October 30, 2011 (edited) Roger that on the "global" thing its not needed. I was able to launch NVSE with Geck Powerup by setting to admin. I also can save scripts. I still am having an issue with the IsKeyPressed command. For some reason I think it may be the way I have it. or geck is giving me a hard time. It's gotta be something minor I know it and its keeping us from sweet victory! :wallbash: As far as what I know, yes globals aren't needed, which makes me think the way i have it aranged. Edited October 30, 2011 by etherealblade Link to comment Share on other sites More sharing options...
Skevitj Posted October 30, 2011 Share Posted October 30, 2011 From what I understand, it should be called asif IsKeyPressed 21 ;do stuff endif The documentation for NVSE says it's outdated, but I'm assuming that's due to them adding new functions, not removing older ones. Link to comment Share on other sites More sharing options...
etherealblade Posted November 1, 2011 Author Share Posted November 1, 2011 Thanks so much for helping out the best you can. Everything is on permanent Hiatus until I can create Nvse Scripts in geck.Otherwise I'll have to make my mod without it. Man this is so demoralizing. I'd like to give you more kudos but don't know if I can give more than one. ;) Instead of smashing my head against the wall, I'll just move on to the next objective =(Maybe when I finish the mod, if it's good enough someone will make NVSE commands for it. Link to comment Share on other sites More sharing options...
Tefnacht Posted November 1, 2011 Share Posted November 1, 2011 Hi. Can you give us the error message you get when you try to save the script with the IsKeyPressed command in it? Because the snippet given by Skevitj in post #13 is exactly correct and should work just fine. That it doesn't work for you really only leaves the assumption that you did, in fact, not launch the GECK with NVSE running (or you are suffering from a Windows/UAC induced problem). Let me explain how to install NVSE and the GECK PowerUp and use it with the GECK. This might be redundant stuff you already know and is all explained in the various readme files, but I'll still write it down here as a step-by-step guide just in case :) - Make sure you are using version 1.4.0.518 of the GECK. Launch the GECK, click Help → About and check the version number at the top of the pop-up window. If your GECK is too old, download the recent version here (from this site) and install it. - If you have the right version of the GECK installed, download the latest version of NVSE (2b12) here (from this site).Unpack all the nvse_... files into the same directory as your FalloutNV.exe file, overwrite if necessary. The archive contains a directory called “src”, you can ignore that (it contains the source code for NVSE, you don't need that). - Download the Geck 1.4 PowerUp from the Nexus here. You want the file “geck-powerup-nv-0-1-6-20110707”.Now it gets a little tricky because we really only need one single file from that download. If you extract them all it doesn't matter ... but only one file is really important: nvse_plugin_geckpu-nv-14.dll. This file needs to go into the NVSE plugin directory, located in your games data folder: ...\data\nvse\plugins\If you do not yet have a “nvse\plugins\” folder in your games “data” folder, simply create it. Extract nvse_plugin_geckpu-nv-14.dll to this location. All .dll files in this folder are treated as plugins by NVSE and get automagically loaded along with NVSE. (All the other files in the download are only needed if you want to run the GECK PowerUp without NVSE.) - To launch the GECK with NVSE enabled, locate the executable “nvse_loader.exe” in your “Fallout New Vegas” directory and create a new shortcut to it. Open the properties window for that shortcut and add the option: -editor to the very end of the Target field and click Ok. - Now if you double click this shortcut the GECK will be launched with NVSE running and NVSE will automatically load the GECK PowerUp as a plugin, enabling script error messages and some other useful stuff (like the option to disable the spell-checker). This should do the trick. If you do all this and the GECK still gives you trouble with the IsKeyPressed command, you most likely suffer some UAC (User Account Control) induced problem where your operating system denies the GECK write access. Is your Steam installed in the “Program Files” folder by any chance? That usually causes nothing but mischief for mod authors. Well ... sorry for the lengthy post. Good luck. :) Link to comment Share on other sites More sharing options...
etherealblade Posted November 2, 2011 Author Share Posted November 2, 2011 (edited) You get kudos for such a long post. I really was gonna stop beating myself up about it and move on, but I believe there is a step in your very detailed explanation I overlooked. :biggrin: If this work, realtime teleporting (once I get the code down), Fose induced supers that cripple all the enemies bones with the push of a button, and that flashy omni punch thing you saw in the vid will be much better within my grasp. (really it's that teleport code, development and testing got halted cause i couldn't set a hotkey...and setting it up on an item was...confusing.) Special attacks can be finally set on buttons and not weapons with the names of the techniques on them. :thumbsup: PS:BTW my new vegas is not installed in C: Directory, but a seperate partioned D: directory that steam is in. Edited November 2, 2011 by etherealblade Link to comment Share on other sites More sharing options...
etherealblade Posted November 2, 2011 Author Share Posted November 2, 2011 ok i get an error when trying to add -editor at the end of the target field. It says D:\Games\SteamApps\common\fallout new vegas\nvse_loader.exe"-editor' specified in the target box is not valid. Make sure the path and file name are correct. I've tried to remove the " but it still gives me the error. I think this is the root of the problem I was never able to make a shortcut with the -editor in the target field Link to comment Share on other sites More sharing options...
Tefnacht Posted November 2, 2011 Share Posted November 2, 2011 Okay ... You need to add a space between the last quotation mark and the -editor option in the target field. "D:\Games\SteamApps\common\fallout new vegas\nvse_loader.exe" -editorshould do the trick. If there is no space windows will confuse the -editor option as part of the filename and complain. Link to comment Share on other sites More sharing options...
etherealblade Posted November 2, 2011 Author Share Posted November 2, 2011 It worked. We are officially back in business. I knew it was something small that was holding me back from achieving higher levels of power. *kicks self, (I'll need a whole lot levels of power, but I will see this project to the end!) :wallbash: Phew...anyway! Time to roll!. Now that this is taken care of it's time to set the hotkey and continue development. =D It's possible that the geck will now tell me now that the problem isn't the syntax but missing variables and intergers.....and bingo it just has. I'll come back with an update. Thanks a bunch for the support and taking the time. :thumbsup: Link to comment Share on other sites More sharing options...
etherealblade Posted November 2, 2011 Author Share Posted November 2, 2011 (edited) SCN TeleportCommandScript int YisPressed ref TargetVar float Distance float ZAngle float XOffset float YOffset Begin ScriptEffectUpdate if YisPressed == IsKeyPressed 21 ; 21 = 'Y' set YisPressed to IsKeyPressed 21 set TargetVar to GetCombatTarget if player.getdistance TargetVar != 0 set ZAngle to TargetVar.GetAngle Z set XOffset to cos ZAngle 1 set XOffset to XOffset * 50 set YOffset to sin ZAngle 1 set YOffset to YOffset * 50 player.moveto targetvar else if player.getdistance TargetVar != 0 showmessage Fail endif endif endif endif end Ok so I attached it to an base effect which attaches it to and ability, which then gets attached to a perk. I then got the perk, hit a baddie pushed Y, and well....nothing happened. I don't think this is the right code. The code needs to do in all, 3 things.1) Identify the hostile target2) Calculate the distance between the player and the target.3) If in range and not next to the target already, Teleport the player next to the target (or instantaneously move the player a set amount of distance forward.) Cipsis Melee lock-on mod would do the rest as far as keeping your view on the enemy. If i were to make it an attack like shown in the video (seven star destruction (which I plan to do)), after getting the core code to teleport forward some distance, I'd need to set a code that:1) Finds the valid targets in the area that are in range to be teleported to.2) If the targets are in melee range, do a melee animation that has special death effect.3) Return the player to original location started Edited November 2, 2011 by etherealblade Link to comment Share on other sites More sharing options...
Recommended Posts