User Tag List

Results 1 to 8 of 8

Thread: Global List - feature suggestion

  1. #1
    Clicker Fusion 2.5Fusion 2.5+ DLC

    Join Date
    Jun 2006
    Posts
    888
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Global List - feature suggestion

    Having seen the amazing progress in the last months, I decided to revive one of the ideas that I believe would be very helpful with (I suppose) not that much of the development effort.

    Of course, there is the List object, Associative arrays etc. but it just adds complexity even if you need a simple thing, such as a pre-defined set of items (or any other pre-defined sequences to be used and worked with). About 8 years ago, I saw an adventure game developed by a Polish developer and it used crazy amount of List objects to store dialog lines.

    So I believe, a thing like that would be awesome:


    Global List (could be just for strings as they can be converted to val easily)
    *Add String (list index, string)
    *Insert String (list index, element index)
    *Delete String (list index, string)
    *Delete element (list index, element index)
    ..
    Retrieving would simply work by getting an element by ID, from a list by ID (or a pre-populated list, if the number of lists is fixed like with global vals and strings)

    Possible basic uses:
    - choosing from a pre-defined set of discrete data ( [5,20,50,140] or [Name1,Name2, Name3..] ) with no additional coding
    - creating collections during run-time (e.g. storing the list of attackers, stacking the bonuses/properties...even inventory can be simply built that way)
    - storing strings line by line (game journals, logs..)
    - dialogues (a list per character, e.g. Wizard[0] retrieves the first dialogue for the Wizard character)
    - game item properties mapping (e.g. Name[WeaponID] would return the weapon name by its ID, providing that the ID=index of the weapon in the list).

    ....

    I know all of that can be achieved using extensions but I believe the power of CTF is in its ease of use. Also, you do not need to worry about porting, bugs in outdated ones etc.

    So, just an idea

  2. #2
    Clicker

    Fusion 2.5 DeveloperFusion 2.5+ DLCHTML5 Export ModuleiOS Export ModuleSWF Export Module
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)

    Join Date
    Dec 2010
    Posts
    160
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    Given that in 2.5+ each active object can now store 262 strings could you use a bunch of active objects as lists/data storage?

  3. #3
    Clicker Fusion 2.5 DeveloperAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleUniversal Windows Platform Export ModuleSWF Export Module
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)
    DaveC's Avatar
    Join Date
    Jun 2007
    Location
    Perth, Australia
    Posts
    2,117
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    +1 for this! The list object is so clunky and old and full of needless features.. plus you can't shrink it down to be tiny in the frame editor which annoys me.

  4. #4
    Clicker Fusion 2.5Fusion 2.5+ DLC

    Join Date
    Jun 2006
    Posts
    888
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Adding another, a real, very simple scenario which is very difficult to work around without this feature:

    A list of music tracks to be played. In my game, I play music tracks in sequences based on the location.
    For example:
    Location 1-10: Tracks 1,2,3,4 (and starts again from the first element)
    Location 10-15: Tracks 3,5,6,8 (and starts again from the first element)
    etc.

    The music plays over frames so per-frame definition is not possible (and would be quite cumbersome).

    Using Global events, there is no simple way to implement that without creating a several list objects in each frame, which is inefficient and over-complicated.

    Again, a simple Global List feature would solve that immediately, you would just add elements to a global list and then read them using the index, e.g. Global List A(5)would return the 5th element of the list.

  5. #5
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)
    Volnaiskra's Avatar
    Join Date
    Jan 2014
    Location
    www.sprykegame.com
    Posts
    2,308
    Mentioned
    97 Post(s)
    Tagged
    0 Thread(s)
    I think I'm failing to understand something. Why can't you just use alterable strings in a global active?

  6. #6
    Clicker Fusion 2.5 (Steam)Fusion 2.5+ DLC (Steam)

    Join Date
    Nov 2017
    Posts
    97
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    I'm using active objects to store all my game settings, attributes, stats, etc.

    The INI+ object can easily save and load them entirely too, which is a huge plus.

  7. #7
    Clicker Fusion 2.5Fusion 2.5+ DLC

    Join Date
    Jun 2006
    Posts
    888
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Using actives for global lists (i.e. when you need to store a collection and iterate through it) is overkill, not to mention you would need to create the global actives in all frames...and still you will be limited (runtime creation of additional collections). It is like using global actives for global values - also possible, but we have global values, fortunately.

  8. #8
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)
    Volnaiskra's Avatar
    Join Date
    Jan 2014
    Location
    www.sprykegame.com
    Posts
    2,308
    Mentioned
    97 Post(s)
    Tagged
    0 Thread(s)
    OK, I guess it largely comes down to preferred work style, rather than straight functionality?

    Interesting that you use global values as an example. I personally hate global values; in my 5000+ event project, I don't use a single global value. I like the organisation and compartmentalisation of using actives. To me, using global values is like keeping your cutlery, crockery and pots in one giant bucket instead of in separate drawers and cabinets x) I guess that's why using alterable strings seemed a natural choice to me.

    But if I used lots of strings in my game, I think I would probably prefer a list object. Being able to rearrange and sort the text is obviously a big plus.

    Sounds like a decent workaround for you might be to use the ini++ object instead, as Progject suggests. If I understand you correctly, it would basically function the same way as a global list object, with the difference that it's an external file.

    I use that setup in my game, for level metadata (name, world, progress, music track etc.) . I have the ini file loaded in notepad+ on a separate monitor, and I have it set so that notepad+ continually reads any changes to it.

Similar Threads

  1. Replies: 3
    Last Post: 17th December 2014, 09:14 AM
  2. Feature suggestion
    By MattKapa in forum iOS Export Module Version 2.0
    Replies: 3
    Last Post: 14th October 2011, 08:12 AM
  3. Feature Suggestion
    By Gatesmi in forum Multimedia Fusion 2 - Technical Support
    Replies: 6
    Last Post: 2nd April 2011, 08:06 PM
  4. Feature suggestion
    By BlueFrenzy in forum Extension Development
    Replies: 1
    Last Post: 23rd July 2008, 10:24 AM
  5. Feature Suggestion
    By pirodaggar in forum Multimedia Fusion 2 - Technical Support
    Replies: 0
    Last Post: 23rd June 2008, 06:58 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •