Jump to content

sviridovt

Developer
  • Posts

    273
  • Joined

  • Last visited

  • Days Won

    67

Everything posted by sviridovt

  1. While I do long term want to do some inactivity cleanup, the the ability to 'freeze' airline would be a technically complex feature to implement and also one that I don't entirely agree with. The point of the sim is to try and create as realistic experience as possible, and 'freezing' your airline introduces some huge caveats into that as well as continuity of the game world, for example, do your planes still age while your airline is 'frozen' as aircraft age has a huge impact on maintenance cost, reputation and other aspects of the sim, the other problem is that it risks flights/airlines constantly disappearing and reappearing which worsens the experience for other airlines. For cleaning up inactive airlines, I do agree that long term this is something I want to do, though the exact mechanism is yet to be decided as I prefer to not implement hard and fast rules in favor of more realistic aspects that would drive activity (ie what would realistically happen if an airline stopped evolving etc.)
  2. Would you mind splitting these into different threads in the suggestions subforum? That way they can be discussed and tracked on their own, rather than having a long wishlist which makes it hard to discuss any one thing in depth.
  3. Yeah, the exact aesthetics are still a WIP. I do think I'll have it line up top to bottom rather than side by side just just to be more small screen and mobile friendly (I realize the sim as a whole is not particularly mobile friendly, and while full support is not in the plans yet I am trying to be more conscious of it in my decision making) but the aesthetics will improve. As far as information goes, would there be anything else that you'd like to see added (or added as an option, I am considering making it an airline config that you can put different kinds of information as the advisory panel). Thanks!
  4. While working on a new fuel model I wanted to add some kind of a graph to the dashboard to show the movement in fuel prices, however I didn't just want to tack it on. I wanted it to be a well thought out part of the dashboard. The problem of course is that the dashboard itself is not incredibly well thought out. In fact it hasn't been touched since the initial release of the sim, when it was hastily created just days before public release just to not have a blank home page, the whole process probably took about 5-10 minutes. It wasn't meant to be a permanent design, just more of a temporary patch until something more robust could be designed. I have thought about updating it from time to time (including a customizable card based system) but it was just never a high enough priority. Until today, I wanted to show a mockup of a dashboard design that I'm considering, walk y'all through it and get some feedback. (that said, please do ignore some of the graphical issues, if the scheduler has not made it clear, I am no graphic designer) The Info Bar: The idea with the top bar is to provide a quick bird eye view into the key metrics for your airline, the long term vision here is that you can click on a given metric to get a modal to show you more details about whatever it is you clicked on. The Graph Module: The graph module will show you graphs related to your key financial metrics, you can click on the different metrics on the side to get a different graph. Notification Pane: The main core of the dashboard is the notification pane, the idea here is that it should give you a prioritized list of information of things that you can take an action on immediately. The idea here is that it would also replace the current mail system which is another under-developed component of the sim. Within the notification pane you would have 3 different notification types: Warnings, which will always appear at the top and represent the most important actions that need to be taken immediately (examples include aircraft with expiring leases, flights cancelled due to maintenance related issues when that's implemented etc.), info panels which will present currently actionable but not necessarily urgent issues, and advisory panels that present information that do not necessarily require any action but are useful to keep and eye on. Forum Panel: One of the goals I have is to increase engagement on the forum, I really value having feedback and want to have more people involved in the planning process (hence the point of these posts). While we have a decent player count, very few engage in the community channels like Discord or the Forums. The hope is that by having the forum panel on the dashboard this can promote engagement on the forum. Competitive Landscape: The ultimate goal of the sim is to promote player engagement with each other and the broader sim world, to this end I aim to introduce the competitive landscape panel which will show you what your competitors are doing as it relates to your airline. The current plan is to have the panel display when one of your competitors updates anything on one of the routes that you operate (like increasing capacity, or starting a competing service), as well as other information that other players are doing relevant to your airline. Airline Widget: For the competitive landscape cards and other places in the sim, it's not always ideal to have the full 250x50 airline logo to display, for this purpose I aim to introduce the airline widget as another logo type, by default it will be the first 50 pixels of the 250x50 airline logo, though I aim to introduce this as one of the first Patreon exclusive features whereby Patreon supporters would be able to upload a custom widget. Monetization strategy is something that I've struggled with, mostly due to my deep-seated opposition to having any Patreon features that would provide an unfair advantage, yet the fact is that ads on their own are not enough to sustain the sim and I'm currently paying for it out of pocket hence I'm hoping that introducing some Patreon exclusive features for graphical customization that do not affect game play is a way to attract more support. Please let me know if you have any feedback or other suggestions on reinventing the dashboard. Something I've missed or you'd like to have on the dashboard? Let me know!
  5. Hi! Employees are recalculated once a quarter, so this screen will update on the first day of the next quarter!
  6. Hi Folks! I wanted to take some time to share some of the big things that are coming down the pipeline in the months to come. Although given my IRL time constraints I can't commit to a timeline, I do want to let you know what my plans are and what I'm working on. Some of these are game play features, while other things are more backend 'in the weeds' type changes. Over the last half a year or so, I've been working on major stability improvements and changes, and I hope that y'all have noticed the difference. As most of these changes have now taken shape (although the work of improving the existing game is never done), I can now focus more on adding new stuff to the game. This is a first in a series of posts that I hope I can share more details of how the sim operates internally, I'm hoping to be able to share more 'behind the scenes' topics, potentially diving into the more technical aspects. Let me know if y'all want more of that type of content. Keep in mind that this list is not in any kind of a priority order, and is mostly my thoughts of the things I want to work on. Event Manager Deprecation. One of the main parts keeping the game moving is currently the event manager. At present the heart beat of the entire sim, managing all asynchronous operations, everything from keeping the clock moving, to recalculating the flight demand, to handling aircraft maintenance etc. And overall, I'm pretty proud of my college self for developing the solution that I did to a fairly non-trivial problem, it has for the most part worked and apart from a few hiccups didn't cause too many issues. It does however, suffer from a scalability problem and is generally incompatible with some of the long term changes that I want to pursue, and as such has to go. I have already finished the replacement and just require further testing and infrastructure changes to get it out (I will make a whole other post comparing how the new solution will operate so watch this space. My testing server (which still lives in my parents place, about 500 miles away) is experiencing some hardware issues that have prevented me from being able to properly test everything, I'm hoping to get these issues resolved next weekend so hopefully I can get this out fairly soon. Overhauling Fuel. The first gameplay feature that I want to change is to overhaul the fuel and maintenance aspects of the sim, first I want to add randomness to the fuel prices. Currently, fuel prices are stagnant until 1970, and then increase linearly to 2020. The current system has a few problems; first, it's not using inflation adjusted values while the sim does not model inflation. I have gone back and forth on the idea of adding inflation to the game, on one hand my goal for the game is to create the most realistic experience, on the other I don't want the sim to be tedious and to force the players to constantly increase prices just to adjust to inflation. This is why ultimately I decided against modeling inflation at least for the foreseeable future. Instead I will adjust the fuel prices to account for lack of inflation, aircraft prices are currently pegged to 2018 inflation, so I will do the same for fuel. Second, the linear nature of fuel prices makes it extremely predictable and non-challenging, to address this I want to add some noise to the mix that should model variability in fuel prices, with periods of low and high prices. Although for now I'm limiting the model to this, long term we could add features such as fuel hedging and other features to expand on this volatility. Overhauled Aircraft Maintenance. Another thing that's on my radar is an overhaul of the maintenance system. This system has largely been untouched since the original release and I want to add more details to it. For one, I want maintenance to take planes out of commission, my current plan is to allow an airline to replace a plane going into maintenance with a plane that doesn't have any flights of the same type/configuration (similar to what real airlines do), this would add a new mechanic to the game of planning your fleet around redundancy rather than stuffing as many flights as possible onto a plane. Further it would allow airlines to better spread flight cycles around their entire fleet which will become important because, I want to fix the long running bug whereby aircraft with negative cycles still fly (technically it's not a bug, since I have intentionally left it in until such a time that I could redesign that system, but still). This does mean that as part of this I want to allow airlines to move schedules between aircraft to allow for better fleet planning. Further, I want to incentivize fleet planning by making the per type fixed costs a lot higher than they are currently, increasing the penalty in staff, as well as making that whole interface and breakdown clearer by creating a maintenance section in the UI to summarize all of that data. Long term the plan would be to allow airlines to build maintenance bases and allow players finer control over the maintenance schedule. New Demand Model and Return of Connecting Flights. Connecting flights were turned off a few months after the public launch of the sim, after all the processing required brought the server to it's knees. It was meant as a temporary fix. That was 4 years ago. I have made a number of attempts to reintroduce connecting flights and some were more successful then others but nothing that I was confident with releasing. The problem is that the architecture of how we store flight data (SQL database) is inherently not well suited to modeling connections. As such, my plan currently is to export all demand calculations to a different service I plan to launch (called Atlanta service, get it?) which will utilize a graph based solution that should be able to handle connecting flights much easier. The idea of putting it into a different service will also allow me to use Rust which should hopefully allow me to optimize performance further, which is important as the demand model is by far the most resource intensive part of the sim. As far as demand model itself, I have long worked out the design for the new model, that will model passengers based on 7 different passenger types that will prioritize different aspects of what your airline has to offer. I had already programmer a large chunk of this but had to pull the plug after it got bloated. Beyond the code however there is also the challenge of data collection, the model adds a lot of fine grain data to different cities, airports and nations in order to accurately represent the distribution of passengers and passenger volume. Although I plan to automate a large part of this work, there is a significant manual component to this that will take time. Something else I'm exploring related to this is the use of an AI based database system (such as MindsDB) to provide for a better simulation, though this would likely not be a part of the initial release of the new model. IPBoard Deprecation. One of my goals is to remove our dependence on IPBoard for authentication and to eventually deprecate it entirely. I want to more tightly integrate the community into the sim, however as it stands this is difficult to do. For one, IPBoard is written in PHP which although was my first language I ever learned, is one that I have not used for anything serious in close to a decade and I don't wish to revisit, second is that some of the features that I want to add would require purchasing additional subscriptions that I frankly find overpriced for what they offer. Further, IPBoard has increasingly put their resources towards their cloud offerings and makes the prospect of investing significant work into integrating with it further more precarious. This deprecation as such would require 2 parts, first is severing authentication from IPBoard, which is something that I plan to do by moving towards an open source IAM solution (KeyCloak is my current thinking) along with a new service to handle all user data (the idea would be to extract a lot of the data currently kept on game server, like world records to allow us to more easily swap game servers or even have multiple game servers with ease), and second to switch a forum to a different solution. As of right now I'm considering a few options though leaning towards Misago though again, the final decision has not been made. It does however offer a number of advantages the core one being that it's based on the same Django tech stack as ASW, making it easy for me to make any modifications I need with minimal work. I hope you're excited for what's coming and please let me know if you want more of this type of content. Thanks!
  7. Can you ping me the airline and route? I can take a look. Value metric plays a serious factor so I'm guessing it's something to do with that.
  8. Yeah, that's not supposed to happen. Can you ping me the airline link and the airport?
  9. Yeah, I do need to rebalance the finance system. It's on my to-do list. Right now I'm prioritizing a few things: 1. Adding flexible fuel costs, this should specifically make the sim more challenging particularly in earlier years, make the sim slightly more unpredictable with periods of high/low fuel prices, and fix a long running bug whereby the fuel prices don't update properly 2. Add better modeling for maintenance, more control over how maintenance is to be done and tie it in more into the reputation system. Also stiffen the per model fees to encourage better fleet management, and have age play a bigger role (currently cycles impact the cost, I also want it to increase the duration and frequency of maintenance as well), as well as develop the interface for the same 3. Make maintenance take planes out of commission, the current plan is to allow you to use another plane with the same configuration and engine that does not have any flights to swap flights when one aircraft goes into maintenance. This then has the benefits of forcing you to balance your fleet and plan ahead, as well as spread the cycles evenly along your fleet. 4. Allow you to move flights from one plane to another, this will also come with re-enabling cycle enforcement whereby planes exceeding their maximum rated cycles are taken out of commission. This is a feature that is mostly blocked on the large amount of UI work required, as such I'm avoiding doing it :P
  10. No, seats can only be selected from a preset list.
  11. Have moved the year to 2000 as all planes have an end delivery date of 2050
  12. Yes, this was intentional. I added a feature whereby passenger demand will now trace with the year so it will be low in earlier years and increase over time. I was going to wait until I had the time to make a post about it and hold it in Beta until then, but had an important bug fix that had to go. I do have a bank of features planned in the same vein, with the idea of increasing the difficulty of the game and putting more of an emphasis on strategy, particularly fleet selection and planning.
  13. I do plan to allow you to move flights from one aircraft to another. However I don't plan on adding ability to copy or duplicate routes as I believe it promotes spamming behavior that I would like to discourage (the goal of the game is realism, and this means encouraging thoughtful approach to schedule creation). In regards to moving flights it is a prioritized feature once I get some stability improvements out that I have pending.
  14. Hi folks! As part of my testing I have a few different environments that I use, the last of which is the beta server. Although access to this server has historically been reserved for Patreon supporters, I have opened it to everyone ever since I automated deployments (deployments are now a click of a button for me rather than a manual and error prone process) which means that new features and releases spend a relatively short time on beta before being pushed out (usually less than a week, or just long enough for me to verify that they won't blow up), so the value proposition of keeping it reserved for Patreon is limited (I still need to work out how to add Patreon in such a way as to make it appealing without adding any pay to win features, this probably looks like more customizability features which although is not a priority at the moment, servers don't pay for themselves). Either way, the point is that I'm opening up my test world on beta for any testing you guys want to do (also a good stress test for pre-release versions). The beta server and the test world are available at https://beta.airsim.world/ (I have also put it as a subcategory of announcement section on the forums) The world parameters are as follows: Sandbox World Timeframe: 2020-3000 World Speed: 1 Min/day Rules/Difficulty: Normal settings Starting Money: $1 Billion Note: As this is on the beta server, I make no claims as to the reliability of the server. The world may get reset, deleted or get changed without warning, any issues are not bound to be prioritized etc.
  15. Will take a look, I can't make any changes to code at the moment due to my home server being down (which maintains all deployments). I have made sure that the planes will get delivered (they're not lost) in the meanwhile.
  16. World B VI Timeframe: 1950-2025 (extended the end date to make this the long running world, we might re-introduce world A as a second world halfway through this one) World Speed: 10 Minutes/day (45 minutes/day until Wednesday, June 14th 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
  17. 1. Ask and you shall receive, B VIII will run until 2025 2. We don't have airline bases persay, just headquarters (which don't actually affect the gameplay at all), so not sure what you're asking? 3. Fair call out, will add it to my backlog 4. Yep, I have plans to work on that so it's in the pipeline 5. Also in the pipeline
  18. Hi folks! In an effort to make the game more accessible to newer players, I have added two new banners to help players navigate the game. First banner shows up when you don't have any aircraft and looks like this: , and the second when you have an aircraft but don't have any flights and looks like this: One other change is that the new aircraft marketplace now shows lease costs as well as purchase costs on the page. Thanks!
  19. Ok, can you pass me your airline id and the route so I can take a look? Thanks!
  20. 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
  21. 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!
  22. Can you give me the error code so I can debug this further?
  23. Inter island would work, though for NYC area I imagine that would be a problem for when we move towards city based demand
  24. 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.
×
×
  • Create New...