-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdevlogs.html
More file actions
383 lines (344 loc) · 23.4 KB
/
devlogs.html
File metadata and controls
383 lines (344 loc) · 23.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dev Logs - Pyla AI</title>
<link rel="stylesheet" href="css/style.css">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<link rel="icon" type="image/png" href="favicon.png">
</head>
<body>
<!-- Navigation -->
<nav class="navbar">
<div class="nav-container">
<div class="nav-logo">
<img src="assets/logo.png" alt="Pyla AI Logo" class="logo-img">
</div>
<ul class="nav-menu">
<li class="nav-item">
<a href="index.html" class="nav-link">Home</a>
</li>
<li class="nav-item">
<a href="docs.html" class="nav-link">Documentation</a>
</li>
<li class="nav-item">
<a href="devlogs.html" class="nav-link active">Dev Logs</a>
</li>
<li class="nav-item">
<a href="about.html" class="nav-link">About</a>
</li>
<li class="nav-item">
<a href="#" class="nav-link discord-btn">
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
<path d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0a12.64 12.64 0 0 0-.617-1.25a.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.078.078 0 0 0 .084-.028a14.09 14.09 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13.107 13.107 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10.2 10.2 0 0 0 .372-.292a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127a12.299 12.299 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028a19.839 19.839 0 0 0 6.002-3.03a.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418z"/>
</svg>
Discord
</a>
</li>
</ul>
<div class="hamburger">
<span class="bar"></span>
<span class="bar"></span>
<span class="bar"></span>
</div>
</div>
</nav>
<!-- Dev Logs Content -->
<div class="devlogs-container">
<header class="devlogs-header">
<h1>Pyla AI - Official Devlog</h1>
<p>Welcome to the Pyla AI devlog! Here you'll find the latest updates, behind-the-scenes looks, and progress reports on the development of our software. We're excited to share our journey with you as we build the most advanced Brawl Stars bot.</p>
</header>
<!-- Development Roadmap -->
<section class="roadmap-section">
<h2>Development Roadmap & Current Status</h2>
<p>Here's a quick overview of our current development progress for the next major update.</p>
<div class="legend">
<div class="legend-item">
<span class="legend-icon">✅</span>
<span>Completed & Ready</span>
</div>
<div class="legend-item">
<span class="legend-icon">🕙</span>
<span>In Progress</span>
</div>
<div class="legend-item">
<span class="legend-icon">🚫</span>
<span>Postponed / Not in Next Update</span>
</div>
</div>
<div class="roadmap-category">
<h3>Core AI & Bot Logic</h3>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>AI Model:</strong> Recognize brawler icons for automatic picking.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>AI Model:</strong> Recognize brawlers at the start of a match.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>AI Model:</strong> Recognize in-game objects (brawlers, walls, water).</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>State Detection:</strong> Recognize bot's location (lobby, game, store) to prevent it from getting stuck.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>Edge Case Handling:</strong> Covered all known scenarios of the bot getting stuck in-game.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>Crash Detection:</strong> New and improved system.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>Auto Brawler Change:</strong> Automatically switch brawlers after reaching a specific trophy count.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🕙</span>
<div class="roadmap-text"><strong>Play Styles:</strong> Implement unique behaviors for different brawler types (e.g., throwers staying behind walls).</div>
</div>
</div>
<div class="roadmap-category">
<h3>Application & Infrastructure</h3>
<div class="roadmap-item">
<span class="roadmap-status">✅</span>
<div class="roadmap-text"><strong>Client Bug Fix:</strong> Resolved issue causing the client to open twice.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🕙</span>
<div class="roadmap-text"><strong>Custom Installer:</strong> An easy-to-use installer to simplify the setup process.</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🕙</span>
<div class="roadmap-text"><strong>Backend Security & Code Protection:</strong> This is a top priority and a significant time investment. We are implementing robust security to prevent the application from being cracked, which could lead to malicious versions with viruses being distributed.</div>
</div>
</div>
<div class="roadmap-category">
<h3>Postponed Features</h3>
<div class="roadmap-item">
<span class="roadmap-status">🚫</span>
<div class="roadmap-text">Match History Recording</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🚫</span>
<div class="roadmap-text">Auto-Dodge Feature</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🚫</span>
<div class="roadmap-text">Showdown Game Mode Support</div>
</div>
<div class="roadmap-item">
<span class="roadmap-status">🚫</span>
<div class="roadmap-text">Background Mode Operation</div>
</div>
</div>
<div class="fun-fact">
<strong>Fun Fact:</strong> Training our initial AI models required a dataset of over 350,000 images!
</div>
</section>
<!-- Latest Updates -->
<div class="devlogs-content">
<h2 style="color: var(--accent-orange); margin-bottom: 32px; font-size: 2rem;">Latest Updates (Newest First)</h2>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">June 24, 2025</span>
</div>
<h2>Quality of Life & Future-Proofing</h2>
<div class="devlog-content">
<p>We've pushed a new build to Early Access with a great quality-of-life improvement: <strong>Pyla now automatically saves your submitted brawler configuration</strong>. If the bot stops for any reason, you can instantly load your last setup—including updated trophy counts—without having to re-enter everything.</p>
<p>We've also added the latest brawlers and updated the game icons to prevent crashes.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">June 18, 2025</span>
</div>
<h2>Open Source Contribution & New Commitments</h2>
<div class="devlog-content">
<p>For developers in our community, we've <strong>open-sourced a helpful script</strong> that adds AI detection boxes to a video file, perfect for showcasing the bot's capabilities. You can find it in our new GitHub repository.</p>
<p>We've also set up a webhook, so all future code commits to the repo will be automatically posted in our Discord.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">June 12, 2025</span>
</div>
<h2>Final Build & Community Content</h2>
<div class="devlog-content">
<p>The <strong>final build before the public update</strong> is in progress! Barring any major issues, we're targeting a release tomorrow.</p>
<p>While the build was compiling, we created a new thumbnail for our promotional video to help revitalize the community.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">May 28, 2025</span>
</div>
<h2>Performance Investigation & A Glimpse of the Future</h2>
<div class="devlog-content">
<p>We revisited the performance optimizations from March, as the compiled .exe version wasn't showing the same speed boosts we saw during testing.</p>
<p>It turns out the "new" screenshotting library was actually a step backward. By reverting to the previous library and combining it with parallel processing, we're seeing <strong>fantastic IPS again in the development environment</strong>. Now, the focus is on ensuring these gains translate to the final build.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">March 14, 2025</span>
</div>
<h2>Major Performance Boost & Multithreading</h2>
<div class="devlog-content">
<p><strong>We achieved a significant performance breakthrough!</strong></p>
<h3>+5-10 IPS Performance Increase</h3>
<p>By switching to a new Python screenshotting library, we saw a raw performance increase of <strong>12-52%</strong>, boosting IPS from ~30 to ~40 on our test systems. This change requires no extra setup for users.</p>
<h3>Up to 48 IPS with Multi-threading</h3>
<p>We further optimized by implementing <strong>multi-threading for screen capture</strong>. This resulted in a massive <strong>40-78% total increase in IPS</strong> compared to our previous stable version. This will be a game-changer, especially for users with powerful GPUs where screen capture was the bottleneck.</p>
<p>The new build is heading to Early Access for feedback.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">January 13, 2025</span>
</div>
<h2>Breakthrough in Wall Detection Training</h2>
<div class="devlog-content">
<p><strong>Huge progress on the wall detection AI!</strong> By training the model on datasets that include "fake players" (procedurally generated brawlers, health bars, and usernames), the AI is learning to identify walls even when they are partially obscured by characters.</p>
<p>This fixes a major issue where the bot would get stuck on walls it was standing too close to. Early training results are incredibly promising, and we're proud to say <strong>the bot can now correctly identify walls behind goalposts!</strong></p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">January 11-12, 2025</span>
</div>
<h2>Creating "Fake Players" for AI Training</h2>
<div class="devlog-content">
<p>To solve the problem of the bot not seeing walls when it's right next to them, we've been developing a <strong>"fake player generator."</strong> This script can create realistic-looking players—complete with brawler models, health/ammo bars, usernames, and icons (gadget, hypercharge, etc.)—and overlay them onto our training images.</p>
<p>This will create a robust dataset that teaches the AI to see walls no matter what's happening on screen.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">January 8, 2025</span>
</div>
<h2>New Menu UI - Upgraded Look!</h2>
<div class="devlog-content">
<p>We've given the new menu a <strong>significant visual upgrade!</strong> The layout is cleaner and more intuitive. We're always open to constructive feedback on UI design, so let us know what you think!</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">January 3, 2025</span>
</div>
<h2>A Brand New Menu! (Work in Progress)</h2>
<div class="devlog-content">
<p>We're building a <strong>new main menu</strong> to streamline the user experience. This menu will allow you to easily select game modes and access settings before heading to the brawler selection screen.</p>
<p>It will also expose more advanced settings, like "minimum movement delay," to give you more control over the bot's behavior. The aesthetics are still a work in progress, but the functionality is solid.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">December 1, 2024</span>
</div>
<h2>Refining the AI Training Data</h2>
<div class="devlog-content">
<p>We identified and fixed two key issues that were preventing the AI from properly detecting metallic fences. We also improved our map generator to use consistent environments for each map, creating more realistic training data.</p>
<p>On another exciting note, we've received a folder with <strong>32,000 images of cut-out brawlers and skins</strong>, which will be invaluable for the next phase of training!</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">November 12-19, 2024</span>
</div>
<h2>Training on Real Maps</h2>
<div class="devlog-content">
<p>Our plan to improve the wall detection model has evolved. Instead of just using randomly generated maps, we are now <strong>extracting the actual map layouts directly from the game files</strong>.</p>
<p>By using these real layouts combined with our 17 different background environments, we can generate a massive, high-quality dataset of <strong>over 42,000 images</strong>. Early tests on a 30k image dataset show the model is getting much better at detecting individual bushes and complex tile formations.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">October 27-30, 2024</span>
</div>
<h2>Wall Detection: Implementation & Performance</h2>
<div class="devlog-content">
<h3>Progress</h3>
<p>We've started implementing the new wall detection model into the bot's logic! In initial tests, the bot is already much better at avoiding shooting at walls. It can even be seen navigating around obstacles.</p>
<h3>The Challenge</h3>
<p>Running two AI models (one for enemies, one for walls) simultaneously is resource-intensive and effectively halves the IPS (Iterations Per Second).</p>
<h3>The Solution</h3>
<p>We've implemented an intelligent <strong>"caching" system</strong>. You can set the wall detection to run less frequently (e.g., 10 times per second instead of 30), and the bot will "remember" the last known wall positions. This provides a huge performance save, bringing IPS back to near-normal levels with minimal impact on accuracy.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">October 6-23, 2024</span>
</div>
<h2>The Deep Dive into Wall Detection AI</h2>
<div class="devlog-content">
<p>This period was a <strong>rollercoaster of intense development</strong> on our wall detection model.</p>
<h3>The Problem</h3>
<p>Manually labeling thousands of screenshots to train an AI is incredibly time-consuming.</p>
<h3>The Solution</h3>
<p>We built a custom <strong>"map maker" script</strong> that procedurally generates an almost infinite number of unique, labeled maps for training.</p>
<h3>The Breakthrough</h3>
<p>After many failed attempts and debugging a critical data labeling issue, we successfully trained a new <strong>YOLOv8 model</strong>. The results are phenomenal! On a small test dataset, the model is detecting walls, cacti, and barrels with high confidence.</p>
<p>This is the foundation for making the bot navigate maps intelligently. We are officially <strong>closer than ever to eliminating the issue of bots getting stuck on or shooting at walls</strong>.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">August 16-22, 2024</span>
</div>
<h2>New Features & Customization</h2>
<div class="devlog-content">
<p>Developer AngelFire has been hard at work adding new features for the next update:</p>
<h3>Brawler-Specific Ranges</h3>
<p>Brawler attack and safe ranges have been implemented for more intelligent positioning.</p>
<h3>Manual Brawler Override</h3>
<p>A new option will let you disable auto-picking for a specific brawler, allowing you to quickly play with a manually selected character.</p>
<h3>GPU & Config Options</h3>
<p>The bot will now support <strong>GPU acceleration</strong> for users who want more performance. We're also adding more config options, like changing the detection frequency for walls, allowing users to balance performance and precision.</p>
</div>
</article>
<article class="devlog-entry">
<div class="devlog-meta">
<span class="devlog-date">June 21, 2024</span>
</div>
<h2>Initial Progress Update</h2>
<div class="devlog-content">
<p>Today's progress report from developer iyordanov:</p>
<h3>Auto-Picking Complete</h3>
<p>The bot can now automatically select brawlers.</p>
<h3>No More Getting Stuck</h3>
<p>Thanks to a new state detection manager (credit to @AngelFire), the bot will no longer get stuck or time out during games.</p>
<h3>Next Steps</h3>
<p>We are building a custom installer and refining the "play styles" feature. The bot is also being rewritten from scratch to address underlying bugs. Progress is looking good!</p>
</div>
</article>
</div>
</div>
<!-- Footer -->
<footer class="footer">
<div class="container">
<div class="footer-content">
<div class="footer-logo">
<img src="assets/logo.png" alt="Pyla AI Logo" class="logo-img">
</div>
<div class="footer-links">
<a href="about.html">About</a>
<a href="docs.html">Documentation</a>
<a href="devlogs.html">Dev Logs</a>
<a href="https://discord.gg/G6gZNyUnSg" target="_blank" rel="noopener noreferrer">Discord</a>
<a href="https://github.com/PylaAI/PylaAI" target="_blank" rel="noopener noreferrer">GitHub</a>
</div>
</div>
<div class="footer-bottom">
<p>© 2024 Pyla AI. All rights reserved.</p>
</div>
</div>
</footer>
<script src="js/main.js"></script>
</body>
</html>