because human input can be trusted

This commit is contained in:
iAmAsval 2021-09-06 18:21:44 +02:00
parent 3a458d6d8d
commit 664ddfcb7f
10 changed files with 89 additions and 8 deletions

45
.github/ISSUE_TEMPLATE/bug.yml vendored Normal file
View File

@ -0,0 +1,45 @@
name: Bug Report
description: File a bug report
title: "Bug Title"
labels: [bug]
assignees:
- iAmAsval
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report! Keep in mind that screenshots and log files help us a lot so don't forget to provide one or both of those (drag and drop files in a text area).
Your bug report will be closed without explanation if you don't follow the following rules:
- Bad bug explanation will result in bad support and probably on a negative tone
- This template shouldn't be used to ask how to use FModel or a certain feature FModel provides
- Bug reports must always use the latest FModel with the latest available version of the game you use
- If you can't load files, it's probably because of your AES key, no need to file a report
- We absolutely do not support modding
- type: input
id: game
attributes:
label: Game
placeholder: ex. Fortnite, Valorant, ...
validations:
required: true
- type: textarea
id: error
attributes:
label: Error
description: Tell us what FModel says about the error, from the console and / or the log file
placeholder: ex. [ERR] Could not export 'EditorClientAssetRegistry.bin'
render: shell
validations:
required: true
- type: textarea
id: repro
attributes:
label: Reproduction steps
description: How do you trigger this bug? Please walk us through it step by step.
placeholder: |
1.
2.
3.
...
validations:
required: true

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Discord Server
url: https://fmodel.app/discord
about: Please ask and answer questions here.

22
.github/ISSUE_TEMPLATE/feature.yml vendored Normal file
View File

@ -0,0 +1,22 @@
name: Feature Request
description: Submit a new feature request
title: "Feature Title"
labels: [suggestion]
assignees:
- iAmAsval
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this feature request! Before going any further, make sure what you're about to submit doesn't already exist.
Your feature request will be closed without explanation if you don't follow the following rules:
- This template shouldn't be used to ask how to use FModel or a certain feature FModel provides
- We absolutely do not support modding
- type: textarea
id: description
attributes:
label: Description
description: Tell us what you want FModel to be able to do
placeholder: Please describe with details and how it could be done if possible...
validations:
required: true

@ -1 +1 @@
Subproject commit a64974220259487c966b6b006963b801b721d653
Subproject commit 1ac4640cdb0ba718cf26766029c67d5375465b9d

View File

@ -16,7 +16,7 @@ namespace FModel
public const string BLUE = "#528BCC";
public const string DONATE_LINK = "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EP9SSWG8MW4UC&source=url";
public const string ISSUE_LINK = "https://github.com/iAmAsval/FModel/issues/new";
public const string ISSUE_LINK = "https://github.com/iAmAsval/FModel/issues/new/choose";
public const string DISCORD_LINK = "https://discord.gg/fdkNYYQ";
public const string _FN_LIVE_TRIGGER = "fortnite-live.manifest";

View File

@ -56,7 +56,7 @@ namespace FModel.ViewModels
if (e.PropertyName != "Key" || sender is not FullyObservableCollection<FileItem> collection)
return;
var key = FixKey(collection[e.CollectionIndex].Key);
var key = collection[e.CollectionIndex].Key = FixKey(collection[e.CollectionIndex].Key);
if (e.CollectionIndex == 0)
{
if (!HasChange)
@ -114,7 +114,7 @@ namespace FModel.ViewModels
if (key.StartsWith("0x"))
key = key[2..];
return "0x" + key.ToUpper();
return "0x" + key.ToUpper().Trim();
}
private IEnumerable<FileItem> EnumerateAesKeys()

View File

@ -47,7 +47,7 @@ namespace FModel.ViewModels
IsReady = Status != EStatusKind.Loading && Status != EStatusKind.Stopping;
}
}
public RightClickMenuCommand RightClickMenuCommand => _rightClickMenuCommand ??= new RightClickMenuCommand(this);
private RightClickMenuCommand _rightClickMenuCommand;
public MenuCommand MenuCommand => _menuCommand ??= new MenuCommand(this);
@ -56,6 +56,7 @@ namespace FModel.ViewModels
private CopyCommand _copyCommand;
public string TitleExtra => $"{CUE4Parse.Game.GetDescription()} ({UserSettings.Default.OverridedGame[CUE4Parse.Game]}){(Build != EBuildKind.Release ? $" ({Build})" : "")}";
public LoadingModesViewModel LoadingModes { get; }
public CustomDirectoriesViewModel CustomDirectories { get; }
public CUE4ParseViewModel CUE4Parse { get; }

View File

@ -218,7 +218,7 @@ namespace FModel.ViewModels
{
cancellationToken.ThrowIfCancellationRequested(); // cancel if needed
var k = key.Key.Length == 66 ? key.Key : Constants.ZERO_64_CHAR;
var k = key.Key.Length == 66 ? key.Key.Trim() : Constants.ZERO_64_CHAR;
Provider.SubmitKey(key.Guid, new FAesKey(k));
}
@ -481,7 +481,7 @@ namespace FModel.ViewModels
}
break;
}
case "bin" when fileName.StartsWith("AssetRegistry"):
case "bin" when fileName.EndsWith("AssetRegistry.bin"):
{
TabControl.SelectedTab.Image = null;
if (Provider.TryCreateReader(fullPath, out var archive))

View File

@ -39,12 +39,20 @@ namespace FModel.ViewModels.Commands
public override async void Execute(LoadingModesViewModel contextViewModel, object parameter)
{
if (_applicationView.CUE4Parse.GameDirectory.HasNoFile) return;
if (_applicationView.CUE4Parse.Provider.Files.Count <= 0)
{
FLogger.AppendError();
FLogger.AppendText("An encrypted file has been found. In order to decrypt it, please specify a working AES encryption key", Constants.WHITE, true);
return;
}
if (_applicationView.CUE4Parse.Game == FGame.FortniteGame &&
_applicationView.CUE4Parse.Provider.MappingsContainer == null)
{
FLogger.AppendError();
FLogger.AppendText("Mappings could not get pulled, extracting assets might not work properly. If so, press F12 or please restart.", Constants.WHITE, true);
}
#if DEBUG
var loadingTime = Stopwatch.StartNew();
#endif

View File

@ -42,7 +42,7 @@
<TextBlock Text="&#09;&#09;&#09;&#09;" FontSize="25" FontWeight="700" Height="2" Foreground="Transparent" HorizontalAlignment="Center" />
</StackPanel>
<TextBlock FontSize="12" Foreground="#727272" TextWrapping="Wrap" Margin="0 0 0 30"
Text="Maiky &#x2665;, HYPEX &#x2665;, VenomLeaks &#x2665;, JayKey &#x2665;, Fevers &#x2665;, Netu &#x2665;, TheGameVlog &#x2665;, Quentin &#x2665;, Laggy &#x2665;, s0ll &#x2665;, RazTracker, Mikey, kyle, Yanteh, Shiina, SexyNutella, Alexander, Jinx, Tector, imatrix, LamZykoss, Frenzy Leaks, LlamaLeaks, XTigerHyperX, FunGames, WeLoveFortnite." />
Text="TheGameVlog &#x2665;, Quentin &#x2665;, Maiky &#x2665;, HYPEX &#x2665;, Evan, VenomLeaks, JayKey, Fevers, Netu, Laggy, s0ll, RazTracker, Mikey, kyle, Yanteh, Shiina, SexyNutella, Alexander, Jinx, Tector, imatrix, LamZykoss, Frenzy Leaks, LlamaLeaks, XTigerHyperX, FunGames, WeLoveFortnite." />
<StackPanel HorizontalAlignment="Center">
<TextBlock Text="Powered by" FontSize="15" FontWeight="700" Foreground="#9DA3DD" FontStretch="Expanded" />