Author Topic: A Couple of Crazy Suggestions  (Read 156 times)

lynx

  • Newbie
  • *
  • Posts: 3
    • View Profile
A Couple of Crazy Suggestions
« on: September 10, 2018, 09:00:35 pm »
Just to preface, these suggestions are kind of out there. They dont take the codebase into consideration at all but I think some good ideas can be extracted out of there.

1. "Delta Connections"-like airlines. Instead of people making alts, they can instead create a limited amount of regional subsidiary airlines (1 per continent/region perhaps, or limited in some other way). Maybe they can only make flights out of the main airline's bases in the region, and could cost loads of $$$ to start up. They could also be limited in aircraft size and maybe route size (length/throughput).

2. "Seasonal" Historical Competition . For like 3 months, everyone runs their airlines throughout history. As time ticks on planes change and better stuff becomes available. Start sometime in the 30s and end in modern times. That world (separate from the normal game) resets every 3 months (or some other decent length of time) and people who at the top of the leaderboards get a little title or badge next to their name until the next winners. If they manage to go bankrupt, maybe they continue on but arent eligible for those titles. Perhaps they go to a world separate from the main competition so they can continue the historical fun without affecting the results after they bankrupt.

3. Crowd Source route simulation - Similar to how Folding @ Home and others do it, distribute a client that people can run so that they can contribute a bit to doing all the route calculations (this assumes that this can actually be distributed, I didnt take too much of a look at the pathfinding code). People can compete on a "routes calculated" leaderboard. Something like this can help support crazy stuff like I suggested above without totally killing the server.

patson

  • Administrator
  • Hero Member
  • *****
  • Posts: 915
    • View Profile
Re: A Couple of Crazy Suggestions
« Reply #1 on: September 11, 2018, 01:48:56 am »
Just to preface, these suggestions are kind of out there. They dont take the codebase into consideration at all but I think some good ideas can be extracted out of there.

1. "Delta Connections"-like airlines. Instead of people making alts, they can instead create a limited amount of regional subsidiary airlines (1 per continent/region perhaps, or limited in some other way). Maybe they can only make flights out of the main airline's bases in the region, and could cost loads of $$$ to start up. They could also be limited in aircraft size and maybe route size (length/throughput).

2. "Seasonal" Historical Competition . For like 3 months, everyone runs their airlines throughout history. As time ticks on planes change and better stuff becomes available. Start sometime in the 30s and end in modern times. That world (separate from the normal game) resets every 3 months (or some other decent length of time) and people who at the top of the leaderboards get a little title or badge next to their name until the next winners. If they manage to go bankrupt, maybe they continue on but arent eligible for those titles. Perhaps they go to a world separate from the main competition so they can continue the historical fun without affecting the results after they bankrupt.

3. Crowd Source route simulation - Similar to how Folding @ Home and others do it, distribute a client that people can run so that they can contribute a bit to doing all the route calculations (this assumes that this can actually be distributed, I didnt take too much of a look at the pathfinding code). People can compete on a "routes calculated" leaderboard. Something like this can help support crazy stuff like I suggested above without totally killing the server.

I like the "throughout history" idea. though i would need a bigger crowd  to support another server, coding airplane history would also need quite a bit of coding ;)

Distributed code kekeke Certain part of the code can indeed be split up, they are running in parallel already. Though it will probably be a coding challenge to distributing workload and aggregate them, it's probably a software engineering feat kekeke - i would say the simulation right now is indeed quite intensive - around 15 mins on 4 core - though it's probably not going to have much gain to distribute the load (cause of my terrible coding lol). I could smell that someone has an software engineering background tho  ;)

t1853

  • Newbie
  • *
  • Posts: 43
    • View Profile
Re: A Couple of Crazy Suggestions
« Reply #2 on: September 11, 2018, 03:36:56 am »
If the simulation could be run in a massively parallel way, it might be more effective to try to adapt it to CUDA/OpenCL to leverage a GPU. That might give you the option of having it run locally if you prefer. Either way, as the game grows, to avoid progressively longer ticks/week cycles, it might be prudent to look into whether the simulation can be parallelized to run on more cores in general.

patson

  • Administrator
  • Hero Member
  • *****
  • Posts: 915
    • View Profile
Re: A Couple of Crazy Suggestions
« Reply #3 on: September 12, 2018, 12:23:32 am »
If the simulation could be run in a massively parallel way, it might be more effective to try to adapt it to CUDA/OpenCL to leverage a GPU. That might give you the option of having it run locally if you prefer. Either way, as the game grows, to avoid progressively longer ticks/week cycles, it might be prudent to look into whether the simulation can be parallelized to run on more cores in general.


Yea I was using a framework called Akka, it's like an actor system which is supposed to be good for scaling and running in parallel. Unfortunately, it's really hard to debug with it and it seems to give worse performance instead... so i rewrote the simulation with a more straightforward approach.

Though the main part should still be able to run in parallel and by default it will run up to the # of cores of the server. If i run the simulation locally it actually takes around half the time (quad core) vs my current Ec2 instance in cloud (quad core) So it's either my CPU is better or because of the memory difference (8gb in cloud vs 16gb my local PC)

bluesky

  • Full Member
  • ***
  • Posts: 105
    • View Profile
Re: A Couple of Crazy Suggestions
« Reply #4 on: September 12, 2018, 01:31:26 am »
Talking about performance, would removing the small airports help?
There's hundreds of airports with scale 1 and only a couple thousand people of coverage, they'll never be a viable route and no one is using them. At least the interface would get a little less cluttered.