yolkbot 0.1.0-alpha.9 → 0.1.1-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/build/browser.js +6 -6
  2. package/package.json +17 -5
  3. package/src/api.js +97 -23
  4. package/src/bot/GamePlayer.js +2 -2
  5. package/src/bot.js +892 -483
  6. package/src/comm/Codes.js +73 -0
  7. package/src/constants/challenges.js +1822 -0
  8. package/src/constants/index.js +23 -1
  9. package/src/constants/items.js +663 -264
  10. package/src/constants/maps.js +57 -18
  11. package/src/dispatches/BootPlayerDispatch.js +1 -1
  12. package/src/dispatches/ChatDispatch.js +1 -1
  13. package/src/dispatches/GameOptionsDispatch.js +1 -1
  14. package/src/dispatches/GoToAmmoDispatch.js +44 -0
  15. package/src/dispatches/GoToCoopDispatch.js +44 -0
  16. package/src/dispatches/GoToGrenadeDispatch.js +44 -0
  17. package/src/dispatches/GoToPlayerDispatch.js +5 -1
  18. package/src/dispatches/GoToSpatulaDispatch.js +5 -1
  19. package/src/dispatches/LookAtPosDispatch.js +0 -2
  20. package/src/dispatches/LookDispatch2.js +18 -0
  21. package/src/dispatches/MeleeDispatch.js +1 -1
  22. package/src/dispatches/PauseDispatch.js +1 -1
  23. package/src/dispatches/ReloadDispatch.js +14 -2
  24. package/src/dispatches/ReportPlayerDispatch.js +1 -1
  25. package/src/dispatches/SaveLoadoutDispatch.js +11 -34
  26. package/src/dispatches/SpawnDispatch.js +1 -1
  27. package/src/dispatches/SwapWeaponDispatch.js +1 -1
  28. package/src/dispatches/SwitchTeamDispatch.js +1 -1
  29. package/src/dispatches/ThrowGrenadeDispatch.js +1 -1
  30. package/src/dispatches/index.js +9 -0
  31. package/src/matchmaker.js +11 -2
  32. package/src/pathing/mapnode.js +83 -250
  33. package/src/socket.js +1 -1
  34. package/src/types/api.d.ts +2 -16
  35. package/src/types/bot/GamePlayer.d.ts +25 -21
  36. package/src/types/bot.d.ts +122 -54
  37. package/src/types/constants/challenges.d.ts +19 -0
  38. package/src/types/constants/guns.d.ts +240 -0
  39. package/src/types/constants/index.d.ts +100 -0
  40. package/src/types/constants/items.d.ts +21 -0
  41. package/src/types/constants/maps.d.ts +15 -0
  42. package/src/types/dispatches/GoToAmmoDispatch.d.ts +8 -0
  43. package/src/types/dispatches/GoToCoopDispatch.d.ts +8 -0
  44. package/src/types/dispatches/GoToGrenadeDispatch.d.ts +8 -0
  45. package/src/types/dispatches/MovementDispatch.d.ts +2 -0
  46. package/src/types/dispatches/index.d.ts +45 -1
  47. package/src/types/matchmaker.d.ts +19 -14
  48. package/src/types/socket.d.ts +7 -0
  49. package/src/types/gun.d.ts +0 -131
@@ -0,0 +1,8 @@
1
+ import Bot from '../bot';
2
+
3
+ export class GoToCoopDispatch {
4
+ check(bot: Bot): boolean;
5
+ execute(bot: Bot): void;
6
+ }
7
+
8
+ export default GoToCoopDispatch;
@@ -0,0 +1,8 @@
1
+ import Bot from '../bot';
2
+
3
+ export class GoToGrenadeDispatch {
4
+ check(bot: Bot): boolean;
5
+ execute(bot: Bot): void;
6
+ }
7
+
8
+ export default GoToGrenadeDispatch;
@@ -1,3 +1,5 @@
1
+ import Bot from '../bot';
2
+
1
3
  export class MovementDispatch {
2
4
  controlKeys: number;
3
5
 
@@ -2,6 +2,9 @@ import BootPlayerDispatch from './BootPlayerDispatch';
2
2
  import ChatDispatch from './ChatDispatch';
3
3
  import FireDispatch from './FireDispatch';
4
4
  import GameOptionsDispatch from './GameOptionsDispatch';
5
+ import GoToAmmoDispatch from './GoToAmmoDispatch';
6
+ import GoToCoopDispatch from './GoToCoopDispatch';
7
+ import GoToGrenadeDispatch from './GoToGrenadeDispatch';
5
8
  import GoToPlayerDispatch from './GoToPlayerDispatch';
6
9
  import GoToSpatulaDispatch from './GoToSpatulaDispatch';
7
10
  import LookAtDispatch from './LookAtDispatch';
@@ -33,6 +36,18 @@ declare module 'GameOptionsDispatch' {
33
36
  export default GameOptionsDispatch;
34
37
  }
35
38
 
39
+ declare module 'GoToAmmoDispatch' {
40
+ export default GoToAmmoDispatch;
41
+ }
42
+
43
+ declare module 'GoToCoopDispatch' {
44
+ export default GoToCoopDispatch;
45
+ }
46
+
47
+ declare module 'GoToGrenadeDispatch' {
48
+ export default GoToGrenadeDispatch;
49
+ }
50
+
36
51
  declare module 'GoToPlayerDispatch' {
37
52
  export default GoToPlayerDispatch;
38
53
  }
@@ -91,6 +106,9 @@ declare module 'dispatches' {
91
106
  ChatDispatch,
92
107
  FireDispatch,
93
108
  GameOptionsDispatch,
109
+ GoToAmmoDispatch,
110
+ GoToCoopDispatch,
111
+ GoToGreandeDispatch,
94
112
  GoToPlayerDispatch,
95
113
  GoToSpatulaDispatch,
96
114
  LookAtDispatch,
@@ -111,6 +129,9 @@ declare module 'dispatches' {
111
129
  ChatDispatch: typeof ChatDispatch,
112
130
  FireDispatch: typeof FireDispatch,
113
131
  GameOptionsDispatch: typeof GameOptionsDispatch,
132
+ GoToAmmoDispatch: typeof GoToAmmoDispatch,
133
+ GoToCoopDispatch: typeof GoToCoopDispatch,
134
+ GoToGrenadeDispatch: typeof GoToGrenadeDispatch,
114
135
  GoToPlayerDispatch: typeof GoToPlayerDispatch,
115
136
  GoToSpatulaDispatch: typeof GoToSpatulaDispatch,
116
137
  LookAtDispatch: typeof LookAtDispatch,
@@ -127,4 +148,27 @@ declare module 'dispatches' {
127
148
  };
128
149
 
129
150
  export default dispatches;
130
- }
151
+ }
152
+
153
+ export type ADispatch =
154
+ BootPlayerDispatch |
155
+ ChatDispatch |
156
+ FireDispatch |
157
+ GameOptionsDispatch |
158
+ GoToAmmoDispatch |
159
+ GoToCoopDispatch |
160
+ GoToGrenadeDispatch |
161
+ GoToPlayerDispatch |
162
+ GoToSpatulaDispatch |
163
+ LookAtDispatch |
164
+ LookAtPosDispatch |
165
+ MeleeDispatch |
166
+ MovementDispatch |
167
+ PauseDispatch |
168
+ ReloadDispatch |
169
+ ReportPlayerDispatch |
170
+ SaveLoadoutDispatch |
171
+ SpawnDispatch |
172
+ SwapWeaponDispatch |
173
+ SwitchTeamDispatch |
174
+ ThrowGrenadeDispatch;
@@ -1,5 +1,5 @@
1
- import { GameModes, PlayTypes } from '../constants/index.js';
2
- import yolkws from '../socket.js';
1
+ import { GameModes, PlayTypes } from './constants/index.js';
2
+ import yolkws from './socket.js';
3
3
 
4
4
  type MatchmakerParams = {
5
5
  instance?: string;
@@ -17,16 +17,26 @@ type FindGameParams = {
17
17
  mode: keyof typeof GameModes;
18
18
  };
19
19
 
20
- type GameFoundResponse = {
21
- command: 'gameFound';
22
- [key: string]: any;
23
- };
24
-
25
20
  type RegionListResponse = {
26
21
  command: 'regionList';
27
22
  regionList: Region[];
28
23
  };
29
24
 
25
+ export interface RawGameData {
26
+ command: 'gameFound';
27
+ region: string;
28
+ subdomain: string;
29
+ id: string;
30
+ uuid: string;
31
+ private: boolean;
32
+ noobLobby: boolean;
33
+ }
34
+
35
+ type CommandSend = {
36
+ command: string;
37
+ [key: string]: any;
38
+ }
39
+
30
40
  export declare class Matchmaker {
31
41
  connected: boolean;
32
42
  onceConnected: Function[];
@@ -38,13 +48,10 @@ export declare class Matchmaker {
38
48
 
39
49
  constructor(params?: MatchmakerParams);
40
50
 
41
- private createSocket(instance: string): void;
42
- private createSessionId(instance: string): Promise<void>;
43
-
44
- send(msg: any): void;
51
+ send(msg: CommandSend): void;
45
52
  waitForConnect(): Promise<void>;
46
53
  getRegions(): Promise<Region[]>;
47
- findPublicGame(params: FindGameParams): Promise<GameFoundResponse>;
54
+ findPublicGame(params: FindGameParams): Promise<RawGameData>;
48
55
  getRandomRegion(): string;
49
56
  getRandomGameMode(): keyof typeof GameModes;
50
57
  close(): void;
@@ -52,8 +59,6 @@ export declare class Matchmaker {
52
59
  on(event: string, callback: Function): void;
53
60
  once(event: string, callback: Function): void;
54
61
  off(event: string, callback: Function): void;
55
-
56
- private emit(event: string, ...args: any[]): void;
57
62
  }
58
63
 
59
64
  export default Matchmaker;
@@ -0,0 +1,7 @@
1
+ import NodeWebSocket from 'ws';
2
+
3
+ declare class yolkws extends NodeWebSocket {
4
+ constructor(url: string, proxy: string);
5
+ }
6
+
7
+ export default yolkws;
@@ -1,131 +0,0 @@
1
- type Ammo = {
2
- rounds: number;
3
- capacity: number;
4
- reload: number;
5
- store: number;
6
- storeMax: number;
7
- pickup: number;
8
- };
9
-
10
- type GunProps = {
11
- dmgTypeId?: number;
12
- highPrecision?: boolean;
13
- equipTime?: number;
14
- stowWeaponTime?: number;
15
- accuracy?: number;
16
- shootingAccuracy?: number;
17
- movementAccuracy?: number;
18
- accuracyMax?: number;
19
- accuracyMin?: number;
20
- accuracyLoss?: number;
21
- accuracyRecover?: number;
22
- tracer?: number;
23
- burstQueue?: number;
24
- adsMod?: number;
25
- movementAccuracyMod?: number;
26
- reloadBloom?: boolean;
27
- reloadTimeMod?: number;
28
- ammo?: Ammo;
29
- longReloadTime?: number;
30
- shortReloadTime?: number;
31
- weaponName?: string;
32
- standardMeshName?: string;
33
- rof?: number;
34
- recoil?: number;
35
- automatic?: boolean;
36
- damage?: number;
37
- totalDamage?: number;
38
- range?: number;
39
- velocity?: number;
40
- hasScope?: boolean;
41
- radius?: number;
42
- minRange?: number;
43
- burst?: number;
44
- burstRof?: number;
45
- movementInstability?: number;
46
- absoluteMinAccuracy?: number;
47
- };
48
-
49
- class Gun {
50
- dmgTypeId: number;
51
- highPrecision: boolean;
52
- equipTime: number;
53
- stowWeaponTime: number;
54
- accuracy: number;
55
- shootingAccuracy: number;
56
- movementAccuracy: number;
57
- accuracyMax: number;
58
- accuracyMin: number;
59
- accuracyLoss: number;
60
- accuracyRecover: number;
61
- tracer: number;
62
- burstQueue: number;
63
- adsMod: number;
64
- movementAccuracyMod: number;
65
- reloadBloom: boolean;
66
- reloadTimeMod: number;
67
- ammo: Ammo;
68
- longReloadTime: number;
69
- shortReloadTime: number;
70
- weaponName: string;
71
- standardMeshName: string;
72
- rof: number;
73
- recoil: number;
74
- automatic: boolean;
75
- damage: number;
76
- totalDamage: number;
77
- range: number;
78
- velocity: number;
79
- hasScope: boolean;
80
- radius: number;
81
- minRange: number;
82
- burst: number;
83
- burstRof: number;
84
- movementInstability: number;
85
- absoluteMinAccuracy: number;
86
-
87
- constructor(props: GunProps = {}) {
88
- this.dmgTypeId = props.dmgTypeId || 0;
89
- this.highPrecision = props.highPrecision || false;
90
- this.equipTime = props.equipTime || 13;
91
- this.stowWeaponTime = props.stowWeaponTime || 13;
92
- this.accuracy = props.accuracy || 0;
93
- this.shootingAccuracy = props.shootingAccuracy || 0;
94
- this.movementAccuracy = props.movementAccuracy || 0;
95
- this.accuracyMax = props.accuracyMax || 0;
96
- this.accuracyMin = props.accuracyMin || 0;
97
- this.accuracyLoss = props.accuracyLoss || 0;
98
- this.accuracyRecover = props.accuracyRecover || 0;
99
- this.tracer = props.tracer || 0;
100
- this.burstQueue = props.burstQueue || 0;
101
- this.adsMod = props.adsMod || 0.5;
102
- this.movementAccuracyMod = props.movementAccuracyMod || 1;
103
- this.reloadBloom = props.reloadBloom || true;
104
- this.reloadTimeMod = props.reloadTimeMod || 1;
105
- this.ammo = props.ammo || { rounds: 0, capacity: 0, reload: 0, store: 0, storeMax: 0, pickup: 0 };
106
- this.longReloadTime = props.longReloadTime || 0;
107
- this.shortReloadTime = props.shortReloadTime || 0;
108
- this.weaponName = props.weaponName || '';
109
- this.standardMeshName = props.standardMeshName || '';
110
- this.rof = props.rof || 0;
111
- this.recoil = props.recoil || 0;
112
- this.automatic = props.automatic || false;
113
- this.damage = props.damage || 0;
114
- this.totalDamage = props.totalDamage || 0;
115
- this.range = props.range || 0;
116
- this.velocity = props.velocity || 0;
117
- this.hasScope = props.hasScope || false;
118
- this.radius = props.radius || 0;
119
- this.minRange = props.minRange || 0;
120
- this.burst = props.burst || 0;
121
- this.burstRof = props.burstRof || 0;
122
- this.movementInstability = props.movementInstability || 0;
123
- this.absoluteMinAccuracy = props.absoluteMinAccuracy || 0;
124
- }
125
- }
126
-
127
- export {
128
- Gun,
129
- Ammo,
130
- GunProps
131
- };