Compare commits
No commits in common. "master" and "v1.2.4" have entirely different histories.
76
.github/workflows/mega-linter.yml
vendored
76
.github/workflows/mega-linter.yml
vendored
@ -6,14 +6,12 @@ permissions: read-all
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
branches: [master]
|
||||
|
||||
env:
|
||||
APPLY_FIXES: none
|
||||
APPLY_FIXES_EVENT: pull_request
|
||||
APPLY_FIXES_MODE: commit
|
||||
FILTER_REGEX_EXCLUDE: (mega-linter.yml)
|
||||
DISABLE: SPELL
|
||||
|
||||
concurrency:
|
||||
@ -21,94 +19,54 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
megalinter:
|
||||
build:
|
||||
name: MegaLinter
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
issues: write
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}
|
||||
fetch-depth: 0
|
||||
|
||||
- name: MegaLinter
|
||||
uses: oxsecurity/megalinter@7e042c726c68415475b05a65a686c612120a1232
|
||||
id: ml
|
||||
uses: oxsecurity/megalinter@v6
|
||||
env:
|
||||
VALIDATE_ALL_CODEBASE: true
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Archive production artifacts
|
||||
uses: actions/upload-artifact@c7d193f32edcb7bfad88892161225aeda64e9392
|
||||
if: success() || failure()
|
||||
if: ${{ success() }} || ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: MegaLinter reports
|
||||
path: |
|
||||
megalinter-reports
|
||||
mega-linter.log
|
||||
|
||||
- name: Set APPLY_FIXES_IF var
|
||||
run: |
|
||||
printf 'APPLY_FIXES_IF=%s\n' "${{
|
||||
steps.ml.outputs.has_updated_sources == 1 &&
|
||||
(
|
||||
env.APPLY_FIXES_EVENT == 'all' ||
|
||||
env.APPLY_FIXES_EVENT == github.event_name
|
||||
) &&
|
||||
(
|
||||
github.event_name == 'push' ||
|
||||
github.event.pull_request.head.repo.full_name == github.repository
|
||||
)
|
||||
}}" >> "${GITHUB_ENV}"
|
||||
|
||||
- name: Set APPLY_FIXES_IF_* vars
|
||||
run: |
|
||||
printf 'APPLY_FIXES_IF_PR=%s\n' "${{
|
||||
env.APPLY_FIXES_IF == 'true' &&
|
||||
env.APPLY_FIXES_MODE == 'pull_request'
|
||||
}}" >> "${GITHUB_ENV}"
|
||||
printf 'APPLY_FIXES_IF_COMMIT=%s\n' "${{
|
||||
env.APPLY_FIXES_IF == 'true' &&
|
||||
env.APPLY_FIXES_MODE == 'commit' &&
|
||||
(!contains(fromJSON('["refs/heads/main", "refs/heads/master"]'), github.ref))
|
||||
}}" >> "${GITHUB_ENV}"
|
||||
|
||||
- name: Create Pull Request with applied fixes
|
||||
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
|
||||
id: cpr
|
||||
if: env.APPLY_FIXES_IF_PR == 'true'
|
||||
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'pull_request' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository)
|
||||
uses: peter-evans/create-pull-request@v5
|
||||
with:
|
||||
token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}
|
||||
commit-message: "[MegaLinter] Apply linters automatic fixes"
|
||||
title: "[MegaLinter] Apply linters automatic fixes"
|
||||
labels: bot
|
||||
|
||||
- name: Create PR output
|
||||
if: env.APPLY_FIXES_IF_PR == 'true'
|
||||
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'pull_request' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository)
|
||||
run: |
|
||||
echo "PR Number - ${{ steps.cpr.outputs.pull-request-number }}"
|
||||
echo "PR URL - ${{ steps.cpr.outputs.pull-request-url }}"
|
||||
echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"
|
||||
echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"
|
||||
|
||||
- name: Prepare commit
|
||||
if: env.APPLY_FIXES_IF_COMMIT == 'true'
|
||||
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'commit' && github.ref != 'refs/heads/main' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository)
|
||||
run: sudo chown -Rc $UID .git/
|
||||
|
||||
- name: Commit and push applied linter fixes
|
||||
uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d
|
||||
if: env.APPLY_FIXES_IF_COMMIT == 'true'
|
||||
if: steps.ml.outputs.has_updated_sources == 1 && (env.APPLY_FIXES_EVENT == 'all' || env.APPLY_FIXES_EVENT == github.event_name) && env.APPLY_FIXES_MODE == 'commit' && github.ref != 'refs/heads/main' && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository)
|
||||
uses: stefanzweifel/git-auto-commit-action@v4
|
||||
with:
|
||||
branch: >-
|
||||
${{
|
||||
github.event.pull_request.head.ref ||
|
||||
github.head_ref ||
|
||||
github.ref
|
||||
}}
|
||||
branch: ${{ github.event.pull_request.head.ref || github.head_ref || github.ref }}
|
||||
commit_message: "[MegaLinter] Apply linters fixes"
|
||||
commit_user_name: "github-actions"
|
||||
commit_user_email: "github-actions[bot]@users.noreply.github.com"
|
||||
commit_user_name: megalinter-bot
|
||||
commit_user_email: nicolas.vuillamy@ox.security
|
||||
|
66
LEGAL.md
66
LEGAL.md
@ -1,66 +0,0 @@
|
||||
# SafeMutLoader (SML) is legal and does not violate the [KF2 EULA](https://store.steampowered.com/eula/232090_eula_0).
|
||||
|
||||
## Here's why in detail:
|
||||
Let's look at the [EULA](https://store.steampowered.com/eula/232090_eula_0) points that relate to modifications:
|
||||
|
||||
> ### 2. Permitted User Modifications and New Creations
|
||||
|
||||
> Some of our games come with a KILLING FLOOR 2 editor. You can use editors to make mods or create new content to be played in KILLING FLOOR 2. You agree that you will not distribute or share the KILLING FLOOR 2 editor because it is not shareware. You agree that any new creations or materials that you make for KILLING FLOOR 2, with or without the KILLING FLOOR 2 editor, (collectively referred to as “Mods”) are subject to the following restrictions:
|
||||
|
||||
> Your Mods must only work with the full, registered copy of KILLING FLOOR 2, not independently or with any other software.
|
||||
|
||||
SML only works with a full registered copy of KILLING FLOOR 2 and is not intended to work with any other software.
|
||||
|
||||
> Your Mods must not contain modifications to any executable file(s).
|
||||
|
||||
SML does not modify KILLING FLOOR 2 executables.
|
||||
|
||||
> Your Mods must not contain any sexually explicit, harmful, threatening, abusive, defamatory, obscene, hateful, racially or ethnically offensive imagery or libelous, defamatory, or other illegal material, material that is scandalous or invades the rights of privacy or publicity of any third party.
|
||||
|
||||
SML does not contain anything listed here.
|
||||
|
||||
> Your Mods must not contain, or be used in conjunction with, any trademarks, copyright protected work, or other recognizable property of third parties without their written authority.
|
||||
|
||||
SML does not contain any trademarks or property of third parties.
|
||||
|
||||
> Your Mods must not be used by you, or anyone else, for any commercial exploitation including, but not limited to in-game advertising, other advertising or marketing for any company, product or service.
|
||||
|
||||
SML does not have any functionality for commercial use or advertising, SML is distributed free of charge.
|
||||
|
||||
> While we encourage folks to make Mods, Mods will not be supported by Tripwire Interactive and its licensors, licensees or suppliers, and if distributed pursuant to this license your Mods must include a statement to that effect.
|
||||
|
||||
SML is supported by its author. SML is distributed under the GNU GPLv3 license, which states that this program is provided "as is" and without any warranties.
|
||||
|
||||
> Your Mods must be distributed for free, period. Neither you, nor any other person or party, may sell them to anyone, commercially exploit them in any way, or charge anyone for receiving or using them without prior written consent from Tripwire Interactive. You may exchange them at no charge among other end users and distribute them to others over the Internet, on magazine cover disks, or otherwise for free.
|
||||
|
||||
SML is distributed free of charge, including both compiled mod files and its source code.
|
||||
|
||||
> The prohibitions and restrictions in this section apply to anyone in possession of KILLING FLOOR 2 or any Mods.
|
||||
|
||||
Of course.
|
||||
|
||||
> ### 3. Commercial Exploitation
|
||||
|
||||
> You may not use KILLING FLOOR 2, or any Mods created for or from KILLING FLOOR 2 or using the KILLING FLOOR 2 editor or any other tools provided with this KILLING FLOOR 2, for any commercial purposes without the prior written consent of Tripwire Interactive or its authorized licensees including, but not limited to, the following rules: 1. If you are the proprietor of an Internet café or gaming room, you may operate the KILLING FLOOR 2 in a “pay for play” environment provided that all computers used have validly licensed KILLING FLOOR 2 installed, such KILLING FLOOR 2 having been properly purchased through one of our licensees. 2. You may not, without prior written consent from Tripwire Interactive, operate KILLING FLOOR 2 in any gaming contest where (a) the cash value of all winnings and prizes paid throughout the entire competition is equal to or greater than US$10,000.00 or (b) the name of the event, or any individual contest therein, incorporates or approximates the name of a company, product or commercial service or (c) any company has provided, whether donated or as sponsorship any prizes, products or services worth with a fair market value of over US $20,000.00.
|
||||
|
||||
SML is distributed free of charge, including both compiled mod files and its source code.
|
||||
|
||||
> ### 4. Restrictions on Use
|
||||
|
||||
> Just to make sure you understand what you can and cannot do with KILLING FLOOR 2, here is a list of restrictions to your use of KILLING FLOOR 2 under this EULA:
|
||||
|
||||
> You may not decompile, modify, reverse engineer, publicly display, prepare derivative works based on KILLING FLOOR 2 (except as permitted in Section 2, above), disassemble or otherwise reproduce KILLING FLOOR 2.
|
||||
|
||||
SML is not a derivative work. No decompilation of game files was used during the development of SML. SML works only on the functionality provided by KILLING FLOOR 2 and Unreal Script available through the KILLING FLOOR 2 - SDK.
|
||||
|
||||
> Except as set forth herein, you may not rent, sell, lease, barter, sublicense or distribute KILLING FLOOR 2. You may not delete the copyright notices or any other proprietary legends on the original copy of KILLING FLOOR 2.
|
||||
|
||||
SML cannot be used for the purposes listed here. SML does not affect copyright notices in KILLING FLOOR 2.
|
||||
|
||||
> You may not offer KILLING FLOOR 2 on a pay per play basis or otherwise commercially exploit KILLING FLOOR 2 or use KILLING FLOOR 2 for any commercial purpose except as described in this agreement.
|
||||
|
||||
SML cannot be used for the purposes listed here.
|
||||
|
||||
> You may not electronically transmit KILLING FLOOR 2 from one computer to another or over a network except as described in this agreement..
|
||||
|
||||
SML cannot be used for these purposes listed here.
|
@ -17,7 +17,26 @@
|
||||
⚠️ SML is incompatible with [url=https://github.com/th3-z/kf2-acpp]AccessPlus[/url] and other mods based on it. If you need something from there, implement it as an SML compatible mutator using [url=https://github.com/GenZmeY/KF2-SafeMutLoader/blob/master/DEV.md]developer guide[/url].
|
||||
|
||||
[h1]Compatible mutators[/h1]
|
||||
https://github.com/GenZmeY/KF2-SafeMutLoader#compatible-mutators
|
||||
🟢 Any whitelisted mutators
|
||||
🟢 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2848836389]Admin Auto Login[/url]
|
||||
🟢 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2847465899]Controlled Vote Collector[/url]
|
||||
🟡 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2830826239]Custom Trader Inventory[/url]
|
||||
[list]
|
||||
[*]Purchasing a DLC weapon will unrank the server if currently there is no player with the purchased DLC. This can be bypassed by replacing all DLC weapons with their clones.
|
||||
[*]Since [url=https://wiki.killingfloor2.com/index.php?title=Update_1133_(Killing_Floor_2)]KF2 v1133[/url] the content preload causes the server to unrank for some reason. Disable it in CTI settings ([b]bPreloadContent=False[/b]) to stay ranked.
|
||||
[/list]
|
||||
🟢 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2891475864]Discord Link [Edited][/url]
|
||||
🟢 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2864857909]Looted Trader Inventory[/url]
|
||||
🟡 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2875147606]Unofficial Killing Floor 2 Patch[/url]
|
||||
[list]
|
||||
[*]Settings are not available (config and start parameters are ignored), patch will work with default settings
|
||||
[/list]
|
||||
🟢 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2521826524]Yet Another Scoreboard[/url]
|
||||
🟡 [url=https://steamcommunity.com/sharedfiles/filedetails/?id=2811290931]Zed Spawner[/url]
|
||||
[list]
|
||||
[*]Since [url=https://wiki.killingfloor2.com/index.php?title=Update_1133_(Killing_Floor_2)]KF2 v1133[/url] zed preload causes the server to unrank for some reason. Disable it in ZedSpawner settings ([b]bPreloadContentServer=False[/b]) to stay ranked.
|
||||
[/list]
|
||||
|
||||
|
||||
[h1]Sources[/h1]
|
||||
[url=https://github.com/GenZmeY/KF2-SafeMutLoader]https://github.com/GenZmeY/KF2-SafeMutLoader[/url] [b](GNU GPLv3)[/b]
|
||||
|
17
README.md
17
README.md
@ -8,9 +8,12 @@
|
||||
## Description
|
||||
Use non-whitelisted mutators and stay ranked.
|
||||
|
||||
## Legal
|
||||
SafeMutLoader is legal and does not violate the [KF2 EULA](https://store.steampowered.com/eula/232090_eula_0). Here's why in detail: [LEGAL.md](LEGAL.md).
|
||||
However, for some reason SML is getting banned in the steam workshop, so **use it at your own risk**.
|
||||
## Disclaimer
|
||||
**SML only uses KF2 and UnrealScript features, it doesn't change game executables or RAM or anything like that, so it's not a hack and it doesn't violate [Killing Floor 2 EULA](https://store.steampowered.com/eula/232090_eula_0).**
|
||||
|
||||
However, [AccessPlus](https://forums.tripwireinteractive.com/index.php?threads/utility-admin-access-plus-manager.118740) is also not a hack for the same reason, but it is constantly banned in the steam workshop. Why? I dont know.
|
||||
|
||||
**So use this at your own risk!**
|
||||
|
||||
## Usage (server only)
|
||||
1. Add SML to your server. There are two ways:
|
||||
@ -18,7 +21,7 @@ However, for some reason SML is getting banned in the steam workshop, so **use i
|
||||
* **with workshop:** Use the [instructions below](https://github.com/GenZmeY/KF2-SafeMutLoader#build--upload) to build the SML and upload it to your workshop, then subscribe your server to SML
|
||||
2. Add `SML.Mut` **first** to your list of mutators, example:
|
||||
```text
|
||||
?Mutator=SML.Mut,FriendlyHUD.FriendlyHUDMutator,YAS.Mut,CTI.Mut,CVC.Mut,AAL.Mut
|
||||
?Mutator=SML.Mut,UnofficialKFPatch.UKFPMutator,AAL.AALMut,DiscordMessage.DMMutator,YAS.YASMut,CTI.CTIMut,CVC.CVCMut,ZedSpawner.ZedSpawnerMut
|
||||
```
|
||||
(add/remove **compatible** mutators you need)
|
||||
|
||||
@ -31,19 +34,15 @@ However, for some reason SML is getting banned in the steam workshop, so **use i
|
||||
## Compatible mutators
|
||||
🟢 Any whitelisted mutators
|
||||
🟢 [Admin Auto Login](https://steamcommunity.com/sharedfiles/filedetails/?id=2848836389)
|
||||
🟢 [AmmoMulti](https://steamcommunity.com/sharedfiles/filedetails/?id=3026449204)
|
||||
🟢 [Controlled Vote Collector](https://steamcommunity.com/sharedfiles/filedetails/?id=2847465899)
|
||||
🟡 [Custom Trader Inventory](https://steamcommunity.com/sharedfiles/filedetails/?id=2830826239)
|
||||
Using `UnlockDLC=ReplaceFilter` will unrank the server when someone buys DLC weapons. Use `UnlockDLC=ReplaceWeapons` to get around this.
|
||||
Purchasing a DLC weapon will unrank the server if currently there is no player with the purchased DLC. This can be bypassed by replacing all DLC weapons with their clones.
|
||||
Since KF2 [v1133](https://wiki.killingfloor2.com/index.php?title=Update_1133_(Killing_Floor_2)) the content preload causes the server to unrank for some reason. Disable it in CTI settings (`bPreloadContent=False`) to stay ranked.
|
||||
🟢 [Discord Link [Edited]](https://steamcommunity.com/sharedfiles/filedetails/?id=2891475864)
|
||||
🟢 [FriendlyHUD](https://steamcommunity.com/sharedfiles/filedetails/?id=1819268190)
|
||||
🟢 [Looted Trader Inventory](https://steamcommunity.com/sharedfiles/filedetails/?id=2864857909)
|
||||
🟡 [StartWave](https://github.com/GenZmeY/KF2-StartWave)
|
||||
`mutate startwave X` command not working.
|
||||
🟢 [True Random Boss](https://steamcommunity.com/sharedfiles/filedetails/?id=3047331564)
|
||||
🟢 [Unofficial Killing Floor 2 Patch](https://steamcommunity.com/sharedfiles/filedetails/?id=2875147606)
|
||||
🟢 [WorkshopTool](https://steamcommunity.com/sharedfiles/filedetails/?id=3047217103)
|
||||
🟢 [Yet Another Scoreboard](https://steamcommunity.com/sharedfiles/filedetails/?id=2521826524)
|
||||
🟡 [Zed Spawner](https://steamcommunity.com/sharedfiles/filedetails/?id=2811290931)
|
||||
Since KF2 [v1133](https://wiki.killingfloor2.com/index.php?title=Update_1133_(Killing_Floor_2)) zed preload causes the server to unrank for some reason. Disable it in ZedSpawner settings (`bPreloadContentServer=False`) to stay ranked.
|
||||
|
Loading…
Reference in New Issue
Block a user