Overwolf

Overwolf

  • Getting Started
  • Docs
  • API
  • Events Status
  • Blog
  • Q&A
  • Support

›Best Practices

Best Practices

  • Overview
  • App specific experience
  • First time user experience
  • App launch performance
  • Marketing Communications
  • User journey and error handling
  • Per-game settings
  • Hotkey best practices
  • Second monitor usage
  • Data persistence
  • Reduce OPK size
  • Use Tab as an app Hotkey
  • Type definition file
  • Download Link with referral ID
  • Video capture best practices
  • Enable Developer Tools

Using Windows API

  • Using Overwolf windows
  • Windows Communication
  • Windows Types
  • Resolution Size and Position
  • General Tips

Using Plugins

  • Plugins overview
  • Plug-in Implementation
  • Write your own plugin
  • Sample plugin
  • Simple I/O plugin
  • TeamSpeak plugin
  • Downloader plugin
  • Process Manager plugin

Using Events

  • JavaScript events overview
  • Using game events in your app
  • Game events Simulator
  • Verifying event status

Developers Console

  • Submit a new version
  • Submit for review
  • Update store listing
  • Manage your subscriptions
  • Users and permissions
  • Crash reports
  • Rating and reviews

Integrations

  • Integrating app analytics
  • Login with Twitch
  • Login with Overwolf
  • Event SDK for Game Devs
  • Twitch Extensions

Request a Service

  • Marketing asset requirements
  • Looking for Group
  • Promoting your app

Community Help

  • Join the Community
  • Webinars
  • Developers Content
  • Code snippets

Legal

  • Legal overview
  • App terms
  • Developers terms
Edit

Reducing the OPK size

As explained in the SDK introduction section, OPK files are Overwolf's app installation package which includes your app's files: the manifest, source files and other assets. All files are packed in a package which has the OPK file extension.

Why do we want to reduce OPK size?

Most of the time, basic compression is enough, and the OPK weighs between 1-3 Mb. But sometimes heavy assets push that higher, and the OPK can easily grow to more than 5Mb. This is a potential issue - heavy packages q will take more time to release and download, and run some extra risk of things going wrong under pressure - imagine thousands of users needing to download larger files simultaneously. Moreover, it's a standing policy for us to minimize our footprint and requirements on the user's resources, storage and/or processing power.

How can we reduce OPK size?

We suggest several proven ways to keep OPK size manageable:

  • Compress images to weigh as little as possible with JPEGMini, TinyPNG or a similar tool.

  • Remove non-critical JavaScript from your app to reduce transmission times, CPU-intensive compiling and potential memory overhead.

  • Remove map files before zipping (*.map).
    The Developer tools in Firefox/Chrome are using the maps to link the minified JS/CSS generated files to the original JS/CSS to allow debugging as if the code was not compressed.

  • Reduce font sizes.
    Most fonts that are used for large bodies of text are usually quite small in file size, especially if you are using a font delivery service like google fonts. Sometimes, however, designers include fonts that can be over 500KB. In these cases, you’ll need to reduce the character set's weight yourself. More info here.

  • Remove .DS_Store files.
    These files are proprietary Mac/OSX system files which hold attributes/meta-data about the folder it resides in. You're safe to just delete it.

  • Remove .git, node_modules etc. Remove anything that is not required to run the OW app.

If you have more ideas on how to reduce OPK size, please click on the EDIT button on the right, and add it in for everyone's benefit.

Last updated on 2020-3-1 by eransharv
← Data persistenceUse Tab as an app Hotkey →
  • Why do we want to reduce OPK size?
  • How can we reduce OPK size?
  • Legal
  • Terms overview
  • Developer's terms
  • App terms
  • Overwolf terms
  • Overwolf Privacy policy
  • Support
  • Questions and Answers
  • Discord
  • Slack
  • Facebook
  • Twitter
  • Documentation
  • Changelog
  • API
  • App Creation Process
  • Best Practices
  • Game Events status
  • Information
  • Careers
  • Fund
  • Developers Blog
  • Overwolf Appstore
  • Advertise on Overwolf