[MECH] FluidFlow v1.2 - Change the flow of fluids [1060]

Discussion in 'Inactive/Unsupported Plugins' started by mindless728, Aug 22, 2011.

  1. Offline

    mindless728

    GOTO BukkitDev - FluidFlow
    This page is no longer being maintained


    Description: FluidFlow is a plugin that acts as a manager for other plugins that change fluid behavior. This also allows the flowing of other blocks other than just water and lava, want flowing glass, go right ahead, want obsidian to spread, it can be done.

    Features:
    • Drag and drop change of fluids, find a fluid plugin utilizing this system and put it in your plugin folder
    • Each fluid gets its own thread to run in to help utilize multiple cores
    • Easily customizable fluids, even let blocks that normally do not flow do so, albeit looking blocky
    • FluidFlow has a small config file
    • Each fluid is given its own config file through FluidFlow
    • All config files related to FluidFlow and its Fluids show up in FluidFlow's data folder
    Download: FluidFlow


    Source: FluidFlow source
    Dev API: FluidFlow API

    For Server Owners:
    Just drop this plugin and other fluid plugins that utilize this system into your plugins folder, that's it!
    Note: configuration files coming soon
    Example config from FluidFlow:
    Show Spoiler
    Code:
    BlockChanger:
        runTime: 10000000
        changeCountPerIter: 1000
    Fluid:
        sleepTime: 100000
    
    runTime: the amount of time per tick the block changer runs in nano-sconds
    changeCountPerIter: the amount of changes per loop through all of the fluids
    sleepTime: small time for waiting used in various methods in nano-sconds


    For Plugin Developers:
    Plugin developers that want to utilize this system you need to look through the API and get a feel for how it works and just extend mindless728.FluidFlow.Fluid, add FluidFlow.jar to your classpath, and provide the necessary methods
    Example Fluid Plugin:
    Show Spoiler
    Code:
    import org.bukkit.Material;
    import org.bukkit.util.config.Configuration;
    import mindless728.FluidFlow.Fluid;
    import mindless728.FluidFlow.FluidBlock;
    
    public class YourFluid extends Fluid {
        public Material getMaterial() {
            return Material.YOUR_MATERIAL_TYPE;
        }
    
        public void flow(FluidBlock flow) {
            //your flow code here!!!!
        }
    
        public void init(Configuration config) {
            //load your config here from give one
        }
    }
    

    Add a depend for FluidFlow in your plugin.yml:
    Show Spoiler
    Code:
    depend:
        - FluidFlow
    


    TODO:
    • Major: Save flow events between server resets
    • Major: Give me ideas on how to better this api
    • Create InifinaLiquids, if you dont know what i mean check out infiniminer's fluid system
    • Code RealFluids to work with this new system
    Changelog:



    1.2
    • Changed api to allow a fluid to initialize itself and load from a config file given to it
    1.1

    • Added config file for FluidFlow
    • FluidFlow gives each fluid installed its own config file
    1.0:

    • Initial public release

    ClassicFluids plugin suite: makes fluids behave like the Minecraft Classic fluids
    All of these are version: 1.0
    ClassicBase
    ClassicWater
    ClassicLava

    Note: if you have either ClassicWater or ClassicLava you must have ClassicBase

    Reserved for InfiniBase, InfiniWater, InfiniLava

    Reserved for RealBase, RealWater, RealLava

    Plugins by other developers that use FluidFlow:

    if you would like your plugin that uses FluidFlow listed here, contact me via PM

    Previous Post (as to keep history):
    well no RealFluids yet, just the base plugin and some fluids i am making

    edit: that would be awesome as i need one more for other devs

    This Post:
    good catch, wrote this pretty hastily as i am tired, though if we could delete all of these posts, i would love to reserve another for other developers

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
    smickles likes this.
  2. Offline

    Zalastri

    So, could a server use this to change nothing and just make flow more efficient by utilizing multiple threads? Or is the efficiency gain only for when you mod the way things flow?
     
  3. Offline

    mindless728

    only the custom fluid types will be processed in separate threads, sorry if there was any confusion
     
  4. Offline

    Pencil

    So with what you posted up there we can already make grass flow? kewl :p

    Btw, graz to you for finally bringing this to submission, i tried the dev builds a while ago :)
     
  5. Offline

    mindless728

    yeah you can do some weird shit with it
     
  6. Offline

    Pencil

    Sweet! :D Will the players standing inside the "grass liquid" be pushed around and stuff like if they were in water? :D
     
  7. Offline

    mindless728

    well you have to realize that as of now, i can't make a true flowing (like the minecraft water), it will just be blocks that show up so it wouldn't push them out of the way

    download the classic series of water and you will see what i mean
     
  8. Offline

    Pencil

    Ah :p Thought so :( Would have been awesome to make a dirtslide! xD
     
  9. Offline

    mindless728

    well when Spout can do some of this, i will use it, until then this is what it is
     
    Pencil likes this.
  10. Offline

    busa

    do this plugin allow for all water connected to the sea, to fill up? like eneterily fill a cave with wather?
    and wather above sea level to not flood?

    i noticed your old one had these functions...
     
  11. Offline

    mindless728

    this one currently does not have this feature, something i am working on, though not the most amount of time since i am working 2 jobs ATM
     
  12. Offline

    Draconos

    hey i know its prob just me being stupid but how do i make a block flow? like say obsidian please help :(
     
  13. Offline

    mindless728

    someone would need to make a plugin that allows that, this is an api that other developers can use to make anything flow and have a lot of the background tasks done for them

    the extra plugins i have released allow for the classic versions of water and lava and infiniminer fluids
     
  14. Offline

    Draconos

    do any of your other plugins allow as busa said you to fill a cave with just 1 water block? im looking for something like this :)
     
  15. Offline

    mindless728

    well even with classic fluids, it would fill the cave, but if there is a part of it that dips down then comes up it will not fill that part (as it is higher than the fluid flowing)

    just try out FluidFlow with ClassicWater (don't forget ClassicBase)
     
  16. Offline

    sfxworks

    So my rivers can flow?
     
  17. Offline

    mindless728

    did you read the OP, if not go look, if so then you should know the answer
     
  18. Offline

    sfxworks

    Sorry. Browsing plugins.
    Very nice though. I'm defiantly going to use this :)

    I read it over. I'm still quite confused as to what this exactly is. Does it give the fluid realism like finite liquid does? Does it give the top layers of water a "current"?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
  19. Offline

    mindless728

    well part of fluid flow would be RealWater and RealLava (not finished) which would give more realistic fluid behaviour Ilike finite fluid)
     
  20. Offline

    Dominic

    Looking forward to this! Man, I wish I could make plugins for this...
    Edit: For those who are blind like me. Check this link out.
    http://dev.bukkit.org/server-mods/fluidflow/pages/
     
  21. Offline

    sintri

    I'm assuming that Infiniminer Fluids will cause stuff like waterfalls to flow out of water?
     
  22. Offline

    Dominic

    Yeah, I would assume so...although...I can't get the fluid to have physics. Hm, I wonder if the server admin's need to define what blocks the fluid can flow through like in realfluids?
    Getting an error using Infibase, most likely because I'm running an 1.8 server though
     
  23. Offline

    mindless728

    post the error and i will try to look at it

    infiniminer flows down if it can, if it can't it flows out, so it is kind of like Classic but without the flooding (though it can still cause layers of fluid everywhere)

    right now i think they only replace air, as i haven't had a whole lot of time between 2 jobs and the server i run to code much anymore

    and yes, i have this submitted on the bukkit dev section as that is where new posts are supposed to go, but i will still make appearances here as people might post here
     
  24. Offline

    Dominic

    This was built against the recommended bukkit version...sadly that version doesn't work with 1.8. I'm sure it's just crashing because I'm using Bukkit version Build #1185 now and I would assume that's why it doesn't work. :(
    Code:
    161 recipes
    17 achievements
    21:56:53 [INFO] Starting minecraft server version Beta 1.8.1
    21:56:53 [INFO] Loading properties
    21:56:53 [INFO] Starting Minecraft server on 192.168.0.30:25566
    21:56:54 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-1054
    -g8af3464-b1165jnks (MC: 1.8.1)
    21:56:54 [INFO] Preparing level "TryELEVEN"
    21:56:54 [INFO] Default game type: 0
    21:56:54 [INFO] New max size: 400
    21:56:54 [INFO] New max size: 784
    21:56:54 [INFO] New max size: 1764
    21:56:54 [INFO] New max size: 5476
    21:56:54 [INFO] New max size: 18496
    21:56:54 [INFO] New max size: 19044
    21:56:54 [INFO] Unable to find spawn biome
    21:56:54 [INFO] Preparing start region for level 0 (Seed: -1382411755438799357)
    21:56:55 [INFO] Preparing spawn area: 8%
    21:56:56 [INFO] Preparing spawn area: 12%
    21:56:57 [INFO] Preparing spawn area: 20%
    21:56:58 [INFO] Preparing spawn area: 28%
    21:56:59 [INFO] Preparing spawn area: 36%
    21:57:00 [INFO] Preparing spawn area: 44%
    21:57:01 [INFO] Preparing spawn area: 52%
    21:57:02 [INFO] Preparing spawn area: 61%
    21:57:03 [INFO] Preparing spawn area: 69%
    21:57:04 [INFO] Preparing spawn area: 77%
    21:57:05 [INFO] Preparing spawn area: 85%
    21:57:07 [INFO] Preparing spawn area: 93%
    21:57:07 [INFO] Preparing start region for level 1 (Seed: -1382411755438799357)
    21:57:08 [INFO] Preparing spawn area: 0%
    21:57:09 [INFO] Preparing spawn area: 12%
    21:57:10 [INFO] Preparing spawn area: 16%
    21:57:11 [INFO] Preparing spawn area: 16%
    21:57:12 [INFO] Preparing spawn area: 24%
    21:57:14 [INFO] Preparing spawn area: 28%
    21:57:15 [INFO] Preparing spawn area: 36%
    21:57:16 [INFO] Preparing spawn area: 40%
    21:57:17 [INFO] Preparing spawn area: 48%
    21:57:18 [INFO] Preparing spawn area: 52%
    21:57:20 [INFO] Preparing spawn area: 61%
    21:57:21 [INFO] Preparing spawn area: 69%
    21:57:22 [INFO] Preparing spawn area: 77%
    21:57:23 [INFO] Preparing spawn area: 85%
    21:57:24 [INFO] Preparing spawn area: 93%
    21:57:25 [INFO] FluidFlow version 1.2 enabled
    21:57:25 [INFO] InfiniLava version 1.0 enabled
    21:57:25 [INFO] InfiniWater version 1.0 enabled
    21:57:25 [INFO] [MobDisguise] by desmin88 version 1.6 enabled.
    21:57:25 [INFO] Server permissions file permissions.yml is empty, ignoring it
    21:57:25 [INFO] Done (3.075s)! For help, type "help" or "?"
    21:57:25 [INFO] /192.168.0.30:52342 lost connection
    21:57:43 [INFO] /192.168.0.30:52348 lost connection
    21:57:50 [INFO] Dominic92x [/192.168.0.30:52349] logged in with entity id 3970 a
    t ([TryELEVEN] -171.5, 65.62000000476837, 251.5)
    21:57:58 [SEVERE] Exception in thread "Thread-9"
    21:57:58 [SEVERE] java.lang.NoSuchMethodError: mindless728.FluidFlow.FluidBlock.
    getBlockFace(Lorg/bukkit/block/BlockFace;)Lmindless728/FluidFlow/FluidBlock;
    21:57:58 [SEVERE]       at mindless728.InfiniBase.InfiniBase.flow(InfiniBase.jav
    a:17)
    21:57:58 [SEVERE]       at mindless728.FluidFlow.Fluid.run(Fluid.java:158)
    21:57:58 [SEVERE]       at java.lang.Thread.run(Unknown Source)
    >
    But anywho, that's what I get when destroying blocks.
    Also, where do you post in the devforum? Is it just the 'comment' section?
     
  25. Offline

    blazzzer213

    please update to the latest recommended build... I really want the classic water thing
     
  26. Offline

    mindless728

    blazzzer213 Ok so let me break this down for you
    1. I last updated this thread in August 22, 2011
    2. I no longer used this thread after that point as I moved it to dev.bukkit.net as per the first port
    3. I no longer had time to maintain this as I took over running a server
     
  27. Offline

    blazzzer213

    mindless728 about 3. , does that mean that you will no longer update this plugin to the latest recommended build?
     
  28. Offline

    mindless728

    probably not, I would more than likely do a complete re-write if I did make it for the newest RB. As I am still running the server, I do not have time to do anything like that.
     
  29. Offline

    blazzzer213

  30. Offline

    Tom000

    Could you repost the link? Im looking for the beta 1.7.3 1060 version
     

Share This Page