Polar GamesPolar Games

Plop documentation

Documentação Plop

Standalone 1.0.2 · HTML5 · Local browser records

Edição independente 1.0.2 · HTML5 · Recordes locais

Thank you for choosing Plop. This guide explains installation, play, customization, local data and troubleshooting. Start with the ready-to-upload game/ folder; source/ is optional.

Obrigado por escolher Plop. Este guia explica instalação, jogo, personalização, dados locais e soluções de problemas. Comece com game/ pronta para subir; source/ é opcional.

What this edition includes

O que esta edição inclui

Drop fruit into a glass blender. Matching fruit merges into the next tier. Fill the juice meter and use BLEND to clear a limited number of small fruits, creating room for the next drop. Explore 11 fruit tiers, Ice/Pepper/Rainbow specials, daily challenges, missions, a collection and six cosmetic blender colors.

Solte frutas no liquidificador. Frutas iguais se fundem na próxima categoria. Encha o medidor de suco e use BATER para limpar uma quantidade limitada de frutas pequenas. Explore 11 categorias, especiais Gelo/Pimenta/Arco-íris, desafio diário, missões, coleção e seis cores cosméticas do liquidificador.

Standalone HTML5 • Canvas 2D • local browser data • readable runtime/source • no online services

HTML5 independente • Canvas 2D • dados locais • código legível • sem serviços online

Install in a few steps

Instalação em poucos passos

1. Extract the ZIP on your computer. 2. Open this manual. 3. Create a folder on your hosting, for example /games/plop/. 4. Upload every file and subfolder INSIDE game/ into it. 5. Open the HTTPS URL ending in index.html and click/tap to start. 6. Play, open settings and reload to check local progress.

1. Extraia o ZIP no computador. 2. Abra este manual. 3. Crie uma pasta na hospedagem, por exemplo /games/plop/. 4. Suba todos os arquivos e subpastas de DENTRO de game/. 5. Abra a URL HTTPS terminada em index.html e toque para iniciar. 6. Jogue, abra ajustes e recarregue para conferir o progresso local.

plop-static-1.0/
  START-HERE.txt
  game/                 <- upload these contents
    index.html
    plop.config.js
    assets/ or src/      <- keep all delivered folders
  documentation/        <- this EN/PT manual and labeled images
  source/               <- optional developer project, DO NOT UPLOAD
  THIRD-PARTY-LICENSES/

No Node.js process, PHP, database, publisher account, ranking server or advertising account is needed to play. Serve the game over HTTP/HTTPS; file:// is not supported.

Não precisa de processo Node.js, PHP, banco, conta do autor, servidor de ranking ou conta publicitária para jogar. Sirva o jogo por HTTP/HTTPS; file:// não é suportado.

<iframe src="https://your-site.example/games/plop/index.html?lang=en"
  width="100%" height="720" style="border:0"
  allow="autoplay; fullscreen" allowfullscreen title="Plop"></iframe>

Controls and game modes

Controles e modos

Mouse/touch: drag to aim, release to drop. Keyboard: Left/Right or A/D aims; Space/Enter/Down drops; B uses BLEND; P/Escape pauses. Sound and pause buttons stay at the top.

Mouse/toque: arraste para mirar e solte para deixar cair. Teclado: Esquerda/Direita ou A/D mira; Espaço/Enter/Baixo solta; B usa BATER; P/Esc pausa. Som e pausa ficam no topo.

Normal runs can be saved and continued from the menu. Daily is a date-seeded challenge with its own local progress. Completed normal runs are automatically added to local records; the result lets the player save a nickname. Today/month/all tabs use the browser clock, with up to 200 recent runs retained.

Partidas normais podem ser salvas e continuadas pelo menu. O desafio diário usa a data como semente e guarda seu próprio progresso local. Partidas normais concluídas entram automaticamente nos recordes locais; o resultado permite salvar um apelido. Hoje/mês/geral usam o relógio do navegador, com até 200 partidas recentes.

Menu, gameplay and settings guide

Guia do menu, jogo e ajustes

Plop menu screen123
Main menu: start or continue, available game modes, language and settings. Labels reflect the selected language.
Menu: iniciar/continuar, modos disponíveis, idioma e ajustes. Os textos acompanham o idioma.
  1. Play / Continue normal runJogar / Continuar partida normal
  2. Daily, records and collectionDesafio, recordes e coleção
  3. Sound and languageSom e idioma
Plop gameplay screen12345
Gameplay layout: numbered markers explain the main controls and playfield below. The screenshot is an actual example, not fixed scores or a preset save.
Layout do jogo: marcadores numerados explicam controles e área jogável abaixo. A captura é um exemplo real, não uma pontuação fixa ou save pré-definido.
  1. Score / comboPontuação / combo
  2. Drop area / danger lineÁrea de queda / limite
  3. Next fruitPróxima fruta
  4. BLEND chargeCarga BATER
  5. Pause / soundPausa / som
Plop settings screen123
Settings: audio, language and available presentation options. Keep the game paused while changing settings and resume from the visible control.
Ajustes: áudio, idioma e opções de apresentação disponíveis. Altere com o jogo pausado e retome pelo controle visível.
  1. Music, effects and narrator volumesVolume de música, efeitos e narradora
  2. Vibration and reduced effectsVibração e efeitos reduzidos
  3. Immediate interface language changeTroca imediata do idioma da interface

Customize your game

Personalize o jogo

Back up the original package first. Edit only the files for this buyer edition, change one thing at a time and test the complete upload in a subfolder. Keep settings, assets and code versions together.

Guarde uma cópia do pacote original. Edite apenas esta edição, mude uma coisa por vez e teste o upload completo numa subpasta. Mantenha configurações, assets e código da mesma versão.

File / ArquivoPurpose / Finalidade
src/config.jsFRUITS, GLASS and gameplay/audio constants; STORAGE_PREFIX isolates the browser save.Categorias FRUITS, copo GLASS e constantes de jogo/áudio; STORAGE_PREFIX separa o save local.
src/game/meta.jsMissions, daily objective and SKINS cosmetic unlocks.Missões, objetivo diário e cores cosméticas SKINS.
src/lib/locales.jsComplete EN/PT/ES interface dictionaries.Dicionários completos da interface EN/PT/ES.
src/platform/ranking.jsValidated local browser score storage, filters and nickname handling.Validação, armazenamento local de pontuações, filtros e apelidos.
style.css and src/render/Interface appearance and procedural fruit/blender artwork.Aparência da interface e desenho procedural das frutas/liquidificador.
assets/audio/, assets/fonts/ and game/index.html import mapLocal audio and fonts. Planck 1.5.0 is loaded separately through the import map; its implementation is not bundled.Áudio e fontes locais. Planck 1.5.0 é carregado separadamente pelo import map; sua implementação não está incluída.

The file map refers to the editable source/ project. Plop uses plain JavaScript modules; game/src/ is also directly editable. There is no TypeScript compilation or Vite build step. Keep the reviewed game and source copies synchronized.

O mapa usa caminhos do projeto editável source/. Plop usa módulos JavaScript puros e game/src/ também é editável. Não há compilação TypeScript ou build Vite. Mantenha as cópias revisadas de game e source sincronizadas.

Branding: update the HTML title, source title/brand configuration and actual image/logo files together. Language text lives in the dictionaries listed above. Do not claim an extra interface language until every key and narrow-screen layout has been reviewed. Cosmetic changes do not automatically change gameplay.

Marca: altere o título HTML, a configuração de nome e os arquivos reais de logo em conjunto. Traduções ficam nos dicionários acima. Só anuncie um idioma extra após revisar todas as chaves e o layout estreito. Alterações cosméticas não mudam a regra automaticamente.

cd source
npm ci
npm test
# Plain browser modules; no build step. Copy reviewed runtime changes to game/.

For source tests use Node.js 24 or newer and npm. Run npm ci to install the pinned Planck dependency, then npm test. Keep the shipped JavaScript, CSS and JSON readable, and preserve the lockfile and license notices. No Node.js process is required on the buyer’s web hosting.

Para testes do código-fonte use Node.js 24 ou superior e npm. Execute npm ci para instalar a dependência Planck fixada e depois npm test. Mantenha JavaScript, CSS e JSON legíveis e preserve lockfile e licenças. A hospedagem do comprador não precisa de processo Node.js.

Local records privacy and updates

Recordes locais privacidade e atualizações

Progress and settings use versioned localStorage keys. Records are specific to the browser/site and may disappear when browser data is cleared. This edition sends no score, nickname or gameplay event to Polar Games or a portal. There is no online scoreboard to install.

Progresso e ajustes usam chaves versionadas de localStorage. Recordes são específicos do navegador/site e podem desaparecer ao limpar seus dados. Esta edição não envia pontuação, apelido ou evento para Polar Games ou portal. Não há quadro online para instalar.

Back up saved data before changing storage keys, rules versions or schemas. Rule-version changes may intentionally reset incompatible records. Preserve the current game rules when only changing art. Replace the complete deployed game during updates; do not mix hashed files from different versions.

Faça backup dos dados antes de mudar chaves, versões de regra ou formato do save. Uma versão de regra pode zerar recordes incompatíveis. Preserve a regra ao trocar apenas arte. Substitua o jogo completo ao atualizar; não misture arquivos de versões diferentes.

Troubleshooting and frequently asked questions

Soluções e perguntas frequentes

Do I need Node.js, PHP or a database to play?Preciso de Node.js, PHP ou banco para jogar?

No. Upload game/ to static HTTP/HTTPS hosting. Node.js is only an optional source-development tool for the compiled games. PHP and databases are not included or required.

Não. Suba game/ numa hospedagem HTTP/HTTPS estática. Node.js serve apenas para desenvolver o código dos jogos compilados. PHP e banco não são necessários.

Can I double-click index.html?Posso abrir index.html com dois cliques?

Use a web server. ES modules, fonts and browser security make file:// unreliable. Opening the HTML locally from disk is not the installation procedure.

Use um servidor web. Módulos ES, fontes e segurança tornam file:// inadequado. Abrir o HTML do disco não é o procedimento de instalação.

Which folder should I upload?Qual pasta devo subir?

Only the contents of game/, keeping index.html and its folders together. Do not upload the ZIP, developer source, dependencies, documentation or internal working files as the playable root.

Somente o conteúdo de game/, mantendo index.html e as pastas juntos. ZIP, código de desenvolvimento, dependências e documentação não são a raiz jogável.

Can I install in a subfolder or iframe?Posso instalar em subpasta ou iframe?

Yes, asset paths are relative. Use an HTTP/HTTPS URL and give the iframe sufficient visible height. Keep browser storage enabled if progress must survive reloads.

Sim, os caminhos são relativos. Use HTTP/HTTPS e altura suficiente no iframe. Permita armazenamento do navegador para preservar progresso.

Why is sound silent before the first interaction?Por que o som não toca antes do primeiro toque?

Browsers require a click/tap before audio. Start through the game UI, check device/browser volume and in-game sliders. After returning from another app, resume through the visible UI.

O navegador exige clique/toque. Inicie pela interface, confira o volume do aparelho/navegador e os controles do jogo. Ao voltar de outro aplicativo, retome pela interface.

Are scores shared between devices?Os recordes sincronizam entre aparelhos?

No. Records and progress are local to this browser, profile and site origin. Another domain, browser, private session or device has its own data. There is no account or cloud save.

Não. Progresso e recordes pertencem a este navegador, perfil e origem do site. Outro domínio, navegador, sessão privada ou aparelho usa dados próprios. Sem conta ou nuvem.

What if localStorage is unavailable?E se localStorage estiver indisponível?

Gameplay remains available, but saving may be temporary. Private browsing, embedded storage restrictions, quota errors and cleared browser data can prevent persistence. Do not promise permanent or cross-device records.

O jogo continua disponível, mas o salvamento pode ser temporário. Modo privado, restrições de iframe, falta de espaço e limpeza de dados impedem persistência. Não prometa recordes permanentes ou sincronizados.

Can I add online ranking or multiplayer?Posso adicionar ranking online ou multiplayer?

This download intentionally excludes both. Such work needs its own backend, security model, implementation and tests. There is no hidden switch that connects to Polar Games services.

Esta edição exclui ambos. Isso exige backend, segurança, implementação e testes próprios. Não existe interruptor oculto para acessar serviços da Polar Games.

Does the item include ads, earnings or portal acceptance?O item inclui anúncios, ganhos ou aprovação em portal?

No advertising account, SDK service, portal acceptance, native app or revenue guarantee is included. The delivered standalone is ad-free. Integration into third-party systems is custom development.

Não inclui conta publicitária, serviço de SDK, aprovação em portal, aplicativo nativo ou garantia de ganhos. A edição entregue é sem anúncios. Integrações são desenvolvimento separado.

How do I reset progress?Como apagar progresso?

Clear only this game’s saved key in your browser developer tools. This is permanent for that browser. Copy/export the value first if you need a backup; never clear all site data casually on a shared domain.

Remova somente a chave deste jogo nas ferramentas do navegador. Isso é permanente nesse navegador. Copie/exporte o valor antes para ter backup; não limpe todos os dados de um domínio compartilhado sem necessidade.

Why do files fail after an update?Por que arquivos falham após atualizar?

Upload the whole new game/ together and preserve relative paths. Do not mix a new HTML with old hashed JS/CSS. Hard-reload to clear ordinary browser cache. This edition installs no service worker.

Suba toda a nova game/ em conjunto e mantenha os caminhos. Não misture HTML novo e JS/CSS antigo. Recarregue sem cache. Esta edição não instala service worker.

Can I replace the name, art and music?Posso trocar nome, arte e música?

Yes, follow the file map and dependency notices. Compiled games require rebuilding source changes. Only use replacement assets you may distribute. Keep the provided dependency/font license notices.

Sim, siga o mapa de arquivos e as licenças. Jogos compilados exigem novo build após alterar código. Use apenas assets que possa distribuir e preserve as licenças de dependências/fontes.

Does the package work offline?Funciona offline?

The default installation requires internet access to load Planck 1.5.0 from jsDelivr. Game art, audio and fonts are local. For an offline or self-hosted installation, obtain that exact Planck module separately and update the import map as explained in Physics dependency and hosting. Serve all files over HTTP/HTTPS; no service-worker cache or installed PWA is included.

A instalação padrão precisa de internet para carregar Planck 1.5.0 do jsDelivr. Arte, áudio e fontes ficam locais. Para uso offline ou hospedagem própria, obtenha esse módulo separadamente e altere o import map conforme Dependência de física e hospedagem. Sirva tudo por HTTP/HTTPS; não inclui cache por service worker ou PWA instalada.

Which browsers and devices are supported?Quais navegadores e aparelhos usar?

Use current Chrome, Edge, Firefox or Safari with JavaScript and Canvas/WebGL support as required below. Responsive browser checks do not replace testing on your own physical devices and hosting.

Use Chrome, Edge, Firefox ou Safari atuais, com JavaScript e Canvas/WebGL conforme os requisitos abaixo. Testes responsivos não substituem testar seus aparelhos físicos e hospedagem.

What does item support cover?O que o suporte cobre?

Use the marketplace item support channel with your purchase details and a reproducible report. Support follows the marketplace policy. Hosting administration, new features, major reskins and custom integrations are separate services. No fixed response-time or lifetime commitment is made.

Use o suporte do item no marketplace, com os dados da compra e um relato reproduzível. O suporte segue a política do marketplace. Hospedagem, funções novas, grandes mudanças visuais e integrações são serviços separados. Sem promessa de prazo fixo ou suporte vitalício.

Does BLEND clear the entire glass?BATER limpa o copo inteiro?

No. It clears a limited set of small fruit; it is not a full-board reset. The charge and fruit rules are in src/config.js and src/game/.

Não. Limpa um conjunto limitado de frutas pequenas. A carga e as regras ficam em src/config.js e src/game/.

Is every run eligible for the same records?Todas as partidas entram no mesmo quadro?

Normal completed runs appear in the local records board. Daily progress is separate. Records are not public or shared across devices.

Partidas normais concluídas aparecem no quadro local. O desafio diário guarda progresso separado. Nada é público ou sincronizado entre aparelhos.

Documentation support and updates

Documentação suporte e atualizações

Use the marketplace item support channel for help with the delivered item. Include item/version, browser/device, exact hosted URL, steps, expected/actual result, screenshot and console/network error. Never send passwords, tokens or private customer data. Updates focus on fixes and improvements without a fixed schedule.

Use o suporte do item no marketplace. Informe item/versão, navegador/aparelho, URL exata, passos, resultado esperado/obtido, captura e erro do console/rede. Nunca envie senhas, tokens ou dados privados. Atualizações focam correções e melhorias, sem calendário fixo.

Item: Plop standalone 1.0.2
Browser/device:
Hosted URL:
Steps to reproduce:
Expected / actual:
Screenshot / error:
Customization already applied:

Briefing for a development assistant

Briefing para assistente de desenvolvimento

Copy this brief when asking for a change. It keeps the buyer edition separate from the publisher’s original games.

Copie este briefing ao pedir uma mudança. Ele mantém esta edição separada dos jogos originais do autor.

Work only in this Plop standalone buyer package. Read this manual and the source README. Preserve the game rules, existing saves and relative asset paths. Keep ranking local, with no PHP, network multiplayer, publisher backend or portal SDK. Keep shipped runtime JS/CSS/JSON readable. Use Node.js 24+, npm ci and npm test for the optional source checks. There is no build step; copy reviewed source changes to game/. The default runtime loads Planck 1.5.0 from jsDelivr, so preserve and document its import map and internet requirement. Test launch, play, result, pause, settings, language and save/reload on desktop/mobile. Report exact files, tests and remaining limits. Do not deploy or publish unless I ask.

Physics dependency and hosting

Dependência de física e hospedagem

The vendor directory and third-party physics implementation are not included in this download. Plop uses Planck 1.5.0, loaded by the browser from the version-pinned jsDelivr URL in the import map in game/index.html. An internet connection and permission to load https://cdn.jsdelivr.net are required. A CSP must allow that script origin. This is a physics library, not a publisher account, online score service or multiplayer backend.

A pasta vendor e a implementação de física de terceiros não acompanham o download. O navegador carrega Planck 1.5.0 da URL com versão fixa do jsDelivr no import map de game/index.html. São necessários internet e acesso a https://cdn.jsdelivr.net; a CSP deve permitir essa origem. Trata-se da biblioteca de física, não de conta do autor, ranking online ou backend multiplayer.

For developer tests, use Node.js24 or newer, open source/ and run npm ci followed by npm test. For an offline/self-hosted installation, use the installed node_modules/planck/dist/planck.mjs from that exact npm version, publish it on your own host with a JavaScript MIME type and update the Planck URL in the import map. Preserve the MIT license. Keep the same version and rerun physics tests after changes. The packaged editable game code belongs to Polar Games; Planck remains an independently licensed dependency.

Para testes, use Node.js24 ou superior, abra source/ e execute npm ci e npm test. Para hospedagem própria/offline, utilize node_modules/planck/dist/planck.mjs da mesma versão npm, publique no seu servidor com MIME JavaScript e altere a URL Planck no import map. Preserve a licença MIT. Mantenha a versão e repita os testes de física. O código editável do jogo é da Polar Games; Planck é uma dependência licenciada separadamente.

Credits and third party licenses

Créditos e licenças de terceiros

Game design, code and publisher assets: Polar Games. Bundled dependency/font notices are in THIRD-PARTY-LICENSES/ ; Planck is acquired separately as described above. The marketplace license governs the game item; third-party notices retain their own terms. Music, effects and voice files included in this package are listed by path in the package manifest. Replacement assets require your own appropriate permissions.

Design, código e assets do autor: Polar Games. Licenças de dependências/fontes ficam em THIRD-PARTY-LICENSES/ ; Planck é obtido separadamente conforme descrito acima. A licença do marketplace rege o item; terceiros mantêm seus próprios termos. Músicas, efeitos e vozes estão listados no manifesto do pacote. Assets substitutos exigem permissões adequadas.

Custom development

Desenvolvimento sob medida

Custom reskins, new mechanics, online services and platform integrations are separate from item support. Discuss the scope first through the marketplace contact channel or willian@polargames.com.br. No hosted multiplayer, lifetime support or guaranteed revenue comes with this download.

Mudanças visuais completas, novas mecânicas, serviços online e integrações são separados do suporte do item. Converse sobre o escopo pelo marketplace ou willian@polargames.com.br. A compra não inclui multiplayer hospedado, suporte vitalício ou receita garantida.