diff --git a/CHANGELOG.md b/CHANGELOG.md
index adc0d79..0ea95d2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## 1.21.1
+* Fixed a bug that skipped resolving profiles from channel ads
+* Non-binary genders are now considered mismatches against straight, gay, and bi orientations
+ * To override this, you can add kinks such as 'transgenders' to your favorite kinks
+* Smart Filter automatically marks matches as red if 'penalize matches' is selected
+
## 1.21.0
* Added clearer broadcast messages
* Removed extra arrow from gallery view (credit: [@FatCatClient](https://github.com/FatCatClient))
diff --git a/README.md b/README.md
index 2393c7d..74270c1 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,8 @@
# Download
-[Windows](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.0/F-Chat-Rising-1.21.0-win.exe) (82 MB)
-| [MacOS Intel](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.0/F-Chat-Rising-1.21.0-macos-intel.dmg) (82 MB)
-| [MacOS M1](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.0/F-Chat-Rising-1.21.0-macos-m1.dmg) (84 MB)
-| [Linux](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.0/F-Chat-Rising-1.21.0-linux.AppImage) (82 MB)
+[Windows](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.1/F-Chat-Rising-1.21.1-win.exe) (82 MB)
+| [MacOS Intel](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.1/F-Chat-Rising-1.21.1-macos-intel.dmg) (82 MB)
+| [MacOS M1](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.1/F-Chat-Rising-1.21.1-macos-m1.dmg) (84 MB)
+| [Linux](https://github.com/mrstallion/fchat-rising/releases/download/v1.21.1/F-Chat-Rising-1.21.1-linux.AppImage) (82 MB)
# F-Chat Rising
@@ -52,6 +52,7 @@ This repository contains a heavily customized version of the mainline F-Chat 3.0
* Character view tabs (overview, images, etc.) stick to the top
* Show/hide current profile with Ctrl+P or Command+P
* Navigate back and forward in character profile view history
+ * Profile Analyzer guides you to adjust your profile to maximize matches
* Character Search
* Search results are sorted based on match scores
* Best matching profiles get a 'unicorn' tag
@@ -77,7 +78,7 @@ This repository contains a heavily customized version of the mainline F-Chat 3.0
* Option to disable Windows high contrast mode
* Right click any word and select 'Look up...' to see its dictionary definition
* Technical Details for Nerds
- * Upgraded to Electron 10.x
+ * Upgraded to Electron 17.x
* Replaced `node-spellchecker` with the built-in spellchecker that ships with Electron 8+
* Multi-language support for spell checking (Windows only – language is autodetected on MacOS)
@@ -85,7 +86,7 @@ This repository contains a heavily customized version of the mainline F-Chat 3.0
## How to Set Up Ads
1. Open a conversation channel of your preference, such as `#Sex Driven LFRP`
-1. Locate `Ads` dropdown at the top right corner of the channel view
+1. Locate `Ads` dropdown in the top right corner of the channel view
1. Click `Ads > Edit Channel Ads...`
1. Enter one or more ads
1. Click `Save settings`
diff --git a/chat/common.ts b/chat/common.ts
index 7f5254e..d9b827f 100644
--- a/chat/common.ts
+++ b/chat/common.ts
@@ -57,8 +57,8 @@ export class Settings implements ISettings {
risingShowPortraitNearInput = true;
risingFilter = {
- hideAds: true,
- hideSearchResults: true,
+ hideAds: false,
+ hideSearchResults: false,
hideChannelMembers: false,
hidePublicChannelMessages: false,
hidePrivateChannelMessages: false,
diff --git a/docs/_config.yml b/docs/_config.yml
index e6ef408..c42a9dc 100644
--- a/docs/_config.yml
+++ b/docs/_config.yml
@@ -50,7 +50,7 @@ theme: jekyll-theme-slate
changelog: https://github.com/mrstallion/fchat-rising/blob/master/CHANGELOG.md
download:
- version: 1.21.0
+ version: 1.21.1
url: https://github.com/mrstallion/fchat-rising/releases/download/v%VERSION%/F-Chat-Rising-%VERSION%-%PLATFORM_TAIL%
diff --git a/electron/package.json b/electron/package.json
index 0385f28..fda91e7 100644
--- a/electron/package.json
+++ b/electron/package.json
@@ -1,6 +1,6 @@
{
"name": "fchat",
- "version": "1.21.0",
+ "version": "1.21.1",
"author": "The F-List Team and Mister Stallion (Esq.)",
"description": "F-List.net Chat Client",
"main": "main.js",
diff --git a/learn/matcher-types.ts b/learn/matcher-types.ts
index 4f1938c..0e6c3e6 100644
--- a/learn/matcher-types.ts
+++ b/learn/matcher-types.ts
@@ -343,7 +343,6 @@ export const genderKinkMapping: GenderKinkIdMap = {
[Gender.Transgender]: Kink.Transgenders
};
-
export interface BodyTypeKinkIdMap {
[key: number]: Kink
}
diff --git a/learn/matcher.ts b/learn/matcher.ts
index 6a6e0e4..9eb443a 100644
--- a/learn/matcher.ts
+++ b/learn/matcher.ts
@@ -722,6 +722,9 @@ export class Matcher {
private resolveGenderScore(): Score {
const you = this.you;
+
+ const yourGender = this.yourAnalysis.gender;
+ const yourOrientation = this.yourAnalysis.orientation;
const theirGender = this.theirAnalysis.gender;
if (theirGender === null)
@@ -733,6 +736,21 @@ export class Matcher {
if (genderKinkScore !== null)
return Matcher.formatKinkScore(genderKinkScore, genderName);
+ if (yourGender && yourOrientation) {
+ if (Matcher.isCisGender(yourGender) && !Matcher.isCisGender(theirGender)) {
+ if ([
+ Orientation.Straight,
+ Orientation.Gay,
+ Orientation.Bisexual,
+ Orientation.BiCurious,
+ Orientation.BiFemalePreference,
+ Orientation.BiMalePreference
+ ].includes(yourOrientation)) {
+ return new Score(Scoring.MISMATCH, 'No non-binary genders');
+ }
+ }
+ }
+
return new Score(Scoring.NEUTRAL);
}
diff --git a/learn/profile-cache.ts b/learn/profile-cache.ts
index b9b8570..4505d47 100644
--- a/learn/profile-cache.ts
+++ b/learn/profile-cache.ts
@@ -152,7 +152,7 @@ export class ProfileCache extends AsyncCache {
async register(c: ComplexCharacter, skipStore: boolean = false): Promise {
const k = AsyncCache.nameKey(c.character.name);
const match = ProfileCache.match(c);
- const score = (!match || match.score === null) ? Scoring.NEUTRAL : match.score;
+ let score = (!match || match.score === null) ? Scoring.NEUTRAL : match.score;
if (score === 0) {
console.log(`Storing score 0 for character ${c.character.name}`);
@@ -164,8 +164,14 @@ export class ProfileCache extends AsyncCache {
const risingFilter = core.state.settings.risingFilter;
const isFiltered = matchesSmartFilters(c.character, risingFilter);
+ const penalty = (isFiltered && risingFilter.penalizeMatches) ? -5 : (!isFiltered && risingFilter.rewardNonMatches) ? 2 : 0;
+
+ if (isFiltered && risingFilter.penalizeMatches) {
+ score = Scoring.MISMATCH;
+ }
+
const searchScore = match
- ? Matcher.calculateSearchScoreForMatch(score, match, (isFiltered && risingFilter.penalizeMatches) ? -2 : (!isFiltered && risingFilter.rewardNonMatches) ? 1 : 0)
+ ? Matcher.calculateSearchScoreForMatch(score, match, penalty)
: 0;
const matchDetails = { matchScore: score, searchScore, isFiltered };
diff --git a/package.json b/package.json
index 9e80c74..bbca12a 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "f-list-rising",
- "version": "1.21.0",
+ "version": "1.21.1",
"author": "The F-List Team and and Mister Stallion (Esq.)",
"description": "A heavily modded F-Chat 3.0 client for F-List",
"license": "MIT",