Skip to content
Open

Haha #644

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
106 commits
Select commit Hold shift + click to select a range
98d9a8d
Living impostors can faintly hear nearby ghosts
Ornamus Dec 7, 2020
ff3d121
Add reverb to ghosts talking to impostors, add haunting setting
Ornamus Dec 7, 2020
abe614a
Don't infer parameter type, disable reverb on creation
Ornamus Dec 7, 2020
7da1824
Only create nodes if needed, move reverb to own file
Ornamus Dec 8, 2020
efeb6d1
Remove commented out test code
Ornamus Dec 8, 2020
9094fd2
Working overlay
Ornamus Dec 10, 2020
f55b765
Better visuals, better positioning, hide dead people when you're aliv…
Ornamus Dec 10, 2020
085ff9d
cleanup, appease TypeScript
Ornamus Dec 10, 2020
dcb4172
Merge branch 'master' into master
Ornamus Dec 11, 2020
4339446
Fix formatting, start working on settings
Ornamus Dec 11, 2020
dee1665
Fix haunting setting definition
Ornamus Dec 11, 2020
d3bad53
Merge branch 'master' into feature/overlay
Ornamus Dec 11, 2020
45c2aaa
Merge branch 'feature/overlay' of https://github.com/Ornamus/CrewLink…
Ornamus Dec 11, 2020
f2ad143
Overlay can read settings, finish merge
Ornamus Dec 12, 2020
45e3f6f
Cleanup
Ornamus Dec 12, 2020
f567712
Hide users who aren't connected to CrewLink
Ornamus Dec 12, 2020
4ef6604
restore voice detection that was deleted by mistake
Ornamus Dec 12, 2020
7fe554e
Basic muffling (needs slight value adjustments)
bluo999 Dec 10, 2020
85c5b85
refactor: remove usage of remote and clean up IPC messaging
MarshallOfSound Dec 13, 2020
659f537
chore: run linter
MarshallOfSound Dec 13, 2020
7efcc93
Reduce audio volume during muffle
bluo999 Dec 13, 2020
ccf8676
Overlay position control
Ornamus Dec 13, 2020
4b6df0c
Formatting
Ornamus Dec 13, 2020
aee7e0b
Remove debug comments
Ornamus Dec 13, 2020
e59122e
Bugfixes
Ornamus Dec 13, 2020
a91339a
fix: add missing early return
MarshallOfSound Dec 13, 2020
698b1b6
Disconnect muffle audio element
bluo999 Dec 15, 2020
2a256f0
Close & garbage-collect the overlay window to prevent any memory leaks
Ornamus Dec 18, 2020
a9ea9a8
- Support for X64 version of the game (Epic , WIP)
OhMyGuus Dec 22, 2020
7497f40
- Removed log
OhMyGuus Dec 22, 2020
eb6eb99
Removed debug crewlink server
OhMyGuus Dec 22, 2020
1bf95cb
Renamed gaemclient to InnterNetClient (offical name)
OhMyGuus Dec 22, 2020
2b9cf88
Added HostId & clientId
OhMyGuus Dec 22, 2020
6a207bd
Added IsHost to the state
OhMyGuus Dec 22, 2020
c6ace97
- Small fix for the size of the playeraddress
OhMyGuus Dec 22, 2020
c1b05ce
Small fix for gamecode.
OhMyGuus Dec 23, 2020
f5dac29
Fixed lint errors
OhMyGuus Dec 23, 2020
ac6cdfb
Fixed hostid,clientid forgot to add it.
OhMyGuus Dec 24, 2020
3516b75
Merge branch 'master' into no-remote-better-ipc
ottomated Dec 26, 2020
a2f0955
toggle mute, fix errors
ottomated Dec 26, 2020
6f4d224
fix audio source not opening sometimes
ottomated Dec 26, 2020
0b501fc
Auto-updates in-app
ottomated Dec 26, 2020
a5d5bbb
Open dialog when changing server URL
ottomated Dec 27, 2020
3330918
check!
ottomated Dec 27, 2020
3bf5682
finish updater dialog
ottomated Dec 27, 2020
493e4ab
Remove css files
ottomated Dec 27, 2020
c6c0064
fix potential quit loop
ottomated Dec 27, 2020
1c685e7
Reset serverURL on 1.2.0 update
ottomated Dec 27, 2020
3fb1197
set user-agent
ottomated Dec 27, 2020
0ef8148
fix database being unfilled
ottomated Dec 27, 2020
7e1a25c
change up url parsing
ottomated Dec 27, 2020
64c311d
shorten user-agent
ottomated Dec 27, 2020
01578a5
dev => 0.0.0
ottomated Dec 27, 2020
08595c9
Accept server errors
ottomated Dec 27, 2020
5c9dcec
unused variable
ottomated Dec 27, 2020
619a4be
lint
ottomated Dec 27, 2020
2eec595
v1.2.0
ottomated Dec 27, 2020
b7f79f3
Merge branch 'master'
OhMyGuus Dec 27, 2020
7b871e5
Forgot to commit change.
OhMyGuus Dec 27, 2020
a5a5235
lint
OhMyGuus Dec 27, 2020
bafb16a
Error handling for loop function
OhMyGuus Dec 27, 2020
d6931a6
fix novoice icon for host
Dec 27, 2020
8f65fa1
fix skin size for crewmates
Dec 27, 2020
919d06d
fix join issue when host left lobby before creating own one
Dec 27, 2020
9d2cc56
- Forgot to add clientid
OhMyGuus Dec 28, 2020
63d095d
Merge branch 'feature/x64' of https://github.com/OhMyGuus/CrewLink in…
OhMyGuus Dec 28, 2020
151afe0
fix keyboard shortcuts (F-keys)
Dec 29, 2020
b712295
Merge pull request #470 from Fabiryn/feature/fix-1.2-related-issues
ottomated Dec 30, 2020
23a6e02
support old version, bump to 1.2.1
ottomated Dec 30, 2020
b9d0509
Merge branch 'master' of https://github.com/ottomated/CrewLink
ottomated Dec 30, 2020
c2cfd74
Merge branch 'feature/x64'
ottomated Dec 30, 2020
0b6fa48
Merge branch 'master' into feature/overlay
ottomated Dec 30, 2020
4e8e291
merge
ottomated Dec 30, 2020
cd36593
Refactored voice calculation.
stogoh Jan 2, 2021
5ec2339
Add up listener for mouse buttons and mute/deafen
PsyTauon Jan 5, 2021
7e900dd
Workaround for duplicate audio sources aka "can be heard anywhere"
DorCoMaNdO Jan 5, 2021
e4854e5
Accidental trim.
DorCoMaNdO Jan 5, 2021
02d2f80
overlay done?
ottomated Jan 9, 2021
0c0f530
Add keys
ottomated Jan 9, 2021
2f3fec1
Overlay configuration
ottomated Jan 9, 2021
0c47acf
Merge branch 'master' into patch-1
ottomated Jan 9, 2021
e245219
Merge pull request #509 from PsyTauon/mute-toggle-mouse
ottomated Jan 9, 2021
89f7566
Merge branch 'master' of https://github.com/ottomated/CrewLink
ottomated Jan 9, 2021
c1f03d5
Merge pull request #494 from Stogoh/feature/refactor-voice-calculation
ottomated Jan 9, 2021
a3dd6c3
Merge branch 'master' of https://github.com/ottomated/CrewLink
ottomated Jan 9, 2021
2ab60e0
Pointer on footer icons
ottomated Jan 9, 2021
e938c87
use squared distance
ottomated Jan 9, 2021
71b070f
Merge branch 'master' into muffling-vents
ottomated Jan 9, 2021
29e1df6
Merge branch 'master' into feature/haunting
ottomated Jan 9, 2021
836873a
Add haunting option
ottomated Jan 9, 2021
f838b7a
Add Error Boundary
ottomated Jan 9, 2021
569ddc2
Toggle for hearing impostors in vents, improved error boundary
ottomated Jan 9, 2021
5c72443
tweak scrollbar corner
ottomated Jan 9, 2021
35f9973
v2.0.0
ottomated Jan 9, 2021
34805dc
catch error when closing
ottomated Jan 9, 2021
2a13efd
Initialize haunting to correct state
ottomated Jan 9, 2021
d8c2b6a
Add comms sabotage option
ottomated Jan 9, 2021
c29b62a
[chore] Lint
ottomated Jan 9, 2021
3fcfcf7
[chore] lint
ottomated Jan 9, 2021
c9eed5a
Remove title from issue template
ottomated Jan 9, 2021
33619a8
Remove title from issue template
ottomated Jan 9, 2021
99b80a2
fix issues caused by disabling spatial audio
ottomated Jan 10, 2021
dc6e970
typo
ottomated Jan 10, 2021
6e0c4ab
Fix issues with disabling spatial audio and javascript errors
ottomated Jan 10, 2021
46d177b
v2.0.1
ottomated Jan 10, 2021
10a170d
Merge branch 'master' of https://github.com/ottomated/CrewLink
ottomated Jan 10, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ settings:
react:
version: 'detect'
rules:
no-empty:
- error
- allowEmptyCatch: true
linebreak-style:
- error
- unix
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: Bug report
about: Create a report to help us improve
title: '[BUG REPORT]'
title: ''
labels: 'bug'
assignees: ''
---
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
name: Feature request
about: Suggest an idea for this project
title: '[FEATURE]'
title: ''
labels: 'enhancement'
assignees: ''
---
Expand Down
12 changes: 6 additions & 6 deletions TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
- [x] Move the default server to a better host.
- [x] Rewrite all error messages to be even more human-readable.
- [ ] Integrate an official server list into the client.
- [ ] Detect the reason *why* the server can't provide offsets: i.e. Among Us just updated, it's an old version of Among Us, the server hasn't updated, etc.
- [x] Detect the reason *why* the server can't provide offsets: i.e. Among Us just updated, it's an old version of Among Us, the server hasn't updated, etc.

### Stretch

Expand All @@ -18,20 +18,20 @@
- [ ] Add a microphone boost slider.
- [ ] Add a speaker adjustment slider.
- [ ] Add individual adjustment sliders to each of the players.
- [ ] Handle all RTC errors to make it unnecessary to ever re-open an RTC connection.
- [x] Handle all RTC errors to make it unnecessary to ever re-open an RTC connection.
- [ ] Detect reason for RTC failure: NAT type, etc?
- [ ] Re-enable all `navigator.getUserMedia` functions that can be re-enabled with autoGainControl kicking in.
- [ ] Move all player-to-player communication logic to RTC data channels, versus sending them over the websocket.
- [x] Re-enable all `navigator.getUserMedia` functions that can be re-enabled with autoGainControl kicking in.
- [x] Move all player-to-player communication logic to RTC data channels, versus sending them over the websocket.

### Stretch

- [ ] Implement an optional TURN server.

## Game Reader

- [ ] Fix unicode characters in player names
- [x] Fix unicode characters in player names
- [ ] Indicate to the user when it can't read memory properly. Example: screen displays `MENU` while in lobby due to some misplaced offset.
- [ ] Don't use the Unity Analytics file to read the game version. Use either a hash of the GameAssembly dll, or DMA it from the process.
- [x] Don't use the Unity Analytics file to read the game version. Use either a hash of the GameAssembly dll, or DMA it from the process.

### Stretch

Expand Down
6 changes: 5 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "crewlink",
"version": "1.1.6",
"version": "2.0.1",
"license": "GPL-3.0-or-later",
"description": "Free, open, Among Us proximity voice chat",
"repository": {
Expand Down Expand Up @@ -45,11 +45,13 @@
"axios": "^0.21.0",
"cross-spawn": "^7.0.3",
"deep-equal": "^2.0.5",
"electron-overlay-window": "^1.0.4",
"electron-store": "^6.0.1",
"electron-updater": "^4.3.5",
"electron-window-state": "^5.0.3",
"iohook": "^0.7.1",
"memoryjs": "git://github.com/Rob--/memoryjs",
"pretty-bytes": "^5.5.0",
"react": "^17.0.1",
"react-dom": "^17.0.1",
"registry-js": "^1.12.0",
Expand All @@ -68,6 +70,7 @@
"@types/deep-equal": "^1.0.1",
"@types/js-yaml": "^3.12.5",
"@types/node": "12",
"@types/pretty-bytes": "^5.2.0",
"@types/react": "^16.9.53",
"@types/react-dom": "^16.9.8",
"@types/simple-peer": "^9.6.1",
Expand All @@ -76,6 +79,7 @@
"@types/webpack-env": "^1.15.3",
"@typescript-eslint/eslint-plugin": "^4.9.1",
"@typescript-eslint/parser": "^4.9.1",
"arraybuffer-loader": "^1.0.8",
"electron": "9.3.3",
"electron-builder": "^22.9.1",
"electron-webpack": "^2.8.2",
Expand Down
36 changes: 36 additions & 0 deletions src/common/AmongUsState.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,13 @@ export interface AmongUsState {
isHost: boolean;
clientId: number;
hostId: number;
commsSabotaged: boolean;
}

export interface Player {
ptr: number;
id: number;
clientId: number;
name: string;
colorId: number;
hatId: number;
Expand All @@ -26,10 +29,43 @@ export interface Player {
y: number;
inVent: boolean;
}

export enum MapType {
THE_SKELD,
MIRA_HQ,
POLUS,
UNKNOWN,
}

export enum GameState {
LOBBY,
TASKS,
DISCUSSION,
MENU,
UNKNOWN,
}

export interface Client {
playerId: number;
clientId: number;
}
export interface SocketClientMap {
[socketId: string]: Client;
}
export interface OtherTalking {
[playerId: number]: boolean; // isTalking
}

export interface AudioConnected {
[peer: string]: boolean; // isConnected
}

export interface VoiceState {
otherTalking: OtherTalking;
playerSocketIds: {
[index: number]: string;
};
otherDead: OtherTalking;
socketClients: SocketClientMap;
audioConnected: AudioConnected;
}
5 changes: 5 additions & 0 deletions src/common/ISettings.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,14 @@ export interface ISettings {
muteShortcut: string;
hideCode: boolean;
enableSpatialAudio: boolean;
meetingOverlay: boolean;
overlayPosition: 'left' | 'right' | 'hidden';
localLobbySettings: ILobbySettings;
}

export interface ILobbySettings {
maxDistance: number;
haunting: boolean;
hearImpostorsInVents: boolean;
commsSabotage: boolean;
}
44 changes: 44 additions & 0 deletions src/common/ipc-messages.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import { ProgressInfo } from 'builder-util-runtime';

// Renderer --> Main (send/on)
export enum IpcMessages {
SHOW_ERROR_DIALOG = 'SHOW_ERROR_DIALOG',
OPEN_AMONG_US_GAME = 'OPEN_AMONG_US_GAME',
RESTART_CREWLINK = 'RESTART_CREWLINK',
QUIT_CREWLINK = 'QUIT_CREWLINK',
SEND_TO_OVERLAY = 'SEND_TO_OVERLAY',
}

// Renderer 1 --> Overlay Window (send/on)
export enum IpcOverlayMessages {
NOTIFY_GAME_STATE_CHANGED = 'NOTIFY_GAME_STATE_CHANGED',
NOTIFY_VOICE_STATE_CHANGED = 'NOTIFY_VOICE_STATE_CHANGED',
NOTIFY_SETTINGS_CHANGED = 'NOTIFY_SETTINGS_CHANGED',
}

// Renderer --> Main (sendSync/on)
export enum IpcSyncMessages {
GET_INITIAL_STATE = 'GET_INITIAL_STATE',
}

// Renderer --> Main (invoke/handle)
export enum IpcHandlerMessages {
START_HOOK = 'START_HOOK',
}

// Main --> Renderer (send/on)
export enum IpcRendererMessages {
NOTIFY_GAME_OPENED = 'NOTIFY_GAME_OPENED',
NOTIFY_GAME_STATE_CHANGED = 'NOTIFY_GAME_STATE_CHANGED',
TOGGLE_DEAFEN = 'TOGGLE_DEAFEN',
TOGGLE_MUTE = 'TOGGLE_MUTE',
PUSH_TO_TALK = 'PUSH_TO_TALK',
ERROR = 'ERROR',
AUTO_UPDATER_STATE = 'AUTO_UPDATER_STATE',
}

export interface AutoUpdaterState {
state: 'error' | 'available' | 'downloading' | 'downloaded' | 'unavailable';
error?: string;
progress?: ProgressInfo;
}
Loading