Leaderboard


Popular Content

Showing content with the highest reputation since 01/18/2018 in all areas

  1. 6 points
    iamallama

    Devblog 91: The SW writeup

    Hey all! Sorry for the delay this month (and last). I've been having some crazy fun at work and home and have been WAY too busy to do much recently. Some stuff got flipped upside down at work and now I apparently am running our entire project. At half staffing too. I'm now the project manager of a pretty large project, so promotion, even though it wasn't in a good way (but I can't talk about that). Needless to say, it's been kind of hectic recently, but things are starting to normalize like they usually do. I have lots of upcoming travel planned and more work than I have time for. And by the time I get home now, I usually don't even want to look at a computer. Supporter Weekend writeup If you don't want to listen to me rant about the issues we had, skip everything after the first sentence or two. As for the game, I didn't really comment much last month, but the supporter weekend happened. I had a bunch of issues for the first day or two, but we still had a decent turnout and stuff was done. Starting out we had an issue with the database. This started because I was missing a column in the production database for something I added like a day before (this is why feature freezes are necessary). And because I wanted to do things as complicated as possible, I thought it would be a good idea to move the player saving-to-database stuff to a background thread. Unity is single threaded and so queries on the main thread will end up blocking it until they are done. No bueno, as could be seen later on (it's coming). The issue here though is that when not using the main thread, Unity doesn't provide any sort of standard logging or error reporting. So I didn't even know that the process saving players was failing as I was getting no error reports. And since the issue wasn't happening on every query, some queries would work, some would fail. This was what caused issues like duplicate attributes or things in inventory disappearing on login (they existed while you were in memory in game, after logout they weren't saved to the database, on next login it didn't find them). So the first fix was to move queries off the background thread into the main thread. This showed there were errors which I was able to fix pretty quickly. However, that introduced issue number two. The queries were slow. Which is exactly why I was using a non-blocking background thread. They were so slow in fact that it would take about 2 seconds to save a single player. And this wasn't because the queries were really that slow, but more that there are quite a lot of queries that need to be run for every single player. Every single slot in your inventory is another row in the database. Every single attribute on your player is another row. Every single item you wear is another row. Every single item in your bank is another row. And there isn't a simple magic bullet fix that can help here. Players simply use a lot of information. The player save process usually runs every 30 seconds. When testing this there were about 12 people online. So the entire game would freeze up running queries for about 20-25 seconds. You could play for 5-10 seconds and then everything freezes again as it kicks off the process again. Usually you would enable transactions which is a way to tell the database "I'm going to make a lot of changes, queue them up in memory and I'll tell you when I'm done so you can save to disk." But the queries already use transactions. Or so I thought. Turns out it wasn't, or really that it was done poorly (my fault). So the first thing I did here was to properly implement transactions. This helped a lot, got the queries down from around two seconds per player to around 300ms (0.3 seconds) per player. Really though, this is still unacceptable. Every 30 seconds the game would freeze for a few seconds and the freeze time would grow pretty steady the more players that were online. Now I could be content with this and just move the few seconds of process back to a background thread, but that wouldn't last for very long before it was an issue again. 100 players online and I would run into the same issue of it taking 30 seconds to save in total and the process kicking off again before the previous one started. So, what's the issue now? Seems as though we are still running WAY too many queries. So let's combine multiple queries into one. So now I went through and combined all the inventory queries into a single query. Now when saving a player, instead of running one query for each player inventory slot, I run one query total that just has all the inventory items. Update the game and that gets the total query time down to around 100ms. Now I can support up to approximately 300 players online using a background thread. But I'm still running around 12 queries per player online. One for each table that makes up the player's data. So what can be done now? Try to combine queries per table across multiple characters. So this was the big update I ended up doing when I had to rewrite most of the player save process. Now it loops over all the players and saves all their data into a massive list, one list for each table. After processing all the players, it chops up that data into massive chunks. Each of these chunks represents all the data for one table across several players. It builds the necessary queries and runs them, saving a hundred or so rows to the database at a time. Now the entire save process for roughly 10 players was taking around 50ms (0.05 seconds). And when a few more players were online, the time to save increased by around 10ms because the number of queries needed didn't really increase by much. So this is where I ended up. After that, I left the player save process in the main thread to monitor it and it never really jumped too high. After that there were a few small issues with the server freezing (seemed to be a memory leak somewhere, I assume it was a change I have made) but a quick reset and it would be online again for a few more hours. Changes After all that, things ran pretty smooth. I hope you all got at least a few minutes to run around and attack things. I created the thread for the "Big list of issues" and got some responses. I have spent what little time I have going through and fixing a few things. Then I was waiting for an update of the framework I use that revamped the skills system to make it more flexible. Now I am working on converting some code over to the new version and trying to change a few things. Next Supporter Weekend I know you all just want to play and I'm trying to open up the game more. There isn't a date set yet, but I am aiming for near the end of March or early April. This will mostly be the same, just more stability and testing changes. I'm not planning on any major features in the near future, just the bug fixes from the recent supporter weekend and maybe some skills as I play around with that. Also, I'll update the roadmap in next month.
  2. 3 points
    iamallama

    Big list of issues...

    I'm starting this as a single place for all the issues people have been writing down or have had. Things should be pretty stable right now. If there is anything you know of that still needs to be fixed or is bothering you within the game as it stands, please post it here. As I read through the issues, I'm going to update this main topic, coalesce them, maybe make a small response to some and then delete the sub-post to keep the thread clean. This is NOT a discussion thread here so please don't ask questions or make suggestions on features that aren't in game yet as I will just end up deleting the post. Initial Bags disappear too quickly. Get all items from bag button because it is way too clicky The clicks on the items are throttled to prevent spamming the server (it ends up only spamming you instead of sending a network message every click). I found this frustrating too and so I'll increase the click rate. I'm sure there could be some additional balance stuff related to the timing. Ran into an issue with mobs who would not aggro onto me when I used my spell AoE from a distance, they would register that I had attacked them, but would not run towards me even if I was standing just beyond melee range. Monsters get stuck in some attack/idle loop. Need to research why (likely something like missing a return statement in one or the other). Press enter to submit login form. Autotarget range is way too much. There technically is no range limit, but yea, there needs to be one. The range limit is based on what monsters you can see around you due to proximity which is slightly larger than the screen. Issue is that I can really only get distance "as the crow flies" and not pathing distance. So while the tab distance could be shortened up, it doesn't mean that it won't path you half way around the world through a maze to get there. Items don't stack up when you drag and drop from Inventory to Bank. Dark Fatty harder than Fatty but they give the same amount of Exp Balance Save full screen preference because I am always pressing alt+enter. Doesn't save preference. The full screen was added in later from people complaining of it being too small. I need to save several preferences. After you write down a message and press send it via enter key, I should be free to move and not click away to lose chat focus. Yea, the chat focus thing was annoying AF. I need to see if this is something I'm doing (from the framework) or a result of unity's input and fix it. @Hunter Armor says it increases damage when it really increases defense This was just my mistake. I have to type in the text for the tooltip and it was likely just a bad copy/paste. Green Armor can only be equipped as an outfit (probably for testing) Yes, I forgot about this. It was for testing. Outfit armors provide defense They technically can, I just forgot to reset the bonus values when testing outfits. Pets HP get reset to 100 when summoning and re-summoning Evil Fatty is dark and Dark Fatty is evil-colored These are just sloppy recolors and a matter of opinion. I think I originally made a dark/evil golem that had comparable coloring, but renamed them for stones. The Pet (Dark/Evil) Bushys have the description "A Baby Skeleton Pet" The framework pet is a baby skeleton. I just forgot to update it's description. @Archangel Can only have one quest at a time I remember this from before, but forgot about it. For some reason this is something odd in the framework and haven't gone through to fix it. @Yuval2B While moving I can't close my pet, it says the pet is fighting. But actually I'm just moving. I'll check into this I don't know if you already fixed that, but happened to me that I went to the mail thing to send someone a msg and items, I searched his name and then the window stuck and I couldn't close it. I'll add a close (X) button to the search window
  3. 2 points
    iamallama

    Crafting?

    yea, I plan on having it setup where you have to get items from all over and possibly have some items made via combining like A & B = C; A & C = D; C & D = E and E x3 = F...etc and you have the choice of going all over the world to get the base items or you can build them from even more base other items. What I'm not a fan of is that stupid mechanic where as things get further down the chain it ends up taking hours or even days in real life and you can always pay premium currency to make things go faster. I'm also fine with trying to come up with a mechanic like a blacksmith has limited time and everything takes like 1 minute (or a short time) to process. But they can only do one thing at a time. For everyone. So basically to get something crafted, you have to add your stuff to their queue and wait until they get to your item. There even could be some stuff like the busier the smith gets, maybe he gets a few apprentices to help him out. The more apprentices he has the faster he can get through his queue, but he has to charge a little more to pay their wages. There could be multiple smith shops also to combat them being overwhelmed constantly. I'm sure we can come up with something fun eventually, even if it takes a few tries.
  4. 2 points
    Lol, you literally made me throw my phone across the room. The camera fell off the phone lol.
  5. 2 points
    Hero

    Hiring Scripters?

    I'll pay your wages in waffles.
  6. 2 points
    Hero

    Possible New Classes

    Or maybe you start as nothing, classless (like me at a restaurant) - then you build your character into the class you want. That'd open up to a lot more customization to your character(s).
  7. 2 points
    I know this is old but thumbs up for Mathcong for the profile photo. I just greatly appreciate his art.
  8. 2 points
    Aridosa

    Psst

    Psst
  9. 2 points
    iamallama

    Dev Blog 90- Bugs Bugs Bugs

    My signature has one that doesn't expire.
  10. 2 points
  11. 1 point
    Kainui

    Crafting?

    I'm a fan of crafting where the overall process of collecting the parts by killing monsters, scavenging plants or mining items in the world, doing things to the parts with stuff in the world like an anvil or magic stone at some location with tools you've made or collected, and then combining them yourself is the best way. I don't want to just get items and give them to some blacksmith and have him just do it, that's lame. It's a game, I wanna be the one who makes the stuff!
  12. 1 point
    Seph

    Artifacts/Extra Equips

    I quote @Aridosa "I would like some stuffs please and thank you." Not something that needs to be early game, but maybe add more equip slots much later on to keep the grind going. I put this in the wrong place lol, please move thanks.
  13. 1 point
    KingAruthur

    Hiring Scripters?

    This is why I like you . No homo
  14. 1 point
    KingAruthur

    Hiring Scripters?

    Just wondering if any other scripters would be ever hired to help Iamallama do his work, i'm not specifying this towards any time period for the game. Just wondering if this will ever be a possibility; I don't want this game to be a unfinished piece of art like many other games. I know that Iamallama looks for quality work but maybe scripters can help to optimize scripts and fixing bugs. Many large games have script teams to help fix errors or any bugs that occur. If the game becomes released and many bugs occur this will be a massive problem for Iamallama to handle by himself. Of course thats what tests are for but who knows what can happen when 100 players are on at the same time. Plus no one likes when your favorite game is under maintenance, just wondering. Signing off- King (Feel free to ask questions)
  15. 1 point
    Tealbot

    Possible New Classes

    Thanks. That's what I was curious about.
  16. 1 point
    KingAruthur

    WoT Mobile

    Yea I've always thought about a mobile app for waves of time. It would be very nice on a tablet with finger controls or a stylist pen; this is obviously something later in the stages of game production if its going to be a possibility. Also I liked the fact that you mentioned playing in a relaxing hot tub. Honestly I love that idea I would just add some Champagne to the picture,
  17. 1 point
    Seph

    WoT Mobile

    It was mentioned awhile back that it’s possible WoT could come to mobile sometime later on. I’d mainly play it on my laptop, but the thought of being able to go out somewhere to eat and you’re waiting for food then you pull your phone out and start playing WoT is pretty cool and convenient. If you’ve got a water resistant phone you could be relaxing in a hot tub while playing the game. If it ends up in the AppStore it will be the number 1 game, at least to me. The only game I’ve played on my phone recently was Star Wars Knights of the Old Republic, as it’s not a poorly optimized free-to-play trap with energy systems, timers, and pay-to-win elements.
  18. 1 point
    Penguinocity777

    Crafting?

    I actually really enjoyed the crafting system from FO. Yes, it took longer than all hell, but it felt rewarding to have spent all that time mining for ore and crafting it into chunks, then half plates, then full plates, then reinforced plates, then using the shell, and so on. Yes, it does sound like way too many steps, and often it was. But I did enjoy it, so I hope there is some kind of similar system in WoT, more just for the collection of the right materials (hopefully from mining for some of it), and then giving it to the blacksmith, or even having your own anvil that you can work on, instead of the million steps to make one portion of the armor.
  19. 1 point
    KingAruthur

    Possibly Silly Question

    True, thats what the main difference is between FO and Wot. FO was wacky with lots of different added things which got confusing. WoT focuses on a story and keeps things real by avoiding skins from facebook or twitter
  20. 1 point
    Archangel

    Possibly Silly Question

    Hey there @STARFOXX. A common misconception people have when first checking out this game is that it is a sister game to FO. However the scope and style of the game has a vastly different approach to the older style of FO. This game will change many things and is its own entity in the gaming world. You may see some things that are similar, but mostly you should expect major differences between the two games. The only similarities between the two games are the people involved in the community. There may be easter eggs in WoT referencing FO, but again, the games are not the same and should not be treated as such. The stories, gameplay, monsters, and design will all be different. This game will have a bigger scope and focus. In retrospect, you should expect this game to vastly improve upon the experience you may have had when playing FO. Hope this helps answer your questions.
  21. 1 point
    Seph

    Dev Blog 90- Bugs Bugs Bugs

    Edit: fixed https://discord.gg/w2YenT2
  22. 1 point
    Riptide

    Dev Blog 90- Bugs Bugs Bugs

    Could I please get a link to the discord?
  23. 1 point
  24. 1 point
    fox

    Dev Blog 90- Bugs Bugs Bugs

    We should fry the bugs and eat 'em!
  25. 1 point
    KingAruthur

    Dev Blog 90- Bugs Bugs Bugs

    XD lol
  26. 1 point
  27. 1 point
    UNIT15

    Devblog 89: Bank

    This is looking amazing, im still hanging on this amazing game with it amazing community! I hope we will see an alpha this year, that would be truly great, and if it does happen we as a community can help with bugs and report frequently of the games errors and such. Well i can see all the hours i will put in this game already,a mmorpg like this havent been around for ages! Looking forward to this year!
  28. 1 point
    Aridosa

    Happy Birthday JirroZ!

    Happy Birthday JirroZ!