Kesta

Member
  • Content count

    24
  • Joined

  • Last visited


Community Reputation

55 Excellent

About Kesta

  • Rank
    Friend
  • Birthday 07/29/91

Profile Information

  • Gender Male
  • Location France

Recent Profile Visitors


636 profile views

Kesta's Activity

  1. Kesta added a post in a topic landscaping WIP   

    Hi! And welcome around here.
     
    I don't have much of a say for landscapers recruitment, but it always kinda pain me to see applications of peoples who actually show what they're capable of doing (and are capable of doing good things) without the attention they deserve, so here am I
     
    There is a few things that come to my mind when lookin at the vid (I'm not sure at which "stage" you consider you're in), but I don't think I have the knowledge nor credibility to highlight those properly or provide a relevant critics, but the small things I think about should definitely come along with pratice and some teaching. Overall, you're able to make landscapes which aren't flat areas with rocks, houses, and trees slapped in randomly, so that look good enough for me
     
    Some questions:
    Which province are you most interested in ?
    Do you have any navmeshing skills along landscaping capabilities ?
     
     
    Edit: Ah, browsing through the application forum, I realize you recently made several thread already. Try to put everything back on this one by editing your first message. Also, a small introduction about yourself as a person would be much welcome
    • 0
  2. Kesta added a comment on a blog entry Skyrim - Tasheni Follower - Talking Horse via race switching   

    I know I'm super late on this, but since I had a horse mod based on this almost done before the new convenient horse for SSE came out, I can always share, if that help:
    You can add a perk to the player with "activation override" entry point, and a condition "HasKeyword:ActorTypeHorse" on the target, that will override any behavior, including mounting. Then to get the horse to actually talk to you, you can't just use the "Activate" papyrus function as it would mount the player on the target. However, you can start a quest and put the horse into one of its alias, and give it a forcegreet package, effectively starting a conversation with the horse.
     
    Good luck with whatever you're trying to do (just saw your post in the blog entries of DC while casuall browsing and thought I'd answer).
    • 0
  3. Kesta added a post in a topic Ayleid Traps & Puzzles   

    Okay, two things :
    I switched the initial gem from this morning to something more "definitive", an actual Dark Welkynd. Those are absolutely impossible to disarm, and necessarily have an "activate parent" which act as a controller. It must be a hidden local activator, in which you can setup various conditions (isPlayerMoving, isPlayerIdle, minPlayerDistance) for the Dark Welkynd to actually enter "attacking mode". This is also where you setup the timer at which it will fire, and a randomness coefficient. This is just a stripped-down and slightly re-purposed version of the original TrapTimerScript (or whatever this was called).
    The target can currently be either the player, or a permanent focus on a specific reference. the second one is useless for actual Dark Welkynd, it's just a leftover from this morning that won't make it on the final version (will be moved to something else). In tthe final version, it should most likely be able to fire at anything that isn't affiliated ot  Ayleids.
    You can choose which spell it will fire (currently still default to a permacast of simsim's beam. Will probably be some kind of fireball in the final version).
    Infos : 
    http://www.uesp.net/wiki/Lore:Welkynd_Stone
    http://www.uesp.net/wiki/Oblivion:Traps#Dark_Welkynd_Stone
    http://elderscrolls.wikia.com/wiki/Dark_Welkynd_Stone
     
    Now for the cool part :
    While investigating vanilla traps, I found... an unused ressource. A dwemer balcony that could be made to collapse. After a quick test in-game, its original setup didn't work, not sure why because the default script it used looked ok. I quickly remade one for testing, and it actually do WORK. Here is a quick vid with the Dark Welkynd (set to aim at a marker, didn't want that b***** to fire at me for the video ^^) and the actual falling balcony (careful, weird and loud sound at the beginning) :
     
     
    Now... simsim, we need your animations talent  Maybe not now, but... just imagine a full Ayleid bridge that collapse as the player run over it. For some epic KOTN dungeon quest, maybe even in the final one, that would be quite the masterpiece!
     
    Edit : Triggers placement for the balcony was not top so the effect look kinda precipitated. That can be improved.
    • 1
  4. Kesta added a post in a topic Ayleid Traps & Puzzles   

    Thanks! I also check the relevant uesp pages. Some pretty interesting things to do with those DarkWelkynd. Seems like they have different behavior, like some only shoot at you if you're moving (I think I read that on wikia). Though they doesn't seem to be beam caster, rather they throw big balls at your face. Coolest thing is you cannot de-activate them.
    • 0
  5. Kesta added a post in a topic Ayleid Traps & Puzzles   

     
    I doubt it for the shield. A rather wonky implementation can be done, but I don't think it'd actually give an enjoyable experience.
    As for the tons of beam... https://www.youtube.com/watch?v=kUPQfzAyVeI
     
     
    Yes, yes, yes, and yes  
    A clear list would definitely help. Hopefully the thread will generate one, although I kinda imagine dungeon designers to come up with an idea whenever they are making a dungeon and something cool cross their mind, rather than having a predefined set of ideas. Though there is already a few interesting suggestion in this thread actually  As for a claim system, yes, depending on the number of traps to make we might need to track them "officially" or just do them on the fly. For now just claim whatever you fancy if it's been requested (potentially by you ), honestly there is so much fun things to experiment with that I really don't have any preference ^^
    The beam... yes. I discovered it accidentally when looking for a magic effect  I think I typed "light" in the filter hoping to find kilkreath's ones, and saw there was an ayleid light beam available. I assigned it to the spell because it had the proper casting type and went to check out in-game, and found this awesome effect while I was expecting a placeholder
    The impact set definitely need tweaking. I don't think the smoke serve much purpose here, nor does it really look good on a permanent ray. (Like... it's smoking for hundreds  of year but haven't been destroyed ? oO ). We're probably going to need a version with 0 impact anyway, so we can chain beams between multiples welkynd stones without having the room full of smoke   
     

    Yeah, that's not that much of a big deal actually. Just need to catch the OnHit event on the chandelier or a surrounding boundbox (Trigger do receive OnTriggerEnter events from projectiles, which is pretty convenient), decrements a "life" variable each time, and then activate it as a "regular" animated trap, or simply having the lower part a separated mesh ignoring physic until told otherwise. (and I guess you also want some magic kaboom whenever the welkynd shatter on the ground I guess ? )
     
     

    I should really play Oblivion properly instead of casually launching it just to verify some technical aspects people points me to   
    Got any video in mind where I could quickly check it out ? 
     
     
     
    Anyway, I'm currently in the process of indexing the whole trap system in vanilla, there is potentially a lot of under-exploited stuffs that could be re-used fairly easily (inflammable poisonous gas clouds... <3 Ok, maybe not for Ayleid dungeon...)
    • 2
  6. Kesta added a post in a topic Ayleid Traps & Puzzles   

    Yep, I had a quick think about it. Problem is, unless there is a collision layer I'm not aware of that'd allow to have collision with projectiles but not with actors, you'd end-up with invisible collisions floating around in the dungeon. Not saying there isn't such collision layer, but I didn't want to mention this before I actually knew whether or not I could manage to get it working  
    "Specific shield to attain" : Do you mean a way to disable the trap ? If yes, all the traps (will) have a "Disarm()" functions that can turn them of. So anything that can somehow receive events can be made to disarm one or several traps. From a simple button, to a target you'd have to hit with spells and/or arrows, or simply walk on (= enter a trigger), or an enemy to kill (one of the vanilla dungeon actually have this IIRC. Soljund's sinkhole maybe ? I'm not sure)
    "Cutting a way through" : I first thought it'd be nearly impossible to have something clean to do it when I first wrote the post this morning. However I think i just came up with a decent idea. Basically, the "spell" that handle the ray casting can have two effects : 
     - One with the actual visual projectile, that have no collisions (so never actually hit anything, and go through everything), and no actual effect.
     - One with an "empty" (invisible) projectile, without visuals but with collision, and that carry the actual detrimental effect.
    So it'd then be possible to add conditions to the effect that actually have collision and detrimental effect, to only apply on specific conditions (do not apply if the player is wearing a specific armor, or if he's blocking, or if he have one of the alteration-magic armor spell active, etc...). This way it'd look like if the beam always go through the player, but only affect him if he doesn't have the proper "counter".
    • 0
  7. Kesta added a topic in Scripting and Implementation   

    Ayleid Traps & Puzzles
    Request & Suggestions thread for Ayleid traps & puzzles.
    Not a priority (for me) right now, but this is really a fun thing to work on, so I might as well spend a bit of times on it whenever bugfixing and quest & ai implementation get on my nerve  
     
    I'll probably need a bit of help from modelling gurus, as my artistics abilities are limited to nifs mashups and awful textures swaps  Not that I don't want to learn, but now isn't the time.
     
    Original request from John (Wellpap ?) :

     
    Quick test this morning (Look like sh**, just wanted to make sure perma-casting beam worked, and test a few maintenance and framework-oriented functions) :

     
    For this kind of "magic casting traps", I see two interesting setups:
     1) Place the activator in the dungeon, and simply associate a linked ref with a specific keywords (CYRTrapTarget) which will be aimed at by the beam (that's similar to how the beam in the kilkreath (meridia dungeon) puzzle work, just easier to set up). Not that with this setup, unless the target you reference is solid, the spell will continue to its maximal range until it hit an object with collision (can be both an advantage and an inconvenient). The test above fire at an xmarker that's mid-way between the actual gem and the wall.
     2) Place the activator in the dungeon, no additional work required. It will fire at a pre-defined direction (that's how dwemer flamthrowers works). The nif seem deeply involved, as it define the direction and the range of the beam, not my specialty but some copy-paste and tweaks between branches should produce exploitable and interesting results.
    Can either use a pre-defined spell, or have something leveled, your call.
    Those (and lot of others) can be controlled by adding an additional "timer" object in the cell, and linking the trap to it ("add activate parent"), in order to have random firing, or firing at intervals, instead of perma-cast.
    Other traps to consider :
     - Fire and forget ones (can re-use vanilla system, with or without different spells). 
     - Candlestick falling from the roof (similar to oil-pots in nordic dungeons, can make them fall when the player enter a trigger if you fancy this kind of things).
     - Collapsing ground (reusing something like CYRAyleidRubblePile01), with a purpose similar to the grids that open under your feets in nordic dungeons.
     - Spikes falling from the roof (BSKarceilingspike01 look just so perfect for it).
     - "Crazy" welkynd throwing (distorted?) lightbeams around the room in an erratic and random fashion.
     - Whatever you have in mind.
     
    Puzzles are up for suggestions as well.
    • 11 replies
    • 630 views
  8. Kesta added a post in a topic Custom cells empty after Masterlist update   

    What Simsim said. If you forgot to load your plugin alongside a striped Skyrim.esm, the CK somehow try to make room by himself and delete all of the references in the currently active .esp
    (Talking from experience... *sob*)
     
    Edit : Guess who just lost 3 hours of work again because of this just 43 minutes after posting this message...
    Edit² : Found CK's backup... this thing is not as dumb as it could, luckily.
    • 1
  9. Kesta added a post in a topic Bruma Implementation Review   

    Yeah, I remember a few things we talked about that you told me you were fixing as we talked (like the devot's amulet), which is why i wanted to wait for your plugin
    I think I found your own issue tracker on the drive btw.
    No rush, I'm still polishing and tying up loose ends here and there on that damned "The Courier" quest, plus doing a bit of navmeshing so it's actually playable without teleporting NPCs around with the console.
     
    The Restful Watchman is... our doom. Like, there is just so much things going on in here ^^ (At least 5 quests involve the Inn...)
     
    • 0
  10. Kesta added a post in a topic [Wip] The republic of Maslea   

    Not sure how I'd hate anything In Maslea... (except the hall of air maybe, but this one is still in Skyrim )
     
    Also, I see you now got a fancy new logo  
    • 0
  11. Kesta added a topic in Scripting and Implementation   

    Bruma Implementation Review
    X : Jeez, one more topic from you in the implementation forum ? Can't you just stop ?
    K : Mmmh, how about you post your own so it won't look like I'm spamming
     
    Anyway, the good news is : "The Courier", aka CYRBrumaMS11 (what a cute name... I think I typed this prefix a good thousand of time in the past days), which was the last "implementation not started" quest, is about done. Just some boring adjustments and some loose ends to be taken care of before it can actually go live for a proper test. Since LazurLintonArkinesonShade spent some white nights to steal my previous job in the meantime (joke, much appreciated, can't wait to see what you did with world encounters   ), I'm "free". 
     
    So, with that in mind, what I intend to do this weekend is to go through all of the currently implemented quests and check them to fix potential bugs, tie up loose ends, ensure post-quest clean-up, etc... (I already noted a few ones that refuse to start or to complete, some with broken rewards... and the unmissable "Inkeep Is:"  ). However, I guess/know that some of you - implementers - might have noticed those and fixed them on your own already (i know mattie have a plugin, and unless I missed something it haven't been merged yet). Since there is no point fixing the same issues twice... I'm opening this thread to kindly ask :
    If you have some implementation fix/completion material ready, but aren't merged yet, please push them on git (or if you hate git, pack them in a zip and share a dl link here)If you have some WIP, please state it here so me or anyone who's going through a similar process know what's the state of this or that quest.Since the reference document is somewhat outdated, and is read-only, let's track the whole thing here 
    The objective is too have all of the quests, scenes, encounters, AI behaviors (this is navmesh-dependent), and dialogues (at least quest-related ones) fixed and polished by the end of next week, so everything is ready for the final recording. This will also imply some testers to be available whenever the review is done, especially grammar-nazis  If you're up to it, post here as well so we know who to ask. Also, some "global players" who'd go through the whole County questing around would be nice, to figure out "large scope issue". (NPCs using some greetings way too often, too much different people using the same phrasing, too much Lusty Argonian Maid Jokes, ... ).
     
    If anyone else is willing to do the same, I'm more than happy to split the work.
    The only rule is : Don't review things you implemented yourself. Either you're aware of issues and post them here, labeling the implementation as "still WIP", and we skip the review for now. Or you're not, then you're unlikely to notice loose-ends or half-hidden bugs if you missed them the first time.
     
    X : Meeh, what are you talking about ? No need for all this ! It just work !
    K : Open the master in the CK and then check EditorWarnings.txt in Skyrim's folder... or just enable papyrus logging and check the log. You'll understand.
    X : Meh², just make a list of claims to fix bugs.
    K : I thought about it, but we're kinda lacking a proper issue tracker  And a lot of what need to be fixed can actually be in less time than it'd take to actually write and explanation of the issue.
     
    Aaand... that's about it.
     
    tl;dr : Push all of the implementation you have asap. Post here if it's still "too WIP" and don't want anyone messing with that part. Go hunt and fix as much issues as you can. Lusty Argonian Maid.
    • 8 replies
    • 1128 views
  12. Kesta added a post in a topic Background Maintenance (+dragon spawn fix)   

    Yes, you can actually use the very same script (though you'll probably want to change the prefix from CYR to whatever Roscrea is using), the properties it rely on are Vanilla forms, not Cyrodiil's specific. You'll just have to recreate the spell and magic effect.
    • 0
  13. Kesta added a topic in Scripting and Implementation   

    Background Maintenance (+dragon spawn fix)
    Just pushed a small commit aimed at maintenance under new branch CYRBackgroundMaintenance Merged on 16/09/2016
    Yes, I know, I was going to sleep, but there was some interesting things on TV and my computer was looking at me
    This attach a new script to the PlayerAlias in CYRMaintenanceScript, that aim to automatically add spells/perks required to be added to the player for maintenance purposes.
    This script (CYRBackgroundInitialization) contains two array properties :
    An array of PerkAn array of SpellsAll of the perks / spells in those arrays are automatically added to the player upon script initialization (new game, or first load after installation) and savegame loading.
    Spells/Perks are unique, so re-adding them don't have any weird side-effect. This system ensure that spells are added even if BSHearthland is installed mid-game, and that new spells/perks added to those lists will be added to the player between updates.
    If you need a spell/perk to perform maintenance actions, simply design them, and then add them to their list. Don't forget to tick "Hide in UI" in the magic effects so the player don't see weird maintenance effects in its active magic effects menu  
     
    ================================================================================================
    Current spells / perks added through it :
    CYRPreventDragonSpawnSpell
    This spell prevent random dragon to be spawned in Cyrodiil's Location and all of its child/sub-child locations (i.e. any locations in Cyrodiil). it work by delaying the "number of days before next dragon" by 3 days every time there is one or less days left. More than blocking completely random dragons, this also prevent the 100% chance of seeing a dragon attack as soon as you go back to a non-Cyrodiil (read : Skyrim) location. (you probably noticed this if you played mods like Falskaar).
    This is required since it seem there is a bug in the way random dragons are spawned, the vanilla conditions doesn't seem to handle properly the absence of the WITriggerDragon keyword in locations. "Fixing" this have been brought to the Unofficial Patch Project's attention, but until we know exactly the exact impact of "fixing" it (if that's really to be fixed), and they decide to include in a future USLEEP release, this workaround will have to do.
    Can be disabled by setting the global variable CYRPreventDragonSpawn to 0.
     
    • 4 replies
    • 408 views
  14. Kesta added a post in a topic Cyrodiil's courier system   

    All right, the early framework is complete. Pushing the commit right now.

    I didn't take care of the "interception" part yet. This require additional investigation, and more importantly testing and compatibility-checking, and there is more important things to do for now. The courier doesn't account for crime events for now (this isn't the case in vanilla either, but is fixed by USLEEP). That's mostly because I'd like to take a bit more time to double-check the whole criminality system in Cyrodiil / Bruma (not sure yet how much have/haven't been done).
    The various versions of the courier are use the cyrodiil's random farm clothes outfit.
    An example have been implemented for the "Word to Bruma" quest, the courier deliver you a thank you letter after you gave yourself a letter to Avar's brother. Don't look at me this way ! I asked Linton about an idea to set up an example and that's what he came up with  This will need further tweaking if we keep this, I made it very quickly to have a test-case, and the letter is sent as soon as you give yours to the smithy (so if you give it to him in an interior, as soon as you leave its house, the courier jump on you... )
     
    Using the Cyrodiil's courier
    To send your message / package through Cyrodiil's Courier :
    From a regular script
    Add a property of type CYRWICourierScript to your script, and then use one of the available functions to send the item :
    A letter : SendLetter(Book letter)One or more forms (any kind, typically gold) : SendForm(Form item, int count = 1)One reference : SendItemRef(ObjectReference item)The reference from an alias : SendLetterAlias(ReferenceAlias letter) 
    Naming your property CYRWICourier should allow it to auto-fill to the proper quest. If not, select the proper quest (CYRWICourier) in the properties menu.
    Here is the example for having an activable object send a letter and a bit of gold to the player through courier upon activation :
    ScriptName TestCourierActivator Extend ObjectReference CYRWICourierScript Property CYRWICourier Auto Book Property TestLetter Auto MiscObject Property Gold001 Auto Event OnActivate(ObjectReference akActionRef) CYRWICourier.SendLetter(TestLetter) CYRWICourier.SendForm(Gold001, 50) EndEvent 
    From quest's sub-scripts
    If you're using it from a quest (this is probably the case) :
    Create a "data" script to attach to your quest if you don't already have one. Those are usually named MyQuestNameQuestScript. Add the CYRWICourierScript Property to this script.
    To use it from stages fragments
    Set the kmyQuest to MyQuestNameQuestScript and call the function through it :
    kmyQuest.CYRWICourier.SendLetterAlias(Alias_Letter)To use it from dialogue or aliases scripts
    Use the regular owning quest cast :
    (GetOwningQuest() as MyQuestNameQuestScript).CYRWICourier.SendLetter(Letter) 
     
    Adding specific dialogue for the courier
    What you probably want to do is to have a special dialogue for your letter whenever the courier give it to the player.
    In order to do so :
    Send your letter / items following the above instructions.
    Find the quest CYRWICourier, and go to DialogueViews.

    Open the topic CYRWICourierDeliveries and Right-Click -> Copy the first Info (warning : DO NOT create a new infos. It'd be created at the end of the stack, and be ignored because the "Here you go" would be above it and have no conditions. This is a limitation of the CK that doesn't allow you to re-organize the stack) :

    Open your freshly created info, and edit the response with the text you want the courier to actually say.

    Change the second condition (GetItemCount) so it actually check for the identifiable item you sent :

    If you want to add an actual dialogue with the courier rather than a simple line :
    Remove the link from the list in the right, and uncheck Invisible Continue.Make sure the "Hours until reset" is not 0.00 ! If you copied, it should be 1.00, which is fine.Create your other topics with the whole discussion in the CYRWICourierView, like you would normally.For the last info of this dialogue, check again Invisible Continue, and relink it to the original topic CYRWICourierDeliveries. This is critical to ensure that all of the other special lines to say will actually be said, and the ending dialogue will play properly without additional work from your part.That's it !
    The main point of doing so, aside of the improved immersion, is that you can run additional scripts when the player have received the letter by adding a script fragment to your additional Info.
     
    • 5
  15. Kesta added a topic in Scripting and Implementation   

    Cyrodiil's courier system
    Hi fellow BS people.
     
    As per suggestion / request I worked on the courier system. This is pretty straightforward, and hopefully will be complete and have gone through proper testing before next week's merge and is in a usable state now, waiting for the next merge.
    This thread is about the framework itself. I've put a tutorial in the second post, on how to send something to the player through Cyrodiil's courier.
     
    For those of you who are wondering, Implementing a custom courier system wasn't something critical for Cyrodiil, and even less for the Bruma release. But it do have a few advantages :
    We can have varied couriers.Couriers wear whatever we want them to wear (Colovian clothes typically  ).We can add custom dialogue for specific deliveries without conflicting with the original game, and using our own voicetypes. 
    For those of you who don't know, here is how the vanilla system work :
    A courier NPC and a container are located in a "technical cell" that isn't accessible.
    Quest requesting a letter to be sent simply use a scripted function from the framwork to place the letter into the container. This function also increment a variable keeping track of the number of items in this container.
    If this variable is above 0 (zero), when the player change locations, the "delivery" quest is started :
      The courier is spawned in the location and go search for the player
      If the player leave the location before the courier reach him, the quest is stopped and is restarted (since an other Location change event just got fired)
      When the courier finally reach the player, he forcegreet him with the dialogue we all know
      All of the "specific" lines are said, if any is valid, and then all of the items are given to the player *
      This have for effect to empty the letter-container, and set the tracking variable back to 0 (zero)
      The Courier go back to its spawnpoint to sandbox around here until he get disabled and moved back to his holding cell.
    * "specific" lines are conditioned by the presence of a specific item (letter) in the container.
     
    Here are the current improvements that have been thought of and implemented for the Cyrodiil's equivalent :
     The courier NPC is "leveled" through its template, effectively enabling multiple couriers appearances (If you're familiar with the Varied Couriers mod by Madcat, this is the very same implementation) The default lines have been diversified on a per-courier basis, which should help reduce the redundancy of vanilla. The dialogue lines can be seen on this document. The topics have been split in a more logical manner, that should make adding new specific lines easier. This imply that for the generic dialogue, there is an additional "Here you go" line, said between the "Let's see here..." and "Look like that's it, got to go." (in vanilla, this jump directly from one to the other if not specific lines are valid) for default letters. This line is used to have the courier play a "give item" animation. Framework functions are more explicit (Vanilla: "addItemToContainer", Cyrodiil: "SendLetter" ... just x100 times easier to figure out what it actually do). 
     
    Limits : Vanilla quests will still send the vanilla courier from Skyrim to deliver Skyrim letters. Some generics ones like inheritance letters will be intercepted and replaced by a Cyrodiil counterpart, and others completely prevented (The ones sent to you when you shoot). But special ones, like the letter from the Jarl of Falkreath (Heartfire) or the dark brotherhood letter will still be sent through vanilla courier.
     
    Any suggestions / questions welcome.
     
    • 1 reply
    • 533 views