Kahvibreak Curation Tutorial: Difference between revisions

From Flashpoint Datahub
Jump to navigation Jump to search
No edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Kahvibreak currently emulates [https://emulation.gametechwiki.com/index.php/Cellphone_emulators J2ME and Mophun] applications. These are added to the collection by curators on [https://discord.gg/8TgbHAG 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.


== Basic Instructions ==
* Download [https://bluemaxima.org/kahvibreak/ Kahvibreak] (Brewer version is recommended) and check if the game is already curated.


* Download Kahvibreak. (You can use just the regular distro.)
== 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).


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


* Turn on Edit mode in the launcher (Config tab).
<BR CLEAR>
* Set the '''Application Path''' (from the dropdown list) and test the game with different emulators. Choose <code>Software\KLaunch.bat</code> for KEmulator or <code>Software\FreeLaunch.bat</code> for FreeJ2ME. KEmulator is chosen where FreeJ2ME fails, and the latter has fewer features and less compatibility. Other options included:
**<code>Software\FreeLaunch0.4.2.bat</code> and <code>Software\KLaunch98.bat</code> - 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).
**<code>Software\KLaunchFS.bat</code> - forces fullscreen in the emulator with games that don't like it.
**<code>Software\KLaunch98ESfix.bat</code> - save fix mod for games that are supposed to save progress but don't.
**<code>Software\3410Launch.bat</code> - Nokia 3410 SDK emulator capable of running some ancient Black-&-White J2ME games.
**<code>Software\KTweakedLaunch.bat</code> - 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.


* Make a new entry by using New Game in the bottom right when on the game list, then use "Software\KLaunch.bat" for Application Path if you want KEmulator or "Software\FreeLaunch.bat" if you want FreeJ2ME. We also have an older version of KEmulator that you may want to try using if the JAR crashes, the sound is off, or if something else is weird; use "Software\KLaunch98.bat" for that one.
<BR CLEAR>
* '''Launch Command''' is formatted like so for KEmulator and FreeJ2ME: <code><span style="color:blue">Gangstar.jar</span> <span style="color:darkred">128 128</span> <span style="color:green">200</span> <span style="color:lightblack">30</span></code>
** The first argument is the '''<span style="color:blue">name of the .jar</span>''' you want to load from the Games folder, simple enough.
** The second and third argument are the '''<span style="color:darkred">width and height</span>'''. 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 [https://media.discordapp.net/attachments/607833633759297548/720044908928303145/Resolution-reference.png assume it is one of these].
** The fourth argument is the overall '''<span style="color:green">scale in %</span>''', 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 <code>Software/GetScaleCfg.txt</code>).
** The fifth argument changes what '''<span style="color:lightblack">framerate the game runs at</span>'''. 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.


* Launch Command is formatted like so for KEmulator and FreeJ2ME:
<BR CLEAR>
* 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.


Gangstar.jar 128 128 200 30
== 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.


* The first argument is the name of the .jar you want to load from the Games folder, simple enough.
* 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 [https://cdn.discordapp.com/attachments/607833633759297548/846397932521783346/AsteroidZone-Example.zip Asteroid Zone example curation]:
<pre>
Application Path: Software\KLaunch.bat
Launch Command: Asteroids.jar 128 128 400


* The second and third argument are the width and height. There are multiple resolutions that can work; look for them on the zip file/site you get your JAR from. It will probably look wrong (cropped/in the top left corner) if the resolution is not correct.
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
</pre>


* The fourth argument is the overall scale in %, in the example 200 is 200% so the 128x128 game will be shown as 256x256. Try and make your game fit in 720p screens, basic math is all you need to make sure the height won't be larger than 720.
Corrections, replacements and alternates to already curated games can be requested to be added in the #edits-and-changes channel.


* The fifth argument is only for FreeJ2ME, it 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.
== Filling game's metadata ==
** This setting does not effect KEmulator and can be left out. If you need to change the framerate in KEmulator, use Software\KLaunchFPS10, Software\KLaunchFPS15 or Software\KLaunchFPS60 as your Application Path. (It should be obvious what they set framerate to.) The default framerate is 30, although KEmulator is usually better at detecting what the framerate should be compared to FreeJ2ME.
'''An example curation is available here which you should download and study: [https://bluemaxima.org/kahvibreak/Gangstar_Crime_City.zip Gangstar Crime City]'''


* Once you have these correct, hit the tick, 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) set it up like the example curation and send it in. If it doesn't work, try a few things:
The curation is a holdover from the old format used by Flashpoint, so a few things remain the same.
** Use the other emulator (FreeLaunch.bat / KLaunch.bat)
** Use the older version of KEmulator (KLaunch98.bat)
** Use this Application Path: Software\KLaunchFS / Software\KLaunch98FS.bat
** If none of these work, report it to us on the Discord. Sometimes the emulators don't support certain games, sometimes the JAR is bad, sometimes it's an edge case that we may be able to fix.


* 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 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'" and I'll add the alt version manually when I add it.
* The [[Curation Format#Logo|logo]] and [[Curation Format#Screenshot|screenshot]] work the same way (check the links). On both KEmulator and FreeJ2ME you can take screenshots using the <code>C</code> 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).


== Example Curation ==
* 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.


An example curation is available here which you should download and study: [https://bluemaxima.org/kahvibreak/Gangstar_Crime_City.zip Gangstar Crime City]
== 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 [[File:Tools.PNG]] emoji and arrive in the next version of Kahvibreak.
The curation is a holdover from the old format used by Flashpoint, so a few things remain the same.


* The [https://bluemaxima.org/flashpoint/datahub/Curation_Format#Logo logo] and [https://bluemaxima.org/flashpoint/datahub/Curation_Format#Screenshot screenshot] work the same way (correct procedure and extra examples are at the links). Save as PNG and put in the right place with the right name (logo.png / ss.png).
[[Category:Kahvibreak]]
* The JAR file should be placed by itself in the 'content' folder. It would be nice if you could make sure that the file is named differently from every other file in the Games directory already, just to make things easier on me.
* The meta.txt file should be easy to understand if you take a few minutes to read it.
** Extreme should be "Yes" for games with pornographic images or extreme violence.
** Application Path and Launch Command you should know already.
** Platform is always J2ME.
** Look through already included games in Kahvibreak for example genres.
* 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.

Latest revision as of 11:00, 10 June 2021

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.