@jjlmoya/utils-games-development 1.54.0 → 1.56.0
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.
- package/package.json +1 -1
- package/src/entries.ts +7 -1
- package/src/index.ts +2 -0
- package/src/tests/contrast_legibility.test.ts +291 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/itchioGameTester/itchio-game-tester.css +3 -3
- package/src/tool/localizationSanitizer/localization-sanitizer.css +17 -15
- package/src/tool/pixelArtPaletteSwapper/app-client.ts +229 -0
- package/src/tool/pixelArtPaletteSwapper/bibliography.astro +6 -0
- package/src/tool/pixelArtPaletteSwapper/bibliography.ts +16 -0
- package/src/tool/pixelArtPaletteSwapper/component.astro +153 -0
- package/src/tool/pixelArtPaletteSwapper/entry.ts +28 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/de.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/en.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/es.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/fr.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/id.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/it.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/ja.ts +225 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/ko.ts +225 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/nl.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/pl.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/pt.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/ru.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/sv.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/tr.ts +233 -0
- package/src/tool/pixelArtPaletteSwapper/i18n/zh.ts +225 -0
- package/src/tool/pixelArtPaletteSwapper/index.ts +12 -0
- package/src/tool/pixelArtPaletteSwapper/logic.test.ts +43 -0
- package/src/tool/pixelArtPaletteSwapper/logic.ts +171 -0
- package/src/tool/pixelArtPaletteSwapper/pixel-art-palette-swapper.css +728 -0
- package/src/tool/pixelArtPaletteSwapper/seo.astro +15 -0
- package/src/tool/pixelArtPaletteSwapper/ui.ts +35 -0
- package/src/tool/retroSfxGenerator/bibliography.astro +6 -0
- package/src/tool/retroSfxGenerator/bibliography.ts +16 -0
- package/src/tool/retroSfxGenerator/client.ts +263 -0
- package/src/tool/retroSfxGenerator/component.astro +146 -0
- package/src/tool/retroSfxGenerator/entry.ts +27 -0
- package/src/tool/retroSfxGenerator/i18n/de.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/en.ts +224 -0
- package/src/tool/retroSfxGenerator/i18n/es.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/fr.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/id.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/it.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ja.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ko.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/nl.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/pl.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/pt.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ru.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/sv.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/tr.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/zh.ts +211 -0
- package/src/tool/retroSfxGenerator/index.ts +11 -0
- package/src/tool/retroSfxGenerator/logic.test.ts +61 -0
- package/src/tool/retroSfxGenerator/logic.ts +214 -0
- package/src/tool/retroSfxGenerator/retro-sfx-generator.css +435 -0
- package/src/tool/retroSfxGenerator/seo.astro +15 -0
- package/src/tool/retroSfxGenerator/ui.ts +41 -0
- package/src/tool/saveFileEditor/game-save-file-editor.css +5 -5
- package/src/tool/spriteSheetPacker/sprite-sheet-packer.css +5 -5
- package/src/tool/steamBbcodeTranslator/steam-bbcode-translator.css +8 -8
- package/src/tool/steamCapsuleGenerator/steam-capsule-generator.css +6 -6
- package/src/tools.ts +4 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'generator-efektow-dwoiekowych-retro-gry',
|
|
7
|
+
title: 'Generator Efektow Dwiekowych Retro do Gier',
|
|
8
|
+
description: 'Tworz retro efekty dzwiekowe do gier w przegladarce dzieki gotowym ustawieniom, kontroli fal, oscyloskopowi na zywo i eksportowi WAV.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: 'Ksztalt fali',
|
|
11
|
+
waveformSquare: 'Kwadratowa',
|
|
12
|
+
waveformSawtooth: 'Pila',
|
|
13
|
+
waveformSine: 'Sinusoidalna',
|
|
14
|
+
waveformTriangle: 'Trojkatna',
|
|
15
|
+
waveformNoise: 'Szum',
|
|
16
|
+
presetLabel: 'Szybki bank dzwiekow',
|
|
17
|
+
presetExplosion: 'Wybuch',
|
|
18
|
+
presetLaser: 'Laser',
|
|
19
|
+
presetJump: 'Skok',
|
|
20
|
+
presetCoin: 'Moneta',
|
|
21
|
+
presetPowerUp: 'Udoskonalenie',
|
|
22
|
+
frequencyLabel: 'Czestotliwosc poczatkowa',
|
|
23
|
+
frequencyEndLabel: 'Czestotliwosc koncowa',
|
|
24
|
+
durationLabel: 'Dlugosc',
|
|
25
|
+
decayLabel: 'Wygaszanie',
|
|
26
|
+
sweepLabel: 'Zmiana tonu',
|
|
27
|
+
vibratoLabel: 'Vibrato',
|
|
28
|
+
lowpassLabel: 'Dolnoprzepustowy',
|
|
29
|
+
highpassLabel: 'Gornoprzepustowy',
|
|
30
|
+
noiseMixLabel: 'Mieszanka szumu',
|
|
31
|
+
toneSection: 'Ton',
|
|
32
|
+
dynamicsSection: 'Dynamika',
|
|
33
|
+
filterSection: 'Tekstura',
|
|
34
|
+
playButton: 'Odtworz dzwiek',
|
|
35
|
+
stopButton: 'Zatrzymaj',
|
|
36
|
+
downloadButton: 'Pobierz WAV',
|
|
37
|
+
randomizeButton: 'Losuj',
|
|
38
|
+
resetButton: 'Resetuj',
|
|
39
|
+
waveformPreviewLabel: 'Podglad fali na zywo',
|
|
40
|
+
generatedLabel: 'Wygenerowano',
|
|
41
|
+
statusReady: 'Gotowy do odsluchu',
|
|
42
|
+
statusPlaying: 'Odtwarzanie w przegladarce',
|
|
43
|
+
statusStopped: 'Zatrzymano odtwarzanie',
|
|
44
|
+
statusDownloaded: 'Pobrano plik WAV',
|
|
45
|
+
statusAudioBlocked: 'Odtwarzanie wymaga zezwolenia na dzwiek w karcie przegladarki',
|
|
46
|
+
statusGenerating: 'Generowanie dzwieku',
|
|
47
|
+
presetHint: 'Wybierz punkt startowy i dostosuj sygnal ponizszymi suwakami.',
|
|
48
|
+
monoWavHint: '44.1 kHz · 16-bitowy mono WAV',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: 'Tworz dzwiek do gier podczas Game Jamu bezpośrednio w przegladarce',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: 'Dobre efekty dzwiekowe w grach natychmiast przekazuja informacje o akcji. Narzedzie to umozliwia szybkie tworzenie klasycznych dzwiekow retro za pomoca syntezy audio w przegladarce.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: 'Ustawienia dzwieku', value: '5 wzorcow' },
|
|
65
|
+
{ label: 'Oscylatory', value: '5 ksztaltow fal' },
|
|
66
|
+
{ label: 'Format eksportu', value: '16-bitowy PCM WAV' },
|
|
67
|
+
{ label: 'Przetwarzanie', value: 'W przegladarce' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: 'Co zmieniaja poszczegolne suwaki',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: 'Ton i ruch',
|
|
81
|
+
description: 'Elementy sterujace tonem definiuja tozsamosc dzwieku.',
|
|
82
|
+
points: [
|
|
83
|
+
'Czestotliwosc poczatkowa wyznacza glowny ton oscylatora',
|
|
84
|
+
'Zmiana tonu przesuwa czestotliwosc do wartosci koncowej',
|
|
85
|
+
'Vibrato dodaje delikatne wahania tonu',
|
|
86
|
+
'Rozne falowe ksztalty tworza unikalne barwy',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: 'Ksztalt i tekstura',
|
|
91
|
+
description: 'Dynamika i filtry kszaltuja wybrzmiewanie dzwieku.',
|
|
92
|
+
points: [
|
|
93
|
+
'Dlugosc okresla calkowity czas trwania efektu',
|
|
94
|
+
'Wygaszanie reguluje spadek glosnosci w czasie',
|
|
95
|
+
'Filtr dolnoprzepustowy lagodzi wysokie czestotliwosci',
|
|
96
|
+
'Filtr gornoprzepustowy usuwa niskie tony',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: 'Praktyczne przepisy na typowe zdarzenia w grach',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['Zdarzenie', 'Przydatne ustawienie', 'Pierwsza zmiana do wyprobowania'],
|
|
109
|
+
rows: [
|
|
110
|
+
['Wybuch', 'Szum o niskiej czestotliwosci', 'Zwieksz dlugosc i obniz filtr dolnoprzepustowy'],
|
|
111
|
+
['Laser', 'Pila z opadajaca zmiana tonu', 'Skroc dlugosc i podnies filtr gornoprzepustowy'],
|
|
112
|
+
['Skok', 'Kwadrat z rosraca zmiana tonu', 'Zmniejsz wygaszanie, aby wyraznie slyszec wzrost tonu'],
|
|
113
|
+
['Moneta', 'Kwadrat z krotka rosnaca zmiana tonu', 'Zwieksz czestotliwosc poczatkowa dla jasnego dzwieku'],
|
|
114
|
+
['Udoskonalenie', 'Trojkat z dluga rosnaca zmiana tonu', 'Dodaj troche vibrato dla dynamicznego efektu'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: 'Dlaczego WAV to idealny format eksportu',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'Pliki WAV sa natywnie obslugiwane przez wiekszosc silnikow gier i edytorow audio bez koniecznosci stosowania dodatkowych bibliotek.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: 'Testuj przy docelowej glosnosci gry',
|
|
129
|
+
html: 'Dzwiek brzmiacy atrakcyjnie osobno moze byc meczacy, gdy powtarza sie wielokrotnie w grze. Przetestuj go w silniku gry razem z muzyka.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: 'Czesto zadawane pytania',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: 'Czy moje dzwieki sa wysylane na serwer?',
|
|
136
|
+
answer: 'Nie. Caly proces syntezy i generowania pliku WAV odbywa sie lokalnie w przegladarce.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: 'Czy moge uzyc pobranych dzwiekow w mojej grze?',
|
|
140
|
+
answer: 'Tak. Wygenerowane dzwieki sa przeznaczone do prototypow i gier niezaleznych.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: 'Jak dziala zmiana tonu?',
|
|
144
|
+
answer: 'Suwak oblicza czestotliwosc koncowa proporcjonalnie do czestotliwosci poczatkowej.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: 'Co zrobic, gdy nie slychac dzwieku?',
|
|
148
|
+
answer: 'Upewnij sie, ze karta przegladarki ma uprawnienia do odtwarzania dzwieku i kliknij Odtworz dzwiek ponownie.',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: 'Wybierz zestaw dzwiekow',
|
|
154
|
+
text: 'Wybierz Wybuch, Laser, Skok, Moneta lub Udoskonalenie.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: 'Dostosuj sygnal',
|
|
158
|
+
text: 'Ustaw ksztalt fali, ton, dlugosc, wygaszanie i filtry.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'Odsluchaj wynik',
|
|
162
|
+
text: 'Kliknij Odtworz dzwiek, aby uslyszec podglad.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'Pobierz WAV',
|
|
166
|
+
text: 'Kliknij Pobierz WAV, aby zapisac plik na dysku.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: 'Generator Efektow Dwiekowych Retro do Gier',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'PLN',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: 'Czy moje dzwieki sa wysylane na serwer?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: 'Nie. Caly proces odbywa sie w przegladarce.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: 'Jak stworzyc retro dzwiek do gry',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: 'Wybierz zestaw dzwiekow',
|
|
204
|
+
text: 'Wybierz gotowe ustawienie.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: 'Bibliografia',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'gerador-efeitos-sonoros-retro-jogos',
|
|
7
|
+
title: 'Gerador de Efeitos Sonoros Retrô para Jogos',
|
|
8
|
+
description: 'Crie efeitos sonoros retrô para jogos no navegador com predefinições rápidas, controles de onda, osciloscópio ao vivo e exportação WAV.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: 'Forma de onda',
|
|
11
|
+
waveformSquare: 'Quadrada',
|
|
12
|
+
waveformSawtooth: 'Dente de serra',
|
|
13
|
+
waveformSine: 'Senoidal',
|
|
14
|
+
waveformTriangle: 'Triangular',
|
|
15
|
+
waveformNoise: 'Ruído',
|
|
16
|
+
presetLabel: 'Banco de sons rápidos',
|
|
17
|
+
presetExplosion: 'Explosão',
|
|
18
|
+
presetLaser: 'Laser',
|
|
19
|
+
presetJump: 'Salto',
|
|
20
|
+
presetCoin: 'Moeda',
|
|
21
|
+
presetPowerUp: 'Power-up',
|
|
22
|
+
frequencyLabel: 'Frequência inicial',
|
|
23
|
+
frequencyEndLabel: 'Frequência final',
|
|
24
|
+
durationLabel: 'Duração',
|
|
25
|
+
decayLabel: 'Decaimento',
|
|
26
|
+
sweepLabel: 'Varrimento de tom',
|
|
27
|
+
vibratoLabel: 'Vibrato',
|
|
28
|
+
lowpassLabel: 'Passa-baixas',
|
|
29
|
+
highpassLabel: 'Passa-altas',
|
|
30
|
+
noiseMixLabel: 'Mistura de ruído',
|
|
31
|
+
toneSection: 'Tom',
|
|
32
|
+
dynamicsSection: 'Dinâmica',
|
|
33
|
+
filterSection: 'Textura',
|
|
34
|
+
playButton: 'Reproduzir som',
|
|
35
|
+
stopButton: 'Parar',
|
|
36
|
+
downloadButton: 'Baixar WAV',
|
|
37
|
+
randomizeButton: 'Aleatório',
|
|
38
|
+
resetButton: 'Redefinir',
|
|
39
|
+
waveformPreviewLabel: 'Forma de onda ao vivo',
|
|
40
|
+
generatedLabel: 'Gerado',
|
|
41
|
+
statusReady: 'Pronto para ouvir',
|
|
42
|
+
statusPlaying: 'Reproduzindo no navegador',
|
|
43
|
+
statusStopped: 'Reprodução parada',
|
|
44
|
+
statusDownloaded: 'WAV baixado',
|
|
45
|
+
statusAudioBlocked: 'A reprodução requer permissão de áudio na aba do navegador',
|
|
46
|
+
statusGenerating: 'Renderizando som',
|
|
47
|
+
presetHint: 'Escolha um ponto de partida e ajuste o sinal com os controles abaixo.',
|
|
48
|
+
monoWavHint: '44.1 kHz · WAV mono de 16 bits',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: 'Crie áudio para jogos durante uma Game Jam sem sair do navegador',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: 'Um bom efeito sonoro para jogos precisa comunicar uma ação instantaneamente. Uma subida de tom expressa um salto ou power-up, uma queda rápida sugere um laser e um som ruidoso com decaimento simula uma explosão. Este gerador converte esses padrões arcade em áudio editável no navegador.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: 'Predefinições', value: '5 padrões iniciais' },
|
|
65
|
+
{ label: 'Osciladores', value: '5 formas de onda' },
|
|
66
|
+
{ label: 'Formato exportado', value: 'WAV PCM de 16 bits' },
|
|
67
|
+
{ label: 'Processamento', value: 'No navegador' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: 'O que cada controle altera',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: 'Tom e movimento',
|
|
81
|
+
description: 'Os controles de tom definem a identidade do som.',
|
|
82
|
+
points: [
|
|
83
|
+
'A frequência inicial estabelece o tom base do oscilador',
|
|
84
|
+
'O varrimento de tom move a frequência até o valor final',
|
|
85
|
+
'O vibrato adiciona uma oscilação suave de tom',
|
|
86
|
+
'Diferentes formas de onda criam texturas harmônicas únicas',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: 'Forma e textura',
|
|
91
|
+
description: 'A dinâmica e os filtros definem o encerramento do som.',
|
|
92
|
+
points: [
|
|
93
|
+
'A duração controla o tempo total do efeito',
|
|
94
|
+
'O decaimento reduz a amplitude gradualmente',
|
|
95
|
+
'O filtro passa-baixas suaviza frequências altas',
|
|
96
|
+
'O filtro passa-altas remove frequências graves',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: 'Receitas práticas para eventos de jogos',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['Evento', 'Predefinição útil', 'Primeiro ajuste recomendado'],
|
|
109
|
+
rows: [
|
|
110
|
+
['Explosão', 'Ruído em baixa frequência', 'Aumentar a duração e diminuir o filtro passa-baixas'],
|
|
111
|
+
['Laser', 'Dente de serra com varrimento descendente', 'Encurtar a duração e elevar o filtro passa-altas'],
|
|
112
|
+
['Salto', 'Quadrada com varrimento ascendente', 'Reduzir o decaimento para manter o tom perceptível'],
|
|
113
|
+
['Moeda', 'Quadrada com varrimento curto', 'Elevar a frequência inicial para um som brilhante'],
|
|
114
|
+
['Power-up', 'Triangular com varrimento longo', 'Adicionar um pouco de vibrato para dar movimento'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: 'Por que o WAV é ideal para protótipos',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'O formato WAV é aceito nativamente em motores de jogos e editores de áudio sem necessidade de bibliotecas adicionais.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: 'Teste no volume real do jogo',
|
|
129
|
+
html: 'Sons isolados podem soar ótimos, mas ser cansativos quando repetidos com frequência no jogo. Teste diretamente na engine.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: 'Perguntas Frequentes',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: 'Os meus sons são enviados para um servidor?',
|
|
136
|
+
answer: 'Não. A síntese e a codificação do WAV ocorrem inteiramente no seu navegador.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: 'Posso usar esses sons no meu jogo?',
|
|
140
|
+
answer: 'Sim, os sons gerados são adequados para protótipos, game jams e jogos independentes.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: 'Como funciona o varrimento de tom?',
|
|
144
|
+
answer: 'O controle calcula a frequência final de forma proporcional em relação ao tom inicial.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: 'O que fazer se não houver som?',
|
|
148
|
+
answer: 'Verifique se a aba do navegador tem permissão para áudio e clique em Reproduzir som novamente.',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: 'Escolha uma predefinição',
|
|
154
|
+
text: 'Selecione Explosão, Laser, Salto, Moeda ou Power-up.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: 'Ajuste o sinal',
|
|
158
|
+
text: 'Modifique a onda, tom, duração, decaimento e filtros.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'Ouça o resultado',
|
|
162
|
+
text: 'Clique em Reproduzir som para ouvir em tempo real.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'Baixe o arquivo WAV',
|
|
166
|
+
text: 'Clique em Baixar WAV para salvar o arquivo no seu computador.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: 'Gerador de Efeitos Sonoros Retrô para Jogos',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'EUR',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: 'Os meus sons são enviados para um servidor?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: 'Não. A síntese ocorre inteiramente no seu navegador.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: 'Como criar um efeito sonoro retrô',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: 'Escolha uma predefinição',
|
|
204
|
+
text: 'Selecione um padrão inicial.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: 'Referências',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'generator-retro-zvykovyh-effektov-dlya-igr',
|
|
7
|
+
title: 'Генератор Ретро Звуковых Эффектов для Игр',
|
|
8
|
+
description: 'Создавайте короткие ретро звуковые эффекты для игр в браузере с готовыми пресетами, осциллографом и экспортом в WAV.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: 'Форма волны',
|
|
11
|
+
waveformSquare: 'Прямоугольная',
|
|
12
|
+
waveformSawtooth: 'Пилообразная',
|
|
13
|
+
waveformSine: 'Синусоидальная',
|
|
14
|
+
waveformTriangle: 'Треугольная',
|
|
15
|
+
waveformNoise: 'Шум',
|
|
16
|
+
presetLabel: 'Банк звуковых пресетов',
|
|
17
|
+
presetExplosion: 'Взрыв',
|
|
18
|
+
presetLaser: 'Лазер',
|
|
19
|
+
presetJump: 'Прыжок',
|
|
20
|
+
presetCoin: 'Монета',
|
|
21
|
+
presetPowerUp: 'Усиление',
|
|
22
|
+
frequencyLabel: 'Начальная частота',
|
|
23
|
+
frequencyEndLabel: 'Конечная частота',
|
|
24
|
+
durationLabel: 'Длительность',
|
|
25
|
+
decayLabel: 'Затухание',
|
|
26
|
+
sweepLabel: 'Сдвиг тона',
|
|
27
|
+
vibratoLabel: 'Вибрато',
|
|
28
|
+
lowpassLabel: 'ФНЧ (Low-pass)',
|
|
29
|
+
highpassLabel: 'ФВЧ (High-pass)',
|
|
30
|
+
noiseMixLabel: 'Микс шума',
|
|
31
|
+
toneSection: 'Тон',
|
|
32
|
+
dynamicsSection: 'Динамика',
|
|
33
|
+
filterSection: 'Текстура',
|
|
34
|
+
playButton: 'Воспроизвести',
|
|
35
|
+
stopButton: 'Стоп',
|
|
36
|
+
downloadButton: 'Скачать WAV',
|
|
37
|
+
randomizeButton: 'Случайно',
|
|
38
|
+
resetButton: 'Сбросить',
|
|
39
|
+
waveformPreviewLabel: 'Осциллограмма',
|
|
40
|
+
generatedLabel: 'Сгенерировано',
|
|
41
|
+
statusReady: 'Готово к прослушиванию',
|
|
42
|
+
statusPlaying: 'Воспроизведение в браузере',
|
|
43
|
+
statusStopped: 'Воспроизведение остановлено',
|
|
44
|
+
statusDownloaded: 'WAV скачан',
|
|
45
|
+
statusAudioBlocked: 'Для воспроизведения требуется разрешение на аудио в вкладке',
|
|
46
|
+
statusGenerating: 'Рендеринг звука',
|
|
47
|
+
presetHint: 'Выберите пресет и настройте параметры с помощью регуляторов ниже.',
|
|
48
|
+
monoWavHint: '44.1 кГц · 16-бит моно WAV',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: 'Создавайте аудио для игр прямо в браузере во время геймджема',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: 'Хороший игровой звуковой эффект быстро передает суть действия. Повышение тона воспринимается как прыжок или бонус, резкий спуск - как лазер, а затухающий шум - как взрыв. Этот генератор позволяет создавать классические 8-битные звуки без установки дополнительного ПО.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: 'Звуковые пресеты', value: '5 базовых шаблонов' },
|
|
65
|
+
{ label: 'Типы осциллятора', value: '5 форм волны' },
|
|
66
|
+
{ label: 'Формат экспорта', value: '16-бит PCM WAV' },
|
|
67
|
+
{ label: 'Обработка', value: 'Локально в браузере' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: 'Назначение регуляторов',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: 'Тон и движение',
|
|
81
|
+
description: 'Параметры тона задают базовое звучание эффекта.',
|
|
82
|
+
points: [
|
|
83
|
+
'Начальная частота определяет стартовую высоту звука',
|
|
84
|
+
'Сдвиг тона меняет частоту к конечному значению',
|
|
85
|
+
'Вибрато добавляет легкую периодическую модуляцию',
|
|
86
|
+
'Формы волны создают разную гармоническую окраску',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: 'Форма и текстура',
|
|
91
|
+
description: 'Динамика и фильтры формируют затухание и тембр.',
|
|
92
|
+
points: [
|
|
93
|
+
'Длительность определяет общее время звучания',
|
|
94
|
+
'Затухание управляет скоростью спада громкости',
|
|
95
|
+
'ФНЧ сглаживает резкие высокие частоты',
|
|
96
|
+
'ФВЧ убирает гулкие низкие частоты',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: 'Рекомендации по настройке для игровых событий',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['Событие', 'Подходящий пресет', 'Первая рекомендуемая настройка'],
|
|
109
|
+
rows: [
|
|
110
|
+
['Взрыв', 'Низкочастотный шум', 'Увеличьте длительность и уменьшите ФНЧ для мощного гула'],
|
|
111
|
+
['Лазер', 'Пила с падающим сдвигом тона', 'Уменьшите длительность и поднимите ФВЧ для резкого атака'],
|
|
112
|
+
['Прыжок', 'Прямоугольник с растущим тоном', 'Уменьшите затухание для четкого подъема тона'],
|
|
113
|
+
['Монета', 'Прямоугольник с коротким подъемом', 'Увеличьте начальную частоту для звонкого звука'],
|
|
114
|
+
['Усиление', 'Треугольник с долгим подъемом тона', 'Добавьте немного вибрато для динамичности'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: 'Почему WAV - идеальный формат для прототипов',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'Файлы формата WAV легко импортируются во все популярные игровые движки (Unity, Godot, Unreal Engine) без сторонних библиотек.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: 'Тестируйте на игровой громкости',
|
|
129
|
+
html: 'Звук, который хорошо звучит отдельно, может утомлять при частых повторах в игре. Всегда проверяйте его вместе с фоновой музыкой.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: 'Часто задаваемые вопросы',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: 'Загружаются ли мои звуки на сервер?',
|
|
136
|
+
answer: 'Нет. Синтез и генерация WAV происходят исключительно на вашем устройстве в браузере.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: 'Можно ли использовать скачанные звуки в коммерческой игре?',
|
|
140
|
+
answer: 'Да. Сгенерированные звуки предназначены для прототипов, геймджемов и инди-проектов.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: 'Как работает сдвиг тона?',
|
|
144
|
+
answer: 'Регулятор пропорционально рассчитывает конечную частоту относительно начальной.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: 'Что делать, если нет звука?',
|
|
148
|
+
answer: 'Убедитесь, что вкладка браузера имеет доступ к аудиоустройствам, и нажмите "Воспроизвести".',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: 'Выберите пресет',
|
|
154
|
+
text: 'Выберите Взрыв, Лазер, Прыжок, Монета или Усиление.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: 'Настройте параметры',
|
|
158
|
+
text: 'Отрегулируйте форму волны, тон, длительность и фильтры.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'Прослушайте результат',
|
|
162
|
+
text: 'Нажмите "Воспроизвести" для прослушивания.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'Скачайте WAV файл',
|
|
166
|
+
text: 'Нажмите "Скачать WAV" для сохранения звукового файла.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: 'Генератор Ретро Звуковых Эффектов для Игр',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'RUB',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: 'Загружаются ли мои звуки на сервер?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: 'Нет. Синтез и генерация WAV происходят исключительно в браузере.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: 'Как создать ретро звуковой эффект',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: 'Выберите пресет',
|
|
204
|
+
text: 'Выберите базовый пресет.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: 'Источники и литература',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|