Jump to content

sviridovt

Developer
  • Posts

    169
  • Joined

  • Last visited

  • Days Won

    45

Everything posted by sviridovt

  1. Ok, can you pass me your airline id and the route so I can take a look? Thanks!
  2. Over the past few months I have been largely focused on stability improvements and generally making the game that already exists better rather than adding new features, I took a bit of a break from active development for a bit and wanted to fix some of the long term issues before starting to do feature work again. The vast majority of the things I worked on are things that probably few would have noticed, fixing common errors that people are seeing, stability improvements etc. However one improvement that I think people will notice that was deployed earlier today, is the redone Flight Research page, as while it has not changed in substance, it did see a significant speed improvement. The Flight Research page is perhaps the oldest part of the game, having been present as part of the earliest tech demos that I created when I first started working on the idea before there really was a game to speak of. I wanted to get a screenshot but unfortunately I couldn't get it to run to take a screenshot; maybe another day. And while it has certainly seen it's fair share of changes the overall structure has largely stayed the same with new things added on. Combined with that fact the fact that this was my first major long term project and code maintainability was not something high on my list of priorities (although I had been programming for a number of years at this point, my experience was limited to shorter term smaller projects) meant that as I was trying to add things to the page for the initial release it created a mess that was difficult to untangle. As such, it was time to restart and rebuild the page from scratch, although it may not look like it (and frankly I didn't touch the front end code too much on this one), the back end of the page is completely different. What's next? While I am looking to get back to feature work soon (and I will be making a separate post on that later, there are some exciting things I'm looking to work on), I did want to focus on some structural improvements that I'm taking time to work on. Not all of these are going to take priority over feature work but I do want to get these done Deprecating Event Manager The Event Manager is the beating heart of the sim, almost any event from new days to new flights to regular maintenance is managed by it. While it has served us honorably (and I am still proud of my college self for coming up with such an elegant and versatile solution to make the game event based), it has caused me a fair bit of headaches since we migrated to the new server. Further with some of the other things that I want to pursue the event manager as it works right now would cause some issues and require major changes. Thankfully there are plenty open source solutions to this problem and I have been working to migrating the event manager to a RabbitMQ based system which is going to serve us much better long term. Severing front end and back end Currently the game is written using the Django framework and uses it's template system for the front end with most of the front end done using server-side rendering. This fits what I like. I don't generally like writing a lot of front end code, and there is no love lost between me and JavaScript, I have always been a back-end developer and the more I can offload to the back-end the happier I am. That said, there is a lot of merit to severing the two and doing more work on the front end to improve the user experience. While I usually cringe at the thought of doing anything dynamic in the front end (there is a reason I haven't made significant changes to the scheduler or the seating configuration planner, despite not liking how either looks), I don't hate React. That's progress. I am looking to eventually move everything to a NextJS based front end with APIs being the primary ways of communicating with the back-end, and I have been offloading more and more work to APIs rather than server side loading using the template system. Adding multi-server support Currently there is no way for me to link multiple game servers together, while I could spin up a different server (as I do for lower environments like the beta and alpha servers I use for testing) these servers do not have any means to share data between them (like aircraft/airport data), or have a unified airline selection page. This puts some limitations on the work that I can do, for example if I wanted to introduce a feature that is not backwards compatible, it is currently impossible without doing a clean break (full server reset) which is also a very difficult process as it requires manually moving quite a bit of data between the two servers. Further if we ever do introduce a new game server (say in a different region) we cannot currently have them have a unified experience. To address this challenge I'm working on creating a separate service that can facilitate communication between services, as well as manage common databases like that for planes and airports. Admin Console As of right now doing any maintenance task is a pain! Creating a new world involves manually creating the world in the database and then running a script to set everything up; changing game data involves going into the Django admin panel which is basically just a database interface and manually setting everything up there. If there is any need to take a moderator action that also involves a database change (or at least logging in as the airline in question and doing it that way, which is the one thing that is currently supported). For my sake I want to create an admin panel to make these operations simpler. I hope y'all don't mind the more nitty gritty technical post, but I wanted to share with you some of the things that I've been up to/am planning. There will be another post talking about some of the features I want to work on in the near future but for now, these stability and other quality of life improvements have been my priority. Thanks! - sviridovt
  3. Ok, I have taken a look. It appears that there was an error with how per passenger calculations were being done. I just pushed out a deployment that completely rewrote the flight research page (unrelated to this issue, it had been in the works for some time to speed that page up) so please check if you're still experiencing issues. Thanks!
  4. Can you give me the error code so I can debug this further?
  5. Inter island would work, though for NYC area I imagine that would be a problem for when we move towards city based demand
  6. I am actually working on optimizing that page, you can see the work in progress on https://beta.airsim.world I still have some more work on it, particularly in removing a bunch of old code but should be able to release relatively soon.
  7. While this was originally a bug (the original design of the game shouldn't allow you to fly with negative cycles), I have decided to not patch it out until there is a better way to transfer flights over to another aircraft, once that feature is implemented I will patch out the ability to fly with negative cycles. As it stands, the main dis-incentive that exists right now from using planes with negative cycles is the higher cost of maintenance.
  8. Currently there aren't any plans to add dynamic demand based on specific dates/holidays. Maybe in the far future I will implement seasonality, but at the point at which you can't set schedules based on dates/holidays (which I think would probably be a bit too tedious), there really isn't much of a point adding holiday based demand. At present, passengers do have a preference for time and day of the week, but the exact date or season do not play a role in the passenger AI. For the demand model redesign (eta: eventually), the passengers are split into 7 distinct groups, the demand for each group is based on the airport, city and nation stats and will allow for some destinations to be primarily tourist focused etc. However even then I think introducing seasonality would make the game a bit too tedious.
  9. Yes, and in fact I do want to introduce time based political restrictions at some point, though this is not a priority at the moment
  10. We're back after the server issues over the past week! There was an issue with the SSL certificate on the forum which took the game server down as it relies on the forum for authentication. I have also released a small patch to try to fix the server crashes we've been seeing since migrating to new servers, though a long term fix is still in the works. Thanks!
  11. We're experiencing issues with the event manager (that manages the calendar and is basically the heartbeat of the game). I have something in the works that should be deployed soon. Apologies for inconvenience!
  12. Time outs are happening due to server migration, I am working on a deployment today to address it. Thanks!
  13. Updated the My Airlines link to point to the new URL, forgot to publish changes to the header last night.
  14. World B VI Timeframe: 1950-2010 World Speed: 10 Minutes/day (45 minutes/day until Wednesday, November 26th to give people time to join and set up their airlines) Starting Money: $5,000,000 Rules/Difficulty: Normal/5 Instant deliveries for new airlines Note: This new world is running on a new server, so please let me know if there are any issues. Please also note the URL change from play.airsim.world to prod.airsim.world. Thanks!
  15. I might make open worlds in the future but for now there is not a scale for that.
  16. Can you send me your airline link and I'll take a look
  17. Hi folks! A small bug fixing update, more substantive updates incoming soon as well as a devblog update. AirSimWorld 22.10.16 Fixed terminals not being named properly/causing crashing All terminals updated, so should be a thing of the past Lack of leasable gates causes a crash Trying to change an empty config now shows an error rather than crashing Fixed scheduler hour > 24 causing a crash Fixed empty price causing a crash
  18. The world is fixed now, sorry I forgot to save after changing the status to active (I usually first create the world as inactive so I can run my new world script and then activate the world). It's fixed now, and I will keep the 45 minute clock until Friday.
  19. World B VI Timeframe: 1950-2010 World Speed: 10 Minutes/day (45 minutes/day until Wednesday, June 15th to give people time to join and set up their airlines) Starting Money: $5,000,000 Rules/Difficulty: Normal/5 Instant deliveries for new airlines PS: I am also in the finishing stages of the new demand update, so watch this space.
  20. I am still planning on releasing the update (I know, its been a while but I am slowly working on it! I promise!), and World A would be re-instated then.
  21. World B IV Timeframe: 1950-2010 World Speed: 10 Minutes/day (45 minutes/day until Wednesday, December 29th to give people time to join and set up their airlines) Starting Money: $5,000,000 Rules/Difficulty: Normal/5 Instant deliveries for new airlines
  22. Can you send the link to the plane?
  23. I am working on pushing out a new update with the new demand model, I am holding the reset until after that update.
  24. Hahaha, yeah the algorithm in the term paper is indeed the algorithm that I use for modeling metropolitan areas, albeit with slightly different parameters (I also did get an A in the class/term paper, although I have a feeling the professor wasn't exactly looking too critically). The point you raise is valid and is actually a problem right now, since demand is based on the airports population within 50 miles, and there are 3 primary ways in which the new demand model addresses it. Although probably not going to be a part of this update, I do have runway information about all of the airports in the sim, as well as all aircraft have minimum runway requirements in the db, so it would be relatively trivial (and I indeed plan) to implement runway minimums such that you simply wouldn't be able to operate large jets out of small airports that can't sustain them. The new model has airport parameters that 'grade' airports as to how preferable that airport is, similar to how metro areas and nations have attributes. So pax will prefer certain airports over others, although that 'grade' might be influenced in later updates by infrastructure constructed as part of the hub (lounges etc.), there are always going to be some airports that are more preferred. Although this will be implemented in this update, assigning attributes to airports will likely not be a priority until after all the nations and major metros have had their attributes set. Until then the attributes will be neutral. While not all passengers care a lot about the quality of the airport (lest LGA not exist), the premium passengers do. All of which is actually quite realistic. I plan on implementing specific airport restrictions into the sim in a future update, this includes things like restrictions regarding international flights, maximum distance requirements (take a look at LGA or DAL for instance), as well as airport closure/opening times, maintenance or runway restrictions etc. As a rule I generally try and avoid arbitrary restrictions on what you can or can't do in the game in favor of trying to model the realistic obstacles that prevent real world airlines from say operating out of Teterboro or the like.
×
×
  • Create New...