Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - ArcadeBliss

Pages: [1] 2
1
Themes / Conveyor_Helper Module for Themers: Updated - 11/28/2017
« on: October 27, 2017, 09:41:49 PM »
What is this - Updated 11/28/2017

Conveyor Helper is a module that simplifies the use of the conveyor to make complicated game lists for your layout.

Main Features
  • Create Vertical, Horizontal, Coverflow or Spinwheel lists - easy configuration options
  • Use Game item design templates or completely customize your own
  • Text fallback function – if artwork is not available show a text object with the name of the game
  • Favorite game indicators – fully configurable
  • Add standard image or a colored backgrounds , gloss overlays, and borders for all game items
  • Customize the included template's text size and color
  • Customize the included template's shown artwork
  • Fade Gamelist after navigating to a new game
  • Add a separate image or a colored background for the currently selected game
  • progressively fade game items that are further away from the selected game item
  • progressively scale the game item's size bigger or smaller as they are further away from the selected game item
  • Comprehensive Readme and layout examples
How to Install and Use
  • Extract the “zip” to the root of your AM folder.
  • A new module and layout will be created in  “layouts\conveyor_helper” and “modules\conveyor_helper”
  • From your layout:
  • Load the module: fe.load_module("conveyor_helper")
  • Create a gamelist object: local yourGameListObject = MyGameList()
  • Configure the gamelist – use built-in or custom templates
  • Show the game list: yourGameListObject.show()
The layout has 4 examples: a vertical, horizontal, spinwheel, and spinwheel effects list - using template and customized game items

Thanks!
  • to verion for planting the idea to make this module
  • to the person I shamelessly ripped the favorite graphic
  • to all that will give feedback to make this module even better
Resources
Code: [Select]
      // ----------- General List Options -----------   


      type = ch.Spinwheel;          // OPTIONS: ch.Coverflow / ch.Spinwheel / ch.Linear_Vertical / ch.Linear_Horizontal
      bend.direction = ch.Right;        // OPTIONS: ch.Left / ch.Right
      bend.gl_radius = fe.layout.height / 2;   // OPTIONS: radius of the spinwheel in pixels
      x = fe.layout.width / 2;         // OPTIONS: top left x-coordinate if gamelist is linear or the center x-coordinate if a spinwheel or coverflow
      y = fe.layout.height / 2;         // OPTIONS: top left y-coordinate if gamelist is linear or the center y-coordinate if a spinwheel or coverflow
      width = 270;                // OPTIONS: linear game list total width in pixels
      height = 0;                // OPTIONS: linear list's height in pixels

      ms_speed = 150;                     // OPTIONS: in milliseconds, sets the speed of the conveyor
      fade_after_nav = 30;               // OPTIONS: 0-255 Fades the entire gamelist after navigation to this value. set to 255 to disable fading
      fade_delay = 5000;                   // the amount of time in milliseconds before the fade should start
      fade_speed = 1;                   // the mulitplier controlling the speed of the fade
      fade_selected = false;                   // OPTIONS: TRUE/FALSE fade selected game if gamelist fading is active
     
      // ----------- Spinwheel options -----------
      spinwheel.shape = 180;          // OPTIONS: shape of the spinwheel arc in degrees eg: 270, 180, 360
      spinwheel.rotate_items = true;      // OPTIONS: true / false - Rotate the items along the spinwheel arc
      spinwheel.startDegree = 90;      // The degree on a circle to start drawing the spinwheel. From left to right 0= left, 90 = top, 180 = right, 270= bottom
      spinwheel.effects.x = 1.00;         // a number that changes the spinwheel algorithm to create cool effects
      spinwheel.effects.y = 1.00;         // a number that changes the spinwheel algorithm to create cool effects
     
      // ----------- Linear List options -----------
      linear.padding = 6;   // the amount of padding in pixels between each gamelist item


      // ----------- List Item  Options -----------
      item.contentTemplate = ch.Artwork_or_Text;   // OPTIONS: ch.Artwork / ch.Text / ch.Artwork_and_Text / ch.Artwork_or_Text / ch.Flyer_and_Artwork  / ch.Custom
      item.count = 12;                   // OPTIONS: Total number of gamelist items to display


      item.sizeScaling.low = 0.20;             // OPTIONS: 0-100 Scaling size percentage to use for the item furthest from the selected item
      item.sizeScaling.high = 0.80;             // OPTIONS: 0-100 Scaling size percentage to use for item closest to the selected item
      item.sizeScaling.currentlySelected = 1.0;           // OPTIONS: 0-100 Scaling size percentage to use for the currently selected item


      item.alphaScaling.low = 60;             // OPTIONS: 0-100 Scaling size percentage to use for the item furthest from the selected item
      item.alphaScaling.high = 210;             // OPTIONS: 0-100 Scaling size percentage to use for item closest to the selected item
      item.alphaScaling.currentlySelected = 255;          // OPTIONS: 0-100 Scaling size percentage to use for the currently selected item


      item.height = 500;                   // OPTIONS: Height of each gameList item in pixels before scaling - dynamic with linear vertical lists
      item.width = 270 ;                  // OPTIONS: Width of each gameList item in pixels before scaling - dynamic with linear horizontal lists
   
      item.margin.left = 10;                // OPTION: bounding box left margin size for all images and text
      item.margin.right = 10;                // OPTION: bounding box right margin size for all images and text
      item.margin.top = 10;               // OPTION: bounding box top margin size for all images and text
      item.margin.bottom = 10;               // OPTION: bounding box bottom margin size for all images and text


      // ----------- List Item Content: borders / backgrounds / gloss / colors  -----------
      item.toggle.backgroundColor = false;         // if set to "TRUE" the game item background can be colored (use item.normal.color)
      item.toggle.backgroundFile = false;         // if set to "TRUE" the game item will use a file as the background (file: item_backgroundFile.png)
      item.toggle.selectedBackgroundColor = false;    // if set to "TRUE" the selected game item background can be colored (use item.currentlySelected.color)
      item.toggle.selectedBackgroundFile = false;      // if set to "TRUE" the selected game item will use a file as the background (file: item_selectedBackgroundFile.png)
      item.toggle.glossOverlay = false;         // if set to "TRUE" will overlay the game item with a gloss file (file: item_glossOverlay.png)
      item.toggle.borderOverlay = false;         // if set to "TRUE" will overlay the game item with a boarder file (file: item_borderOverlay.png)
     
      item.normal.color.red = 128;         // OPTIONS: background red color channel 0 - 255
      item.normal.color.green = 0;                   // OPTIONS: background green color channel 0 - 255
      item.normal.color.blue = 128;                    // OPTIONS: background blue color channel 0 - 255


      item.currentlySelected.color.red=0;      // OPTIONS: background red color channel 0 - 255
      item.currentlySelected.color.green=128;      // OPTIONS: background green color channel 0 - 255
      item.currentlySelected.color.blue=128;        // OPTIONS: background blue color channel 0 - 255


     
      // ----------- List Item Content: Text -----------
      text.message = "[Title]";
      text.alignment = Align.Centre;           // OPTIONS:left/right/center
      text.normal.font = "Arial";
      text.normal.size = 16;             // OPTIONS: text font size for every gameList item
      text.normal.color.red = 255;         // OPTIONS: text font red color channel 0 - 255
      text.normal.color.green = 255;         // OPTIONS: text font green color channel 0 - 255
      text.normal.color.blue = 128;         // OPTIONS: text font blue color channel 0 - 255
     
      text.currentlySelected.font = "Arial";
      text.currentlySelected.size = 18;       // OPTIONS: text font size for every gameList item
      text.currentlySelected.color.red = 255;   // OPTIONS: text font red color channel 0 - 255
      text.currentlySelected.color.green = 255;    // OPTIONS: text font green color channel 0 - 255
      text.currentlySelected.color.blue = 128;     // OPTIONS: text font blue color channel 0 - 255


      // ----------- List Item Content: User Defined Artwork -----------   
      artwork.type = "wheel";                         // OPTIONS: name of the artwork to use for the conveyour
      artwork.type2 = "snap";                   // OPTIONS: name of the artwork to use for the conveyour setting "Flyer_and_Artwork"
      artwork.preserveAspect = false;                    // OPTIONS: true / false
      // add_favoriteImage(path,x,y,width,height); // add a favorite image to the game item.
     
      // ------------ Options when creating custom gameitem objects -------------
      gi_textFallback = false;    // When true, the game item will show the game name when no artwork is available
      text_fallback_index = -1;   // Only adjust if not working correctly. Set the index of the text object that should be shown when gi_textFallback=true
      artwork_test_index = -1;   // Only adjust if not working correctly. Set the index of the fe.image object which is to be tested when gi_textFallback = true     




Change Log
Code: [Select]

2017.11.28
- [FEATURE]: added ch.Coverflow for coverflow lists and a new demo layout as an example
- [BUGFIX]: setting fade_afte_nav nolonger results in an endless loop
- [CHANGE]: refactored setLinearStops() (again) and LinearSlotItem.on_progress()  to match lessons learned with setSpinWheelStops all list types not work almost exactly the same simplifying code
- [CHANGE]: spinwheel gamelist items are now centered in the middle
- [CHANGE]: moved origin settings to setOriginSettings() based upon gamelist type and bend direction


2017.11.19
- [FEATURE]: added the ability to fade the wheel after navigating use: fade_after_nav, fade_delay, fade_selected and fade_speed
- [FEATURE]: added the ability to change the navigation speed of the gamelist see: ms_speed
- [BUGFIX]: corrected vertical lists text scrolling in the wrong direction
- [BUGFIX]: fixed fading of the fallback text object in setSlotItemClass()
- [BUGFIX]: Ensure correct game is selected when item.count is an even number see: "sel_game_offset"
- [CHANGE]: refactored setLinearStops to match lessons learned with setSpinWheelStops


2017.11.15
- [BUGFIX]: Vertical lists now sort alphabetically from A to Z instead of Z to A - Thanks to BadFurDay for reporting this
- [CHANGE]: Updated all Demo Spinwheel layouts to start drawing from 90deg thus centering the selected item in the middle of the screen.


2017.11.14
- [BUGFIX]: Spinwheel now sorts alphabetically from A to Z instead of Z to A


2017.11.10
- [CHANGE]: moved the text from text only list out of the surface. Changes in: LinerSlotItem.constructor(), MyGameList.show(), setGameItemContent(), setSlotItemClass()
- [FEATURE]: added config item "text.word_wrap"
- [BUGFIX]: Spinwheel fixes. Selected game centered by default when selecting an odd number of items. Animation optimized


2
Scripting / AM's sfml implementation?
« on: October 14, 2016, 07:03:05 AM »
In sfml it is possible to change the origin point of an sf:shape, text, and sprite by setting the origin property. This allows objects to be rotated using the center point instead of the upper left point of an object.

Raygun, would it be very involved to expose this property in squirrel?

Here is the link to the sfml documentation for sf::Transformable http://www.sfml-dev.org/tutorials/2.4/graphics-transform.php

3
Themes / Designers looking for Coders and vise-versa
« on: October 05, 2016, 02:04:27 AM »
I would like to use this thread to foster those with strengths in graphical design to post concepts that coders can pick up and code as themes.

Often those with talent at coding are not the best designers and vise-versa.

What do you think? Should we get this rolling?

4
Scripting / [image].rawset_index_offset explination
« on: August 10, 2016, 08:21:10 PM »
The property rawset_index_offset is not in the documentation. Can anyone explain what it does?

5
Scripting / How to move more than 1 game using conveyour
« on: July 23, 2016, 11:22:16 AM »
Does anyone know how to make the conveyour move more then one game when prev or next game signal is sent?

6
Scripting / New Animation for animate module
« on: July 21, 2016, 03:56:18 PM »
Wrote a new scale Animation that accepts width and height values. The current version based upon a scaling factor was too inaccurate for my tasks

Code: [Select]
/*
    ScaleWidthHeight will scale an image from the center based upon exact width and height information
   
    Additional pseudo properties are added for convenience:
        scale:      { w = 5000 , h = 1000}

7
Scripting / Bug found and fixed in current animate.nut
« on: July 20, 2016, 11:10:38 PM »
The current animate.nut does stop animations after the configured time has been reached.

to fix this problem, change the current line from:
Code: [Select]
//stop the animation when we reach the end
if ( config.when != When.Always && time >= config.time ) stop();

to:
Code: [Select]
//stop the animation when we reach the end
if ( time >= config.time ) stop();

I also submitted a bug report regarding this.

8
Emulators / AttractMode / Rocket Launcher Integration Pack
« on: July 13, 2016, 09:09:18 PM »
Purpose:
This Integration Pack will allow AttractMode to use RocketLauncher to manage the launching of emulators and will allow RocketLauncher to read AttractMode’s artwork and rom lists

Package Contents:
  • An AttractMode plugin for RocketLauncher
  • A RocketLauncher plugin for AttractMode
  • A RocketLauncherUI plugin for AttractMode
  • Systemslogos folder
  • An Installation Guide

How Does this Work?:
RocketLaucherUI Plugin
  • Used to read the list of emulators from AttractMode and show them in the systems list within RocketLaucher UI
  • Also reads AttractMode’s romlists ensuring it is possible to configure games if needed

AttractMode plugin
  • Once configured, it will create a file called “rl_integration.txt” every time a game is launched from AttractMode
  • The file contains the romlist entry and all the artwork paths for the currently launched game which is then read by the RocketLaucher plugin

RocketLaucher plugin
  • Is called every time a game is launched from AttractMode
  • Reads the “rl_integration.txt” file and uses the information to display artwork on the RocketLaucher fade and pause screens



[attachment deleted by admin]

9
Scripting / Read AM current "Display" from external program
« on: July 10, 2016, 10:46:59 PM »
I am writing a rocketLauncher plugin for AttractMode so it can integrate well. To make the integration smoother, I need a way to read (from a file) which display is currently active in Attractmode. I know this information is written to the "attract.am" file but it is a little cryptic.

@Raygun, can you describe the format of attract.am and/or allow this information to be written to another file?

Thanks

Hmm, now that I think of it, I can just write an AM plugin to write this myself. AM is just badass. 8)

10
General / Emulator Preference in multigame lists
« on: May 28, 2016, 05:40:05 PM »
Does anyone have a tip to coax Am to always choose games from one emulator over the other when the same game is offered by two different emulators within one romlist?  This would help alot,  thanks in advance.

11
General / Problem with multi emulator romlist - am I alone?
« on: May 28, 2016, 05:33:24 PM »
I have a romlist that combines all arcade emulators that I care about. Because several emulators share the same games as mame,  I have noticed Tewo issues:

1: 2  romlist entries that are the same except for the emulator only show up once in the game list
2: 'No Sort'  in a filter is not working.  If the romlist is not sorted 'physically'  by the ROM name, games that appear before their place in the alphabet (e.g. timepilot is located before Pacman)   will not show in the games list.

Is anyone experiencing the same?

12
Scripting / Gaussian Blur shader effect
« on: May 10, 2016, 02:15:07 AM »
I am trying to do a gaussian blur effect that requires to run the shader twice on the resulting image. Does anyone have a clue how to place the resulting image of an fe.image object that has a shader into another fe.image inorder to run the other shader against it?

13
Themes / ArcadeBliss - Cab Edition: 2016-05-16 Update
« on: April 28, 2016, 10:21:56 PM »
Since I "completed" my original ArcadeBliss theme for use in my bartop, it was time to create something for my full-size cab. Since my full-size cab only has one admin button - ESC, I needed a way for people to navigate the front-end in a cab environment only using a joystick, one select button, and the esc button. As opposed to my previous Hyperspin setup, ease-of-use was the top motivator.

Introducing - ArcadeBliss - Cab Edition
Youtube --> https://youtu.be/2vI431o6J3o
Download Link --> https://www.dropbox.com/s/lqeiqo0fen2qsyo/ArcadeBliss%20Cab%20Edition.zip?dl=0

Features:
  • Navigational main menu included directly on the home screen
  • Fully customized filter menu showing a grid of filters as images or text if images are not available
  • Integrated Search Menu
  • add remove favorites straight from the search menu
  • Responsive Menu UI - Fully Animated
  • layout options for forum member suggested mods
  • Customizable Menu Item names for displays and filters. Useful for renaming filters to "genres" or displays to "emulators" (I have removable panels for each display)
  • Favorites indicator when navigating the gamelist
  • Selected Display mini icon (or text if an image is missing)
  • Selected Filters list readout
  • Clock (in case you wife wants you to do something else at a specific time)
  • Select mods suggested from the community from layout options
  • Optimized for 4:3 Arcade Monitor use
Let me know your feedback and feature suggestions!

Thanks goes out to:
- OUYA, for the menu idea
- liquid8 for the search and animate code
- of course raygun (nuff said)

Directions
- Install the font located in the Assets directory "BorisBlackBloxx.ttf"

Changelog
see post: http://forum.attractmode.org/index.php?topic=741.msg5779#msg5779

14
Scripting / Horizontal Game List Navigation
« on: April 25, 2016, 01:24:38 AM »
THE PROBLEM
I really like themes that have a horizontal list of games. The only problem is, new users using my cab move the joystick left and right to try and move the game list. I've changed the up/down keys to be left/right; but navigation in menus (which are in a vertical format) becomes counter-intuitive.

Proposed Solution
It would be nice to separate the game list navigation from the menu navigation in the controls section. This would allow keys  to be used in menus (up/down) separate from the keys used to navigate a games list (left/right).

I've looked at the source code but it is beyond my skill. Anyone else favor this proposal or have the skills to change the source code?

I've opened a feature request here: https://github.com/mickelson/attract/issues/216

15
Scripting / reading configured key for a signal
« on: April 22, 2016, 01:53:27 PM »
Does anyone know how to read which input key is configured for a signal ?

For example:

Signal = "up"
default input key = "up arrow"

Edit: OK, I found a very non elegant way by parsing the attract.cfg file. If anyone knows a better way, let me know

Pages: [1] 2