Kahvibreak Curation Tutorial

From Flashpoint Datahub
Jump to navigation Jump to search

Kahvibreak currently emulates J2ME and Mophun applications. These are added to the collection by curators on our Discord server. Curation consists of picking out best version(s) of a game and packaging it with a logo, gameplay screenshot and metadata (essentially information such as its developer, publisher, genre, platform and release date) and choosing one of included emulators which works best with it.

  • Download Kahvibreak (Brewer version is recommended) and check if the game is already curated.

Testing the game

  • Add your JAR file to the Games folder. Please note that it has to be all one word, e.g. shorten "Gangstar - Crime City.jar" to "Gangstar.jar" (it's a limit with how KEmulator and FreeJ2ME load filenames over CMD).
  • Turn on Edit mode in the launcher ("Enable Editing" in the Config tab).
  • Make a new entry by using New Game in the bottom right.


  • Set the Application Path (from the dropdown list) and test the game with different emulators. Choose Software\KLaunch.bat for KEmulator or Software\FreeLaunch.bat for FreeJ2ME. KEmulator is chosen where FreeJ2ME fails, and the latter has fewer features and less compatibility. Other options included:
    • Software\FreeLaunch0.4.2.bat and Software\KLaunch98.bat - newer and older releases of the same emulators, respectively. You might want to try using one of these if something with sounds or graphics is off. If there is too much audio echo, the problem lies with how MIDI sounds work in JRE8. KEmulator v0.9.8 uses JRE1.4 by default and this can be applied by editing any .bat file of these emulators (change the path in the last line).
    • Software\KLaunchFS.bat - forces fullscreen in the emulator with games that don't like it.
    • Software\KLaunch98ESfix.bat - save fix mod for games that are supposed to save progress but don't.
    • Software\3410Launch.bat - Nokia 3410 SDK emulator capable of running some ancient Black-&-White J2ME games.
    • Software\KTweakedLaunch.bat - for tweaking how the game launches in KEmulator. This is used to change keymapping and to enable network (which is disabled by default) in online games such as TibiaME and browser apps, and is prefixed to the launch command. See these in the .bat file.


  • Launch Command is formatted like so for KEmulator and FreeJ2ME: Gangstar.jar 128 128 200 30
    • The first argument is the name of the .jar you want to load from the Games folder, simple enough.
    • The second and third argument are the width and height. Some games adapt to multiple resolutions, while others require a specific one. Look for the resolution on the filename, the website you've got your JAR from or assume it is one of these.
    • The fourth argument is the overall scale in %, in the example 200 is 200% so the 128x128 game will be shown as 256x256. As of version 1.5.9 onward, the default scaling is calculated for different resolutions automatically, but this feature pretty customizable (check out Software/GetScaleCfg.txt).
    • The fifth argument changes what framerate the game runs at. Accepted vaules are 60, 30 and 15. Not including this parameter will have the framerate be infinite. You can do that; just be aware to include this if the game runs too fast. The default framerate is 30, although KEmulator is usually better at detecting what the framerate should be compared to FreeJ2ME.


  • Once you have these correct, hit the tick and launch the game by double clicking. If it looks and runs fine (play a bit through a couple of levels, preferably the whole game if you have the time), proceed to filling its metadata.
  • If it doesn't work in any of the mentioned emulators, report it in the #nonworking channel on the Discord server. If you have any other questions, ask in the #curator-lounge channel. Sometimes the JAR is bad, sometimes all these emulators aren't capable at emulating it, and sometimes it's an edge case that we may be able to fix.

Alternate versions

  • If you have multiple versions of the same game (resolutions, for example) find the largest resolution you can that works the best and have that be the default. Put the other ones in the same 'content' folder. If it works well (like for SEGA Rally 3D's) the same version can be set at different resolutions as well.
  • Put in the Author Notes section the Launch Commands and names of other said versions. For example, if that Gangstar curation had two versions (say Gangstar.jar and Gangstar64x64.jar) you would use the regular Gangstar.jar in the Launch Command line and then on Author Notes include something like "64x64 version 'Gangstar64x64.jar 64 64 1200'". These alternate versions will be added manually.
    • Alternatively, curators can add these additional applications themself by properly formatting indents in the Additional Applications section, like in the Asteroid Zone example curation:
Application Path: Software\KLaunch.bat
Launch Command: Asteroids.jar 128 128 400

Additional Applications: 
    App0:
        Heading: Launch with 208x208 Resolution
        Application Path: Software\KLaunch.bat
        Launch Command: Asteroids.jar 208 208 200
    App1:
        Heading: Launch with 240x320 Resolution
        Application Path: Software\KLaunch.bat
        Launch Command: Asteroids.jar 240 320 100

Corrections, replacements and alternates to already curated games can be requested to be added in the #edits-and-changes channel.

Filling game's metadata

An example curation is available here which you should download and study: Gangstar Crime City

The curation is a holdover from the old format used by Flashpoint, so a few things remain the same.

  • The logo and screenshot work the same way (check the links). On both KEmulator and FreeJ2ME you can take screenshots using the C key (sometimes crashes KEmulator), and you can find these screenshots in Software/FreeJ2ME/screenshots or Software/KEmulator/capture directories. Save as PNG and put in the right place with the right name (logo.png / ss.png).
  • The JAR file should be placed by itself in the "content" folder. Make sure it is named differently from every other file in the Games directory already!
  • The meta.txt file should be easy to understand if you take a few minutes to read it. See the available fields in the launcher itself.
    • Extreme: tag games with NSFW/gore (pornographic content is currently unaccepted).
    • Platform: one of currently supported platforms, so either J2ME or Mophun.
    • Notes: anything wrong with the game or a helpful tip with its emulation.
    • Genre: use the "List" view in the launcher and look through available genres, use one that best describes the game.
    • Series: only for series of games that all released on cellphones.

Packing it up

Make sure it's all in a folder with the name of the game just for easy organization, zip it up and send it in. You can send multiple games in one zip as long as they are in seperate folders. Added curations will be marked with the Tools.PNG emoji and arrive in the next version of Kahvibreak.