Welcome to the Forum for The Airline Project

Hello There, Guest! Login Register


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Update 69 review
#1
Information 
I barely got to spend 20 mins on this game before it crashed so am gonna pinpoint a few things that are either missing or need some work:
1- Saving/loading system seems to be broken, when saving for the first time it takes some time and then it's all good when you try to save the second time while overwriting the first save however it crashes. Loading takes forever and most of the time it crashes.

2-The hub system from V1 is not there, basically you can fly from anywhere to anywhere (please bring it back).


3-The airport page is missing some V1 features like asking the airport board to build a new runway for some bigger airliners, also you can't choose any airport as you hub (i know i said that before).

Overall it's has some potential if it's more optimized (reccuring crashes ruin the game and drive the enthusiats away).
Reply
#2
Hi

Thanks for the input.

Do you have the error log for the crash?

Regarding loading and saving we have fixed a lot of issues, which should be ready for next release. For the two features I have added them to the list of todos.
Reply
#3
10/01/2018: 17:11 System.InvalidOperationException: Une liaison TwoWay ou OneWayToSource ne peut pas fonctionner sur la propriété en lecture seule 'LayoutCode' de type 'TheAirlineProjectV2.Infrastructure.Model.AirlinerModel.Airliner'.
   à MS.Internal.Data.PropertyPathWorker.CheckReadOnly(Object item, Object info)
   à MS.Internal.Data.PropertyPathWorker.ReplaceItem(Int32 k, Object newO, Object parent)
   à MS.Internal.Data.PropertyPathWorker.UpdateSourceValueState(Int32 k, ICollectionView collectionView, Object newValue, Boolean isASubPropertyChange)
   à MS.Internal.Data.ClrBindingWorker.AttachDataItem()
   à System.Windows.Data.BindingExpression.Activate(Object item)
   à System.Windows.Data.BindingExpression.AttachToContext(AttachAttempt attempt)
   à System.Windows.Data.BindingExpression.MS.Internal.Data.IDataBindEngineClient.AttachToContext(Boolean lastChance)
   à MS.Internal.Data.DataBindEngine.Task.Run(Boolean lastChance)
   à MS.Internal.Data.DataBindEngine.Run(Object arg)
   à System.Windows.ContextLayoutManager.fireLayoutUpdateEvent()
   à System.Windows.ContextLayoutManager.UpdateLayout()
   à System.Windows.Controls.DataGridCell.BeginEdit(RoutedEventArgs e)
   à System.Windows.Controls.DataGrid.OnExecutedBeginEdit(ExecutedRoutedEventArgs e)
   à System.Windows.Input.CommandBinding.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   à System.Windows.Input.CommandManager.ExecuteCommandBinding(Object sender, ExecutedRoutedEventArgs e, CommandBinding commandBinding)
   à System.Windows.Input.CommandManager.FindCommandBinding(Object sender, RoutedEventArgs e, ICommand command, Boolean execute)
   à System.Windows.Input.CommandManager.OnExecuted(Object sender, ExecutedRoutedEventArgs e)
   à System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   à System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   à System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   à System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   à System.Windows.Input.RoutedCommand.ExecuteImpl(Object parameter, IInputElement target, Boolean userInitiated)
   à System.Windows.Controls.DataGrid.BeginEdit(RoutedEventArgs editingEventArgs)
   à System.Windows.Controls.DataGridCell.OnAnyMouseLeftButtonDown(MouseButtonEventArgs e)
   à System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   à System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   à System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   à System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   à System.Windows.UIElement.OnMouseDownThunk(Object sender, MouseButtonEventArgs e)
   à System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   à System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   à System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   à System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   à System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   à System.Windows.Input.InputManager.ProcessStagingArea()
   à System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   à System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   à System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   à System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
10/01/2018: 20:22 System.ArgumentException: '-1' n'est pas une valeur valide pour la propriété 'Width'.
   à System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
   à System.Windows.FrameworkElement.set_Width(Double value)
   à TheAirlineProjectV2.GraphicsControls.Controls.TimelineControls.TimelineElement..ctor(Timeline parent, Int32 height, Int32 width, String tooltip, String text, Boolean deleteable) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.GraphicsControls\Controls\TimelineControls\TimelineElement.xaml.cs:ligne 40
   à TheAirlineProjectV2.GraphicsControls.Controls.TimelineControls.Timeline.AddElement(TimeSpan start, TimeSpan end, String tooltip, String text, String uid, Boolean deleteable) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.GraphicsControls\Controls\TimelineControls\Timeline.xaml.cs:ligne 94
   à TheAirlineProjectV2.GraphicsControls.Controls.TimelineControls.Timeline.AddElement(TimeSpan start, TimeSpan end, String tooltip, String text, String uid, Boolean deleteable) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.GraphicsControls\Controls\TimelineControls\Timeline.xaml.cs:ligne 82
   à TheAirlineProjectV2.Modules.Routes.Views.RoutesAirlinersWindow.Times_CollectionChanged(Object sender, NotifyCollectionChangedEventArgs e) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.Routes\Views\RoutesAirlinersWindow.xaml.cs:ligne 65
   à System.Collections.ObjectModel.ObservableCollection`1.OnCollectionChanged(NotifyCollectionChangedEventArgs e)
   à System.Collections.ObjectModel.ObservableCollection`1.InsertItem(Int32 index, T item)
   à TheAirlineProjectV2.Modules.Routes.ViewModels.RoutesAirlinersViewModel.addEntries(TimeTableEntry entry, Route route) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.Routes\ViewModels\RoutesAirlinersViewModel.cs:ligne 624
   à TheAirlineProjectV2.Modules.Routes.ViewModels.RoutesAirlinersViewModel.AddEntriesClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.Routes\ViewModels\RoutesAirlinersViewModel.cs:ligne 221
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
10/01/2018: 22:10 System.OutOfMemoryException: Les dimensions du tableau dépassent la plage prise en charge.
   à System.Collections.Generic.List`1.set_Capacity(Int32 value)
   à System.Collections.Generic.List`1.EnsureCapacity(Int32 min)
   à System.Collections.Generic.List`1.Add(T item)
   à TheAirlineProjectV2.Modules.Airline.ViewModels.AirlineViewModel.CreateSubsidiaryClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.Airline\ViewModels\AirlineViewModel.cs:ligne 94
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
10/01/2018: 23:15 System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.Converters.PoolFlightsConverter.<>c.<ConvertTo>b__5_0(Pilot p) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\Converters\PoolFlightsConverter.cs:ligne 66
   à System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   à System.String.Join(String separator, IEnumerable`1 values)
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.Converters.PoolFlightsConverter.ConvertTo(ITypeDescriptorContext context, CultureInfo culture, Object value, Type destinationType) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\Converters\PoolFlightsConverter.cs:ligne 66
   à System.ComponentModel.TypeConverter.ConvertTo(Object value, Type destinationType)
   à SQLiter.SQLiter.getPropertyValue(Object type, PropertyInfo property) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 407
   à SQLiter.SQLiter.SaveAll[T](IEnumerable`1 data) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 170
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.SaveGame(SaveFile save) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 245
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.saveGame(SaveFile savefile) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 174
   à TheAirlineProjectV2.Modules.GameSideMenu.ViewModels.GameSideMenuViewModel.MenuItemClicked(Object o) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.GameSideMenu\ViewModels\GameSideMenuViewModel.cs:ligne 207
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
10/01/2018: 23:25 System.Data.SQLite.SQLiteException (0x80004005): SQL logic error or missing database
no such table: Airport
   à System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   à System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   à System.Data.SQLite.SQLiteDataReader.NextResult()
   à System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   à System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   à SQLiter.SQLiter.GetTable[T]() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 281
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.LoadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 69
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.loadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 169
   à TheAirlineProjectV2.Modules.MainMenu.ViewModels.MainMenuWindowViewModel.LoadGameClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.MainMenu\ViewModels\MainMenuWindowViewModel.cs:ligne 676
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
13/01/2018: 07:32 System.Data.SQLite.SQLiteException (0x80004005): SQL logic error or missing database
no such table: Airport
   à System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   à System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   à System.Data.SQLite.SQLiteDataReader.NextResult()
   à System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   à System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   à SQLiter.SQLiter.GetTable[T]() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 281
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.LoadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 69
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.loadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 169
   à TheAirlineProjectV2.Modules.MainMenu.ViewModels.MainMenuWindowViewModel.LoadGameClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.MainMenu\ViewModels\MainMenuWindowViewModel.cs:ligne 676
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
13/01/2018: 07:32 System.Data.SQLite.SQLiteException (0x80004005): SQL logic error or missing database
no such table: Airport
   à System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   à System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   à System.Data.SQLite.SQLiteDataReader.NextResult()
   à System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   à System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   à SQLiter.SQLiter.GetTable[T]() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 281
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.LoadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 69
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.loadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 169
   à TheAirlineProjectV2.Modules.MainMenu.ViewModels.MainMenuWindowViewModel.LoadGameClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.MainMenu\ViewModels\MainMenuWindowViewModel.cs:ligne 676
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
13/01/2018: 07:38 System.Data.SQLite.SQLiteException (0x80004005): SQL logic error or missing database
no such table: Airport
   à System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   à System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   à System.Data.SQLite.SQLiteDataReader.NextResult()
   à System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   à System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   à SQLiter.SQLiter.GetTable[T]() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\SQLiter\SQLiter\SQLiter.cs:ligne 281
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.LoadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 69
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.loadGame(String filename) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 169
   à TheAirlineProjectV2.Modules.MainMenu.ViewModels.MainMenuWindowViewModel.LoadGameClicked() dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.MainMenu\ViewModels\MainMenuWindowViewModel.cs:ligne 676
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()
13/01/2018: 08:28 System.IO.IOException: Le processus ne peut pas accéder au fichier 'C:\Users\Admin\Desktop\TAPv2\data\saves\9caa7a70-3a21-478a-884c-3c8dbe107a15.sqlite', car il est en cours d'utilisation par un autre processus.
   à System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   à System.IO.File.InternalDelete(String path, Boolean checkHost)
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveHelpers.SaveGame(SaveFile save) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveHelpers.cs:ligne 207
   à TheAirlineProjectV2.Infrastructure.Model.LoadSaveModel.LoadSaveObject.saveGame(SaveFile savefile) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Infrastructure\Model\LoadSaveModel\LoadSaveObject.cs:ligne 174
   à TheAirlineProjectV2.Modules.GameSideMenu.ViewModels.GameSideMenuViewModel.MenuItemClicked(Object o) dans C:\Users\Christian\Documents\Visual Studio 2017\Projects\TheAirlineProjectV2\TheAirlineProjectV2.Modules.GameSideMenu\ViewModels\GameSideMenuViewModel.cs:ligne 207
   à Prism.Commands.DelegateCommandBase.<>c__DisplayClass6_0.<.ctor>b__0(Object arg)
   à Prism.Commands.DelegateCommandBase.<Execute>d__15.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   à System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   à Prism.Commands.DelegateCommandBase.<System-Windows-Input-ICommand-Execute>d__13.MoveNext()
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_0(Object state)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.DispatcherOperation.InvokeImpl()
   à System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Windows.Threading.DispatcherOperation.Invoke()
   à System.Windows.Threading.Dispatcher.ProcessQueue()
   à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   à MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   à System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   à MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   à System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   à System.Windows.Application.RunDispatcher(Object ignore)
   à System.Windows.Application.RunInternal(Window window)
   à TheAirlineProjectV2.App.Main()

MY SYSTEM IS IN FRENCH
I HOPE YOU GET THOSE LINES
Reply
#4
The idea about a hub system raises a question on my end.

What features were linked to hubs in v1? I noticed you could create a hub at an airport as soon as you had a certain percentage of the slots at the airport.
Did it give you any advantages?

Hei28ssk also says 'you can fly from anywhere to anywhere'. Do you imply that the player should be restricted to creating origin flights from a hub?
I don't think we should do that, and I don't think the aviation industry works that way.
There are many point to point flights that don't require any of both ends to be a hub.


Now of course, it'd be fun if we have hubs (and focus airports) in the game.
But I feel like setting an airport as your hub needs a set of fulfilled requirements and should give you some advantages.

What could these requirements and advantages be? any ideas?
possible requirements:
-minimum direct destinations (including stopover flights/excluding connecting flights)
-minimum pax per year transported
-perhaps a lounge is required? Or something else like an airline booth/ticket office

possible advantages:
-a small discount for slot renting (like 5% or so)
-a slight increase in pax preference towards your airline for the pax generated at that airport (still including factors like price/reputation/service)
-a slight increase in connecting passengers

disadvantages:
Opening a hub should somehow get some disadvantages as well, if your airline strategy is point to point instead of hub-spoke. Any ideas?


Than a focus airport could have smaller advantages and requirements.

What are your thoughts on this?
Reply
#5
(01-13-2018, 12:50 PM)Tjoeker Wrote: The idea about a hub system raises a question on my end.

What features were linked to hubs in v1? I noticed you could create a hub at an airport as soon as you had a certain percentage of the slots at the airport.
Did it give you any advantages?

Hei28ssk also says 'you can fly from anywhere to anywhere'. Do you imply that the player should be restricted to creating origin flights from a hub?
I don't think we should do that, and I don't think the aviation industry works that way.
There are many point to point flights that don't require any of both ends to be a hub.


Now of course, it'd be fun if we have hubs (and focus airports) in the game.
But I feel like setting an airport as your hub needs a set of fulfilled requirements and should give you some advantages.

What could these requirements and advantages be? any ideas?
possible requirements:
-minimum direct destinations (including stopover flights/excluding connecting flights)
-minimum pax per year transported
-perhaps a lounge is required? Or something else like an airline booth/ticket office

possible advantages:
-a small discount for slot renting (like 5% or so)
-a slight increase in pax preference towards your airline for the pax generated at that airport (still including factors like price/reputation/service)
-a slight increase in connecting passengers

disadvantages:
Opening a hub should somehow get some disadvantages as well, if your airline strategy is point to point instead of hub-spoke. Any ideas?


Than a focus airport could have smaller advantages and requirements.

What are your thoughts on this?

well somehow it works that way in real life too
let me give you an example:
in real life if you're not an european airline and unless you have an open sky treaty with the european union you can't fly from an european city to an another directly, you need to leave the eu airspace and go back (of course while making a stop at your hub).
whatever the system for it it would be good to have it back, V1 was quite some fun i had a good run on it.
Reply
#6
Hmm I see. The same thing applies to domestic flights in the US, if your not based in the US, you can't fly domestic routes.
A few decades ago, it wasn't allowed to open a route between Paris and London unless both governments gave you a permit.
And it's only since the Open Skies pact that British Airways is allowed to operate Paris - New York.

But do we really want (all or some of) these regulations in the game?
I can take a look at not allowing you to originate a route from an airport until the government gives you a permit.
But I'm not sure if that would be fun.. I'll have to educate myself a bit more on the subject.



Still, I fail to see where hubs have an influence on this?
Hubs become more and more a thing of the past, direct flights are taking over.

Maybe somebody can correct me, but I don't think hubs had an influence in v1?
(don't worry, hubs will come back Wink )
Reply
#7
(01-14-2018, 10:17 AM)Tjoeker Wrote: Hmm I see. The same thing applies to domestic flights in the US, if your not based in the US, you can't fly domestic routes.
A few decades ago, it wasn't allowed to open a route between Paris and London unless both governments gave you a permit.
And it's only since the Open Skies pact that British Airways is allowed to operate Paris - New York.

But do we really want (all or some of) these regulations in the game?
I can take a look at not allowing you to originate a route from an airport until the government gives you a permit.
But I'm not sure if that would be fun.. I'll have to educate myself a bit more on the subject.



Still, I fail to see where hubs have an influence on this?
Hubs become more and more a thing of the past, direct flights are taking over.

Maybe somebody can correct me, but I don't think hubs had an influence in v1?
(don't worry, hubs will come back Wink )
 at the end of the day all this game needs is some refurbishing and fixing the save/loading thing and it would be something i'd gladly spend long hours on.
Reply
#8
I've taken a look at aviation law and I have an idea on how we could implement a simplified version.
Playing with the laws activated should be optional, as it restricts the player which is not always fun. Smile

I don't really see it getting implemented in the next version, as we'd need some other features first for it to work properly.
Reply
#9
(01-16-2018, 07:42 PM)Tjoeker Wrote: I've taken a look at aviation law and I have an idea on how we could implement a simplified version.
Playing with the laws activated should be optional, as it restricts the player which is not always fun. Smile

I don't really see it getting implemented in the next version, as we'd need some other features first for it to work properly.

fix the saving major bug
last night it saturated my memory and shut down my compuer which led to me losing a lot of work
also make sure we can play smoothly with 50some AI airlines
Reply


Forum Jump:


Users browsing this thread:
1 Guest(s)