Keenan

Developer
  • Content Count

    2036
  • Joined

  • Last visited

  • Days Won

    33

Keenan last won the day on February 19

Keenan had the most liked content!

Community Reputation

3008 Rare

About Keenan

  • Rank
    Villager
  • Birthday 07/02/1981

Profile Information

  • Gender
    Male
  • Location
    (final String _locale)

Accounts

  • Chaos
    Keenan
  • Exodus
    Xorith

Recent Profile Visitors

6050 profile views
  1. Quick update as folks have been asking. So we had a rather rocky start to Jackal being in AWS. We picked too small of an instance size to start with. Samool made some server-side optimizations to help with a bit of lag and resource usage. There were configurations required to run a production-level Wurm server that did not show up in testing. This lead to crashes, lag, and more crashes. Jackal couldn't remain up for more than a day without issues. Fixes for all this went out earlier this month, but then we had a rather rocky update last week which resulted in several restarts - not enough time to measure performance and stability of Jackal to any reasonable degree. Our next patch is scheduled for this coming Thursday, which will be over a week of up-time for all servers - including Jackal. That will help us determine if we're stable enough to bring Celebration into AWS. If we're not, then we'll consider other options for the server, such as relocating it on the Hetzner side of things to see if it's hardware.
  2. I'll make an update in the post linked above as it's more recent.
  3. So let's say you have an average repair skill and no bonuses. One particular item is damaged enough that you get a 5 second timer (server-side, client will always show a number a bit off due to round-trip time and whatnot). That's going to be 4 QL reduction ticks and then the damage gets cleared. So if you have a metal bonus and Vynora bonus to drop it down to 4 seconds, that's one less QL hit. If you have high repair and/or bonuses that push the repair timer super low, then you bottom out at the 2 second limit where only a single tick happens. Time only affects how much damage is ticked off during a QL reduction, it doesn't affect the amount of QL reduced by a tick. This way if you cancel the action, some damage would have been removed and some quality lost based on the number of ticks you allowed to pass before cancelling. (I missed that in my original explanation of how it works, it still sets the damage to 0 during the last second, so the final "tick" is basically a freebie - hence the bug).
  4. Basically with a high enough repair skill, a special metal bonus, and being a Vynora follower, yes - you can reach a point where the bonuses do nothing to further reduce the timer. 2 seconds is the smallest it will ever get. Since the quality reduction is ticked on a per-second basis down to the last second (i.e. 2 seconds = 1 quality loss and then the damage removal) then the bonus does work here. We're not pretending anything. We totally understand that we snapped people back to reality and quite hard. Our biggest issue were people who erroneously said our fix affected *other* items, which it did not. We are actively seeking thoughts and ideas on how to address moon metal items and steel items to make them close to as viable as they were before without the bug in place that made them impervious to quality reduction. We may not get there by everyone's assumptions, but we can at least try to make changes that make sense to the majority of people.
  5. I've been reading this thread, and will poke some suggestions Samool's way. As I said, we're not opposed to making tweaks or changes. We just need to carefully weigh what we do. If anything, the ranting about iron being affected proves that even the smallest touch to this code can spark a huge outcry. High repair skill affects the quality reduction, so there's still a benefit. I suppose it's just less obvious now that there's a minimum timer on all items. In fact after looking at the code, I'm going to mail you all my stuff to repair. O:)
  6. Well the special metal bonus - some of them anyway, like moonmetal and steel, they still reduce the damage taken on use. The Vynora bonus does become meaningless with a high enough repair skill, I feel that's an acceptable situation. There's other bonuses for being a follower of Vynora, so one perk isn't so bad. We're not opposed to making tweaks to these things. The main reason for the replies in this thread is to get the focus off of what the problem is not and onto more constructive thoughts regarding what can be done to make moon metal and steel more appealing again - within reason of course.
  7. What's annoying is that I've poured over this code, and you and Beewolf here are acting as if we're covering something up. Why would we? The code was (pseudo to avoid pasting actual source) (note it's 20.0 because it's tenth of seconds): time = Math.max(20.0, long equation here taking repair skill, damage, and difficulty into account) time *= MetalBonus * DeityBonus And it became: time = Math.max(20.0, long equation blah blah * MetalBonus * DeityBonus) That's it. And I checked the metal bonus code, it returns 1 for iron - which means it does absolutely nothing to the time. The deity bonus is the same, if you're not Vynora it returns 1. Otherwise it returns less than 1 which reduces the timer. There's absolutely no other changes to the repair code this update. It cannot affect iron... at all. There's no possible way. So what you have to be seeing is just the RNG of repair. Period. So please put this to rest. There's literally nothing else I can show you outside of actual source code to prove that this update is precisely what it says on the tin.
  8. You're just wrong. Sorry. There's really nothing else to discuss on this. Move on? Sounds good. Basically, what I'm saying is it's in the imagination of the people experiencing this. I won't sugar-coat anything. I think this is enough response from us. You call us a wall, but the pot is definitely calling the kettle black on this one. Unfortunately it hurts credibility when it comes to reviewing suggestions...
  9. Real talk: You can call it what you think it is, but that doesn't make it what you think it is, Wilczan It's a bug fix. It affects special metals only. That's what it is. Any other interpretation is in error. Quite simple really.
  10. Let's call moonmetal/steel bonuses "special metal" bonuses. What are these special metal bonuses? - Less damage taken on use and a slight modifier to the repair time of an item. (Fun fact - bronze also reduces repair time by a small amount!) As for how repairing works: 1) Timer is created. 2) Every second, the quality is updated based on repair skill and the repair rune. 3) At the end of the action (the last second), damage is set to 0. When you start the action, a timer is created. Before the change, the timer was clamped to 2 seconds while taking the repair skill into account, and then modified by the special metal bonus and then, most recently, by the Vynora bonus. This resulted in a timer that dropped below two seconds. Now the timer is clamped to 2 seconds after the modifiers are applied. The repair action has two parts - one that checks for a second of action timer tick, which updates the quality of the item, and one that detects the end of the action (or the last second), which sets the damage to zero. Due to the timer being less than two seconds, the quality update was never happening for these items. The result being a free repair without quality loss. The effective result of clamping the repair to 2 seconds is that the quality loss will always tick once, with the final second being used for the damage update. The damage update technically happens regardless of how much time is left on an action - so even sub-second timers would result in the damage being reset to 0. So what about quality loss? Well this is based on two things as mentioned above: Repair skill and the repair rune. It has never used the special metal bonus to calculate quality loss. Therefore it was never a bonus to have special metals reduce the quality loss of a repair tick. The bonus there is, as mentioned above, in reduced damage on use. That's the way the system works. I just spent my lunch break combing over it line-by-line to make sure my explanation was accurate to the code.
  11. Yes, we will be performing a restart to apply fixes for this and a few other issues that cropped up. Currently waiting for fixes to be made an for any other major issues to show up before we burn a restart.
  12. That's what it is for sure. I've just heard the term "uplift" used when referring to cloud migrations. I really do want to temper expectations though. I've been quite cheerful in my posts because I've been working on this for a while and it's great seeing it work and work so well. Yet the reality is that I have anxiety about server performance and that the first servers will have growing pains while we optimize the instance sizes and code to match expected performance. People will no doubt be keen to notice even the smallest delay in a right-click menu and possibly assume this is all for the worst. That's what I'm most afraid of. So yeah, for those following along - just because it works well in testing right now doesn't mean that your server will uplift painlessly. We'll need patience and we'll handle issues as they arise. That's really what we need is faith in us handling the issues that do arise as quickly as possible.
  13. I've never given any indication that we'll see huge performance increases on the server side. In fact I've been careful to temper things - we're very cautiously looking at the I/O latency. I'm very much aware of the limitations of AWS. Samool and I agree that issues we find should likely be code-fixed though, with hardware being a second option if a code fix isn't possible. We've already realized a number of optimizations to the Wurm server in the lead up to this. The main draws for AWS: 1) Scaling - while we cannot scale the Wurm server itself (i.e. add more instances to Xanadu to make it lag-free) we *will* be able to scale the instances to match the demand (i.e. scale up a low-pop server if needed). 2) Infrastructure as Code - this is huge for us. Especially with Steam WO on the horizon - the ability to stand up a new server quickly will be a huge plus. 3) Disaster Recovery & Prevention - Another huge thing for us. I've practiced on our test servers and I was able to take a test server down completely - kill the entire stack - and revive it from backup (which is stored in S3) in about 30 minutes. Right now a major disaster would result in quite the extended downtime to bring everything back. We do have backups and they are stored off-site, but configuring a box from scratch and restoring will take hours each server. Jackal was stood up in half an hour. 4) Network - Hetzner has had a number of issues over the years with routing and stability. Just recently we were offline because a router close to our rack went offline and it took them hours to fix the issue. This isn't the first time. 5) Maintenance - Right now we're looking at some serious maintenance on the Hetzner servers. If we don't move to AWS then I'll have to begin scheduling multi-hour downtimes per server to start replacing hard drives. The process is tedious - with a support ticket placed to replace one, then rebuild the RAID, then replace the other drive and again rebuild the RAID (Edit - Not to mention the chance the rebuild will fail and we'll have to resort to a complete reconfigure and restore.). With AWS, any kind of maintenance required will take much less time due to our infrastructure being what it is. Again - Jackal was 30 minutes. I expect Xanadu to take me up to an hour to uplift, maybe longer. That's also how long it'd take to tear the server down to nothing and stand it back up again - completely replacing the hardware underneath it at the same time. AWS is not going to make Xanadu's lag disappear, since that lag is caused by code issues. You cannot throw hardware at code issues and hope it goes away. We need to do a better job at managing the main thread of the server, and that's where our focus has been. As for the costs - the owners are aware of the increase and still support the move.
  14. Hello all! This morning we brought Jackal into AWS. Everything went smooth and we're now monitoring the server for any indication of bumps in the road ahead. \o/ You may be wondering "But Jackal is over?" - and yes it is. We need to keep the server hot for Jackal transfers right now, and since you all were so busy on there creating items and building things there's plenty of data to poll and help us see where any bottlenecks may be. The true real test will be Celebration, but this gives us insight on what needs to be changed or optimized before we go that far. Right now the tentative uplift schedule for Celebration is early to mid March, but this will depend on our findings over the next few weeks. We'll give a more firm date once we have one. We are not looking to rush this!
  15. So essentially, you want a spell that makes actions slower. To what end?